diff options
author | Johnny Chen <johnny.chen@apple.com> | 2010-02-10 18:02:25 +0000 |
---|---|---|
committer | Johnny Chen <johnny.chen@apple.com> | 2010-02-10 18:02:25 +0000 |
commit | c7e14704d097ea4ef51536d3a3c4a692da393f53 (patch) | |
tree | a04c66a30d3093d1902e5a9d47f074d77cb220dd | |
parent | fa7a0e5198369a83b271478035ea953218e3aab7 (diff) | |
download | bcm5719-llvm-c7e14704d097ea4ef51536d3a3c4a692da393f53.tar.gz bcm5719-llvm-c7e14704d097ea4ef51536d3a3c4a692da393f53.zip |
Added NOP, DBG, SVC to the instruction table for disassembly purpose.
llvm-svn: 95784
-rw-r--r-- | llvm/lib/Target/ARM/ARMInstrInfo.td | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMInstrInfo.td b/llvm/lib/Target/ARM/ARMInstrInfo.td index 852c74e3b8f..eb7d4e40446 100644 --- a/llvm/lib/Target/ARM/ARMInstrInfo.td +++ b/llvm/lib/Target/ARM/ARMInstrInfo.td @@ -605,6 +605,20 @@ PseudoInst<(outs), (ins i32imm:$amt, pred:$p), NoItinerary, [(ARMcallseq_start timm:$amt)]>; } +def NOP : AI<(outs), (ins), Pseudo, NoItinerary, "nop", "", + [/* For disassembly only; pattern left blank */]>, + Requires<[IsARM, HasV6T2]> { + let Inst{27-16} = 0b001100100000; + let Inst{7-0} = 0b00000000; +} + +def DBG : AI<(outs), (ins i32imm:$opt), Pseudo, NoItinerary, "dbg", "\t$opt", + [/* For disassembly only; pattern left blank */]>, + Requires<[IsARM, HasV7]> { + let Inst{27-16} = 0b001100100000; + let Inst{7-4} = 0b1111; +} + // Address computation and loads and stores in PIC mode. let isNotDuplicable = 1 in { def PICADD : AXI1<0b0100, (outs GPR:$dst), (ins GPR:$a, pclabel:$cp, pred:$p), @@ -827,6 +841,12 @@ let isBranch = 1, isTerminator = 1 in { [/*(ARMbrcond bb:$target, imm:$cc, CCR:$ccr)*/]>; } +// Supervisor call (software interrupt) -- for disassembly only +let isCall = 1 in { +def SVC : ABI<0b1111, (outs), (ins i32imm:$svc), IIC_Br, "svc", "\t$svc", + [/* For disassembly only; pattern left blank */]>; +} + //===----------------------------------------------------------------------===// // Load / store Instructions. // |