aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/ARM/ARMISelLowering.cpp
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2010-08-11 15:44:15 +0000
committerJim Grosbach <grosbach@apple.com>2010-08-11 15:44:15 +0000
commitf0f1a33b427ca5ac25b1fefbd18906e263a884cc (patch)
tree1fc917344b0ac16a11ad95e1b8f6b476fb7867f8 /lib/Target/ARM/ARMISelLowering.cpp
parent0133a2333e913ebcbafe081668e51fc99dac35c8 (diff)
downloadexternal_llvm-f0f1a33b427ca5ac25b1fefbd18906e263a884cc.zip
external_llvm-f0f1a33b427ca5ac25b1fefbd18906e263a884cc.tar.gz
external_llvm-f0f1a33b427ca5ac25b1fefbd18906e263a884cc.tar.bz2
cortex m4 has floating point support, but only single precision.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110810 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMISelLowering.cpp')
-rw-r--r--lib/Target/ARM/ARMISelLowering.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Target/ARM/ARMISelLowering.cpp b/lib/Target/ARM/ARMISelLowering.cpp
index e4b5562..073528a 100644
--- a/lib/Target/ARM/ARMISelLowering.cpp
+++ b/lib/Target/ARM/ARMISelLowering.cpp
@@ -266,7 +266,8 @@ ARMTargetLowering::ARMTargetLowering(TargetMachine &TM)
addRegisterClass(MVT::i32, ARM::GPRRegisterClass);
if (!UseSoftFloat && Subtarget->hasVFP2() && !Subtarget->isThumb1Only()) {
addRegisterClass(MVT::f32, ARM::SPRRegisterClass);
- addRegisterClass(MVT::f64, ARM::DPRRegisterClass);
+ if (!Subtarget->isFPOnlySP())
+ addRegisterClass(MVT::f64, ARM::DPRRegisterClass);
setTruncStoreAction(MVT::f64, MVT::f32, Expand);
}