[llvm-commits] CVS: llvm/lib/Target/ARM/ARMInstrThumb.td
Evan Cheng
evan.cheng at apple.com
Mon Jan 29 17:13:53 PST 2007
Changes in directory llvm/lib/Target/ARM:
ARMInstrThumb.td updated: 1.7 -> 1.8
---
Log message:
Use BL to implement Thumb far jumps.
---
Diffs of the changes: (+3 -0)
ARMInstrThumb.td | 3 +++
1 files changed, 3 insertions(+)
Index: llvm/lib/Target/ARM/ARMInstrThumb.td
diff -u llvm/lib/Target/ARM/ARMInstrThumb.td:1.7 llvm/lib/Target/ARM/ARMInstrThumb.td:1.8
--- llvm/lib/Target/ARM/ARMInstrThumb.td:1.7 Fri Jan 26 20:29:45 2007
+++ llvm/lib/Target/ARM/ARMInstrThumb.td Mon Jan 29 19:13:37 2007
@@ -195,6 +195,9 @@
let isBranch = 1, isTerminator = 1, isBarrier = 1 in {
def tB : TI<(ops brtarget:$dst), "b $dst", [(br bb:$dst)]>;
+ // Far jump
+ def tBfar : TIx2<(ops brtarget:$dst), "bl $dst\t@ far jump", []>;
+
def tBR_JTr : TJTI<(ops GPR:$dst, jtblock_operand:$jt, i32imm:$id),
"cpy pc, $dst \n\t.align\t2\n$jt",
[(ARMbrjt GPR:$dst, tjumptable:$jt, imm:$id)]>;
More information about the llvm-commits
mailing list