summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2013-10-24 23:07:11 +0000
committerJim Grosbach <grosbach@apple.com>2013-10-24 23:07:11 +0000
commit3115047182dfa0e4692901e897a58e5be3329423 (patch)
tree701a274ee4dfa0accd2a7e97a86118f6245fe982 /lib
parent5759c3a02902026a27a0d1bc24a5bad85f52bd71 (diff)
downloadllvm-3115047182dfa0e4692901e897a58e5be3329423.tar.gz
llvm-3115047182dfa0e4692901e897a58e5be3329423.tar.bz2
llvm-3115047182dfa0e4692901e897a58e5be3329423.tar.xz
ARM: Tweak usage of '*vfp' compiler_rt functions.
Only use them if the subtarget has ARM mode, as these routines are implemented as ARM code. rdar://15302004 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193381 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-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 3deed78f33..10f26040e0 100644
--- a/lib/Target/ARM/ARMISelLowering.cpp
+++ b/lib/Target/ARM/ARMISelLowering.cpp
@@ -177,7 +177,8 @@ ARMTargetLowering::ARMTargetLowering(TargetMachine &TM)
if (Subtarget->isTargetIOS()) {
// Uses VFP for Thumb libfuncs if available.
- if (Subtarget->isThumb() && Subtarget->hasVFP2()) {
+ if (Subtarget->isThumb() && Subtarget->hasVFP2() &&
+ Subtarget->hasARMOps()) {
// Single-precision floating-point arithmetic.
setLibcallName(RTLIB::ADD_F32, "__addsf3vfp");
setLibcallName(RTLIB::SUB_F32, "__subsf3vfp");