aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJussi Kivilinna <[email protected]>2022-03-29 18:55:41 +0300
committerJussi Kivilinna <[email protected]>2022-03-29 18:55:41 +0300
commita5d126c61cc00aa2d63c389a956330067c90cbfd (patch)
treeaea86f5c48da269799be45bfbaf57fcc8af5b0f4
parent4dc707e336a91ca9ca5a59787b9245a1ca3042c6 (diff)
downloadlibgcrypt-a5d126c61cc00aa2d63c389a956330067c90cbfd.tar.gz
libgcrypt-a5d126c61cc00aa2d63c389a956330067c90cbfd.tar.bz2
libgcrypt-a5d126c61cc00aa2d63c389a956330067c90cbfd.zip
configure: fix avx512 check for i386
* configure.ac (gcry_cv_gcc_inline_asm_avx512): Do not use ZMM22 register; Check for broadcast memory source. -- Signed-off-by: Jussi Kivilinna <[email protected]>
-rw-r--r--configure.ac6
1 files changed, 3 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac
index 46715139..c4fc8ce4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1568,9 +1568,9 @@ AC_CACHE_CHECK([whether GCC inline assembler supports AVX512 instructions],
[[void a(void) {
__asm__("xgetbv; vpopcntq %%zmm7, %%zmm1%{%%k1%}%{z%};\n\t":::"cc");
__asm__("vpexpandb %%zmm3, %%zmm1;\n\t":::"cc");
- __asm__("vpxorq %%xmm22, %%xmm22, %%xmm22;\n\t":::"cc");
- __asm__("vpxorq %%ymm22, %%ymm22, %%ymm22;\n\t":::"cc");
- __asm__("vpxorq %%zmm22, %%zmm22, %%zmm22;\n\t":::"cc");
+ __asm__("vpxorq %%xmm7, %%xmm7, %%xmm7;\n\t":::"cc");
+ __asm__("vpxorq %%ymm7, %%ymm7, %%ymm7;\n\t":::"cc");
+ __asm__("vpxorq (%%eax)%{1to8%}, %%zmm7, %%zmm7;\n\t":::"cc");
}]], [ a(); ] )],
[gcry_cv_gcc_inline_asm_avx512=yes])
fi])