diff options
author | Alexey Volkov <avolkov.intel@gmail.com> | 2014-06-25 12:15:36 +0000 |
---|---|---|
committer | Alexey Volkov <avolkov.intel@gmail.com> | 2014-06-25 12:15:36 +0000 |
commit | 54ff080e3929d2a1d424d12bbd395c31ab83886a (patch) | |
tree | 9e1720112c1d563ad70a322949137b8771b0e5ce /clang/lib/Driver/Tools.cpp | |
parent | b8fd41926c1931cd5889f4954c7bdda16fee6b16 (diff) | |
download | bcm5719-llvm-54ff080e3929d2a1d424d12bbd395c31ab83886a.tar.gz bcm5719-llvm-54ff080e3929d2a1d424d12bbd395c31ab83886a.zip |
Align with new GCC options for x86 Android
32-bit: +ssse3
64-bit: +sse4.2 +popcnt
Differential Revision: http://reviews.llvm.org/D4287
llvm-svn: 211688
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r-- | clang/lib/Driver/Tools.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 48528d9265b..f652fadf0f3 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -1426,9 +1426,13 @@ static void getX86TargetFeatures(const llvm::Triple &Triple, Features.push_back("-fsgsbase"); } + // Add features to comply with gcc on Android if (Triple.getEnvironment() == llvm::Triple::Android) { - // Add sse3 feature to comply with gcc on Android - Features.push_back("+sse3"); + if (Triple.getArch() == llvm::Triple::x86_64) { + Features.push_back("+sse4.2"); + Features.push_back("+popcnt"); + } else + Features.push_back("+ssse3"); } // Now add any that the user explicitly requested on the command line, |