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

Evan Cheng evan.cheng at apple.com
Thu May 31 19:56:37 CDT 2007



Changes in directory llvm/lib/Target/ARM:

ARMInstrInfo.td updated: 1.107 -> 1.108
---
Log message:

Make jumptable non-predicable for now.

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

 ARMInstrInfo.td |   21 ++++++++++-----------
 1 files changed, 10 insertions(+), 11 deletions(-)


Index: llvm/lib/Target/ARM/ARMInstrInfo.td
diff -u llvm/lib/Target/ARM/ARMInstrInfo.td:1.107 llvm/lib/Target/ARM/ARMInstrInfo.td:1.108
--- llvm/lib/Target/ARM/ARMInstrInfo.td:1.107	Tue May 29 18:32:06 2007
+++ llvm/lib/Target/ARM/ARMInstrInfo.td	Thu May 31 19:56:15 2007
@@ -400,14 +400,6 @@
 class AI3po<dag ops, string opc, string asm, string cstr, list<dag> pattern>
   : I<ops, AddrMode3, Size4Bytes, IndexModePost, opc, asm, cstr, pattern>;
 
-// BR_JT instructions
-class JTI<dag ops, string opc, string asm, list<dag> pattern>
-  : I<ops, AddrModeNone, SizeSpecial, IndexModeNone, opc, asm, "", pattern>;
-class JTI1<dag ops, string opc, string asm, list<dag> pattern>
-  : I<ops, AddrMode1, SizeSpecial, IndexModeNone, opc, asm, "", pattern>;
-class JTI2<dag ops, string opc, string asm, list<dag> pattern>
-  : I<ops, AddrMode2, SizeSpecial, IndexModeNone, opc, asm, "", pattern>;
-
 
 class BinOpFrag<dag res> : PatFrag<(ops node:$LHS, node:$RHS), res>;
 class UnOpFrag <dag res> : PatFrag<(ops node:$Src), res>;
@@ -516,6 +508,13 @@
 class AXIx2<dag ops, string asm, list<dag> pattern>
   : XI<ops, AddrModeNone, Size8Bytes, IndexModeNone, asm, "", pattern>;
 
+// BR_JT instructions
+class JTI<dag ops, string asm, list<dag> pattern>
+  : XI<ops, AddrModeNone, SizeSpecial, IndexModeNone, asm, "", pattern>;
+class JTI1<dag ops, string asm, list<dag> pattern>
+  : XI<ops, AddrMode1, SizeSpecial, IndexModeNone, asm, "", pattern>;
+class JTI2<dag ops, string asm, list<dag> pattern>
+  : XI<ops, AddrMode2, SizeSpecial, IndexModeNone, asm, "", pattern>;
 
 //===----------------------------------------------------------------------===//
 // Instructions
@@ -639,14 +638,14 @@
                 [(br bb:$dst)]>;
 
   def BR_JTr : JTI<(ops GPR:$dst, jtblock_operand:$jt, i32imm:$id),
-                    "mov", " pc, $dst \n$jt",
+                    "mov pc, $dst \n$jt",
                     [(ARMbrjt GPR:$dst, tjumptable:$jt, imm:$id)]>;
   def BR_JTm : JTI2<(ops addrmode2:$dst, jtblock_operand:$jt, i32imm:$id),
-                     "ldr", " pc, $dst \n$jt",
+                     "ldr pc, $dst \n$jt",
                      [(ARMbrjt (i32 (load addrmode2:$dst)), tjumptable:$jt,
                        imm:$id)]>;
   def BR_JTadd : JTI1<(ops GPR:$dst, GPR:$idx, jtblock_operand:$jt, i32imm:$id),
-                       "add", " pc, $dst, $idx \n$jt",
+                       "add pc, $dst, $idx \n$jt",
                        [(ARMbrjt (add GPR:$dst, GPR:$idx), tjumptable:$jt,
                          imm:$id)]>;
   }






More information about the llvm-commits mailing list