[llvm-commits] CVS: llvm/lib/Target/Target.td

Chris Lattner lattner at cs.uiuc.edu
Thu Sep 29 21:13:35 PDT 2005



Changes in directory llvm/lib/Target:

Target.td updated: 1.49 -> 1.50
---
Log message:

Now that self referential classes are supported, get rid of a work-around.


---
Diffs of the changes:  (+6 -4)

 Target.td |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)


Index: llvm/lib/Target/Target.td
diff -u llvm/lib/Target/Target.td:1.49 llvm/lib/Target/Target.td:1.50
--- llvm/lib/Target/Target.td:1.49	Fri Aug 26 15:55:20 2005
+++ llvm/lib/Target/Target.td	Thu Sep 29 23:13:23 2005
@@ -46,7 +46,7 @@
 
 // Register - You should define one instance of this class for each register
 // in the target machine.  String n will become the "name" of the register.
-class RegisterBase<string n> {
+class Register<string n> {
   string Namespace = "";
   string Name = n;
 
@@ -60,10 +60,12 @@
   // spilling the register.  Like SpillSize, this should only be explicitly
   // specified if the register is not in a register class.
   int SpillAlignment = 0;
-}
 
-class Register<string n> : RegisterBase<n> {
-  list<RegisterBase> Aliases = [];
+  // Aliases - A list of registers that this register overlaps with.  A read or
+  // modification of this register can potentially read or modifie the aliased
+  // registers.
+  //
+  list<Register> Aliases = [];
 }
 
 // RegisterGroup - This can be used to define instances of Register which






More information about the llvm-commits mailing list