47 reg_sym =
"s[" + std::to_string(idx) +
":" +
48 std::to_string(idx + numRegs - 1) +
"]";
50 reg_sym =
"s" + std::to_string(idx);
54 reg_sym =
"v[" + std::to_string(idx -
REG_VGPR_MIN) +
":" +
66 reg_sym = std::to_string(inline_val);
72 reg_sym =
"flat_scratch_lo";
75 reg_sym =
"flat_scratch_hi";
117 fatal(
"VEGA ISA instruction has unknown register index %u\n", idx);
145 regIdx = numScalarRegs - 2;
147 regIdx = numScalarRegs - 1;
161 regIdx = numScalarRegs - 4;
163 regIdx = numScalarRegs - 3;
184 return is_pos_const_val;
193 return is_neg_const_val;
#define fatal(...)
This implements a cprintf based fatal() function.
bool isVectorReg(int opIdx)
bool isNegConstVal(int opIdx)
int opSelectorToRegIdx(int opIdx, int numScalarRegs)
bool isConstVal(int opIdx)
std::string opSelectorToRegSym(int opIdx, int numRegs=0)
bool isLiteral(int opIdx)
bool isScalarReg(int opIdx)
bool isFlatScratchReg(int opIdx)
bool isPosConstVal(int opIdx)
bool isExecMask(int opIdx)
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....