Patch-Source: https://raw.githubusercontent.com/chimera-linux/cports/65206f412d95f495544baae852eb297556174b8a/contrib/firefox/patches/ppc-musttail.patch
--
commit 5e66655e1456c9d26637ceaed3f4533b537322c4
Author: q66 <q66@chimera-linux.org>
Date:   Sat May 13 23:00:04 2023 +0200

    disable musttail on ppc
    
    41:38.04 LLVM ERROR: failed to perform tail call elimination on a call site marked musttail
    41:38.04 PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
    41:38.04 Stack dump:
    41:38.04 0.     Running pass 'Function Pass Manager' on module '/builddir/thunderbird-114.0_beta1/obj-powerpc64le-unknown-linux-musl/toolkit/library/build/../../../gfx/skia/SkOpts.o'.
    41:38.04 1.     Running pass 'PowerPC DAG->DAG Pattern Instruction Selection' on function '@_ZN8portableL15init_lane_masksEPNS_6ParamsEP21SkRasterPipelineStageffff'
    41:38.95 clang-16: error: unable to execute command: Aborted
    
    To be investigated later.

diff --git a/gfx/skia/skia/src/core/SkRasterPipeline.h b/gfx/skia/skia/src/core/SkRasterPipeline.h
index 766bb0c..88c6cb2 100644
--- a/gfx/skia/skia/src/core/SkRasterPipeline.h
+++ b/gfx/skia/skia/src/core/SkRasterPipeline.h
@@ -27,7 +27,7 @@
 struct skcms_TransferFunction;
 
 #if __has_cpp_attribute(clang::musttail) && !defined(__EMSCRIPTEN__) && !defined(SK_CPU_ARM32) && \
-        !defined(SK_CPU_LOONGARCH)
+        !defined(SK_CPU_LOONGARCH) && !defined(__powerpc__)
     #define SK_HAS_MUSTTAIL 1
 #else
     #define SK_HAS_MUSTTAIL 0
