Fix AES-NI detection.
authorWerner Koch <wk@gnupg.org>
Thu, 17 Feb 2011 10:00:25 +0000 (11:00 +0100)
committerWerner Koch <wk@gnupg.org>
Thu, 17 Feb 2011 10:00:25 +0000 (11:00 +0100)
Really a kind of bown paper bag bug: Use AND and not SUB for bit
testing.  I should have known that, given that 30 years ago I wrote
almost everything in asm.

src/ChangeLog
src/hwfeatures.c

index 4f3a4e3..6859042 100644 (file)
@@ -1,3 +1,8 @@
+2011-02-17  Werner Koch  <wk@g10code.com>
+
+       * hwfeatures.c (detect_ia32_gnuc): Fix AES-NI detection.  Use AND
+       instead of SUB for bit testing.
+
 2011-02-16  Werner Koch  <wk@g10code.com>
 
        * gcrypt.h.in (GCRYCTL_DISABLE_HWF): New.
index 2b3bb2c..c356798 100644 (file)
@@ -149,7 +149,7 @@ detect_ia32_gnuc (void)
          "movl $1, %%eax\n\t"           /* Get CPU info and feature flags.  */
          "cpuid\n"
          "popl %%ebx\n\t"              /* Restore GOT register. */
-         "cmpl $0x02000000, %%ecx\n\t"  /* Test bit 25.  */
+         "testl $0x02000000, %%ecx\n\t" /* Test bit 25.  */
          "jz .Lno_aes%=\n\t"            /* No AES support.  */
          "orl $256, %0\n"               /* Set our HWF_INTEL_AES bit.  */