Commit 512c04e39f6 for php

commit 512c04e39f674dbf4133b8fbbd381cd8c2df6836
Author: Shivam Mathur <shivam_jpr@hotmail.com>
Date:   Sun Oct 18 20:45:03 2026 +0530

    Fix macOS CI (#24409)

    * Run brew update in macOS CI

    * Drop intel macOS from CI

    * Fix build on Apple Clang 17+ (#18629)

    Fixing "invalid cpu feature string for builtin" errors that started to appear on Apple Clang 17.0.0

    (cherry picked from commit 772479ea2ff92115d67b39572e265dee4e91b444)

    * Cleanup macOS job in test-suite.yml

    ---------

    Co-authored-by: Máté Kocsis <kocsismate@woohoolabs.com>

diff --git a/.github/actions/brew/action.yml b/.github/actions/brew/action.yml
index b1e3efd088a..c809ee10988 100644
--- a/.github/actions/brew/action.yml
+++ b/.github/actions/brew/action.yml
@@ -6,6 +6,8 @@ runs:
       run: |
         set -x

+        brew update
+
         # Patch brew to overwrite always
         formula_installer="$(brew --repo)"/Library/Homebrew/formula_installer.rb
         code=" keg.link\(verbose: verbose\?"
diff --git a/.github/matrix.php b/.github/matrix.php
index 58edba024c9..f3fb1fa7f03 100644
--- a/.github/matrix.php
+++ b/.github/matrix.php
@@ -125,10 +125,9 @@ function select_jobs($repository, $trigger, $nightly, $labels, $php_version, $re
             : ['debug' => [true], 'zts' => [true]];
     }
     if ($all_jobs || !$no_jobs || $test_macos) {
-        $test_arm = version_compare($php_version, '8.4', '>=');
         $jobs['MACOS']['matrix'] = $all_variations
-            ? ['arch' => $test_arm ? ['X64', 'ARM64'] : ['X64'], 'debug' => [true, false], 'zts' => [true, false]]
-            : ['include' => [['arch' => $test_arm ? 'ARM64' : 'X64', 'debug' => true, 'zts' => false]]];
+            ? ['arch' => ['ARM64'], 'debug' => [true, false], 'zts' => [true, false]]
+            : ['include' => [['arch' => 'ARM64', 'debug' => true, 'zts' => false]]];
         $jobs['MACOS']['config']['version'] = version_compare($php_version, '8.4', '>=') ? '26' : '15';
     }
     if ($all_jobs || $test_msan) {
diff --git a/.github/workflows/test-suite.yml b/.github/workflows/test-suite.yml
index 89a5cdb0456..a9bb570f921 100644
--- a/.github/workflows/test-suite.yml
+++ b/.github/workflows/test-suite.yml
@@ -312,7 +312,7 @@ jobs:
       fail-fast: false
       matrix: ${{ fromJson(inputs.branch).jobs.MACOS.matrix }}
     name: "MACOS_${{ matrix.arch }}_${{ matrix.debug && 'DEBUG' || 'RELEASE' }}_${{ matrix.zts && 'ZTS' || 'NTS' }}"
-    runs-on: macos-${{ fromJson(inputs.branch).jobs.MACOS.config.version }}${{ matrix.arch == 'X64' && '-intel' || '' }}
+    runs-on: macos-${{ fromJson(inputs.branch).jobs.MACOS.config.version }}
     timeout-minutes: 180
     steps:
       - name: git checkout
@@ -345,18 +345,18 @@ jobs:
         if: ${{ inputs.all_variations }}
         uses: ./.github/actions/test-macos
       - name: Test Tracing JIT
-        if: ${{ matrix.arch == 'X64' || !matrix.zts }}
+        if: ${{ !matrix.zts }}
         uses: ./.github/actions/test-macos
         with:
           enableOpcache: true
           jitType: tracing
       - name: Test OpCache
-        if: ${{ inputs.all_variations || (matrix.arch == 'ARM64' && matrix.zts) }}
+        if: ${{ inputs.all_variations || matrix.zts }}
         uses: ./.github/actions/test-macos
         with:
           enableOpcache: true
       - name: Test Function JIT
-        if: ${{ inputs.all_variations && (matrix.arch == 'X64' || !matrix.zts) }}
+        if: ${{ inputs.all_variations && !matrix.zts }}
         uses: ./.github/actions/test-macos
         with:
           enableOpcache: true
diff --git a/Zend/zend_cpuinfo.h b/Zend/zend_cpuinfo.h
index ebfbab79979..b1462c99725 100644
--- a/Zend/zend_cpuinfo.h
+++ b/Zend/zend_cpuinfo.h
@@ -121,58 +121,86 @@ ZEND_API int zend_cpu_supports(zend_cpu_feature feature);
  * functions */
 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse2(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse2");
+#endif
 }

 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse3(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse3");
+#endif
 }

 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_ssse3(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("ssse3");
+#endif
 }

 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse41(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse4.1");
+#endif
 }

 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_sse42(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("sse4.2");
+#endif
 }

 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_avx(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("avx");
+#endif
 }

 ZEND_NO_SANITIZE_ADDRESS
 static inline int zend_cpu_supports_avx2(void) {
+#ifdef __aarch64__
+	return 0;
+#else
 #if PHP_HAVE_BUILTIN_CPU_INIT
 	__builtin_cpu_init();
 #endif
 	return __builtin_cpu_supports("avx2");
+#endif
 }
 #else