diff options
author | Jim Grosbach <grosbach@apple.com> | 2012-03-16 00:27:18 +0000 |
---|---|---|
committer | Jim Grosbach <grosbach@apple.com> | 2012-03-16 00:27:18 +0000 |
commit | 9426ac7b575de9e1297a01f27307d858343ac4ed (patch) | |
tree | be9aeaca032e552bc694d987335ced2ecaa8d3f5 /lib/Target | |
parent | 75df9f23fa7e3c4e02753fb0405d69cd0d68e0ef (diff) | |
download | external_llvm-9426ac7b575de9e1297a01f27307d858343ac4ed.zip external_llvm-9426ac7b575de9e1297a01f27307d858343ac4ed.tar.gz external_llvm-9426ac7b575de9e1297a01f27307d858343ac4ed.tar.bz2 |
ARM vmrs system registers mvfr0 and mvfr1 handling.
rdar://11058464
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152881 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
-rw-r--r-- | lib/Target/ARM/ARMInstrVFP.td | 4 | ||||
-rw-r--r-- | lib/Target/ARM/ARMRegisterInfo.td | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMInstrVFP.td b/lib/Target/ARM/ARMInstrVFP.td index 307e25e..23cd524 100644 --- a/lib/Target/ARM/ARMInstrVFP.td +++ b/lib/Target/ARM/ARMInstrVFP.td @@ -1212,6 +1212,10 @@ let Uses = [FPSCR] in { "vmrs", "\t$Rt, fpexc", []>; def VMRS_FPSID : MovFromVFP<0b0000 /* fpsid */, (outs GPR:$Rt), (ins), "vmrs", "\t$Rt, fpsid", []>; + def VMRS_MVFR0 : MovFromVFP<0b0111 /* mvfr0 */, (outs GPR:$Rt), (ins), + "vmrs", "\t$Rt, mvfr0", []>; + def VMRS_MVFR1 : MovFromVFP<0b0110 /* mvfr1 */, (outs GPR:$Rt), (ins), + "vmrs", "\t$Rt, mvfr1", []>; } //===----------------------------------------------------------------------===// diff --git a/lib/Target/ARM/ARMRegisterInfo.td b/lib/Target/ARM/ARMRegisterInfo.td index 527e8b5..1327fb8 100644 --- a/lib/Target/ARM/ARMRegisterInfo.td +++ b/lib/Target/ARM/ARMRegisterInfo.td @@ -166,6 +166,8 @@ def ITSTATE : ARMReg<4, "itstate">; // Special Registers - only available in privileged mode. def FPSID : ARMReg<0, "fpsid">; +def MVFR1 : ARMReg<6, "mvfr1">; +def MVFR0 : ARMReg<7, "mvfr0">; def FPEXC : ARMReg<8, "fpexc">; // Register classes. |