[llvm-commits] [llvm] r134773 - /llvm/trunk/lib/Target/X86/X86Subtarget.cpp

Eli Friedman eli.friedman at gmail.com
Fri Jul 8 16:43:01 PDT 2011


Author: efriedma
Date: Fri Jul  8 18:43:01 2011
New Revision: 134773

URL: http://llvm.org/viewvc/llvm-project?rev=134773&view=rev
Log:
Really force on 64bit for 64-bit targets.  Should fix remaining failures on unknown x86/non-x86 targets.


Modified:
    llvm/trunk/lib/Target/X86/X86Subtarget.cpp

Modified: llvm/trunk/lib/Target/X86/X86Subtarget.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86Subtarget.cpp?rev=134773&r1=134772&r2=134773&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86Subtarget.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86Subtarget.cpp Fri Jul  8 18:43:01 2011
@@ -258,11 +258,19 @@
 #endif
     }
 
+    // Make sure 64-bit features are available in 64-bit mode. (But make sure
+    // SSE2 can be turned off explicitly.)
+    std::string FullFS = FS;
+    if (In64BitMode) {
+      if (!FullFS.empty())
+        FullFS = "+64bit,+sse2," + FullFS;
+      else
+        FullFS = "+64bit,+sse2";
+    }
+
     // If feature string is not empty, parse features string.
-    ParseSubtargetFeatures(CPUName, FS);
+    ParseSubtargetFeatures(CPUName, FullFS);
 
-    // All X86-64 CPUs also have SSE2, however user might request no SSE via 
-    // -mattr, so don't force SSELevel here.
     if (HasAVX)
       X86SSELevel = NoMMXSSE;
   } else {





More information about the llvm-commits mailing list