]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Check cpuid LWP bit.
authorSebastian Pop <sebastian.pop@amd.com>
Mon, 7 Dec 2009 22:23:16 +0000 (22:23 +0000)
committerSebastian Pop <spop@gcc.gnu.org>
Mon, 7 Dec 2009 22:23:16 +0000 (22:23 +0000)
* config/i386/driver-i386.c (host_detect_local_cpu): Add -mlwp to the
options when bit_LWP is set.

From-SVN: r155061

gcc/ChangeLog
gcc/config/i386/driver-i386.c

index 9f2510489611b782355f255f933d1a864f011b95..43d9a8fb6612f2184bb3032838f4a8e39e1eaa27 100644 (file)
@@ -1,3 +1,8 @@
+2009-12-07  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * config/i386/driver-i386.c (host_detect_local_cpu): Add -mlwp to the
+       options when bit_LWP is set.
+
 2009-12-07  Sebastian Pop  <sebastian.pop@amd.com>
 
        * config/i386/cpuid.h (bit_ABM): New.
index d3088f37bb65d156fed577c7ea1516a4d3afef8c..05ba01e2f818dd0c77cc00becee15f87bedcd0fe 100644 (file)
@@ -383,7 +383,7 @@ const char *host_detect_local_cpu (int argc, const char **argv)
   unsigned int has_longmode = 0, has_3dnowp = 0, has_3dnow = 0;
   unsigned int has_movbe = 0, has_sse4_1 = 0, has_sse4_2 = 0;
   unsigned int has_popcnt = 0, has_aes = 0, has_avx = 0;
-  unsigned int has_pclmul = 0, has_abm = 0;
+  unsigned int has_pclmul = 0, has_abm = 0, has_lwp = 0;
 
   bool arch;
 
@@ -445,6 +445,7 @@ const char *host_detect_local_cpu (int argc, const char **argv)
       has_lahf_lm = ecx & bit_LAHF_LM;
       has_sse4a = ecx & bit_SSE4a;
       has_abm = ecx & bit_ABM;
+      has_lwp = ecx & bit_LWP;
 
       has_longmode = edx & bit_LM;
       has_3dnowp = edx & bit_3DNOWP;
@@ -625,6 +626,8 @@ const char *host_detect_local_cpu (int argc, const char **argv)
        options = concat (options, " -mpopcnt", NULL);
       if (has_abm)
        options = concat (options, " -mabm", NULL);
+      if (has_lwp)
+       options = concat (options, " -mlwp", NULL);
 
       if (has_avx)
        options = concat (options, " -mavx", NULL);