diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-11-17 01:16:19 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-11-17 01:16:19 +0000 |
commit | 1beddcffc3c549a136ca5d84e0d1dddf85a6414a (patch) | |
tree | 3ce46ea51715e4c9aee0dc1702f5bd95c6d49fa5 /clang/lib | |
parent | 8983158e9d1414f47beec7128f544bf078016a87 (diff) | |
download | bcm5719-llvm-1beddcffc3c549a136ca5d84e0d1dddf85a6414a.tar.gz bcm5719-llvm-1beddcffc3c549a136ca5d84e0d1dddf85a6414a.zip |
Clean up X86 target feature translation code slightly. No intended functional change. Patch by Jung-uk Kim.
llvm-svn: 168237
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 4488474b3f0..e8afa8201cb 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -1837,7 +1837,7 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const { // X86_64 always has SSE2. if (getTriple().getArch() == llvm::Triple::x86_64) - Features["sse2"] = Features["sse"] = Features["mmx"] = true; + setFeatureEnabled(Features, "sse2", true); switch (CPU) { case CK_Generic: @@ -1854,53 +1854,43 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const { break; case CK_Pentium3: case CK_Pentium3M: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "sse", true); break; case CK_PentiumM: case CK_Pentium4: case CK_Pentium4M: case CK_x86_64: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "sse2", true); break; case CK_Yonah: case CK_Prescott: case CK_Nocona: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "sse3", true); break; case CK_Core2: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "ssse3", true); break; case CK_Penryn: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "sse4.1", true); break; case CK_Atom: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "ssse3", true); break; case CK_Corei7: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "sse4", true); break; case CK_Corei7AVX: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "avx", true); setFeatureEnabled(Features, "aes", true); setFeatureEnabled(Features, "pclmul", true); break; case CK_CoreAVXi: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "avx", true); setFeatureEnabled(Features, "aes", true); setFeatureEnabled(Features, "pclmul", true); setFeatureEnabled(Features, "rdrnd", true); break; case CK_CoreAVX2: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "avx2", true); setFeatureEnabled(Features, "aes", true); setFeatureEnabled(Features, "pclmul", true); @@ -1962,7 +1952,6 @@ void X86TargetInfo::getDefaultFeatures(llvm::StringMap<bool> &Features) const { setFeatureEnabled(Features, "pclmul", true); break; case CK_C3_2: - setFeatureEnabled(Features, "mmx", true); setFeatureEnabled(Features, "sse", true); break; } @@ -2021,12 +2010,12 @@ bool X86TargetInfo::setFeatureEnabled(llvm::StringMap<bool> &Features, Features["ssse3"] = Features["sse41"] = Features["sse42"] = Features["popcnt"] = Features["avx"] = Features["fma"] = true; else if (Name == "fma4") - Features["mmx"] = Features["sse"] = Features["sse2"] = Features["sse3"] = + Features["mmx"] = Features["sse"] = Features["sse2"] = Features["sse3"] = Features["ssse3"] = Features["sse41"] = Features["sse42"] = Features["popcnt"] = Features["avx"] = Features["sse4a"] = Features["fma4"] = true; else if (Name == "xop") - Features["mmx"] = Features["sse"] = Features["sse2"] = Features["sse3"] = + Features["mmx"] = Features["sse"] = Features["sse2"] = Features["sse3"] = Features["ssse3"] = Features["sse41"] = Features["sse42"] = Features["popcnt"] = Features["avx"] = Features["sse4a"] = Features["fma4"] = Features["xop"] = true; |