prevent-constant-folding-in-CRC-probes.patch
text/x-diff
Filename: prevent-constant-folding-in-CRC-probes.patch
Type: text/x-diff
Part: 0
Patch
Format: unified
| File | + | − |
|---|---|---|
| config/c-compiler.m4 | 3 | 3 |
| configure | 6 | 6 |
diff --git a/config/c-compiler.m4 b/config/c-compiler.m4
index d3562d6feee..a4b005d07ca 100644
--- a/config/c-compiler.m4
+++ b/config/c-compiler.m4
@@ -659,9 +659,9 @@ AC_DEFUN([PGAC_ARMV8_CRC32C_INTRINSICS],
AC_CACHE_CHECK([for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=$1], [Ac_cachevar],
[pgac_save_CFLAGS=$CFLAGS
CFLAGS="$pgac_save_CFLAGS $1"
-AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <arm_acle.h>],
- [unsigned int crc = 0;
- crc = __crc32cb(crc, 0);
+AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <arm_acle.h>
+unsigned int crc;],
+ [crc = __crc32cb(crc, 0);
crc = __crc32ch(crc, 0);
crc = __crc32cw(crc, 0);
crc = __crc32cd(crc, 0);
diff --git a/configure b/configure
index fa9085b1c0d..3f89837e031 100755
--- a/configure
+++ b/configure
@@ -18741,11 +18741,11 @@ CFLAGS="$pgac_save_CFLAGS "
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <arm_acle.h>
+unsigned int crc;
int
main ()
{
-unsigned int crc = 0;
- crc = __crc32cb(crc, 0);
+crc = __crc32cb(crc, 0);
crc = __crc32ch(crc, 0);
crc = __crc32cw(crc, 0);
crc = __crc32cd(crc, 0);
@@ -18782,11 +18782,11 @@ CFLAGS="$pgac_save_CFLAGS -march=armv8-a+crc+simd"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <arm_acle.h>
+unsigned int crc;
int
main ()
{
-unsigned int crc = 0;
- crc = __crc32cb(crc, 0);
+crc = __crc32cb(crc, 0);
crc = __crc32ch(crc, 0);
crc = __crc32cw(crc, 0);
crc = __crc32cd(crc, 0);
@@ -18823,11 +18823,11 @@ CFLAGS="$pgac_save_CFLAGS -march=armv8-a+crc"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <arm_acle.h>
+unsigned int crc;
int
main ()
{
-unsigned int crc = 0;
- crc = __crc32cb(crc, 0);
+crc = __crc32cb(crc, 0);
crc = __crc32ch(crc, 0);
crc = __crc32cw(crc, 0);
crc = __crc32cd(crc, 0);