1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Merge branch 'PHP-8.2' into PHP-8.3

* PHP-8.2:
  Fix GH-15587: Autotools: fix configure check for aarch64 CRC32 API
This commit is contained in:
Peter Kokot
2024-08-25 18:01:33 +02:00
2 changed files with 21 additions and 5 deletions

2
NEWS
View File

@@ -9,6 +9,8 @@ PHP NEWS
. Fixed bug GH-15514 (Configure error: genif.sh: syntax error). (Peter Kokot)
. Fixed bug GH-15565 (--disable-ipv6 during compilation produces error
EAI_SYSTEM not found). (nielsdos)
. Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
(Bernd Kuhls, Thomas Petazzoni)
- DOM:
. Fixed bug GH-15551 (Segmentation fault (access null pointer) in

View File

@@ -753,11 +753,25 @@ AC_FUNC_ALLOCA
PHP_TIME_R_TYPE
PHP_CHECK_IN_ADDR_T
AC_CACHE_CHECK([for aarch64 CRC32 API], ac_cv_func___crc32d,
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <arm_acle.h>]],[[__crc32d(0, 0);]])],[ac_cv_func___crc32d=yes],[ac_cv_func___crc32d="no"])])
if test "$ac_cv_func___crc32d" = "yes"; then
AC_DEFINE([HAVE_AARCH64_CRC32], [1], [Define when aarch64 CRC32 API is available.])
fi
AC_CACHE_CHECK([for aarch64 CRC32 API], [ac_cv_func___crc32d],
[AC_LINK_IFELSE([AC_LANG_PROGRAM([
#include <arm_acle.h>
# if defined(__GNUC__)
# if!defined(__clang__)
# pragma GCC push_options
# pragma GCC target ("+nothing+crc")
# elif defined(__APPLE__)
# pragma clang attribute push(__attribute__((target("crc"))), apply_to=function)
# else
# pragma clang attribute push(__attribute__((target("+nothing+crc"))), apply_to=function)
# endif
# endif
], [__crc32d(0, 0);])],
[ac_cv_func___crc32d=yes],
[ac_cv_func___crc32d=no])])
AS_VAR_IF([ac_cv_func___crc32d], [yes],
[AC_DEFINE([HAVE_AARCH64_CRC32], [1],
[Define to 1 when aarch64 CRC32 API is available.])])
dnl Check for asm goto support.
AC_CACHE_CHECK([for asm goto], ac_cv__asm_goto,