Merge branch 'PHP-7.4'

* PHP-7.4:
  Remove configure checks for supported instruction sets
This commit is contained in:
Nikita Popov 2019-10-31 11:34:15 +01:00
commit 1517bc4426
3 changed files with 6 additions and 36 deletions

View File

@ -532,21 +532,21 @@ static zend_always_inline double _zend_get_nan(void) /* {{{ */
#endif
#if (defined(__i386__) || defined(__x86_64__))
# if PHP_HAVE_SSSE3_INSTRUCTIONS && defined(HAVE_TMMINTRIN_H)
# define PHP_HAVE_SSSE3
# if defined(HAVE_TMMINTRIN_H)
# define PHP_HAVE_SSSE3
# endif
# if PHP_HAVE_SSE4_2_INSTRUCTIONS && defined(HAVE_NMMINTRIN_H)
# define PHP_HAVE_SSE4_2
# if defined(HAVE_NMMINTRIN_H)
# define PHP_HAVE_SSE4_2
# endif
/*
* AVX2 support was added in gcc 4.7, but AVX2 intrinsics don't work in
* __attribute__((target("avx2"))) functions until gcc 4.9.
*/
# if PHP_HAVE_AVX2_INSTRUCTIONS && defined(HAVE_IMMINTRIN_H) && \
# if defined(HAVE_IMMINTRIN_H) && \
(defined(__llvm__) || defined(__clang__) || (defined(__GNUC__) && ZEND_GCC_VERSION >= 4009))
# define PHP_HAVE_AVX2
# define PHP_HAVE_AVX2
# endif
#endif

View File

@ -2677,30 +2677,6 @@ AC_DEFUN([PHP_CHECK_BUILTIN_CPU_SUPPORTS], [
[$have_builtin_cpu_supports], [Whether the compiler supports __builtin_cpu_supports])
])
dnl
dnl PHP_CHECK_CPU_SUPPORTS
dnl
AC_DEFUN([PHP_CHECK_CPU_SUPPORTS], [
AC_REQUIRE([PHP_CHECK_BUILTIN_CPU_INIT])
AC_REQUIRE([PHP_CHECK_BUILTIN_CPU_SUPPORTS])
have_ext_instructions=0
if test $have_builtin_cpu_supports = 1; then
AC_MSG_CHECKING([for $1 instructions supports])
AC_RUN_IFELSE([AC_LANG_SOURCE([[
int main() {
return __builtin_cpu_supports("$1")? 0 : 1;
}
]])], [
have_ext_instructions=1
AC_MSG_RESULT([yes])
], [
AC_MSG_RESULT([no])
], [AC_MSG_RESULT([no])])
fi
AC_DEFINE_UNQUOTED(AS_TR_CPP([PHP_HAVE_$1_INSTRUCTIONS]),
[$have_ext_instructions], [Whether the compiler supports $1 instructions])
])
dnl
dnl PHP_PATCH_CONFIG_HEADERS([FILE])
dnl

View File

@ -540,12 +540,6 @@ PHP_CHECK_BUILTIN_CPU_INIT
dnl Check __builtin_cpu_supports
PHP_CHECK_BUILTIN_CPU_SUPPORTS
dnl Check instructions.
PHP_CHECK_CPU_SUPPORTS([ssse3])
PHP_CHECK_CPU_SUPPORTS([sse4.2])
PHP_CHECK_CPU_SUPPORTS([avx])
PHP_CHECK_CPU_SUPPORTS([avx2])
dnl Check for structure members.
AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[#include <time.h>])
AC_CHECK_MEMBERS([struct stat.st_blksize, struct stat.st_rdev])