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

Chris Lattner lattner at cs.uiuc.edu
Thu Sep 29 23:42:35 PDT 2005



Changes in directory llvm/lib/Target/IA64:

IA64.td updated: 1.2 -> 1.3
---
Log message:

these registers don't belong to any register classes, so don't mark them
as callee save.  They can never be generated by the compiler.


---
Diffs of the changes:  (+21 -11)

 IA64.td |   32 +++++++++++++++++++++-----------
 1 files changed, 21 insertions(+), 11 deletions(-)


Index: llvm/lib/Target/IA64/IA64.td
diff -u llvm/lib/Target/IA64/IA64.td:1.2 llvm/lib/Target/IA64/IA64.td:1.3
--- llvm/lib/Target/IA64/IA64.td:1.2	Wed Apr  6 01:18:36 2005
+++ llvm/lib/Target/IA64/IA64.td	Fri Sep 30 01:42:24 2005
@@ -38,7 +38,10 @@
   
   //'preserved' GRs:
   
-  [r4, r5, r6, r7,
+  [
+    // We never generate references to these regs, so we don't need to declare
+    // that they are saved.  In fact, we could just remove them entirely.
+    //r4, r5, r6, r7,
   
   //'special' GRs:
 
@@ -67,19 +70,26 @@
 */
   //'preserved' FP regs:
 
-  F2,F3,F4,F5,
-  F16,F17,F18,F19,F20,F21,F22,F23,
-  F24,F25,F26,F27,F28,F29,F30,F31,
+  /* We never generate references to these regs, so we don't need to declare
+   * that they are saved.  In fact, we could just remove them entirely.
+   * F2,F3,F4, F5,
+   * F16,F17,F18,F19,F20,F21,F22,F23,
+   * F24,F25,F26,F27,F28,F29,F30,F31,
+   */
   
   //'preserved' predicate regs:
 
-  p1, p2, p3, p4, p5,
-  p16, p17, p18, p19, p20, p21, p22, p23,
-  p24, p25, p26, p27, p28, p29, p30, p31,
-  p32, p33, p34, p35, p36, p37, p38, p39,
-  p40, p41, p42, p43, p44, p45, p46, p47,
-  p48, p49, p50, p51, p52, p53, p54, p55,
-  p56, p57, p58, p59, p60, p61, p62, p63];
+  /* We never generate references to these regs, so we don't need to declare
+    that they are saved.  In fact, we could just remove them entirely.
+    p1, p2, p3, p4, p5,
+    p16, p17, p18, p19, p20, p21, p22, p23,
+    p24, p25, p26, p27, p28, p29, p30, p31,
+    p32, p33, p34, p35, p36, p37, p38, p39,
+    p40, p41, p42, p43, p44, p45, p46, p47,
+    p48, p49, p50, p51, p52, p53, p54, p55,
+    p56, p57, p58, p59, p60, p61, p62, p63
+   */
+  ];
 
   // We don't go anywhere near the LP32 variant of IA64 as 
   // sometimes seen in (for example) HP-UX






More information about the llvm-commits mailing list