diff options
author | Jim Grosbach <grosbach@apple.com> | 2010-03-25 20:48:50 +0000 |
---|---|---|
committer | Jim Grosbach <grosbach@apple.com> | 2010-03-25 20:48:50 +0000 |
commit | 65cef00142c9a187707c56a293ae794765f7463b (patch) | |
tree | 5f39f003daaa64c755b1e01edf932cd5707417e6 | |
parent | fa80bec349b7fff9ec97b5f66795d7bafa72da62 (diff) | |
download | external_llvm-65cef00142c9a187707c56a293ae794765f7463b.zip external_llvm-65cef00142c9a187707c56a293ae794765f7463b.tar.gz external_llvm-65cef00142c9a187707c56a293ae794765f7463b.tar.bz2 |
ARM cortex-a8 doesn't do vmla/vmls well. disable them by default for that cpu
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99549 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/ARM/ARMSubtarget.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMSubtarget.cpp b/lib/Target/ARM/ARMSubtarget.cpp index 6b4438d..8df59e4 100644 --- a/lib/Target/ARM/ARMSubtarget.cpp +++ b/lib/Target/ARM/ARMSubtarget.cpp @@ -127,6 +127,12 @@ ARMSubtarget::ARMSubtarget(const std::string &TT, const std::string &FS, // operations with NEON instructions. if (UseNEONFP.getPosition() == 0) UseNEONForSinglePrecisionFP = true; + // The VFP vlma and vlms instructions don't play nicely with others; + // disable them. + // FIXME: This may be true for other variants as well. Get benchmark + // numbers and add them if determined that's the case. + if (UseVMLxInstructions.getPosition() == 0) + UseVMLx = false; } } |