CLRX
1
An unofficial OpenCL extensions designed for Radeon GPUs
|
GCN (register and regvar) Usage handler. More...
#include <Assembler.h>
Public Member Functions | |
GCNUsageHandler (const std::vector< cxbyte > &content, uint16_t archMask) | |
constructor | |
~GCNUsageHandler () | |
destructor | |
ISAUsageHandler * | copy () const |
copy this usage handler | |
cxbyte | getRwFlags (AsmRegField regFied, uint16_t rstart, uint16_t rend) const |
get RW flags (used by assembler) | |
std::pair< uint16_t, uint16_t > | getRegPair (AsmRegField regField, cxbyte rwFlags) const |
get reg pair (used by assembler) | |
void | getUsageDependencies (cxuint rvusNum, const AsmRegVarUsage *rvus, cxbyte *linearDeps, cxbyte *equalToDeps) const |
get usage dependencies around single instruction | |
![]() | |
virtual | ~ISAUsageHandler () |
destructor | |
void | pushUsage (const AsmRegVarUsage &rvu) |
push regvar or register usage | |
void | rewind () |
rewind to start for reading | |
void | flush () |
flush last pending register usages | |
bool | hasNext () const |
has next regvar usage | |
AsmRegVarUsage | nextUsage () |
get next usage | |
ReadPos | getReadPos () const |
get reading position | |
void | setReadPos (const ReadPos rpos) |
set reading position | |
void | pushUseRegUsage (const AsmRegVarUsage &rvu) |
push regvar or register from usereg pseudo-op | |
Additional Inherited Members | |
![]() | |
void | skipBytesInInstrStruct () |
void | putSpace (size_t offset) |
put space to offset | |
ISAUsageHandler (const std::vector< cxbyte > &content) | |
constructor | |
![]() | |
std::vector< cxbyte > | instrStruct |
structure of register usage | |
std::vector< AsmRegUsageInt > | regUsages |
register usage | |
std::vector< AsmRegUsage2Int > | regUsages2 |
register usage (by .usereg) | |
std::vector< AsmRegVarUsageInt > | regVarUsages |
regvar usage | |
const std::vector< cxbyte > & | content |
code content | |
size_t | lastOffset |
last offset | |
size_t | readOffset |
read offset | |
size_t | instrStructPos |
position in instr struct | |
size_t | regUsagesPos |
position in reg usage | |
size_t | regUsages2Pos |
position in reg usage 2 | |
size_t | regVarUsagesPos |
position in regvar usage | |
uint16_t | pushedArgs |
pushed args | |
cxbyte | argPos |
argument position | |
cxbyte | argFlags |
??? | |
cxbyte | defaultInstrSize |
default instruction size | |
bool | isNext |
is next | |
bool | useRegMode |
true if in usereg mode | |
GCN (register and regvar) Usage handler.