i386-cpuinfo.c: Set __cpu_vendor always.
authorSriraman Tallam <tmsriram@google.com>
Wed, 25 Apr 2012 02:04:22 +0000 (02:04 +0000)
committerSriraman Tallam <tmsriram@gcc.gnu.org>
Wed, 25 Apr 2012 02:04:22 +0000 (02:04 +0000)
2012-04-24  Sriraman Tallam  <tmsriram@google.com>

* libgcc/config/i386/i386-cpuinfo.c: Set __cpu_vendor always.

From-SVN: r186795

libgcc/ChangeLog
libgcc/config/i386/i386-cpuinfo.c

index 8040eaf..638994a 100644 (file)
@@ -1,5 +1,9 @@
 2012-04-24  Sriraman Tallam  <tmsriram@google.com>
 
+       * libgcc/config/i386/i386-cpuinfo.c: Set __cpu_vendor always.
+
+2012-04-24  Sriraman Tallam  <tmsriram@google.com>
+
        * libgcc/config/i386/i386-cpuinfo.c: New file.
        * libgcc/config/i386/t-cpuinfo: New file.
        * libgcc/config.host: Include t-cpuinfo.
index 0735d2c..dccf1d5 100644 (file)
@@ -256,16 +256,25 @@ __cpu_indicator_init (void)
 
   /* Assume cpuid insn present. Run in level 0 to get vendor id. */
   if (!__get_cpuid_output (0, &eax, &ebx, &ecx, &edx))
-    return -1;
+    {
+      __cpu_model.__cpu_vendor = VENDOR_OTHER;
+      return -1;
+    }
 
   vendor = ebx;
   max_level = eax;
 
   if (max_level < 1)
-    return -1;
+    {
+      __cpu_model.__cpu_vendor = VENDOR_OTHER;
+      return -1;
+    }
 
   if (!__get_cpuid_output (1, &eax, &ebx, &ecx, &edx))
-    return -1;
+    {
+      __cpu_model.__cpu_vendor = VENDOR_OTHER;
+      return -1;
+    }
 
   model = (eax >> 4) & 0x0f;
   family = (eax >> 8) & 0x0f;