MCRegisterClass ‐ Base class of TargetRegisterClass.
Synopsis
Declared in <llvm/MC/MCRegisterInfo.h>
class MCRegisterClass;
Type Aliases
Member Functions
Name |
Description |
begin/end ‐ Return all of the registers in this class. |
|
|
|
getCopyCost ‐ Return the cost of copying a value between two registers in this class. A negative number means the register class is very expensive to copy e.g. status flag register classes. |
|
getID() ‐ Return the register class ID number. |
|
Returns the combination of all lane masks of register in this class. The lane masks of the registers are the combination of all lane masks of their subregisters. Returns 1 if there are no subregisters. |
|
getNumRegs ‐ Return the number of registers in this class. |
|
getRegister ‐ Return the specified register in the class. |
|
Return the size of the physical register in bits if we are able to determine it. This always returns zero for registers of targets that use HW modes, as we need more information to determine the size of registers in such cases. Use TargetRegisterInfo to cover them. |
|
I.e., the representation of the memory from left to right at the bit level looks like: [31 30 ... 1 0][ 63 62 ... 33 32]... [ XXX NumRegClasses NumRegClasses ‐ 1 ... ] Where the number represents the class ID and XXX bits that should be ignored. |
|
Returns a 0‐terminated list of sub‐register indices that project some super‐register class into this register class. The list has an entry for each Idx such that: |
|
Return true if the specified TargetRegisterClass is a proper sub‐class of this TargetRegisterClass. |
|
Returns true if RC is a sub‐class of or equal to this class. |
|
Return true if the specified MCRegisterClass is a proper super‐class of this MCRegisterClass. |
|
Returns true if RC is a super‐class of or equal to this class. |
|
isAllocatable ‐ Return true if this register class may be used to create virtual registers. |
|
Return true if this register class has a defined BaseClassOrder. |
|
Returns a list of super‐classes. The classes are ordered by ID which is also a topological ordering from large to small classes. The list does NOT include the current class. |
Data Members
Name |
Description |
Classes with a higher priority value are assigned first by register allocators using a greedy heuristic. The value is in the range [0,31]. |
|
Whether a combination of subregisters can cover every register in the class. See also the CoveredBySubRegs description in Target.td. |
|
Whether the class supports two (or more) disjunct subregister indices. |
|
Register denoted by first bit in RegSet. |
|
Relative offset to uint8_t array. |
|
Relative offset to MCPhysReg array. |
|
Relative offset to uint32_t array. |
|
Relative offset to unsigned array. |
|
Relative offset to MCPhysReg array. |
|
Configurable target specific flags. |
Created with MrDocs