summaryrefslogtreecommitdiff
path: root/lib/Target/ARM/ARMSubtarget.h
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2010-07-13 19:21:50 +0000
committerEvan Cheng <evan.cheng@apple.com>2010-07-13 19:21:50 +0000
commit7a415999625f9791a8a7eea2027e628e29de15c0 (patch)
treeb82cff54c050113dcad95b089a2c1f3feaa80edf /lib/Target/ARM/ARMSubtarget.h
parent43bc79a642b1b55140584c7a7eaac1788b5928e3 (diff)
downloadllvm-7a415999625f9791a8a7eea2027e628e29de15c0.tar.gz
llvm-7a415999625f9791a8a7eea2027e628e29de15c0.tar.bz2
llvm-7a415999625f9791a8a7eea2027e628e29de15c0.tar.xz
Add an ARM "feature". Cortex-a8 fp comparison is very slow (> 20 cycles).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108256 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMSubtarget.h')
-rw-r--r--lib/Target/ARM/ARMSubtarget.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMSubtarget.h b/lib/Target/ARM/ARMSubtarget.h
index 8332bba22d..e7d92ede9b 100644
--- a/lib/Target/ARM/ARMSubtarget.h
+++ b/lib/Target/ARM/ARMSubtarget.h
@@ -54,6 +54,9 @@ protected:
/// the VML[AS] instructions are slow (if so, don't use them).
bool SlowVMLx;
+ /// SlowFPBrcc - True if floating point compare + branch is slow.
+ bool SlowFPBrcc;
+
/// IsThumb - True if we are in thumb mode, false if in ARM mode.
bool IsThumb;
@@ -133,6 +136,7 @@ protected:
bool hasDivide() const { return HasHardwareDivide; }
bool hasT2ExtractPack() const { return HasT2ExtractPack; }
bool useVMLx() const {return hasVFP2() && !SlowVMLx; }
+ bool isFPBrccSlow() const { return SlowFPBrcc; }
bool hasFP16() const { return HasFP16; }