# --- T2-COPYRIGHT-BEGIN --- # t2/package/*/firefox/hotfix-hwy-vsx.patch # Copyright (C) 2025 The T2 SDE Project # SPDX-License-Identifier: GPL-2.0 or patched project license # --- T2-COPYRIGHT-END --- firefox-142.0.1/third_party/highway/hwy/ops/ppc_vsx-inl.h:3459:33: error: there are no arguments to '__builtin_vsx_xvcvspsxds' that depend on a template parameter, so a declaration of '__builtin_vsx_xvcvspsxds' must be available [-Wtemplate-body] 4:34.54 3459 | return VFromD{__builtin_vsx_xvcvspsxds(raw_v)}; 4:34.54 | ^~~~~~~~~~~~~~~~~~~~~~~~ --- firefox-142.0.1/third_party/highway/hwy/ops/ppc_vsx-inl.h.vanilla 2025-08-31 21:11:00.584702971 +0200 +++ firefox-142.0.1/third_party/highway/hwy/ops/ppc_vsx-inl.h 2025-08-31 21:18:31.845946679 +0200 @@ -3453,7 +3453,7 @@ template HWY_API VFromD PromoteTo(D di64, VFromD> v) { #if !HWY_S390X_HAVE_Z14 && \ - (HWY_COMPILER_GCC_ACTUAL || HWY_HAS_BUILTIN(__builtin_vsx_xvcvspsxds)) + (HWY_HAS_BUILTIN(__builtin_vsx_xvcvspsxds)) const __vector float raw_v = detail::VsxF2INormalizeSrcVals(InterleaveLower(v, v)).raw; return VFromD{__builtin_vsx_xvcvspsxds(raw_v)}; @@ -3466,7 +3466,7 @@ template HWY_API VFromD PromoteTo(D du64, VFromD> v) { #if !HWY_S390X_HAVE_Z14 && \ - (HWY_COMPILER_GCC_ACTUAL || HWY_HAS_BUILTIN(__builtin_vsx_xvcvspuxds)) + (HWY_HAS_BUILTIN(__builtin_vsx_xvcvspuxds)) const __vector float raw_v = detail::VsxF2INormalizeSrcVals(InterleaveLower(v, v)).raw; return VFromD{reinterpret_cast<__vector unsigned long long>( @@ -3576,7 +3576,7 @@ template HWY_API VFromD PromoteUpperTo(D di64, Vec128 v) { #if !HWY_S390X_HAVE_Z14 && \ - (HWY_COMPILER_GCC_ACTUAL || HWY_HAS_BUILTIN(__builtin_vsx_xvcvspsxds)) + (HWY_HAS_BUILTIN(__builtin_vsx_xvcvspsxds)) const __vector float raw_v = detail::VsxF2INormalizeSrcVals(InterleaveUpper(Full128(), v, v)) .raw; @@ -3590,7 +3590,7 @@ template HWY_API VFromD PromoteUpperTo(D du64, Vec128 v) { #if !HWY_S390X_HAVE_Z14 && \ - (HWY_COMPILER_GCC_ACTUAL || HWY_HAS_BUILTIN(__builtin_vsx_xvcvspuxds)) + (HWY_HAS_BUILTIN(__builtin_vsx_xvcvspuxds)) const __vector float raw_v = detail::VsxF2INormalizeSrcVals(InterleaveUpper(Full128(), v, v)) .raw;