mirror of
https://github.com/RPCSX/llvm.git
synced 2025-02-23 14:30:50 +00:00
Add comments
Make the register classes optionally take code fragments for allocation_order_* git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7441 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e3a1d05448
commit
0ad1361837
@ -10,7 +10,7 @@
|
|||||||
//
|
//
|
||||||
// Value types - These values correspond to the register types defined in the
|
// Value types - These values correspond to the register types defined in the
|
||||||
// ValueTypes.h file.
|
// ValueTypes.h file.
|
||||||
|
//
|
||||||
class ValueType { string Namespace = "MVT"; }
|
class ValueType { string Namespace = "MVT"; }
|
||||||
|
|
||||||
def i1 : ValueType; // One bit boolean value
|
def i1 : ValueType; // One bit boolean value
|
||||||
@ -53,9 +53,27 @@ class RegisterAliases<Register reg, list<Register> aliases> {
|
|||||||
// registers by register allocators.
|
// registers by register allocators.
|
||||||
//
|
//
|
||||||
class RegisterClass<ValueType regType, int alignment, list<Register> regList> {
|
class RegisterClass<ValueType regType, int alignment, list<Register> regList> {
|
||||||
|
// RegType - Specify the ValueType of the registers in this register class.
|
||||||
|
// Note that all registers in a register class must have the same ValueType.
|
||||||
|
//
|
||||||
ValueType RegType = regType;
|
ValueType RegType = regType;
|
||||||
|
|
||||||
|
// Alignment - Specify the alignment required of the registers when they are
|
||||||
|
// stored or loaded to memory.
|
||||||
|
//
|
||||||
int Alignment = alignment;
|
int Alignment = alignment;
|
||||||
|
|
||||||
|
// MemberList - Specify which registers are in this class. If the
|
||||||
|
// allocation_order_* method are not specified, this also defines the order of
|
||||||
|
// allocation used by the register allocator.
|
||||||
|
//
|
||||||
list<Register> MemberList = regList;
|
list<Register> MemberList = regList;
|
||||||
|
|
||||||
|
// allocation_order_* - These methods define the order that the registers
|
||||||
|
// should be allocated. See the MRegister.h file for more information.
|
||||||
|
//
|
||||||
|
code allocation_order_begin;
|
||||||
|
code allocation_order_end;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user