CLRX  1
An unofficial OpenCL extensions designed for Radeon GPUs
Public Member Functions | Friends | List of all members
CLRX::Disassembler Class Reference

disassembler class More...

#include <Disassembler.h>

Inheritance diagram for CLRX::Disassembler:
CLRX::NonCopyableAndNonMovable

Public Member Functions

 Disassembler (const AmdMainGPUBinary32 &binary, std::ostream &output, Flags flags=0)
 constructor for 32-bit GPU binary More...
 
 Disassembler (const AmdMainGPUBinary64 &binary, std::ostream &output, Flags flags=0)
 constructor for 64-bit GPU binary More...
 
 Disassembler (const AmdCL2MainGPUBinary32 &binary, std::ostream &output, Flags flags=0, cxuint driverVersion=0)
 constructor for AMD OpenCL 2.0 GPU binary 32-bit More...
 
 Disassembler (const AmdCL2MainGPUBinary64 &binary, std::ostream &output, Flags flags=0, cxuint driverVersion=0)
 constructor for AMD OpenCL 2.0 GPU binary 64-bit More...
 
 Disassembler (const ROCmBinary &binary, std::ostream &output, Flags flags=0)
 constructor for ROCm GPU binary More...
 
 Disassembler (const AmdDisasmInput *disasmInput, std::ostream &output, Flags flags=0)
 constructor for AMD disassembler input More...
 
 Disassembler (const AmdCL2DisasmInput *disasmInput, std::ostream &output, Flags flags=0)
 constructor for AMD OpenCL 2.0 disassembler input More...
 
 Disassembler (const ROCmDisasmInput *disasmInput, std::ostream &output, Flags flags=0)
 constructor for ROCMm disassembler input More...
 
 Disassembler (GPUDeviceType deviceType, const GalliumBinary &binary, std::ostream &output, Flags flags=0)
 constructor for bit GPU binary from Gallium More...
 
 Disassembler (const GalliumDisasmInput *disasmInput, std::ostream &output, Flags flags=0)
 constructor for Gallium disassembler input More...
 
 Disassembler (GPUDeviceType deviceType, size_t rawCodeSize, const cxbyte *rawCode, std::ostream &output, Flags flags=0)
 constructor for raw code
 
void disassemble ()
 disassembles input
 
Flags getFlags () const
 get disassemblers flags
 
void setFlags (Flags flags)
 get disassemblers flags
 
GPUDeviceType getDeviceType () const
 get deviceType
 
const AmdDisasmInputgetAmdInput () const
 get disassembler input
 
const AmdCL2DisasmInputgetAmdCL2Input () const
 get disassembler input
 
const GalliumDisasmInputgetGalliumInput () const
 get disassembler input
 
const std::ostream & getOutput () const
 get output stream
 
std::ostream & getOutput ()
 get output stream
 
- Public Member Functions inherited from CLRX::NonCopyableAndNonMovable
 NonCopyableAndNonMovable ()
 constructor
 
 NonCopyableAndNonMovable (const NonCopyableAndNonMovable &)=delete
 copy-constructor
 
 NonCopyableAndNonMovable (NonCopyableAndNonMovable &&)=delete
 move-constructor
 
NonCopyableAndNonMovableoperator= (const NonCopyableAndNonMovable &)=delete
 copy-assignment
 
NonCopyableAndNonMovableoperator= (NonCopyableAndNonMovable &&)=delete
 move-asignment
 

Friends

class ISADisassembler
 

Detailed Description

disassembler class

Constructor & Destructor Documentation

CLRX::Disassembler::Disassembler ( const AmdMainGPUBinary32 binary,
std::ostream &  output,
Flags  flags = 0 
)

constructor for 32-bit GPU binary

Parameters
binarymain GPU binary
outputoutput stream
flagsflags for disassembler
CLRX::Disassembler::Disassembler ( const AmdMainGPUBinary64 binary,
std::ostream &  output,
Flags  flags = 0 
)

constructor for 64-bit GPU binary

Parameters
binarymain GPU binary
outputoutput stream
flagsflags for disassembler
CLRX::Disassembler::Disassembler ( const AmdCL2MainGPUBinary32 binary,
std::ostream &  output,
Flags  flags = 0,
cxuint  driverVersion = 0 
)

constructor for AMD OpenCL 2.0 GPU binary 32-bit

Parameters
binarymain GPU binary
outputoutput stream
flagsflags for disassembler
driverVersiondriverVersion (0 - detected by disassembler)
CLRX::Disassembler::Disassembler ( const AmdCL2MainGPUBinary64 binary,
std::ostream &  output,
Flags  flags = 0,
cxuint  driverVersion = 0 
)

constructor for AMD OpenCL 2.0 GPU binary 64-bit

Parameters
binarymain GPU binary
outputoutput stream
flagsflags for disassembler
driverVersiondriverVersion (0 - detected by disassembler)
CLRX::Disassembler::Disassembler ( const ROCmBinary binary,
std::ostream &  output,
Flags  flags = 0 
)

constructor for ROCm GPU binary

Parameters
binarymain GPU binary
outputoutput stream
flagsflags for disassembler
CLRX::Disassembler::Disassembler ( const AmdDisasmInput disasmInput,
std::ostream &  output,
Flags  flags = 0 
)

constructor for AMD disassembler input

Parameters
disasmInputdisassembler input object
outputoutput stream
flagsflags for disassembler
CLRX::Disassembler::Disassembler ( const AmdCL2DisasmInput disasmInput,
std::ostream &  output,
Flags  flags = 0 
)

constructor for AMD OpenCL 2.0 disassembler input

Parameters
disasmInputdisassembler input object
outputoutput stream
flagsflags for disassembler
CLRX::Disassembler::Disassembler ( const ROCmDisasmInput disasmInput,
std::ostream &  output,
Flags  flags = 0 
)

constructor for ROCMm disassembler input

Parameters
disasmInputdisassembler input object
outputoutput stream
flagsflags for disassembler
CLRX::Disassembler::Disassembler ( GPUDeviceType  deviceType,
const GalliumBinary binary,
std::ostream &  output,
Flags  flags = 0 
)

constructor for bit GPU binary from Gallium

Parameters
deviceTypeGPU device type
binarymain GPU binary
outputoutput stream
flagsflags for disassembler
CLRX::Disassembler::Disassembler ( const GalliumDisasmInput disasmInput,
std::ostream &  output,
Flags  flags = 0 
)

constructor for Gallium disassembler input

Parameters
disasmInputdisassembler input object
outputoutput stream
flagsflags for disassembler

The documentation for this class was generated from the following file: