Do not detect AES-NI support if disabled by configure.
authorWerner Koch <wk@gnupg.org>
Wed, 21 Nov 2012 11:30:58 +0000 (12:30 +0100)
committerWerner Koch <wk@gnupg.org>
Wed, 21 Nov 2012 11:34:19 +0000 (12:34 +0100)
* src/hwfeatures.c (detect_ia32_gnuc): Detect AESNI support only if
that support has been enabled.
--

We better do not try to detect AESNI support if the support has been
disabled in the configure run.  Disabling the support might have been
done due to problem with the AESNI support on a certain platform and
we can't exclude problem for sure with the detection code either.

src/hwfeatures.c

index 89d7685..82c435b 100644 (file)
@@ -118,8 +118,9 @@ detect_x86_64_gnuc (void)
       /* This is an AMD CPU.  */
     }
 
-  /* Detect Intel features, that might be supported also by other vendors
-   * also. */
+  /* Detect Intel features, that might also be supported by other
+     vendors.  */
+#ifdef ENABLE_AESNI_SUPPORT
   asm volatile
     ("movl $1, %%eax\n\t"           /* Get CPU info and feature flags.  */
      "cpuid\n"
@@ -132,6 +133,8 @@ detect_x86_64_gnuc (void)
      :
      : "%eax", "%ebx", "%ecx", "%edx", "cc"
      );
+#endif /*#ifdef ENABLE_AESNI_SUPPORT*/
+
 }
 #endif /* __x86_64__ && __GNUC__ */
 
@@ -246,8 +249,9 @@ detect_ia32_gnuc (void)
 
     }
 
-  /* Detect Intel features, that might be supported also by other vendors
-   * also. */
+  /* Detect Intel features, that might also be supported by other
+     vendors.  */
+#ifdef ENABLE_AESNI_SUPPORT
   asm volatile
     ("pushl %%ebx\n\t"         /* Save GOT register.  */
      "movl $1, %%eax\n\t"           /* Get CPU info and feature flags.  */
@@ -262,6 +266,8 @@ detect_ia32_gnuc (void)
      :
      : "%eax", "%ecx", "%edx", "cc"
      );
+#endif /*ENABLE_AESNI_SUPPORT*/
+
 }
 #endif /* __i386__ && SIZEOF_UNSIGNED_LONG == 4 && __GNUC__ */