summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorJohnny Chen <johnny.chen@apple.com>2010-02-08 17:26:09 +0000
committerJohnny Chen <johnny.chen@apple.com>2010-02-08 17:26:09 +0000
commitc7e606f1326ef545e7c76d7af63fc5df6210d439 (patch)
tree74d1f162dac86513206002e7971e66405b2f2b34 /llvm/lib/Target
parentac5ab795558838da3a2907598339320ecf05b63a (diff)
downloadbcm5719-llvm-c7e606f1326ef545e7c76d7af63fc5df6210d439.tar.gz
bcm5719-llvm-c7e606f1326ef545e7c76d7af63fc5df6210d439.zip
Added VMOVRRS/VMOVSRR to ARMInstrVFP.td for disassembly purpose.
A8.6.331 VMOV (between two ARM core registers and two single-precision registers) llvm-svn: 95548
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/ARM/ARMInstrVFP.td14
1 files changed, 14 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMInstrVFP.td b/llvm/lib/Target/ARM/ARMInstrVFP.td
index 2ba58665516..7fcd98c8c13 100644
--- a/llvm/lib/Target/ARM/ARMInstrVFP.td
+++ b/llvm/lib/Target/ARM/ARMInstrVFP.td
@@ -252,6 +252,13 @@ def VMOVRRD : AVConv3I<0b11000101, 0b1011,
let Inst{7-6} = 0b00;
}
+def VMOVRRS : AVConv3I<0b11000101, 0b1010,
+ (outs GPR:$wb, GPR:$dst2), (ins SPR:$src1, SPR:$src2),
+ IIC_VMOVDI, "vmov", "\t$wb, $dst2, $src1, $src2",
+ [/* For disassembly only; pattern left blank */]> {
+ let Inst{7-6} = 0b00;
+}
+
// FMDHR: GPR -> SPR
// FMDLR: GPR -> SPR
@@ -262,6 +269,13 @@ def VMOVDRR : AVConv5I<0b11000100, 0b1011,
let Inst{7-6} = 0b00;
}
+def VMOVSRR : AVConv5I<0b11000100, 0b1010,
+ (outs SPR:$dst1, SPR:$dst2), (ins GPR:$src1, GPR:$src2),
+ IIC_VMOVID, "vmov", "\t$dst1, $dst2, $src1, $src2",
+ [/* For disassembly only; pattern left blank */]> {
+ let Inst{7-6} = 0b00;
+}
+
// FMRDH: SPR -> GPR
// FMRDL: SPR -> GPR
// FMRRS: SPR -> GPR
OpenPOWER on IntegriCloud