Skip to content

Commit 7ae3a47

Browse files
committed
Merge branch 'master' into preload
* master: Update NEWS [ci skip] Update NEWS [ci skip] Update libmagic.patch [ci skip] Update libmagic.patch [ci skip] Declare function proto in header Declare function proto in header Fix #76825: Undefined symbols ___cpuid_count NEWS Fix: #77110 undefined symbol zend_string_equal_val in C++ build Fix #77105: Use position:sticky for <th> in `phpinfo()` Implement handling for JIT recognition when cross compiling Backport 7f5f460 for 7.2 Fix #76348: WSDL_CACHE_MEMORY causes Segmentation fault Rework places in libmagic regarding previous CVE-2014-3538 fixes Change the way JIT availability is checked Fix a test for ldap extension Fixed bug #77092 Future-proof email addresses
2 parents 9b0a53e + 049f239 commit 7ae3a47

File tree

16 files changed

+297
-180
lines changed

16 files changed

+297
-180
lines changed

Zend/Zend.m4

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -491,3 +491,21 @@ dnl This is the most probable fallback so we assume yes in case of cross compile
491491
if test "$ac_cv_huge_val_nan" = "yes"; then
492492
AC_DEFINE([HAVE_HUGE_VAL_NAN], 1, [whether HUGE_VAL + -HUGEVAL == NAN])
493493
fi
494+
495+
dnl
496+
dnl Check whether __cpuid_count is available
497+
dnl
498+
AC_CACHE_CHECK(whether __cpuid_count is available, ac_cv_cpuid_count_available, [
499+
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
500+
#include <cpuid.h>
501+
]], [[
502+
unsigned eax, ebx, ecx, edx;
503+
__cpuid_count(0, 0, eax, ebx, ecx, edx);
504+
]])], [
505+
ac_cv_cpuid_count_available=yes
506+
], [
507+
ac_cv_cpuid_count_available=no
508+
])])
509+
if test "$ac_cv_cpuid_count_available" = "yes"; then
510+
AC_DEFINE([HAVE_CPUID_COUNT], 1, [whether __cpuid_count is available])
511+
fi

Zend/zend_cpuinfo.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ typedef struct _zend_cpu_info {
2929
static zend_cpu_info cpuinfo = {0};
3030

3131
#if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
32-
# ifdef HAVE_CPUID_H
32+
# if defined(HAVE_CPUID_H) && defined(HAVE_CPUID_COUNT)
3333
# include <cpuid.h>
3434
static void __zend_cpuid(uint32_t func, uint32_t subfunc, zend_cpu_info *cpuinfo) {
3535
__cpuid_count(func, subfunc, cpuinfo->eax, cpuinfo->ebx, cpuinfo->ecx, cpuinfo->edx);

Zend/zend_string.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,9 @@ static zend_always_inline void zend_string_release_ex(zend_string *s, int persis
294294
}
295295

296296
#if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
297+
BEGIN_EXTERN_C()
297298
ZEND_API zend_bool ZEND_FASTCALL zend_string_equal_val(zend_string *s1, zend_string *s2);
299+
END_EXTERN_C()
298300
#else
299301
static zend_always_inline zend_bool zend_string_equal_val(zend_string *s1, zend_string *s2)
300302
{

0 commit comments

Comments
 (0)