mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +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
|
||||
// ValueTypes.h file.
|
||||
|
||||
//
|
||||
class ValueType { string Namespace = "MVT"; }
|
||||
|
||||
def i1 : ValueType; // One bit boolean value
|
||||
@ -53,9 +53,27 @@ class RegisterAliases<Register reg, list<Register> aliases> {
|
||||
// registers by register allocators.
|
||||
//
|
||||
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;
|
||||
|
||||
// Alignment - Specify the alignment required of the registers when they are
|
||||
// stored or loaded to memory.
|
||||
//
|
||||
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;
|
||||
|
||||
// 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…
Reference in New Issue
Block a user