summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2011-07-13 20:25:01 +0000
committerJim Grosbach <grosbach@apple.com>2011-07-13 20:25:01 +0000
commite2f9840cdbb64b5e87d9e478a3f079180972f802 (patch)
treea5e4d09d4d39b9b3dc765f4c69db6e36edce358f
parent801d3ad1b270d935830353574c1cc43f6d559345 (diff)
downloadbcm5719-llvm-e2f9840cdbb64b5e87d9e478a3f079180972f802.tar.gz
bcm5719-llvm-e2f9840cdbb64b5e87d9e478a3f079180972f802.zip
Fix encoding for ARM BXJ instruction.
llvm-svn: 135077
-rw-r--r--llvm/lib/Target/ARM/ARMInstrInfo.td8
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/ARM/ARMInstrInfo.td b/llvm/lib/Target/ARM/ARMInstrInfo.td
index 4a576e619a5..02c9edf5074 100644
--- a/llvm/lib/Target/ARM/ARMInstrInfo.td
+++ b/llvm/lib/Target/ARM/ARMInstrInfo.td
@@ -1539,12 +1539,14 @@ def BLXi : AXI<(outs), (ins br_target:$target), BrMiscFrm, NoItinerary,
let Inst{24} = target{0};
}
-// Branch and Exchange Jazelle -- for disassembly only
+// Branch and Exchange Jazelle
def BXJ : ABI<0b0001, (outs), (ins GPR:$func), NoItinerary, "bxj", "\t$func",
- [/* For disassembly only; pattern left blank */]> {
+ [/* pattern left blank */]> {
+ bits<4> func;
let Inst{23-20} = 0b0010;
- //let Inst{19-8} = 0xfff;
+ let Inst{19-8} = 0xfff;
let Inst{7-4} = 0b0010;
+ let Inst{3-0} = func;
}
// Tail calls.
OpenPOWER on IntegriCloud