30 "This is not a subregister index");
33 const uint16_t *SRI = SubRegIndices +
get(
Reg).SubRegIndices;
44 const uint16_t *SRI = SubRegIndices +
get(
Reg).SubRegIndices;
53 "This is not a subregister index");
54 return SubRegIdxRanges[Idx].
Size;
59 "This is not a subregister index");
60 return SubRegIdxRanges[Idx].
Offset;
65 unsigned Size = isEH ? EHL2DwarfRegsSize : L2DwarfRegsSize;
71 if (I == M+Size || I->
FromReg != RegNum)
78 unsigned Size = isEH ? EHDwarf2LRegsSize : Dwarf2LRegsSize;
84 assert(I != M+Size && I->
FromReg == RegNum &&
"Invalid RegNum");
90 if (I == L2SEHRegs.
end())
return (
int)RegNum;
98 if (I == L2CVRegs.
end())
int getDwarfRegNum(unsigned RegNum, bool isEH) const
Map a target register to an equivalent dwarf register number.
LLVM_ATTRIBUTE_NORETURN void report_fatal_error(Error Err, bool gen_crash_diag=true)
Report a serious error, calling any installed error handler.
bool isValid() const
isValid - returns true if this iterator is not yet at the end.
unsigned getSubRegIndex(unsigned RegNo, unsigned SubRegNo) const
For a given register pair, return the sub-register index if the second register is a sub-register of ...
MCSuperRegIterator enumerates all super-registers of Reg.
Reg
All possible values of the reg field in the ModR/M byte.
int getSEHRegNum(unsigned RegNum) const
Map a target register to an equivalent SEH register number.
unsigned getNumRegs() const
Return the number of registers this target has (useful for sizing arrays holding per register informa...
unsigned getNumSubRegIndices() const
Return the number of sub-register indices understood by the target.
int getCodeViewRegNum(unsigned RegNum) const
Map a target register to an equivalent CodeView register number.
MCRegisterClass - Base class of TargetRegisterClass.
unsigned getSubReg(unsigned Reg, unsigned Idx) const
Returns the physical register number of sub-register "Index" for physical register RegNo...
int getLLVMRegNum(unsigned RegNum, bool isEH) const
Map a dwarf register back to a target register.
MCSubRegIterator enumerates all sub-registers of Reg.
unsigned getMatchingSuperReg(unsigned Reg, unsigned SubIdx, const MCRegisterClass *RC) const
Return a super-register of the specified register Reg so its sub-register of index SubIdx is Reg...
DwarfLLVMRegPair - Emitted by tablegen so Dwarf<->LLVM reg mappings can be performed with a binary se...
bool contains(unsigned Reg) const
contains - Return true if the specified register is included in this register class.
iterator find(const KeyT &Val)
unsigned getSubRegIdxOffset(unsigned Idx) const
Get the offset of the bit range covered by a sub-register index.
LLVM_NODISCARD bool empty() const
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
unsigned getSubRegIdxSize(unsigned Idx) const
Get the size of the bit range covered by a sub-register index.