From 0ad1361837d69b388e0e108862e5eadbde7ea682 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 30 Jul 2003 22:16:41 +0000 Subject: [PATCH] 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 --- lib/Target/Target.td | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/lib/Target/Target.td b/lib/Target/Target.td index d230776a316..e63cd635ccc 100644 --- a/lib/Target/Target.td +++ b/lib/Target/Target.td @@ -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 aliases> { // registers by register allocators. // class RegisterClass 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 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; }