diff options
author | Artyom Skrobov <Artyom.Skrobov@arm.com> | 2013-11-11 19:56:13 +0000 |
---|---|---|
committer | Artyom Skrobov <Artyom.Skrobov@arm.com> | 2013-11-11 19:56:13 +0000 |
commit | ef572e31e210a03c0669e3ed2ed7cf2d789f8599 (patch) | |
tree | 3e20bbe507846933cc69c33c94b86782062914b4 /lib/Target/ARM | |
parent | 559d409633ce22574dcab56d4f600b6eb1304652 (diff) | |
download | external_llvm-ef572e31e210a03c0669e3ed2ed7cf2d789f8599.zip external_llvm-ef572e31e210a03c0669e3ed2ed7cf2d789f8599.tar.gz external_llvm-ef572e31e210a03c0669e3ed2ed7cf2d789f8599.tar.bz2 |
[ARM] Add support for MVFR2 which is new in ARMv8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194416 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM')
-rw-r--r-- | lib/Target/ARM/ARMInstrVFP.td | 2 | ||||
-rw-r--r-- | lib/Target/ARM/ARMRegisterInfo.td | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMInstrVFP.td b/lib/Target/ARM/ARMInstrVFP.td index ff1087f..a8cdc5c 100644 --- a/lib/Target/ARM/ARMInstrVFP.td +++ b/lib/Target/ARM/ARMInstrVFP.td @@ -1546,6 +1546,8 @@ let Uses = [FPSCR] in { "vmrs", "\t$Rt, mvfr0", []>; def VMRS_MVFR1 : MovFromVFP<0b0110 /* mvfr1 */, (outs GPR:$Rt), (ins), "vmrs", "\t$Rt, mvfr1", []>; + def VMRS_MVFR2 : MovFromVFP<0b0101 /* mvfr2 */, (outs GPR:$Rt), (ins), + "vmrs", "\t$Rt, mvfr2", []>, Requires<[HasFPARMv8]>; def VMRS_FPINST : MovFromVFP<0b1001 /* fpinst */, (outs GPR:$Rt), (ins), "vmrs", "\t$Rt, fpinst", []>; def VMRS_FPINST2 : MovFromVFP<0b1010 /* fpinst2 */, (outs GPR:$Rt), (ins), diff --git a/lib/Target/ARM/ARMRegisterInfo.td b/lib/Target/ARM/ARMRegisterInfo.td index 90c6a96..d045761 100644 --- a/lib/Target/ARM/ARMRegisterInfo.td +++ b/lib/Target/ARM/ARMRegisterInfo.td @@ -172,6 +172,7 @@ def ITSTATE : ARMReg<4, "itstate">; // Special Registers - only available in privileged mode. def FPSID : ARMReg<0, "fpsid">; +def MVFR2 : ARMReg<5, "mvfr2">; def MVFR1 : ARMReg<6, "mvfr1">; def MVFR0 : ARMReg<7, "mvfr0">; def FPEXC : ARMReg<8, "fpexc">; |