public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/chromium] epel9-next: refresh ppc64 patches
@ 2026-08-07 16:06 Than Ngo
  0 siblings, 0 replies; only message in thread
From: Than Ngo @ 2026-08-07 16:06 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/chromium
Branch : epel9-next
Commit : cd1739f1136641f17fd70fdf494bae40a649e1ea
Author : Than Ngo <than@redhat.com>
Date   : 2024-04-22T20:29:56+02:00
Stats  : +1507/-1247 in 3 file(s)
URL    : https://src.fedoraproject.org/rpms/chromium/c/cd1739f1136641f17fd70fdf494bae40a649e1ea?branch=epel9-next

Log:
refresh ppc64 patches

---
diff --git a/0001-Add-PPC64-support-for-boringssl.patch b/0001-Add-PPC64-support-for-boringssl.patch
index e0048cb..52c6cb4 100644
--- a/0001-Add-PPC64-support-for-boringssl.patch
+++ b/0001-Add-PPC64-support-for-boringssl.patch
@@ -1,6 +1,7 @@
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/cmake/perlasm.cmake.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/cmake/perlasm.cmake
---- chromium-124.0.6367.60/third_party/boringssl/src/cmake/perlasm.cmake.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/cmake/perlasm.cmake	2024-04-20 23:50:47.151392505 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/cmake/perlasm.cmake
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/cmake/perlasm.cmake
++++ chromium-124.0.6367.60/third_party/boringssl/src/cmake/perlasm.cmake
 @@ -17,6 +17,7 @@ function(add_perlasm_target dest src)
      DEPENDS
      ${src}
@@ -19,9 +20,30 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/cmake/perlasm.cmake.00
    elseif(arch STREQUAL "x86")
      add_perlasm_target("${dest}-apple.S" ${src} macosx -fPIC ${ARGN})
      add_perlasm_target("${dest}-linux.S" ${src} elf -fPIC ${ARGN})
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/abi_self_test.cc.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/abi_self_test.cc
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/abi_self_test.cc.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/abi_self_test.cc	2024-04-20 23:45:15.523300162 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/CMakeLists.txt
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/CMakeLists.txt
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/CMakeLists.txt
+@@ -26,6 +26,7 @@ perlasm(CRYPTO_SOURCES aarch64 cipher_ex
+ perlasm(CRYPTO_SOURCES aarch64 test/trampoline-armv8 test/asm/trampoline-armv8.pl)
+ perlasm(CRYPTO_SOURCES arm chacha/chacha-armv4 chacha/asm/chacha-armv4.pl)
+ perlasm(CRYPTO_SOURCES arm test/trampoline-armv4 test/asm/trampoline-armv4.pl)
++perlasm(CRYPTO_SOURCES ppc64le test/trampoline-ppc test/asm/trampoline-ppc.pl)
+ perlasm(CRYPTO_SOURCES x86 chacha/chacha-x86 chacha/asm/chacha-x86.pl)
+ perlasm(CRYPTO_SOURCES x86 test/trampoline-x86 test/asm/trampoline-x86.pl)
+ perlasm(CRYPTO_SOURCES x86_64 chacha/chacha-x86_64 chacha/asm/chacha-x86_64.pl)
+@@ -137,6 +138,7 @@ add_library(
+   cpu_arm_freebsd.c
+   cpu_arm_linux.c
+   cpu_intel.c
++  cpu_ppc64le.c
+   crypto.c
+   curve25519/curve25519.c
+   curve25519/curve25519_64_adx.c
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/abi_self_test.cc
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/abi_self_test.cc
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/abi_self_test.cc
 @@ -521,3 +521,289 @@ TEST(ABITest, AArch64) {
    CHECK_ABI_NO_UNWIND(abi_test_clobber_v15_upper);
  }
@@ -312,28 +334,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/abi_self_test.c
 +  CHECK_ABI_NO_UNWIND(abi_test_clobber_lr);
 +}
 +#endif   // OPENSSL_PPC64LE && SUPPORTS_ABI_TEST
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/CMakeLists.txt.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/CMakeLists.txt
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/CMakeLists.txt.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/CMakeLists.txt	2024-04-20 23:45:15.523300162 +0200
-@@ -26,6 +26,7 @@ perlasm(CRYPTO_SOURCES aarch64 cipher_ex
- perlasm(CRYPTO_SOURCES aarch64 test/trampoline-armv8 test/asm/trampoline-armv8.pl)
- perlasm(CRYPTO_SOURCES arm chacha/chacha-armv4 chacha/asm/chacha-armv4.pl)
- perlasm(CRYPTO_SOURCES arm test/trampoline-armv4 test/asm/trampoline-armv4.pl)
-+perlasm(CRYPTO_SOURCES ppc64le test/trampoline-ppc test/asm/trampoline-ppc.pl)
- perlasm(CRYPTO_SOURCES x86 chacha/chacha-x86 chacha/asm/chacha-x86.pl)
- perlasm(CRYPTO_SOURCES x86 test/trampoline-x86 test/asm/trampoline-x86.pl)
- perlasm(CRYPTO_SOURCES x86_64 chacha/chacha-x86_64 chacha/asm/chacha-x86_64.pl)
-@@ -137,6 +138,7 @@ add_library(
-   cpu_arm_freebsd.c
-   cpu_arm_linux.c
-   cpu_intel.c
-+  cpu_ppc64le.c
-   crypto.c
-   curve25519/curve25519.c
-   curve25519/curve25519_64_adx.c
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/cpu_ppc64le.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/cpu_ppc64le.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/cpu_ppc64le.c.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.523300162 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/cpu_ppc64le.c	2024-04-20 23:45:15.523300162 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/cpu_ppc64le.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/cpu_ppc64le.c
 @@ -0,0 +1,38 @@
 +/* Copyright (c) 2016, Google Inc.
 + *
@@ -373,9 +377,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/cpu_ppc64le.c.0
 +}
 +
 +#endif  // OPENSSL_PPC64LE
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/crypto.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/crypto.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/crypto.c.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/crypto.c	2024-04-20 23:45:15.523300162 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/crypto.c
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/crypto.c
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/crypto.c
 @@ -25,10 +25,12 @@ static_assert(sizeof(ossl_ssize_t) == si
                "ossl_ssize_t should be the same size as size_t");
  
@@ -414,9 +419,23 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/crypto.c.0001-A
  #elif defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64)
  
  #include <openssl/arm_arch.h>
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.531300378 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl	2024-04-20 23:45:15.531300378 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/CMakeLists.txt
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/CMakeLists.txt
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/CMakeLists.txt
+@@ -19,6 +19,8 @@ perlasm(BCM_SOURCES arm sha1-armv4-large
+ perlasm(BCM_SOURCES arm sha256-armv4 sha/asm/sha256-armv4.pl)
+ perlasm(BCM_SOURCES arm sha512-armv4 sha/asm/sha512-armv4.pl)
+ perlasm(BCM_SOURCES arm vpaes-armv7 aes/asm/vpaes-armv7.pl)
++perlasm(BCM_SOURCES ppc64le aesp8-ppc aes/asm/aesp8-ppc.pl)
++perlasm(BCM_SOURCES ppc64le ghashp8-ppc modes/asm/ghashp8-ppc.pl)
+ perlasm(BCM_SOURCES x86 aesni-x86 aes/asm/aesni-x86.pl)
+ perlasm(BCM_SOURCES x86 bn-586 bn/asm/bn-586.pl)
+ perlasm(BCM_SOURCES x86 co-586 bn/asm/co-586.pl)
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl
 @@ -0,0 +1,3809 @@
 +#! /usr/bin/env perl
 +# Copyright 2014-2018 The OpenSSL Project Authors. All Rights Reserved.
@@ -4227,9 +4246,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/
 +}
 +
 +close STDOUT or die "error closing STDOUT: $!";
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h	2024-04-20 23:45:15.531300378 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
 @@ -59,6 +59,12 @@ OPENSSL_INLINE int vpaes_capable(void) {
  OPENSSL_INLINE int vpaes_capable(void) { return CRYPTO_is_NEON_capable(); }
  #endif
@@ -4243,9 +4263,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/aes/
  #endif
  
  #endif  // !NO_ASM
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bcm.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bcm.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bcm.c.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bcm.c	2024-04-20 23:45:15.531300378 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bcm.c
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/bcm.c
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bcm.c
 @@ -102,6 +102,7 @@
  #include "self_check/fips.c"
  #include "self_check/self_check.c"
@@ -4254,9 +4275,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bcm.
  #include "sha/sha1.c"
  #include "sha/sha256.c"
  #include "sha/sha512.c"
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c	2024-04-20 23:45:15.531300378 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c
 @@ -384,6 +384,23 @@ int bn_expand(BIGNUM *bn, size_t bits) {
  }
  
@@ -4281,9 +4303,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/bn/b
    if ((size_t)bn->width <= words) {
      if (!bn_wexpand(bn, words)) {
        return 0;
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c	2024-04-20 23:45:15.532300404 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c
 @@ -1455,6 +1455,8 @@ int EVP_has_aes_hardware(void) {
    return hwaes_capable() && crypto_gcm_clmul_enabled();
  #elif defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64)
@@ -4293,21 +4316,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/ciph
  #else
    return 0;
  #endif
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/CMakeLists.txt.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/CMakeLists.txt
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/CMakeLists.txt.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/CMakeLists.txt	2024-04-20 23:45:15.524300189 +0200
-@@ -19,6 +19,8 @@ perlasm(BCM_SOURCES arm sha1-armv4-large
- perlasm(BCM_SOURCES arm sha256-armv4 sha/asm/sha256-armv4.pl)
- perlasm(BCM_SOURCES arm sha512-armv4 sha/asm/sha512-armv4.pl)
- perlasm(BCM_SOURCES arm vpaes-armv7 aes/asm/vpaes-armv7.pl)
-+perlasm(BCM_SOURCES ppc64le aesp8-ppc aes/asm/aesp8-ppc.pl)
-+perlasm(BCM_SOURCES ppc64le ghashp8-ppc modes/asm/ghashp8-ppc.pl)
- perlasm(BCM_SOURCES x86 aesni-x86 aes/asm/aesni-x86.pl)
- perlasm(BCM_SOURCES x86 bn-586 bn/asm/bn-586.pl)
- perlasm(BCM_SOURCES x86 co-586 bn/asm/co-586.pl)
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.532300404 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl	2024-04-20 23:45:15.532300404 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl
 @@ -0,0 +1,671 @@
 +#! /usr/bin/env perl
 +# Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
@@ -4980,9 +4992,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/mode
 +}
 +
 +close STDOUT or die "error closing STDOUT: $!"; # enforce flush
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c	2024-04-20 23:45:15.532300404 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c
 @@ -228,6 +228,13 @@ void CRYPTO_ghash_init(gmult_func *out_m
      *out_hash = gcm_ghash_neon;
      return;
@@ -4997,9 +5010,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/mode
  #endif
  
    gcm_init_nohw(out_table, H);
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc	2024-04-20 23:45:15.532300404 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc
 @@ -215,5 +215,15 @@ TEST(GCMTest, ABI) {
      }
    }
@@ -5016,9 +5030,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/mode
 +#endif  // GHASH_ASM_PPC64LE
  }
  #endif  // SUPPORTS_ABI_TEST && !OPENSSL_NO_ASM
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h	2024-04-20 23:45:15.532300404 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h
 @@ -325,6 +325,13 @@ void aes_gcm_dec_kernel(const uint8_t *i
                          const u128 Htable[16]);
  #endif
@@ -5033,9 +5048,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/mode
  #endif
  #endif  // OPENSSL_NO_ASM
  
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h	2024-04-20 23:45:15.532300404 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h
 @@ -30,6 +30,8 @@
  #define EXPECTED_NR_getrandom 278
  #elif defined(OPENSSL_ARM)
@@ -5045,9 +5061,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand
  #elif defined(OPENSSL_RISCV64)
  #define EXPECTED_NR_getrandom 278
  #endif
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c	2024-04-20 23:45:15.532300404 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c
 @@ -431,6 +431,11 @@ void RAND_bytes_with_additional_data(uin
      // Take a read lock around accesses to |state->drbg|. This is needed to
      // avoid returning bad entropy if we race with
@@ -5060,9 +5077,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/rand
      CRYPTO_MUTEX_lock_read(&state->clear_drbg_lock);
  #endif
      if (!CTR_DRBG_reseed(&state->drbg, seed, reseed_additional_data,
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.532300404 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h	2024-04-20 23:59:24.306417702 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
 @@ -23,6 +23,17 @@
  extern "C" {
  #endif
@@ -5072,18 +5090,19 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/
 +// POWER has an intrinsics-based implementation of SHA-1 and thus the functions
 +// normally defined in assembly are available even with |OPENSSL_NO_ASM| in
 +// this case.
-+#define SHA1_ASM
-+void sha1_block_data_order(uint32_t state[5], const uint8_t *data,
-+                                  size_t num);
++#define SHA1_ASM_PPC64
++void sha1_block_data_order_ppc64(uint32_t *state, const uint8_t *in,
++                           size_t num_blocks);
 +#endif
 +
 +
  // Define SHA{n}[_{variant}]_ASM if sha{n}_block_data_order[_{variant}] is
  // defined in assembly.
  
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.533300432 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c	2024-04-20 23:45:15.533300432 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c
 @@ -0,0 +1,361 @@
 +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
 + * All rights reserved.
@@ -5156,7 +5175,7 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/
 +
 +#include <altivec.h>
 +
-+void sha1_block_data_order(uint32_t *state, const uint8_t *data, size_t num);
++void sha1_block_data_order_ppc64(uint32_t *state, const uint8_t *data, size_t num);
 +
 +static uint32_t rotate(uint32_t a, int n) { return (a << n) | (a >> (32 - n)); }
 +
@@ -5274,7 +5293,7 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/
 +    (b) = rotate((b), 30);                                      \
 +  } while (0)
 +
-+void sha1_block_data_order(uint32_t *state, const uint8_t *data, size_t num) {
++void sha1_block_data_order_ppc64(uint32_t *state, const uint8_t *data, size_t num) {
 +  uint32_t A, B, C, D, E, T;
 +
 +  A = state[0];
@@ -5446,9 +5465,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/
 +#undef BODY_20_39
 +#undef BODY_40_59
 +#undef BODY_60_79
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/internal.h.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/internal.h
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/internal.h.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:36.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/internal.h	2024-04-20 23:45:15.533300432 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/internal.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/internal.h
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/internal.h
 @@ -181,7 +181,7 @@ extern "C" {
  
  
@@ -5475,9 +5495,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/internal.h.0001
  #if defined(BORINGSSL_DISPATCH_TEST)
  // Runtime CPU dispatch testing support
  
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.533300432 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl	2024-04-20 23:45:15.533300432 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl
 @@ -0,0 +1,320 @@
 +#! /usr/bin/env perl
 +# Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved.
@@ -5799,9 +5820,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/perlasm/ppc-xla
 +___
 +
 +close STDOUT or die "error closing STDOUT: $!";
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/abi_test.h.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/abi_test.h
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/abi_test.h.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:37.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/abi_test.h	2024-04-20 23:45:15.533300432 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/abi_test.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/test/abi_test.h
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/abi_test.h
 @@ -179,7 +179,78 @@ struct alignas(16) Reg128 {
    CALLER_STATE_REGISTER(uint64_t, x28)                               \
    CALLER_STATE_REGISTER(uint64_t, x29)
@@ -5908,9 +5930,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/abi_test.h
    static_assert(sizeof...(args) <= 8,
                  "too many arguments for abi_test_trampoline");
  
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl
---- chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.533300432 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl	2024-04-20 23:45:15.533300432 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl
 @@ -0,0 +1,262 @@
 +#!/usr/bin/env perl
 +# Copyright (c) 2019, Google Inc.
@@ -6174,9 +6197,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/crypto/test/asm/trampo
 +
 +print $code;
 +close STDOUT or die "error closing STDOUT: $!";
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/include/openssl/target.h.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/include/openssl/target.h
---- chromium-124.0.6367.60/third_party/boringssl/src/include/openssl/target.h.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:37.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/include/openssl/target.h	2024-04-20 23:45:15.533300432 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/include/openssl/target.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/include/openssl/target.h
++++ chromium-124.0.6367.60/third_party/boringssl/src/include/openssl/target.h
 @@ -34,6 +34,9 @@
  #elif defined(__ARMEL__) || defined(_M_ARM)
  #define OPENSSL_32_BIT
@@ -6187,9 +6211,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/include/openssl/target
  #elif defined(__MIPSEL__) && !defined(__LP64__)
  #define OPENSSL_32_BIT
  #define OPENSSL_MIPS
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:38.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc	2024-04-20 23:45:15.533300432 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
 @@ -37,6 +37,8 @@ int main(int argc, char **argv) {
      puts("ARM (32-bit)");
  #elif defined(OPENSSL_AARCH64)
@@ -6199,9 +6224,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/acvp/mo
  #else
  #error "FIPS build not supported on this architecture"
  #endif
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.go.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.go
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.go.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:38.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.go	2024-04-20 23:45:15.534300459 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.go
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.go
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.go
 @@ -54,7 +54,8 @@ type stringWriter interface {
  type processorType int
  
@@ -6801,9 +6827,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
  		case "str", "bl", "ldr", "st1":
  			return aarch64
  		}
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.peg.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.peg.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:38.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.peg	2024-04-20 23:45:15.534300459 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
 @@ -12,7 +12,7 @@
  # OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
  # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
@@ -6813,9 +6840,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
  # https://github.com/pointlander/peg. delocate.go has a go:generate line for
  # rebuilding delocate.peg.go from this file.
  
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go.0001-Add-PPC64-support-for-boringssl	2024-04-15 22:34:38.000000000 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go	2024-04-20 23:45:15.534300459 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
 @@ -39,6 +39,11 @@ func (test *delocateTest) Path(file stri
  
  var delocateTests = []delocateTest{
@@ -6828,9 +6856,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
  	{"x86_64-Basic", []string{"in.s"}, "out.s"},
  	{"x86_64-BSS", []string{"in.s"}, "out.s"},
  	{"x86_64-GOTRewrite", []string{"in.s"}, "out.s"},
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.534300459 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s	2024-04-20 23:45:15.534300459 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s
 @@ -0,0 +1,9 @@
 +	.text
 +foo:
@@ -6841,9 +6870,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	.localentry foo,.-foo
 +.LVL0:
 +	bl
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.534300459 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s	2024-04-20 23:45:15.534300459 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s
 @@ -0,0 +1,62 @@
 +.text
 +.file 1 "inserted_by_delocate.c"
@@ -6907,17 +6937,19 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.534300459 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s	2024-04-20 23:45:15.534300459 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s
 @@ -0,0 +1,4 @@
 +	.text
 +foo:
 +	addis 22,2,bar@toc@ha
 +	ld 0,bar@toc@l(22)
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.534300459 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s	2024-04-20 23:45:15.534300459 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s
 @@ -0,0 +1,72 @@
 +.text
 +.file 1 "inserted_by_delocate.c"
@@ -6991,14 +7023,54 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.535300486 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s	2024-04-20 23:45:15.535300486 +0200
-@@ -0,0 +1,226 @@
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s
+@@ -0,0 +1,161 @@
 +	.file	"foo.c"
 +	.abiversion 2
 +	.section	".toc","aw"
 +	.section	".text"
++	.section	.rodata
++	.align 3
++	.type	kString, @object
++	.size	kString, 12
++kString:
++	.string	"hello world"
++	.globl kExportedString
++	.align 3
++	.type	kExportedString, @object
++	.size	kExportedString, 26
++kExportedString:
++	.string	"hello world, more visibly"
++	.align 2
++	.type	kGiantArray, @object
++	.size	kGiantArray, 400000
++kGiantArray:
++	.long	1
++	.long	0
++	.zero	399992
++	.lcomm	bss,20,4
++	.type	bss, @object
++	.align 3
++.LC1:
++	.string	"kString is %p\n"
++	.align 3
++.LC2:
++	.string	"kExportedString is %p\n"
++	.align 3
++.LC4:
++	.string	"function is %p\n"
++	.align 3
++.LC5:
++	.string	"exported_function is %p\n"
++	.align 3
++.LC7:
++	.string	"&kString[5] is %p\n"
++	.align 3
++.LC9:
++	.string	"&kGiantArray[0x12345] is %p\n"
 +	.section	".toc","aw"
 +.LC0:
 +	.quad	stderr
@@ -7006,234 +7078,180 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	.quad	kExportedString
 +.LC6:
 +	.quad	exported_function
++.LC8:
++	.quad	kString+5
++.LC10:
++	.quad	kGiantArray+298260
 +	.section	".text"
 +	.align 2
-+	.p2align 4,,15
-+	.globl exported_function
-+	.type	exported_function, @function
-+exported_function:
++	.type	function, @function
++function:
 +0:	addis 2,12,.TOC.-0b@ha
 +	addi 2,2,.TOC.-0b@l
-+	.localentry	exported_function,.-exported_function
++	.localentry	function,.-function
 +	mflr 0
-+	std 19,-104(1)
-+	std 20,-96(1)
-+	std 21,-88(1)
-+	std 22,-80(1)
-+	addis 21,2,.LC1@toc@ha
-+	addis 22,2,.LC2@toc@ha
-+	std 23,-72(1)
-+	std 24,-64(1)
-+	addis 23,2,.LC4@toc@ha
-+	addis 24,2,function@toc@ha
-+	std 25,-56(1)
-+	std 26,-48(1)
-+	addis 25,2,.LC5@toc@ha
-+	addis 26,2,.LC7@toc@ha
-+	std 27,-40(1)
-+	std 28,-32(1)
-+	addis 28,2,.LC8@toc@ha
-+	addi 21,21,.LC1@toc@l
-+	std 29,-24(1)
-+	std 30,-16(1)
-+	addis 29,2,.LANCHOR0@toc@ha
-+	addi 22,22,.LC2@toc@l
-+	std 31,-8(1)
 +	std 0,16(1)
-+	addi 29,29,.LANCHOR0@toc@l
-+	addi 23,23,.LC4@toc@l
-+	stdu 1,-208(1)
-+	addis 31,2,.LC0@toc@ha		# gpr load fusion, type long
-+	ld 31,.LC0@toc@l(31)
-+	addis 19,2,.LC3@toc@ha		# gpr load fusion, type long
-+	ld 19,.LC3@toc@l(19)
-+	addis 30,29,0x5
-+	addi 24,24,function@toc@l
-+	addis 20,2,.LC6@toc@ha		# gpr load fusion, type long
-+	ld 20,.LC6@toc@l(20)
-+	addi 25,25,.LC5@toc@l
-+	addi 26,26,.LC7@toc@l
-+	addi 27,29,5
-+	addi 28,28,.LC8@toc@l
-+	addi 30,30,-29404
-+	.p2align 4,,15
-+.L2:
-+	ld 3,0(31)
-+	mr 5,21
-+	mr 6,29
-+	li 4,1
-+	bl __fprintf_chk
++	std 31,-8(1)
++	stdu 1,-112(1)
++	mr 31,1
++	addis 10,2,.LC0@toc@ha
++	ld 9,.LC0@toc@l(10)
++	ld 9,0(9)
++	mr 3,9
++	addis 4,2,.LC1@toc@ha
++	addi 4,4,.LC1@toc@l
++	addis 5,2,kString@toc@ha
++	addi 5,5,kString@toc@l
++	bl fprintf
 +	nop
-+	ld 3,0(31)
-+	mr 5,22
-+	mr 6,19
-+	li 4,1
-+	bl __fprintf_chk
++	addis 10,2,.LC0@toc@ha
++	ld 9,.LC0@toc@l(10)
++	ld 9,0(9)
++	mr 3,9
++	addis 4,2,.LC2@toc@ha
++	addi 4,4,.LC2@toc@l
++	addis 9,2,.LC3@toc@ha
++	ld 5,.LC3@toc@l(9)
++	bl fprintf
 +	nop
-+	ld 3,0(31)
-+	mr 5,23
-+	mr 6,24
-+	li 4,1
-+	bl __fprintf_chk
++	addis 10,2,.LC0@toc@ha
++	ld 9,.LC0@toc@l(10)
++	ld 9,0(9)
++	mr 3,9
++	addis 4,2,.LC4@toc@ha
++	addi 4,4,.LC4@toc@l
++	addis 5,2,function@toc@ha
++	addi 5,5,function@toc@l
++	bl fprintf
 +	nop
-+	ld 3,0(31)
-+	mr 5,25
-+	mr 6,20
-+	li 4,1
-+	bl __fprintf_chk
++	addis 10,2,.LC0@toc@ha
++	ld 9,.LC0@toc@l(10)
++	ld 9,0(9)
++	mr 3,9
++	addis 4,2,.LC5@toc@ha
++	addi 4,4,.LC5@toc@l
++	addis 9,2,.LC6@toc@ha
++	ld 5,.LC6@toc@l(9)
++	bl fprintf
 +	nop
-+	ld 3,0(31)
-+	mr 5,26
-+	mr 6,27
-+	li 4,1
-+	bl __fprintf_chk
++	addis 10,2,.LC0@toc@ha
++	ld 9,.LC0@toc@l(10)
++	ld 9,0(9)
++	mr 3,9
++	addis 4,2,.LC7@toc@ha
++	addi 4,4,.LC7@toc@l
++	addis 9,2,.LC8@toc@ha
++	ld 5,.LC8@toc@l(9)
++	bl fprintf
 +	nop
-+	ld 3,0(31)
-+	li 4,1
-+	mr 5,28
-+	mr 6,30
-+	bl __fprintf_chk
++	addis 10,2,.LC0@toc@ha
++	ld 9,.LC0@toc@l(10)
++	ld 9,0(9)
++	mr 3,9
++	addis 4,2,.LC9@toc@ha
++	addi 4,4,.LC9@toc@l
++	addis 9,2,.LC10@toc@ha
++	ld 5,.LC10@toc@l(9)
++	bl fprintf
 +	nop
-+	b .L2
++	bl exported_function
++	nop
++	mr 3,9
++	addi 1,31,112
++	ld 0,16(1)
++	mtlr 0
++	ld 31,-8(1)
++	blr
 +	.long 0
-+	.byte 0,0,0,1,128,13,0,0
-+	.size	exported_function,.-exported_function
-+	.section	".toc","aw"
-+	.set .LC11,.LC0
-+	.set .LC12,.LC3
-+	.set .LC13,.LC6
-+	.section	".text"
++	.byte 0,0,0,1,128,1,0,1
++	.size	function,.-function
 +	.align 2
-+	.p2align 4,,15
-+	.type	function, @function
-+function:
++	.globl exported_function
++	.type	exported_function, @function
++exported_function:
 +0:	addis 2,12,.TOC.-0b@ha
 +	addi 2,2,.TOC.-0b@l
-+	.localentry	function,.-function
++	.localentry	exported_function,.-exported_function
 +	mflr 0
-+	std 31,-8(1)
-+	addis 31,2,.LC11@toc@ha		# gpr load fusion, type long
-+	ld 31,.LC11@toc@l(31)
-+	addis 5,2,.LC1@toc@ha
-+	std 30,-16(1)
-+	addis 30,2,.LANCHOR0@toc@ha
-+	addi 5,5,.LC1@toc@l
-+	addi 30,30,.LANCHOR0@toc@l
-+	li 4,1
-+	mr 6,30
 +	std 0,16(1)
-+	stdu 1,-112(1)
-+	ld 3,0(31)
-+	bl __fprintf_chk
-+	nop
-+	addis 6,2,.LC12@toc@ha		# gpr load fusion, type long
-+	ld 6,.LC12@toc@l(6)
-+	ld 3,0(31)
-+	addis 5,2,.LC2@toc@ha
-+	li 4,1
-+	addi 5,5,.LC2@toc@l
-+	bl __fprintf_chk
-+	nop
-+	ld 3,0(31)
-+	addis 5,2,.LC4@toc@ha
-+	addis 6,2,function@toc@ha
-+	addi 5,5,.LC4@toc@l
-+	addi 6,6,function@toc@l
-+	li 4,1
-+	bl __fprintf_chk
-+	nop
-+	addis 6,2,.LC13@toc@ha		# gpr load fusion, type long
-+	ld 6,.LC13@toc@l(6)
-+	ld 3,0(31)
-+	addis 5,2,.LC5@toc@ha
-+	li 4,1
-+	addi 5,5,.LC5@toc@l
-+	bl __fprintf_chk
-+	nop
-+	ld 3,0(31)
-+	addis 5,2,.LC7@toc@ha
-+	addi 6,30,5
-+	addi 5,5,.LC7@toc@l
-+	li 4,1
-+	bl __fprintf_chk
-+	nop
-+	ld 3,0(31)
-+	addis 6,30,0x5
-+	addis 5,2,.LC8@toc@ha
-+	li 4,1
-+	addi 5,5,.LC8@toc@l
-+	addi 6,6,-29404
-+	bl __fprintf_chk
-+	nop
-+	bl exported_function
-+	nop
-+	addi 1,1,112
++	std 31,-8(1)
++	stdu 1,-48(1)
++	mr 31,1
++	bl function
++	mr 3,9
++	addi 1,31,48
 +	ld 0,16(1)
-+	ld 30,-16(1)
-+	ld 31,-8(1)
 +	mtlr 0
++	ld 31,-8(1)
 +	blr
 +	.long 0
-+	.byte 0,0,0,1,128,2,0,0
-+	.size	function,.-function
-+	.globl kExportedString
-+	.section	.rodata
-+	.align 4
-+	.set	.LANCHOR0,. + 0
++	.byte 0,0,0,1,128,1,0,1
++	.size	exported_function,.-exported_function
++	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
++	.section	.note.GNU-stack,"",@progbits
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s
+@@ -0,0 +1,552 @@
++.text
++.file 1 "inserted_by_delocate.c"
++.loc 1 1 0
++BORINGSSL_bcm_text_start:
++	.file	"foo.c"
++	.abiversion 2
++	.section	".toc","aw"
++# WAS .section	".text"
++.text
++# WAS .section	.rodata
++.text
++	.align 3
 +	.type	kString, @object
 +	.size	kString, 12
++.LkString_local_target:
 +kString:
 +	.string	"hello world"
-+	.zero	4
++	.globl kExportedString
++	.align 3
++	.type	kExportedString, @object
++	.size	kExportedString, 26
++.LkExportedString_local_target:
++kExportedString:
++	.string	"hello world, more visibly"
++	.align 2
 +	.type	kGiantArray, @object
 +	.size	kGiantArray, 400000
++.LkGiantArray_local_target:
 +kGiantArray:
 +	.long	1
 +	.long	0
 +	.zero	399992
-+	.type	kExportedString, @object
-+	.size	kExportedString, 26
-+kExportedString:
-+	.string	"hello world, more visibly"
-+	.section	.rodata.str1.8,"aMS",@progbits,1
++	.lcomm	bss,20,4
++	.type	bss, @object
 +	.align 3
 +.LC1:
++
 +	.string	"kString is %p\n"
-+	.zero	1
++	.align 3
 +.LC2:
++
 +	.string	"kExportedString is %p\n"
-+	.zero	1
++	.align 3
 +.LC4:
++
 +	.string	"function is %p\n"
++	.align 3
 +.LC5:
++
 +	.string	"exported_function is %p\n"
-+	.zero	7
++	.align 3
 +.LC7:
++
 +	.string	"&kString[5] is %p\n"
-+	.zero	5
-+.LC8:
++	.align 3
++.LC9:
++
 +	.string	"&kGiantArray[0x12345] is %p\n"
-+	.section	".bss"
-+	.align 2
-+	.type	bss, @object
-+	.size	bss, 20
-+bss:
-+	.zero	20
-+	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
-+	.section	.note.GNU-stack,"",@progbits
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.535300486 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s	2024-04-20 23:45:15.535300486 +0200
-@@ -0,0 +1,677 @@
-+.text
-+.file 1 "inserted_by_delocate.c"
-+.loc 1 1 0
-+BORINGSSL_bcm_text_start:
-+	.file	"foo.c"
-+	.abiversion 2
-+	.section	".toc","aw"
-+# WAS .section	".text"
-+.text
 +	.section	".toc","aw"
 +.LC0:
 +
@@ -7244,14 +7262,18 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +.LC6:
 +
 +	.quad	exported_function
++.LC8:
++
++	.quad	kString+5
++.LC10:
++
++	.quad	kGiantArray+298260
 +# WAS .section	".text"
 +.text
 +	.align 2
-+	.p2align 4,,15
-+	.globl exported_function
-+	.type	exported_function, @function
-+.Lexported_function_local_target:
-+exported_function:
++	.type	function, @function
++.Lfunction_local_target:
++function:
 +0:
 +999:
 +	addis 2, 12, .LBORINGSSL_external_toc-999b@ha
@@ -7259,533 +7281,355 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	ld 12, 0(2)
 +	add 2, 2, 12
 +# WAS addi 2,2,.TOC.-0b@l
-+	.localentry	exported_function,.-exported_function
-+.Lexported_function_local_entry:
++	.localentry	function,.-function
++.Lfunction_local_entry:
 +	mflr 0
-+	std 19,-104(1)
-+	std 20,-96(1)
-+	std 21,-88(1)
-+	std 22,-80(1)
-+# WAS addis 21,2,.LC1@toc@ha
-+# WAS addis 22,2,.LC2@toc@ha
-+	std 23,-72(1)
-+	std 24,-64(1)
-+# WAS addis 23,2,.LC4@toc@ha
-+# WAS addis 24,2,function@toc@ha
-+	std 25,-56(1)
-+	std 26,-48(1)
-+# WAS addis 25,2,.LC5@toc@ha
-+# WAS addis 26,2,.LC7@toc@ha
-+	std 27,-40(1)
-+	std 28,-32(1)
-+# WAS addis 28,2,.LC8@toc@ha
-+# WAS addi 21,21,.LC1@toc@l
++	std 0,16(1)
++	std 31,-8(1)
++	stdu 1,-112(1)
++	mr 31,1
++# WAS addis 10,2,.LC0@toc@ha
++# WAS ld 9,.LC0@toc@l(10)
 +	addi 1, 1, -288
-+	mflr 21
-+	std 21, -8(1)
++	mflr 9
++	std 9, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC1
++	bl .Lbcm_loadtoc__dot_LC0
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 21, -24(1)
++	ld 9, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	std 29,-24(1)
-+	std 30,-16(1)
-+# WAS addis 29,2,.LANCHOR0@toc@ha
-+# WAS addi 22,22,.LC2@toc@l
++	ld 9, 0(9)
++	ld 9,0(9)
++	mr 3,9
++# WAS addis 4,2,.LC1@toc@ha
++# WAS addi 4,4,.LC1@toc@l
 +	addi 1, 1, -288
-+	mflr 22
-+	std 22, -8(1)
++	mflr 4
++	std 4, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC2
++	bl .Lbcm_loadtoc__dot_LC1
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 22, -24(1)
++	ld 4, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	std 31,-8(1)
-+	std 0,16(1)
-+# WAS addi 29,29,.LANCHOR0@toc@l
++# WAS addis 5,2,kString@toc@ha
++# WAS addi 5,5,kString@toc@l
 +	addi 1, 1, -288
-+	mflr 29
-+	std 29, -8(1)
++	mflr 5
++	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LANCHOR0
++	bl .Lbcm_loadtoc__dot_LkString_local_target
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 29, -24(1)
++	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addi 23,23,.LC4@toc@l
++# WAS bl fprintf
++	bl	bcm_redirector_fprintf
++	ld 2, 24(1)
++	nop
++# WAS addis 10,2,.LC0@toc@ha
++# WAS ld 9,.LC0@toc@l(10)
 +	addi 1, 1, -288
-+	mflr 23
-+	std 23, -8(1)
++	mflr 9
++	std 9, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC4
++	bl .Lbcm_loadtoc__dot_LC0
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 23, -24(1)
++	ld 9, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	stdu 1,-208(1)
-+# WAS addis 31,2,.LC0@toc@ha		# gpr load fusion, type long
-+# WAS ld 31,.LC0@toc@l(31)
++	ld 9, 0(9)
++	ld 9,0(9)
++	mr 3,9
++# WAS addis 4,2,.LC2@toc@ha
++# WAS addi 4,4,.LC2@toc@l
 +	addi 1, 1, -288
-+	mflr 31
-+	std 31, -8(1)
++	mflr 4
++	std 4, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC0
++	bl .Lbcm_loadtoc__dot_LC2
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 31, -24(1)
++	ld 4, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 31, 0(31)
-+# WAS addis 19,2,.LC3@toc@ha		# gpr load fusion, type long
-+# WAS ld 19,.LC3@toc@l(19)
++# WAS addis 9,2,.LC3@toc@ha
++# WAS ld 5,.LC3@toc@l(9)
 +	addi 1, 1, -288
-+	mflr 19
-+	std 19, -8(1)
++	mflr 5
++	std 5, -8(1)
 +	std 3, -16(1)
 +	bl .Lbcm_loadtoc__dot_LC3
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 19, -24(1)
-+	ld 3, -16(1)
-+	addi 1, 1, 288
-+	ld 19, 0(19)
-+	addis 30,29,0x5
-+# WAS addi 24,24,function@toc@l
-+	addi 1, 1, -288
-+	mflr 24
-+	std 24, -8(1)
-+	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_Lfunction_local_target
-+	std 3, -24(1)
-+	ld 3, -8(1)
-+	mtlr 3
-+	ld 24, -24(1)
++	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addis 20,2,.LC6@toc@ha		# gpr load fusion, type long
-+# WAS ld 20,.LC6@toc@l(20)
++	ld 5, 0(5)
++# WAS bl fprintf
++	bl	bcm_redirector_fprintf
++	ld 2, 24(1)
++	nop
++# WAS addis 10,2,.LC0@toc@ha
++# WAS ld 9,.LC0@toc@l(10)
 +	addi 1, 1, -288
-+	mflr 20
-+	std 20, -8(1)
++	mflr 9
++	std 9, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC6
++	bl .Lbcm_loadtoc__dot_LC0
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 20, -24(1)
++	ld 9, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 20, 0(20)
-+# WAS addi 25,25,.LC5@toc@l
++	ld 9, 0(9)
++	ld 9,0(9)
++	mr 3,9
++# WAS addis 4,2,.LC4@toc@ha
++# WAS addi 4,4,.LC4@toc@l
 +	addi 1, 1, -288
-+	mflr 25
-+	std 25, -8(1)
++	mflr 4
++	std 4, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC5
++	bl .Lbcm_loadtoc__dot_LC4
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 25, -24(1)
++	ld 4, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addi 26,26,.LC7@toc@l
++# WAS addis 5,2,function@toc@ha
++# WAS addi 5,5,function@toc@l
 +	addi 1, 1, -288
-+	mflr 26
-+	std 26, -8(1)
++	mflr 5
++	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC7
++	bl .Lbcm_loadtoc__dot_Lfunction_local_target
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 26, -24(1)
++	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	addi 27,29,5
-+# WAS addi 28,28,.LC8@toc@l
++# WAS bl fprintf
++	bl	bcm_redirector_fprintf
++	ld 2, 24(1)
++	nop
++# WAS addis 10,2,.LC0@toc@ha
++# WAS ld 9,.LC0@toc@l(10)
 +	addi 1, 1, -288
-+	mflr 28
-+	std 28, -8(1)
++	mflr 9
++	std 9, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC8
++	bl .Lbcm_loadtoc__dot_LC0
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 28, -24(1)
++	ld 9, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	addi 30,30,-29404
-+	.p2align 4,,15
-+.L2:
-+
-+	ld 3,0(31)
-+	mr 5,21
-+	mr 6,29
-+	li 4,1
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	ld 3,0(31)
-+	mr 5,22
-+	mr 6,19
-+	li 4,1
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	ld 3,0(31)
-+	mr 5,23
-+	mr 6,24
-+	li 4,1
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	ld 3,0(31)
-+	mr 5,25
-+	mr 6,20
-+	li 4,1
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	ld 3,0(31)
-+	mr 5,26
-+	mr 6,27
-+	li 4,1
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	ld 3,0(31)
-+	li 4,1
-+	mr 5,28
-+	mr 6,30
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	b .L2
-+	.long 0
-+	.byte 0,0,0,1,128,13,0,0
-+	.size	exported_function,.-exported_function
-+	.section	".toc","aw"
-+	.set .LC11,.LC0
-+	.set .LC12,.LC3
-+	.set .LC13,.LC6
-+# WAS .section	".text"
-+.text
-+	.align 2
-+	.p2align 4,,15
-+	.type	function, @function
-+.Lfunction_local_target:
-+function:
-+0:
-+999:
-+	addis 2, 12, .LBORINGSSL_external_toc-999b@ha
-+	addi 2, 2, .LBORINGSSL_external_toc-999b@l
-+	ld 12, 0(2)
-+	add 2, 2, 12
-+# WAS addi 2,2,.TOC.-0b@l
-+	.localentry	function,.-function
-+.Lfunction_local_entry:
-+	mflr 0
-+	std 31,-8(1)
-+# WAS addis 31,2,.LC11@toc@ha		# gpr load fusion, type long
-+# WAS ld 31,.LC11@toc@l(31)
++	ld 9, 0(9)
++	ld 9,0(9)
++	mr 3,9
++# WAS addis 4,2,.LC5@toc@ha
++# WAS addi 4,4,.LC5@toc@l
 +	addi 1, 1, -288
-+	mflr 31
-+	std 31, -8(1)
++	mflr 4
++	std 4, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC11
++	bl .Lbcm_loadtoc__dot_LC5
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 31, -24(1)
++	ld 4, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 31, 0(31)
-+# WAS addis 5,2,.LC1@toc@ha
-+	std 30,-16(1)
-+# WAS addis 30,2,.LANCHOR0@toc@ha
-+# WAS addi 5,5,.LC1@toc@l
++# WAS addis 9,2,.LC6@toc@ha
++# WAS ld 5,.LC6@toc@l(9)
 +	addi 1, 1, -288
 +	mflr 5
 +	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC1
++	bl .Lbcm_loadtoc__dot_LC6
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
 +	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addi 30,30,.LANCHOR0@toc@l
++	ld 5, 0(5)
++# WAS bl fprintf
++	bl	bcm_redirector_fprintf
++	ld 2, 24(1)
++	nop
++# WAS addis 10,2,.LC0@toc@ha
++# WAS ld 9,.LC0@toc@l(10)
 +	addi 1, 1, -288
-+	mflr 30
-+	std 30, -8(1)
++	mflr 9
++	std 9, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LANCHOR0
++	bl .Lbcm_loadtoc__dot_LC0
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 30, -24(1)
++	ld 9, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	li 4,1
-+	mr 6,30
-+	std 0,16(1)
-+	stdu 1,-112(1)
-+	ld 3,0(31)
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+# WAS addis 6,2,.LC12@toc@ha		# gpr load fusion, type long
-+# WAS ld 6,.LC12@toc@l(6)
++	ld 9, 0(9)
++	ld 9,0(9)
++	mr 3,9
++# WAS addis 4,2,.LC7@toc@ha
++# WAS addi 4,4,.LC7@toc@l
 +	addi 1, 1, -288
-+	mflr 6
-+	std 6, -8(1)
++	mflr 4
++	std 4, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC12
++	bl .Lbcm_loadtoc__dot_LC7
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 6, -24(1)
++	ld 4, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 6, 0(6)
-+	ld 3,0(31)
-+# WAS addis 5,2,.LC2@toc@ha
-+	li 4,1
-+# WAS addi 5,5,.LC2@toc@l
++# WAS addis 9,2,.LC8@toc@ha
++# WAS ld 5,.LC8@toc@l(9)
 +	addi 1, 1, -288
 +	mflr 5
 +	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC2
++	bl .Lbcm_loadtoc__dot_LC8
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
 +	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
++	ld 5, 0(5)
++# WAS bl fprintf
++	bl	bcm_redirector_fprintf
 +	ld 2, 24(1)
 +	nop
-+	ld 3,0(31)
-+# WAS addis 5,2,.LC4@toc@ha
-+# WAS addis 6,2,function@toc@ha
-+# WAS addi 5,5,.LC4@toc@l
++# WAS addis 10,2,.LC0@toc@ha
++# WAS ld 9,.LC0@toc@l(10)
 +	addi 1, 1, -288
-+	mflr 5
-+	std 5, -8(1)
++	mflr 9
++	std 9, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC4
++	bl .Lbcm_loadtoc__dot_LC0
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 5, -24(1)
++	ld 9, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addi 6,6,function@toc@l
-+	addi 1, 1, -288
-+	mflr 6
-+	std 6, -8(1)
-+	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_Lfunction_local_target
-+	std 3, -24(1)
-+	ld 3, -8(1)
-+	mtlr 3
-+	ld 6, -24(1)
-+	ld 3, -16(1)
-+	addi 1, 1, 288
-+	li 4,1
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+# WAS addis 6,2,.LC13@toc@ha		# gpr load fusion, type long
-+# WAS ld 6,.LC13@toc@l(6)
-+	addi 1, 1, -288
-+	mflr 6
-+	std 6, -8(1)
-+	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC13
-+	std 3, -24(1)
-+	ld 3, -8(1)
-+	mtlr 3
-+	ld 6, -24(1)
-+	ld 3, -16(1)
-+	addi 1, 1, 288
-+	ld 6, 0(6)
-+	ld 3,0(31)
-+# WAS addis 5,2,.LC5@toc@ha
-+	li 4,1
-+# WAS addi 5,5,.LC5@toc@l
-+	addi 1, 1, -288
-+	mflr 5
-+	std 5, -8(1)
-+	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC5
-+	std 3, -24(1)
-+	ld 3, -8(1)
-+	mtlr 3
-+	ld 5, -24(1)
-+	ld 3, -16(1)
-+	addi 1, 1, 288
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	ld 3,0(31)
-+# WAS addis 5,2,.LC7@toc@ha
-+	addi 6,30,5
-+# WAS addi 5,5,.LC7@toc@l
++	ld 9, 0(9)
++	ld 9,0(9)
++	mr 3,9
++# WAS addis 4,2,.LC9@toc@ha
++# WAS addi 4,4,.LC9@toc@l
 +	addi 1, 1, -288
-+	mflr 5
-+	std 5, -8(1)
++	mflr 4
++	std 4, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC7
++	bl .Lbcm_loadtoc__dot_LC9
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 5, -24(1)
++	ld 4, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	li 4,1
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
-+	ld 2, 24(1)
-+	nop
-+	ld 3,0(31)
-+	addis 6,30,0x5
-+# WAS addis 5,2,.LC8@toc@ha
-+	li 4,1
-+# WAS addi 5,5,.LC8@toc@l
++# WAS addis 9,2,.LC10@toc@ha
++# WAS ld 5,.LC10@toc@l(9)
 +	addi 1, 1, -288
 +	mflr 5
 +	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC8
++	bl .Lbcm_loadtoc__dot_LC10
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
 +	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	addi 6,6,-29404
-+# WAS bl __fprintf_chk
-+	bl	bcm_redirector___fprintf_chk
++	ld 5, 0(5)
++# WAS bl fprintf
++	bl	bcm_redirector_fprintf
 +	ld 2, 24(1)
 +	nop
 +# WAS bl exported_function
 +	bl	.Lexported_function_local_entry
 +	nop
-+	addi 1,1,112
++	mr 3,9
++	addi 1,31,112
 +	ld 0,16(1)
-+	ld 30,-16(1)
-+	ld 31,-8(1)
 +	mtlr 0
++	ld 31,-8(1)
 +	blr
 +	.long 0
-+	.byte 0,0,0,1,128,2,0,0
++	.byte 0,0,0,1,128,1,0,1
 +	.size	function,.-function
-+	.globl kExportedString
-+# WAS .section	.rodata
-+.text
-+	.align 4
-+	.set	.LANCHOR0,. + 0
-+	.type	kString, @object
-+	.size	kString, 12
-+.LkString_local_target:
-+kString:
-+	.string	"hello world"
-+	.zero	4
-+	.type	kGiantArray, @object
-+	.size	kGiantArray, 400000
-+.LkGiantArray_local_target:
-+kGiantArray:
-+	.long	1
-+	.long	0
-+	.zero	399992
-+	.type	kExportedString, @object
-+	.size	kExportedString, 26
-+.LkExportedString_local_target:
-+kExportedString:
-+	.string	"hello world, more visibly"
-+# WAS .section	.rodata.str1.8,"aMS",@progbits,1
-+.text
-+	.align 3
-+.LC1:
-+
-+	.string	"kString is %p\n"
-+	.zero	1
-+.LC2:
-+
-+	.string	"kExportedString is %p\n"
-+	.zero	1
-+.LC4:
-+
-+	.string	"function is %p\n"
-+.LC5:
-+
-+	.string	"exported_function is %p\n"
-+	.zero	7
-+.LC7:
-+
-+	.string	"&kString[5] is %p\n"
-+	.zero	5
-+.LC8:
-+
-+	.string	"&kGiantArray[0x12345] is %p\n"
-+	.section	".bss"
 +	.align 2
-+	.type	bss, @object
-+	.size	bss, 20
-+bss:
-+.Lbss_local_target:
-+
-+	.zero	20
++	.globl exported_function
++	.type	exported_function, @function
++.Lexported_function_local_target:
++exported_function:
++0:
++999:
++	addis 2, 12, .LBORINGSSL_external_toc-999b@ha
++	addi 2, 2, .LBORINGSSL_external_toc-999b@l
++	ld 12, 0(2)
++	add 2, 2, 12
++# WAS addi 2,2,.TOC.-0b@l
++	.localentry	exported_function,.-exported_function
++.Lexported_function_local_entry:
++	mflr 0
++	std 0,16(1)
++	std 31,-8(1)
++	stdu 1,-48(1)
++	mr 31,1
++# WAS bl function
++	bl	.Lfunction_local_entry
++	mr 3,9
++	addi 1,31,48
++	ld 0,16(1)
++	mtlr 0
++	ld 31,-8(1)
++	blr
++	.long 0
++	.byte 0,0,0,1,128,1,0,1
++	.size	exported_function,.-exported_function
 +	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
 +	.section	.note.GNU-stack,"",@progbits
 +.text
 +.loc 1 2 0
 +BORINGSSL_bcm_text_end:
 +.section ".toc", "aw"
-+.Lredirector_toc___fprintf_chk:
-+.quad __fprintf_chk
++.Lredirector_toc_fprintf:
++.quad fprintf
 +.text
-+.type bcm_redirector___fprintf_chk, @function
-+bcm_redirector___fprintf_chk:
++.type bcm_redirector_fprintf, @function
++bcm_redirector_fprintf:
 +	std 2, 24(1)
-+	addis 12, 2, .Lredirector_toc___fprintf_chk@toc@ha
-+	ld 12, .Lredirector_toc___fprintf_chk@toc@l(12)
++	addis 12, 2, .Lredirector_toc_fprintf@toc@ha
++	ld 12, .Lredirector_toc_fprintf@toc@l(12)
 +	mtctr 12
 +	bctr
 +.type bss_bss_get, @function
 +bss_bss_get:
-+	addis 3, 2, .Lbss_local_target@toc@ha
-+	addi 3, 3, .Lbss_local_target@toc@l
-+	blr
-+.type bcm_loadtoc__dot_LANCHOR0, @function
-+bcm_loadtoc__dot_LANCHOR0:
-+.Lbcm_loadtoc__dot_LANCHOR0:
-+	addis 3, 2, .LANCHOR0@toc@ha
-+	addi 3, 3, .LANCHOR0@toc@l
++	addis 3, 2, bss@toc@ha
++	addi 3, 3, bss@toc@l
 +	blr
 +.type bcm_loadtoc__dot_LC0, @function
 +bcm_loadtoc__dot_LC0:
@@ -7799,23 +7643,11 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	addis 3, 2, .LC1@toc@ha
 +	addi 3, 3, .LC1@toc@l
 +	blr
-+.type bcm_loadtoc__dot_LC11, @function
-+bcm_loadtoc__dot_LC11:
-+.Lbcm_loadtoc__dot_LC11:
-+	addis 3, 2, .LC11@toc@ha
-+	addi 3, 3, .LC11@toc@l
-+	blr
-+.type bcm_loadtoc__dot_LC12, @function
-+bcm_loadtoc__dot_LC12:
-+.Lbcm_loadtoc__dot_LC12:
-+	addis 3, 2, .LC12@toc@ha
-+	addi 3, 3, .LC12@toc@l
-+	blr
-+.type bcm_loadtoc__dot_LC13, @function
-+bcm_loadtoc__dot_LC13:
-+.Lbcm_loadtoc__dot_LC13:
-+	addis 3, 2, .LC13@toc@ha
-+	addi 3, 3, .LC13@toc@l
++.type bcm_loadtoc__dot_LC10, @function
++bcm_loadtoc__dot_LC10:
++.Lbcm_loadtoc__dot_LC10:
++	addis 3, 2, .LC10@toc@ha
++	addi 3, 3, .LC10@toc@l
 +	blr
 +.type bcm_loadtoc__dot_LC2, @function
 +bcm_loadtoc__dot_LC2:
@@ -7859,12 +7691,24 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	addis 3, 2, .LC8@toc@ha
 +	addi 3, 3, .LC8@toc@l
 +	blr
++.type bcm_loadtoc__dot_LC9, @function
++bcm_loadtoc__dot_LC9:
++.Lbcm_loadtoc__dot_LC9:
++	addis 3, 2, .LC9@toc@ha
++	addi 3, 3, .LC9@toc@l
++	blr
 +.type bcm_loadtoc__dot_Lfunction_local_target, @function
 +bcm_loadtoc__dot_Lfunction_local_target:
 +.Lbcm_loadtoc__dot_Lfunction_local_target:
 +	addis 3, 2, .Lfunction_local_target@toc@ha
 +	addi 3, 3, .Lfunction_local_target@toc@l
 +	blr
++.type bcm_loadtoc__dot_LkString_local_target, @function
++bcm_loadtoc__dot_LkString_local_target:
++.Lbcm_loadtoc__dot_LkString_local_target:
++	addis 3, 2, .LkString_local_target@toc@ha
++	addi 3, 3, .LkString_local_target@toc@l
++	blr
 +.LBORINGSSL_external_toc:
 +.quad .TOC.-.LBORINGSSL_external_toc
 +.type BORINGSSL_bcm_text_hash, @object
@@ -7902,233 +7746,251 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.535300486 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s	2024-04-20 23:45:15.535300486 +0200
-@@ -0,0 +1,161 @@
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s
+@@ -0,0 +1,226 @@
 +	.file	"foo.c"
 +	.abiversion 2
 +	.section	".toc","aw"
 +	.section	".text"
-+	.section	.rodata
-+	.align 3
-+	.type	kString, @object
-+	.size	kString, 12
-+kString:
-+	.string	"hello world"
-+	.globl kExportedString
-+	.align 3
-+	.type	kExportedString, @object
-+	.size	kExportedString, 26
-+kExportedString:
-+	.string	"hello world, more visibly"
++	.section	".toc","aw"
++.LC0:
++	.quad	stderr
++.LC3:
++	.quad	kExportedString
++.LC6:
++	.quad	exported_function
++	.section	".text"
 +	.align 2
-+	.type	kGiantArray, @object
-+	.size	kGiantArray, 400000
-+kGiantArray:
-+	.long	1
-+	.long	0
-+	.zero	399992
-+	.lcomm	bss,20,4
-+	.type	bss, @object
-+	.align 3
-+.LC1:
-+	.string	"kString is %p\n"
-+	.align 3
-+.LC2:
-+	.string	"kExportedString is %p\n"
-+	.align 3
-+.LC4:
-+	.string	"function is %p\n"
-+	.align 3
-+.LC5:
-+	.string	"exported_function is %p\n"
-+	.align 3
-+.LC7:
-+	.string	"&kString[5] is %p\n"
-+	.align 3
-+.LC9:
-+	.string	"&kGiantArray[0x12345] is %p\n"
++	.p2align 4,,15
++	.globl exported_function
++	.type	exported_function, @function
++exported_function:
++0:	addis 2,12,.TOC.-0b@ha
++	addi 2,2,.TOC.-0b@l
++	.localentry	exported_function,.-exported_function
++	mflr 0
++	std 19,-104(1)
++	std 20,-96(1)
++	std 21,-88(1)
++	std 22,-80(1)
++	addis 21,2,.LC1@toc@ha
++	addis 22,2,.LC2@toc@ha
++	std 23,-72(1)
++	std 24,-64(1)
++	addis 23,2,.LC4@toc@ha
++	addis 24,2,function@toc@ha
++	std 25,-56(1)
++	std 26,-48(1)
++	addis 25,2,.LC5@toc@ha
++	addis 26,2,.LC7@toc@ha
++	std 27,-40(1)
++	std 28,-32(1)
++	addis 28,2,.LC8@toc@ha
++	addi 21,21,.LC1@toc@l
++	std 29,-24(1)
++	std 30,-16(1)
++	addis 29,2,.LANCHOR0@toc@ha
++	addi 22,22,.LC2@toc@l
++	std 31,-8(1)
++	std 0,16(1)
++	addi 29,29,.LANCHOR0@toc@l
++	addi 23,23,.LC4@toc@l
++	stdu 1,-208(1)
++	addis 31,2,.LC0@toc@ha		# gpr load fusion, type long
++	ld 31,.LC0@toc@l(31)
++	addis 19,2,.LC3@toc@ha		# gpr load fusion, type long
++	ld 19,.LC3@toc@l(19)
++	addis 30,29,0x5
++	addi 24,24,function@toc@l
++	addis 20,2,.LC6@toc@ha		# gpr load fusion, type long
++	ld 20,.LC6@toc@l(20)
++	addi 25,25,.LC5@toc@l
++	addi 26,26,.LC7@toc@l
++	addi 27,29,5
++	addi 28,28,.LC8@toc@l
++	addi 30,30,-29404
++	.p2align 4,,15
++.L2:
++	ld 3,0(31)
++	mr 5,21
++	mr 6,29
++	li 4,1
++	bl __fprintf_chk
++	nop
++	ld 3,0(31)
++	mr 5,22
++	mr 6,19
++	li 4,1
++	bl __fprintf_chk
++	nop
++	ld 3,0(31)
++	mr 5,23
++	mr 6,24
++	li 4,1
++	bl __fprintf_chk
++	nop
++	ld 3,0(31)
++	mr 5,25
++	mr 6,20
++	li 4,1
++	bl __fprintf_chk
++	nop
++	ld 3,0(31)
++	mr 5,26
++	mr 6,27
++	li 4,1
++	bl __fprintf_chk
++	nop
++	ld 3,0(31)
++	li 4,1
++	mr 5,28
++	mr 6,30
++	bl __fprintf_chk
++	nop
++	b .L2
++	.long 0
++	.byte 0,0,0,1,128,13,0,0
++	.size	exported_function,.-exported_function
 +	.section	".toc","aw"
-+.LC0:
-+	.quad	stderr
-+.LC3:
-+	.quad	kExportedString
-+.LC6:
-+	.quad	exported_function
-+.LC8:
-+	.quad	kString+5
-+.LC10:
-+	.quad	kGiantArray+298260
++	.set .LC11,.LC0
++	.set .LC12,.LC3
++	.set .LC13,.LC6
 +	.section	".text"
 +	.align 2
++	.p2align 4,,15
 +	.type	function, @function
 +function:
 +0:	addis 2,12,.TOC.-0b@ha
 +	addi 2,2,.TOC.-0b@l
 +	.localentry	function,.-function
 +	mflr 0
-+	std 0,16(1)
 +	std 31,-8(1)
++	addis 31,2,.LC11@toc@ha		# gpr load fusion, type long
++	ld 31,.LC11@toc@l(31)
++	addis 5,2,.LC1@toc@ha
++	std 30,-16(1)
++	addis 30,2,.LANCHOR0@toc@ha
++	addi 5,5,.LC1@toc@l
++	addi 30,30,.LANCHOR0@toc@l
++	li 4,1
++	mr 6,30
++	std 0,16(1)
 +	stdu 1,-112(1)
-+	mr 31,1
-+	addis 10,2,.LC0@toc@ha
-+	ld 9,.LC0@toc@l(10)
-+	ld 9,0(9)
-+	mr 3,9
-+	addis 4,2,.LC1@toc@ha
-+	addi 4,4,.LC1@toc@l
-+	addis 5,2,kString@toc@ha
-+	addi 5,5,kString@toc@l
-+	bl fprintf
++	ld 3,0(31)
++	bl __fprintf_chk
 +	nop
-+	addis 10,2,.LC0@toc@ha
-+	ld 9,.LC0@toc@l(10)
-+	ld 9,0(9)
-+	mr 3,9
-+	addis 4,2,.LC2@toc@ha
-+	addi 4,4,.LC2@toc@l
-+	addis 9,2,.LC3@toc@ha
-+	ld 5,.LC3@toc@l(9)
-+	bl fprintf
++	addis 6,2,.LC12@toc@ha		# gpr load fusion, type long
++	ld 6,.LC12@toc@l(6)
++	ld 3,0(31)
++	addis 5,2,.LC2@toc@ha
++	li 4,1
++	addi 5,5,.LC2@toc@l
++	bl __fprintf_chk
 +	nop
-+	addis 10,2,.LC0@toc@ha
-+	ld 9,.LC0@toc@l(10)
-+	ld 9,0(9)
-+	mr 3,9
-+	addis 4,2,.LC4@toc@ha
-+	addi 4,4,.LC4@toc@l
-+	addis 5,2,function@toc@ha
-+	addi 5,5,function@toc@l
-+	bl fprintf
++	ld 3,0(31)
++	addis 5,2,.LC4@toc@ha
++	addis 6,2,function@toc@ha
++	addi 5,5,.LC4@toc@l
++	addi 6,6,function@toc@l
++	li 4,1
++	bl __fprintf_chk
 +	nop
-+	addis 10,2,.LC0@toc@ha
-+	ld 9,.LC0@toc@l(10)
-+	ld 9,0(9)
-+	mr 3,9
-+	addis 4,2,.LC5@toc@ha
-+	addi 4,4,.LC5@toc@l
-+	addis 9,2,.LC6@toc@ha
-+	ld 5,.LC6@toc@l(9)
-+	bl fprintf
++	addis 6,2,.LC13@toc@ha		# gpr load fusion, type long
++	ld 6,.LC13@toc@l(6)
++	ld 3,0(31)
++	addis 5,2,.LC5@toc@ha
++	li 4,1
++	addi 5,5,.LC5@toc@l
++	bl __fprintf_chk
 +	nop
-+	addis 10,2,.LC0@toc@ha
-+	ld 9,.LC0@toc@l(10)
-+	ld 9,0(9)
-+	mr 3,9
-+	addis 4,2,.LC7@toc@ha
-+	addi 4,4,.LC7@toc@l
-+	addis 9,2,.LC8@toc@ha
-+	ld 5,.LC8@toc@l(9)
-+	bl fprintf
++	ld 3,0(31)
++	addis 5,2,.LC7@toc@ha
++	addi 6,30,5
++	addi 5,5,.LC7@toc@l
++	li 4,1
++	bl __fprintf_chk
 +	nop
-+	addis 10,2,.LC0@toc@ha
-+	ld 9,.LC0@toc@l(10)
-+	ld 9,0(9)
-+	mr 3,9
-+	addis 4,2,.LC9@toc@ha
-+	addi 4,4,.LC9@toc@l
-+	addis 9,2,.LC10@toc@ha
-+	ld 5,.LC10@toc@l(9)
-+	bl fprintf
++	ld 3,0(31)
++	addis 6,30,0x5
++	addis 5,2,.LC8@toc@ha
++	li 4,1
++	addi 5,5,.LC8@toc@l
++	addi 6,6,-29404
++	bl __fprintf_chk
 +	nop
 +	bl exported_function
 +	nop
-+	mr 3,9
-+	addi 1,31,112
++	addi 1,1,112
 +	ld 0,16(1)
-+	mtlr 0
++	ld 30,-16(1)
 +	ld 31,-8(1)
-+	blr
-+	.long 0
-+	.byte 0,0,0,1,128,1,0,1
-+	.size	function,.-function
-+	.align 2
-+	.globl exported_function
-+	.type	exported_function, @function
-+exported_function:
-+0:	addis 2,12,.TOC.-0b@ha
-+	addi 2,2,.TOC.-0b@l
-+	.localentry	exported_function,.-exported_function
-+	mflr 0
-+	std 0,16(1)
-+	std 31,-8(1)
-+	stdu 1,-48(1)
-+	mr 31,1
-+	bl function
-+	mr 3,9
-+	addi 1,31,48
-+	ld 0,16(1)
 +	mtlr 0
-+	ld 31,-8(1)
 +	blr
 +	.long 0
-+	.byte 0,0,0,1,128,1,0,1
-+	.size	exported_function,.-exported_function
-+	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
-+	.section	.note.GNU-stack,"",@progbits
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.535300486 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s	2024-04-20 23:45:15.535300486 +0200
-@@ -0,0 +1,552 @@
-+.text
-+.file 1 "inserted_by_delocate.c"
-+.loc 1 1 0
-+BORINGSSL_bcm_text_start:
-+	.file	"foo.c"
-+	.abiversion 2
-+	.section	".toc","aw"
-+# WAS .section	".text"
-+.text
-+# WAS .section	.rodata
-+.text
-+	.align 3
++	.byte 0,0,0,1,128,2,0,0
++	.size	function,.-function
++	.globl kExportedString
++	.section	.rodata
++	.align 4
++	.set	.LANCHOR0,. + 0
 +	.type	kString, @object
 +	.size	kString, 12
-+.LkString_local_target:
 +kString:
 +	.string	"hello world"
-+	.globl kExportedString
-+	.align 3
-+	.type	kExportedString, @object
-+	.size	kExportedString, 26
-+.LkExportedString_local_target:
-+kExportedString:
-+	.string	"hello world, more visibly"
-+	.align 2
++	.zero	4
 +	.type	kGiantArray, @object
 +	.size	kGiantArray, 400000
-+.LkGiantArray_local_target:
 +kGiantArray:
 +	.long	1
 +	.long	0
 +	.zero	399992
-+	.lcomm	bss,20,4
-+	.type	bss, @object
++	.type	kExportedString, @object
++	.size	kExportedString, 26
++kExportedString:
++	.string	"hello world, more visibly"
++	.section	.rodata.str1.8,"aMS",@progbits,1
 +	.align 3
 +.LC1:
-+
 +	.string	"kString is %p\n"
-+	.align 3
++	.zero	1
 +.LC2:
-+
 +	.string	"kExportedString is %p\n"
-+	.align 3
++	.zero	1
 +.LC4:
-+
 +	.string	"function is %p\n"
-+	.align 3
 +.LC5:
-+
 +	.string	"exported_function is %p\n"
-+	.align 3
++	.zero	7
 +.LC7:
-+
 +	.string	"&kString[5] is %p\n"
-+	.align 3
-+.LC9:
-+
++	.zero	5
++.LC8:
 +	.string	"&kGiantArray[0x12345] is %p\n"
++	.section	".bss"
++	.align 2
++	.type	bss, @object
++	.size	bss, 20
++bss:
++	.zero	20
++	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
++	.section	.note.GNU-stack,"",@progbits
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s
+@@ -0,0 +1,677 @@
++.text
++.file 1 "inserted_by_delocate.c"
++.loc 1 1 0
++BORINGSSL_bcm_text_start:
++	.file	"foo.c"
++	.abiversion 2
++	.section	".toc","aw"
++# WAS .section	".text"
++.text
 +	.section	".toc","aw"
 +.LC0:
 +
@@ -8139,18 +8001,14 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +.LC6:
 +
 +	.quad	exported_function
-+.LC8:
-+
-+	.quad	kString+5
-+.LC10:
-+
-+	.quad	kGiantArray+298260
 +# WAS .section	".text"
 +.text
 +	.align 2
-+	.type	function, @function
-+.Lfunction_local_target:
-+function:
++	.p2align 4,,15
++	.globl exported_function
++	.type	exported_function, @function
++.Lexported_function_local_target:
++exported_function:
 +0:
 +999:
 +	addis 2, 12, .LBORINGSSL_external_toc-999b@ha
@@ -8158,355 +8016,533 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	ld 12, 0(2)
 +	add 2, 2, 12
 +# WAS addi 2,2,.TOC.-0b@l
-+	.localentry	function,.-function
-+.Lfunction_local_entry:
++	.localentry	exported_function,.-exported_function
++.Lexported_function_local_entry:
 +	mflr 0
-+	std 0,16(1)
++	std 19,-104(1)
++	std 20,-96(1)
++	std 21,-88(1)
++	std 22,-80(1)
++# WAS addis 21,2,.LC1@toc@ha
++# WAS addis 22,2,.LC2@toc@ha
++	std 23,-72(1)
++	std 24,-64(1)
++# WAS addis 23,2,.LC4@toc@ha
++# WAS addis 24,2,function@toc@ha
++	std 25,-56(1)
++	std 26,-48(1)
++# WAS addis 25,2,.LC5@toc@ha
++# WAS addis 26,2,.LC7@toc@ha
++	std 27,-40(1)
++	std 28,-32(1)
++# WAS addis 28,2,.LC8@toc@ha
++# WAS addi 21,21,.LC1@toc@l
++	addi 1, 1, -288
++	mflr 21
++	std 21, -8(1)
++	std 3, -16(1)
++	bl .Lbcm_loadtoc__dot_LC1
++	std 3, -24(1)
++	ld 3, -8(1)
++	mtlr 3
++	ld 21, -24(1)
++	ld 3, -16(1)
++	addi 1, 1, 288
++	std 29,-24(1)
++	std 30,-16(1)
++# WAS addis 29,2,.LANCHOR0@toc@ha
++# WAS addi 22,22,.LC2@toc@l
++	addi 1, 1, -288
++	mflr 22
++	std 22, -8(1)
++	std 3, -16(1)
++	bl .Lbcm_loadtoc__dot_LC2
++	std 3, -24(1)
++	ld 3, -8(1)
++	mtlr 3
++	ld 22, -24(1)
++	ld 3, -16(1)
++	addi 1, 1, 288
 +	std 31,-8(1)
-+	stdu 1,-112(1)
-+	mr 31,1
-+# WAS addis 10,2,.LC0@toc@ha
-+# WAS ld 9,.LC0@toc@l(10)
++	std 0,16(1)
++# WAS addi 29,29,.LANCHOR0@toc@l
 +	addi 1, 1, -288
-+	mflr 9
-+	std 9, -8(1)
++	mflr 29
++	std 29, -8(1)
++	std 3, -16(1)
++	bl .Lbcm_loadtoc__dot_LANCHOR0
++	std 3, -24(1)
++	ld 3, -8(1)
++	mtlr 3
++	ld 29, -24(1)
++	ld 3, -16(1)
++	addi 1, 1, 288
++# WAS addi 23,23,.LC4@toc@l
++	addi 1, 1, -288
++	mflr 23
++	std 23, -8(1)
++	std 3, -16(1)
++	bl .Lbcm_loadtoc__dot_LC4
++	std 3, -24(1)
++	ld 3, -8(1)
++	mtlr 3
++	ld 23, -24(1)
++	ld 3, -16(1)
++	addi 1, 1, 288
++	stdu 1,-208(1)
++# WAS addis 31,2,.LC0@toc@ha		# gpr load fusion, type long
++# WAS ld 31,.LC0@toc@l(31)
++	addi 1, 1, -288
++	mflr 31
++	std 31, -8(1)
 +	std 3, -16(1)
 +	bl .Lbcm_loadtoc__dot_LC0
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 9, -24(1)
++	ld 31, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 9, 0(9)
-+	ld 9,0(9)
-+	mr 3,9
-+# WAS addis 4,2,.LC1@toc@ha
-+# WAS addi 4,4,.LC1@toc@l
++	ld 31, 0(31)
++# WAS addis 19,2,.LC3@toc@ha		# gpr load fusion, type long
++# WAS ld 19,.LC3@toc@l(19)
 +	addi 1, 1, -288
-+	mflr 4
-+	std 4, -8(1)
++	mflr 19
++	std 19, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC1
++	bl .Lbcm_loadtoc__dot_LC3
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 4, -24(1)
++	ld 19, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addis 5,2,kString@toc@ha
-+# WAS addi 5,5,kString@toc@l
++	ld 19, 0(19)
++	addis 30,29,0x5
++# WAS addi 24,24,function@toc@l
 +	addi 1, 1, -288
-+	mflr 5
-+	std 5, -8(1)
++	mflr 24
++	std 24, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LkString_local_target
++	bl .Lbcm_loadtoc__dot_Lfunction_local_target
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 5, -24(1)
++	ld 24, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS bl fprintf
-+	bl	bcm_redirector_fprintf
-+	ld 2, 24(1)
-+	nop
-+# WAS addis 10,2,.LC0@toc@ha
-+# WAS ld 9,.LC0@toc@l(10)
++# WAS addis 20,2,.LC6@toc@ha		# gpr load fusion, type long
++# WAS ld 20,.LC6@toc@l(20)
 +	addi 1, 1, -288
-+	mflr 9
-+	std 9, -8(1)
++	mflr 20
++	std 20, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC0
++	bl .Lbcm_loadtoc__dot_LC6
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 9, -24(1)
++	ld 20, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 9, 0(9)
-+	ld 9,0(9)
-+	mr 3,9
-+# WAS addis 4,2,.LC2@toc@ha
-+# WAS addi 4,4,.LC2@toc@l
++	ld 20, 0(20)
++# WAS addi 25,25,.LC5@toc@l
 +	addi 1, 1, -288
-+	mflr 4
-+	std 4, -8(1)
++	mflr 25
++	std 25, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC2
++	bl .Lbcm_loadtoc__dot_LC5
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 4, -24(1)
++	ld 25, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addis 9,2,.LC3@toc@ha
-+# WAS ld 5,.LC3@toc@l(9)
++# WAS addi 26,26,.LC7@toc@l
 +	addi 1, 1, -288
-+	mflr 5
-+	std 5, -8(1)
++	mflr 26
++	std 26, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC3
++	bl .Lbcm_loadtoc__dot_LC7
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 5, -24(1)
++	ld 26, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 5, 0(5)
-+# WAS bl fprintf
-+	bl	bcm_redirector_fprintf
-+	ld 2, 24(1)
-+	nop
-+# WAS addis 10,2,.LC0@toc@ha
-+# WAS ld 9,.LC0@toc@l(10)
++	addi 27,29,5
++# WAS addi 28,28,.LC8@toc@l
 +	addi 1, 1, -288
-+	mflr 9
-+	std 9, -8(1)
++	mflr 28
++	std 28, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC0
++	bl .Lbcm_loadtoc__dot_LC8
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 9, -24(1)
++	ld 28, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 9, 0(9)
-+	ld 9,0(9)
-+	mr 3,9
-+# WAS addis 4,2,.LC4@toc@ha
-+# WAS addi 4,4,.LC4@toc@l
++	addi 30,30,-29404
++	.p2align 4,,15
++.L2:
++
++	ld 3,0(31)
++	mr 5,21
++	mr 6,29
++	li 4,1
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	ld 3,0(31)
++	mr 5,22
++	mr 6,19
++	li 4,1
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	ld 3,0(31)
++	mr 5,23
++	mr 6,24
++	li 4,1
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	ld 3,0(31)
++	mr 5,25
++	mr 6,20
++	li 4,1
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	ld 3,0(31)
++	mr 5,26
++	mr 6,27
++	li 4,1
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	ld 3,0(31)
++	li 4,1
++	mr 5,28
++	mr 6,30
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	b .L2
++	.long 0
++	.byte 0,0,0,1,128,13,0,0
++	.size	exported_function,.-exported_function
++	.section	".toc","aw"
++	.set .LC11,.LC0
++	.set .LC12,.LC3
++	.set .LC13,.LC6
++# WAS .section	".text"
++.text
++	.align 2
++	.p2align 4,,15
++	.type	function, @function
++.Lfunction_local_target:
++function:
++0:
++999:
++	addis 2, 12, .LBORINGSSL_external_toc-999b@ha
++	addi 2, 2, .LBORINGSSL_external_toc-999b@l
++	ld 12, 0(2)
++	add 2, 2, 12
++# WAS addi 2,2,.TOC.-0b@l
++	.localentry	function,.-function
++.Lfunction_local_entry:
++	mflr 0
++	std 31,-8(1)
++# WAS addis 31,2,.LC11@toc@ha		# gpr load fusion, type long
++# WAS ld 31,.LC11@toc@l(31)
 +	addi 1, 1, -288
-+	mflr 4
-+	std 4, -8(1)
++	mflr 31
++	std 31, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC4
++	bl .Lbcm_loadtoc__dot_LC11
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 4, -24(1)
++	ld 31, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addis 5,2,function@toc@ha
-+# WAS addi 5,5,function@toc@l
++	ld 31, 0(31)
++# WAS addis 5,2,.LC1@toc@ha
++	std 30,-16(1)
++# WAS addis 30,2,.LANCHOR0@toc@ha
++# WAS addi 5,5,.LC1@toc@l
 +	addi 1, 1, -288
 +	mflr 5
 +	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_Lfunction_local_target
++	bl .Lbcm_loadtoc__dot_LC1
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
 +	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS bl fprintf
-+	bl	bcm_redirector_fprintf
++# WAS addi 30,30,.LANCHOR0@toc@l
++	addi 1, 1, -288
++	mflr 30
++	std 30, -8(1)
++	std 3, -16(1)
++	bl .Lbcm_loadtoc__dot_LANCHOR0
++	std 3, -24(1)
++	ld 3, -8(1)
++	mtlr 3
++	ld 30, -24(1)
++	ld 3, -16(1)
++	addi 1, 1, 288
++	li 4,1
++	mr 6,30
++	std 0,16(1)
++	stdu 1,-112(1)
++	ld 3,0(31)
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
 +	ld 2, 24(1)
 +	nop
-+# WAS addis 10,2,.LC0@toc@ha
-+# WAS ld 9,.LC0@toc@l(10)
++# WAS addis 6,2,.LC12@toc@ha		# gpr load fusion, type long
++# WAS ld 6,.LC12@toc@l(6)
 +	addi 1, 1, -288
-+	mflr 9
-+	std 9, -8(1)
++	mflr 6
++	std 6, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC0
++	bl .Lbcm_loadtoc__dot_LC12
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 9, -24(1)
++	ld 6, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 9, 0(9)
-+	ld 9,0(9)
-+	mr 3,9
-+# WAS addis 4,2,.LC5@toc@ha
-+# WAS addi 4,4,.LC5@toc@l
++	ld 6, 0(6)
++	ld 3,0(31)
++# WAS addis 5,2,.LC2@toc@ha
++	li 4,1
++# WAS addi 5,5,.LC2@toc@l
 +	addi 1, 1, -288
-+	mflr 4
-+	std 4, -8(1)
++	mflr 5
++	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC5
++	bl .Lbcm_loadtoc__dot_LC2
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 4, -24(1)
++	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addis 9,2,.LC6@toc@ha
-+# WAS ld 5,.LC6@toc@l(9)
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	ld 3,0(31)
++# WAS addis 5,2,.LC4@toc@ha
++# WAS addis 6,2,function@toc@ha
++# WAS addi 5,5,.LC4@toc@l
 +	addi 1, 1, -288
 +	mflr 5
 +	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC6
++	bl .Lbcm_loadtoc__dot_LC4
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
 +	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 5, 0(5)
-+# WAS bl fprintf
-+	bl	bcm_redirector_fprintf
-+	ld 2, 24(1)
-+	nop
-+# WAS addis 10,2,.LC0@toc@ha
-+# WAS ld 9,.LC0@toc@l(10)
++# WAS addi 6,6,function@toc@l
 +	addi 1, 1, -288
-+	mflr 9
-+	std 9, -8(1)
++	mflr 6
++	std 6, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC0
++	bl .Lbcm_loadtoc__dot_Lfunction_local_target
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 9, -24(1)
++	ld 6, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 9, 0(9)
-+	ld 9,0(9)
-+	mr 3,9
-+# WAS addis 4,2,.LC7@toc@ha
-+# WAS addi 4,4,.LC7@toc@l
++	li 4,1
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++# WAS addis 6,2,.LC13@toc@ha		# gpr load fusion, type long
++# WAS ld 6,.LC13@toc@l(6)
 +	addi 1, 1, -288
-+	mflr 4
-+	std 4, -8(1)
++	mflr 6
++	std 6, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC7
++	bl .Lbcm_loadtoc__dot_LC13
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 4, -24(1)
++	ld 6, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addis 9,2,.LC8@toc@ha
-+# WAS ld 5,.LC8@toc@l(9)
++	ld 6, 0(6)
++	ld 3,0(31)
++# WAS addis 5,2,.LC5@toc@ha
++	li 4,1
++# WAS addi 5,5,.LC5@toc@l
 +	addi 1, 1, -288
 +	mflr 5
 +	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC8
++	bl .Lbcm_loadtoc__dot_LC5
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
 +	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 5, 0(5)
-+# WAS bl fprintf
-+	bl	bcm_redirector_fprintf
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
 +	ld 2, 24(1)
 +	nop
-+# WAS addis 10,2,.LC0@toc@ha
-+# WAS ld 9,.LC0@toc@l(10)
-+	addi 1, 1, -288
-+	mflr 9
-+	std 9, -8(1)
-+	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC0
-+	std 3, -24(1)
-+	ld 3, -8(1)
-+	mtlr 3
-+	ld 9, -24(1)
-+	ld 3, -16(1)
-+	addi 1, 1, 288
-+	ld 9, 0(9)
-+	ld 9,0(9)
-+	mr 3,9
-+# WAS addis 4,2,.LC9@toc@ha
-+# WAS addi 4,4,.LC9@toc@l
++	ld 3,0(31)
++# WAS addis 5,2,.LC7@toc@ha
++	addi 6,30,5
++# WAS addi 5,5,.LC7@toc@l
 +	addi 1, 1, -288
-+	mflr 4
-+	std 4, -8(1)
++	mflr 5
++	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC9
++	bl .Lbcm_loadtoc__dot_LC7
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
-+	ld 4, -24(1)
++	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+# WAS addis 9,2,.LC10@toc@ha
-+# WAS ld 5,.LC10@toc@l(9)
++	li 4,1
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
++	ld 2, 24(1)
++	nop
++	ld 3,0(31)
++	addis 6,30,0x5
++# WAS addis 5,2,.LC8@toc@ha
++	li 4,1
++# WAS addi 5,5,.LC8@toc@l
 +	addi 1, 1, -288
 +	mflr 5
 +	std 5, -8(1)
 +	std 3, -16(1)
-+	bl .Lbcm_loadtoc__dot_LC10
++	bl .Lbcm_loadtoc__dot_LC8
 +	std 3, -24(1)
 +	ld 3, -8(1)
 +	mtlr 3
 +	ld 5, -24(1)
 +	ld 3, -16(1)
 +	addi 1, 1, 288
-+	ld 5, 0(5)
-+# WAS bl fprintf
-+	bl	bcm_redirector_fprintf
++	addi 6,6,-29404
++# WAS bl __fprintf_chk
++	bl	bcm_redirector___fprintf_chk
 +	ld 2, 24(1)
 +	nop
 +# WAS bl exported_function
 +	bl	.Lexported_function_local_entry
 +	nop
-+	mr 3,9
-+	addi 1,31,112
++	addi 1,1,112
 +	ld 0,16(1)
-+	mtlr 0
++	ld 30,-16(1)
 +	ld 31,-8(1)
++	mtlr 0
 +	blr
 +	.long 0
-+	.byte 0,0,0,1,128,1,0,1
++	.byte 0,0,0,1,128,2,0,0
 +	.size	function,.-function
++	.globl kExportedString
++# WAS .section	.rodata
++.text
++	.align 4
++	.set	.LANCHOR0,. + 0
++	.type	kString, @object
++	.size	kString, 12
++.LkString_local_target:
++kString:
++	.string	"hello world"
++	.zero	4
++	.type	kGiantArray, @object
++	.size	kGiantArray, 400000
++.LkGiantArray_local_target:
++kGiantArray:
++	.long	1
++	.long	0
++	.zero	399992
++	.type	kExportedString, @object
++	.size	kExportedString, 26
++.LkExportedString_local_target:
++kExportedString:
++	.string	"hello world, more visibly"
++# WAS .section	.rodata.str1.8,"aMS",@progbits,1
++.text
++	.align 3
++.LC1:
++
++	.string	"kString is %p\n"
++	.zero	1
++.LC2:
++
++	.string	"kExportedString is %p\n"
++	.zero	1
++.LC4:
++
++	.string	"function is %p\n"
++.LC5:
++
++	.string	"exported_function is %p\n"
++	.zero	7
++.LC7:
++
++	.string	"&kString[5] is %p\n"
++	.zero	5
++.LC8:
++
++	.string	"&kGiantArray[0x12345] is %p\n"
++	.section	".bss"
 +	.align 2
-+	.globl exported_function
-+	.type	exported_function, @function
-+.Lexported_function_local_target:
-+exported_function:
-+0:
-+999:
-+	addis 2, 12, .LBORINGSSL_external_toc-999b@ha
-+	addi 2, 2, .LBORINGSSL_external_toc-999b@l
-+	ld 12, 0(2)
-+	add 2, 2, 12
-+# WAS addi 2,2,.TOC.-0b@l
-+	.localentry	exported_function,.-exported_function
-+.Lexported_function_local_entry:
-+	mflr 0
-+	std 0,16(1)
-+	std 31,-8(1)
-+	stdu 1,-48(1)
-+	mr 31,1
-+# WAS bl function
-+	bl	.Lfunction_local_entry
-+	mr 3,9
-+	addi 1,31,48
-+	ld 0,16(1)
-+	mtlr 0
-+	ld 31,-8(1)
-+	blr
-+	.long 0
-+	.byte 0,0,0,1,128,1,0,1
-+	.size	exported_function,.-exported_function
++	.type	bss, @object
++	.size	bss, 20
++bss:
++.Lbss_local_target:
++
++	.zero	20
 +	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
 +	.section	.note.GNU-stack,"",@progbits
 +.text
 +.loc 1 2 0
 +BORINGSSL_bcm_text_end:
 +.section ".toc", "aw"
-+.Lredirector_toc_fprintf:
-+.quad fprintf
++.Lredirector_toc___fprintf_chk:
++.quad __fprintf_chk
 +.text
-+.type bcm_redirector_fprintf, @function
-+bcm_redirector_fprintf:
++.type bcm_redirector___fprintf_chk, @function
++bcm_redirector___fprintf_chk:
 +	std 2, 24(1)
-+	addis 12, 2, .Lredirector_toc_fprintf@toc@ha
-+	ld 12, .Lredirector_toc_fprintf@toc@l(12)
++	addis 12, 2, .Lredirector_toc___fprintf_chk@toc@ha
++	ld 12, .Lredirector_toc___fprintf_chk@toc@l(12)
 +	mtctr 12
 +	bctr
 +.type bss_bss_get, @function
 +bss_bss_get:
-+	addis 3, 2, bss@toc@ha
-+	addi 3, 3, bss@toc@l
++	addis 3, 2, .Lbss_local_target@toc@ha
++	addi 3, 3, .Lbss_local_target@toc@l
++	blr
++.type bcm_loadtoc__dot_LANCHOR0, @function
++bcm_loadtoc__dot_LANCHOR0:
++.Lbcm_loadtoc__dot_LANCHOR0:
++	addis 3, 2, .LANCHOR0@toc@ha
++	addi 3, 3, .LANCHOR0@toc@l
 +	blr
 +.type bcm_loadtoc__dot_LC0, @function
 +bcm_loadtoc__dot_LC0:
@@ -8520,11 +8556,23 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	addis 3, 2, .LC1@toc@ha
 +	addi 3, 3, .LC1@toc@l
 +	blr
-+.type bcm_loadtoc__dot_LC10, @function
-+bcm_loadtoc__dot_LC10:
-+.Lbcm_loadtoc__dot_LC10:
-+	addis 3, 2, .LC10@toc@ha
-+	addi 3, 3, .LC10@toc@l
++.type bcm_loadtoc__dot_LC11, @function
++bcm_loadtoc__dot_LC11:
++.Lbcm_loadtoc__dot_LC11:
++	addis 3, 2, .LC11@toc@ha
++	addi 3, 3, .LC11@toc@l
++	blr
++.type bcm_loadtoc__dot_LC12, @function
++bcm_loadtoc__dot_LC12:
++.Lbcm_loadtoc__dot_LC12:
++	addis 3, 2, .LC12@toc@ha
++	addi 3, 3, .LC12@toc@l
++	blr
++.type bcm_loadtoc__dot_LC13, @function
++bcm_loadtoc__dot_LC13:
++.Lbcm_loadtoc__dot_LC13:
++	addis 3, 2, .LC13@toc@ha
++	addi 3, 3, .LC13@toc@l
 +	blr
 +.type bcm_loadtoc__dot_LC2, @function
 +bcm_loadtoc__dot_LC2:
@@ -8568,24 +8616,12 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +	addis 3, 2, .LC8@toc@ha
 +	addi 3, 3, .LC8@toc@l
 +	blr
-+.type bcm_loadtoc__dot_LC9, @function
-+bcm_loadtoc__dot_LC9:
-+.Lbcm_loadtoc__dot_LC9:
-+	addis 3, 2, .LC9@toc@ha
-+	addi 3, 3, .LC9@toc@l
-+	blr
 +.type bcm_loadtoc__dot_Lfunction_local_target, @function
 +bcm_loadtoc__dot_Lfunction_local_target:
 +.Lbcm_loadtoc__dot_Lfunction_local_target:
 +	addis 3, 2, .Lfunction_local_target@toc@ha
 +	addi 3, 3, .Lfunction_local_target@toc@l
 +	blr
-+.type bcm_loadtoc__dot_LkString_local_target, @function
-+bcm_loadtoc__dot_LkString_local_target:
-+.Lbcm_loadtoc__dot_LkString_local_target:
-+	addis 3, 2, .LkString_local_target@toc@ha
-+	addi 3, 3, .LkString_local_target@toc@l
-+	blr
 +.LBORINGSSL_external_toc:
 +.quad .TOC.-.LBORINGSSL_external_toc
 +.type BORINGSSL_bcm_text_hash, @object
@@ -8623,9 +8659,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.535300486 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s	2024-04-20 23:45:15.535300486 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s
 @@ -0,0 +1,23 @@
 +	.text
 +foo:
@@ -8650,9 +8687,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +
 +	addis 4, 2, 1+foo-2@toc@ha+3
 +	addi 4, 4, 1+foo-2@toc@l+3
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s
---- chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.535300486 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s	2024-04-20 23:45:15.535300486 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s
 @@ -0,0 +1,178 @@
 +.text
 +.file 1 "inserted_by_delocate.c"
@@ -8832,9 +8870,10 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/fipstools/delocat
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/generate_build_files.py.0001-Add-PPC64-support-for-boringssl chromium-124.0.6367.60/third_party/boringssl/src/util/generate_build_files.py
---- chromium-124.0.6367.60/third_party/boringssl/src/util/generate_build_files.py.0001-Add-PPC64-support-for-boringssl	2024-04-20 23:45:15.535300486 +0200
-+++ chromium-124.0.6367.60/third_party/boringssl/src/util/generate_build_files.py	2024-04-21 00:00:21.109496693 +0200
+Index: chromium-124.0.6367.60/third_party/boringssl/src/util/generate_build_files.py
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/util/generate_build_files.py
++++ chromium-124.0.6367.60/third_party/boringssl/src/util/generate_build_files.py
 @@ -34,6 +34,7 @@ OS_ARCH_COMBOS = [
      ('apple', 'x86_64', 'macosx', [], 'S'),
      ('linux', 'arm', 'linux32', [], 'S'),
@@ -8843,3 +8882,18 @@ diff -up chromium-124.0.6367.60/third_party/boringssl/src/util/generate_build_fi
      ('linux', 'x86', 'elf', ['-fPIC'], 'S'),
      ('linux', 'x86_64', 'elf', [], 'S'),
      ('win', 'x86', 'win32n', [], 'asm'),
+Index: chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c
++++ chromium-124.0.6367.60/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c
+@@ -416,6 +416,10 @@ static void sha1_block_data_order(uint32
+     return;
+   }
+ #endif
++#if defined(SHA1_ASM_PPC64)
++  sha1_block_data_order_ppc64(state, data, num);
++  return;
++#endif
+   sha1_block_data_order_nohw(state, data, num);
+ }
+ 

diff --git a/0003-third_party-ffmpeg-Add-ppc64-generated-config.patch b/0003-third_party-ffmpeg-Add-ppc64-generated-config.patch
index 0e92963..b8786b5 100644
--- a/0003-third_party-ffmpeg-Add-ppc64-generated-config.patch
+++ b/0003-third_party-ffmpeg-Add-ppc64-generated-config.patch
@@ -1,10 +1,12 @@
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/config.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/config.h
-@@ -0,0 +1,768 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/config.h
+@@ -0,0 +1,772 @@
 +/* Automatically generated by configure - do not modify! */
 +#ifndef FFMPEG_CONFIG_H
 +#define FFMPEG_CONFIG_H
-+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/CHROMIUM_REBUILD/CHROMIUM_123/NEW.BUILD_TEST/chromium-123.0.6312.58/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=ppc64le --extra-cflags='-mcpu=power8' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264'" -- elide long configuration string from binary */
++/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/CHROMIUM_REBUILD/CHROMIUM_124/NEW.BUILD_TEST/chromium-124.0.6367.60/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=ppc64le --extra-cflags='-mcpu=power8' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264'" -- elide long configuration string from binary */
 +#define FFMPEG_LICENSE "LGPL version 2.1 or later"
 +#define CONFIG_THIS_YEAR 2024
 +#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
@@ -16,7 +18,6 @@
 +#define EXTERN_ASM 
 +#define BUILDSUF ""
 +#define SLIBSUF ".so"
-+#define HAVE_MMX2 HAVE_MMXEXT
 +#define SWS_MAX_FILTER_SIZE 256
 +#define ARCH_AARCH64 0
 +#define ARCH_ALPHA 0
@@ -248,6 +249,7 @@
 +#define HAVE_OPENCV2_CORE_CORE_C_H 0
 +#define HAVE_OPENGL_GL3_H 0
 +#define HAVE_POLL_H 1
++#define HAVE_PTHREAD_NP_H 0
 +#define HAVE_SYS_PARAM_H 1
 +#define HAVE_SYS_RESOURCE_H 1
 +#define HAVE_SYS_SELECT_H 1
@@ -338,6 +340,8 @@
 +#define HAVE_POSIX_MEMALIGN 1
 +#define HAVE_PRCTL 0 /* #define HAVE_PRCTL 1 -- forced to 0 for Fuchsia */
 +#define HAVE_PTHREAD_CANCEL 1
++#define HAVE_PTHREAD_SET_NAME_NP 0
++#define HAVE_PTHREAD_SETNAME_NP 0
 +#define HAVE_SCHED_GETAFFINITY 1
 +#define HAVE_SECITEMIMPORT 0
 +#define HAVE_SETCONSOLETEXTATTRIBUTE 0
@@ -709,10 +713,12 @@
 +#define CONFIG_H264_SEI 1
 +#define CONFIG_HEVCPARSE 0
 +#define CONFIG_HEVC_SEI 0
-+#define CONFIG_HPELDSP 1
++#define CONFIG_HPELDSP 0
 +#define CONFIG_HUFFMAN 0
 +#define CONFIG_HUFFYUVDSP 0
 +#define CONFIG_HUFFYUVENCDSP 0
++#define CONFIG_IAMFDEC 0
++#define CONFIG_IAMFENC 0
 +#define CONFIG_IDCTDSP 0
 +#define CONFIG_IIRFILTER 0
 +#define CONFIG_INFLATE_WRAPPER 0
@@ -763,15 +769,17 @@
 +#define CONFIG_VAAPI_ENCODE 0
 +#define CONFIG_VC1DSP 0
 +#define CONFIG_VIDEODSP 1
-+#define CONFIG_VP3DSP 1
++#define CONFIG_VP3DSP 0
 +#define CONFIG_VP56DSP 0
-+#define CONFIG_VP8DSP 1
++#define CONFIG_VP8DSP 0
 +#define CONFIG_WMA_FREQS 0
 +#define CONFIG_WMV2DSP 0
 +#endif /* FFMPEG_CONFIG_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/config_components.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/config_components.h
-@@ -0,0 +1,2217 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/config_components.h
+@@ -0,0 +1,2218 @@
 +/* Automatically generated by configure - do not modify! */
 +#ifndef FFMPEG_CONFIG_COMPONENTS_H
 +#define FFMPEG_CONFIG_COMPONENTS_H
@@ -809,6 +817,7 @@
 +#define CONFIG_PRORES_METADATA_BSF 0
 +#define CONFIG_REMOVE_EXTRADATA_BSF 0
 +#define CONFIG_SETTS_BSF 0
++#define CONFIG_SHOWINFO_BSF 0
 +#define CONFIG_TEXT2MOVSUB_BSF 0
 +#define CONFIG_TRACE_HEADERS_BSF 0
 +#define CONFIG_TRUEHD_CORE_BSF 0
@@ -1044,7 +1053,7 @@
 +#define CONFIG_TARGA_DECODER 0
 +#define CONFIG_TARGA_Y216_DECODER 0
 +#define CONFIG_TDSC_DECODER 0
-+#define CONFIG_THEORA_DECODER 1
++#define CONFIG_THEORA_DECODER 0
 +#define CONFIG_THP_DECODER 0
 +#define CONFIG_TIERTEXSEQVIDEO_DECODER 0
 +#define CONFIG_TIFF_DECODER 0
@@ -1075,14 +1084,14 @@
 +#define CONFIG_VMDVIDEO_DECODER 0
 +#define CONFIG_VMIX_DECODER 0
 +#define CONFIG_VMNC_DECODER 0
-+#define CONFIG_VP3_DECODER 1
++#define CONFIG_VP3_DECODER 0
 +#define CONFIG_VP4_DECODER 0
 +#define CONFIG_VP5_DECODER 0
 +#define CONFIG_VP6_DECODER 0
 +#define CONFIG_VP6A_DECODER 0
 +#define CONFIG_VP6F_DECODER 0
 +#define CONFIG_VP7_DECODER 0
-+#define CONFIG_VP8_DECODER 1
++#define CONFIG_VP8_DECODER 0
 +#define CONFIG_VP8_RKMPP_DECODER 0
 +#define CONFIG_VP8_V4L2M2M_DECODER 0
 +#define CONFIG_VP9_DECODER 0
@@ -1422,6 +1431,7 @@
 +#define CONFIG_DNXHD_ENCODER 0
 +#define CONFIG_DPX_ENCODER 0
 +#define CONFIG_DVVIDEO_ENCODER 0
++#define CONFIG_DXV_ENCODER 0
 +#define CONFIG_EXR_ENCODER 0
 +#define CONFIG_FFV1_ENCODER 0
 +#define CONFIG_FFVHUFF_ENCODER 0
@@ -1782,8 +1792,8 @@
 +#define CONFIG_TAK_PARSER 0
 +#define CONFIG_VC1_PARSER 0
 +#define CONFIG_VORBIS_PARSER 1
-+#define CONFIG_VP3_PARSER 1
-+#define CONFIG_VP8_PARSER 1
++#define CONFIG_VP3_PARSER 0
++#define CONFIG_VP8_PARSER 0
 +#define CONFIG_VP9_PARSER 1
 +#define CONFIG_VVC_PARSER 0
 +#define CONFIG_WEBP_PARSER 0
@@ -2395,8 +2405,6 @@
 +#define CONFIG_AVSYNCTEST_FILTER 0
 +#define CONFIG_AMOVIE_FILTER 0
 +#define CONFIG_MOVIE_FILTER 0
-+#define CONFIG_AFIFO_FILTER 0
-+#define CONFIG_FIFO_FILTER 0
 +#define CONFIG_AA_DEMUXER 0
 +#define CONFIG_AAC_DEMUXER 1
 +#define CONFIG_AAX_DEMUXER 0
@@ -2890,6 +2898,7 @@
 +#define CONFIG_PCM_U8_MUXER 0
 +#define CONFIG_PSP_MUXER 0
 +#define CONFIG_RAWVIDEO_MUXER 0
++#define CONFIG_RCWT_MUXER 0
 +#define CONFIG_RM_MUXER 0
 +#define CONFIG_ROQ_MUXER 0
 +#define CONFIG_RSO_MUXER 0
@@ -2989,19 +2998,20 @@
 +#define CONFIG_IPFS_GATEWAY_PROTOCOL 0
 +#define CONFIG_IPNS_GATEWAY_PROTOCOL 0
 +#endif /* FFMPEG_CONFIG_COMPONENTS_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/bsf_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/bsf_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/bsf_list.c
 @@ -0,0 +1,2 @@
 +static const FFBitStreamFilter * const bitstream_filters[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/codec_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/codec_list.c
-@@ -0,0 +1,20 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/codec_list.c
+@@ -0,0 +1,17 @@
 +static const FFCodec * const codec_list[] = {
 +    &ff_h264_decoder,
-+    &ff_theora_decoder,
-+    &ff_vp3_decoder,
-+    &ff_vp8_decoder,
 +    &ff_aac_decoder,
 +    &ff_flac_decoder,
 +    &ff_mp3_decoder,
@@ -3017,9 +3027,11 @@
 +    &ff_pcm_u8_decoder,
 +    &ff_libopus_decoder,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/parser_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/parser_list.c
-@@ -0,0 +1,11 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavcodec/parser_list.c
+@@ -0,0 +1,9 @@
 +static const AVCodecParser * const parser_list[] = {
 +    &ff_aac_parser,
 +    &ff_flac_parser,
@@ -3027,12 +3039,37 @@
 +    &ff_mpegaudio_parser,
 +    &ff_opus_parser,
 +    &ff_vorbis_parser,
-+    &ff_vp3_parser,
-+    &ff_vp8_parser,
 +    &ff_vp9_parser,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavdevice/indev_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavdevice/indev_list.c
+@@ -0,0 +1,2 @@
++static const AVInputFormat * const indev_list[] = {
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavdevice/outdev_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavdevice/outdev_list.c
+@@ -0,0 +1,2 @@
++static const FFOutputFormat * const outdev_list[] = {
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavfilter/filter_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/demuxer_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavfilter/filter_list.c
+@@ -0,0 +1,6 @@
++static const AVFilter * const filter_list[] = {
++    &ff_asrc_abuffer,
++    &ff_vsrc_buffer,
++    &ff_asink_abuffer,
++    &ff_vsink_buffer,
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/demuxer_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/demuxer_list.c
 @@ -0,0 +1,9 @@
 +static const AVInputFormat * const demuxer_list[] = {
 +    &ff_aac_demuxer,
@@ -3043,18 +3080,24 @@
 +    &ff_ogg_demuxer,
 +    &ff_wav_demuxer,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/muxer_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/muxer_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/muxer_list.c
 @@ -0,0 +1,2 @@
 +static const FFOutputFormat * const muxer_list[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/protocol_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/protocol_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavformat/protocol_list.c
 @@ -0,0 +1,2 @@
 +static const URLProtocol * const url_protocols[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavutil/avconfig.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavutil/avconfig.h
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavutil/avconfig.h
 @@ -0,0 +1,6 @@
 +/* Generated by ffmpeg configure */
 +#ifndef AVUTIL_AVCONFIG_H
@@ -3062,21 +3105,25 @@
 +#define AV_HAVE_BIGENDIAN 0
 +#define AV_HAVE_FAST_UNALIGNED 1
 +#endif /* AVUTIL_AVCONFIG_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavutil/ffversion.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavutil/ffversion.h
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chrome/linux/ppc64/libavutil/ffversion.h
 @@ -0,0 +1,5 @@
 +/* Automatically generated by version.sh, do not manually edit! */
 +#ifndef AVUTIL_FFVERSION_H
 +#define AVUTIL_FFVERSION_H
 +#define FFMPEG_VERSION "N-113309-gf89a6e7576"
 +#endif /* AVUTIL_FFVERSION_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/config.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/config.h
-@@ -0,0 +1,768 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/config.h
+@@ -0,0 +1,772 @@
 +/* Automatically generated by configure - do not modify! */
 +#ifndef FFMPEG_CONFIG_H
 +#define FFMPEG_CONFIG_H
-+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/CHROMIUM_REBUILD/CHROMIUM_123/NEW.BUILD_TEST/chromium-123.0.6312.58/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=ppc64le --extra-cflags='-mcpu=power8' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264' --enable-decoder=mpeg4 --enable-parser='h263,mpeg4video' --enable-demuxer=avi" -- elide long configuration string from binary */
++/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/CHROMIUM_REBUILD/CHROMIUM_124/NEW.BUILD_TEST/chromium-124.0.6367.60/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=ppc64le --extra-cflags='-mcpu=power8' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld' --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264' --enable-decoder=mpeg4 --enable-parser='h263,mpeg4video' --enable-demuxer=avi" -- elide long configuration string from binary */
 +#define FFMPEG_LICENSE "LGPL version 2.1 or later"
 +#define CONFIG_THIS_YEAR 2024
 +#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
@@ -3088,7 +3135,6 @@
 +#define EXTERN_ASM 
 +#define BUILDSUF ""
 +#define SLIBSUF ".so"
-+#define HAVE_MMX2 HAVE_MMXEXT
 +#define SWS_MAX_FILTER_SIZE 256
 +#define ARCH_AARCH64 0
 +#define ARCH_ALPHA 0
@@ -3320,6 +3366,7 @@
 +#define HAVE_OPENCV2_CORE_CORE_C_H 0
 +#define HAVE_OPENGL_GL3_H 0
 +#define HAVE_POLL_H 1
++#define HAVE_PTHREAD_NP_H 0
 +#define HAVE_SYS_PARAM_H 1
 +#define HAVE_SYS_RESOURCE_H 1
 +#define HAVE_SYS_SELECT_H 1
@@ -3410,6 +3457,8 @@
 +#define HAVE_POSIX_MEMALIGN 1
 +#define HAVE_PRCTL 0 /* #define HAVE_PRCTL 1 -- forced to 0 for Fuchsia */
 +#define HAVE_PTHREAD_CANCEL 1
++#define HAVE_PTHREAD_SET_NAME_NP 0
++#define HAVE_PTHREAD_SETNAME_NP 0
 +#define HAVE_SCHED_GETAFFINITY 1
 +#define HAVE_SECITEMIMPORT 0
 +#define HAVE_SETCONSOLETEXTATTRIBUTE 0
@@ -3785,6 +3834,8 @@
 +#define CONFIG_HUFFMAN 0
 +#define CONFIG_HUFFYUVDSP 0
 +#define CONFIG_HUFFYUVENCDSP 0
++#define CONFIG_IAMFDEC 0
++#define CONFIG_IAMFENC 0
 +#define CONFIG_IDCTDSP 1
 +#define CONFIG_IIRFILTER 0
 +#define CONFIG_INFLATE_WRAPPER 0
@@ -3835,15 +3886,17 @@
 +#define CONFIG_VAAPI_ENCODE 0
 +#define CONFIG_VC1DSP 0
 +#define CONFIG_VIDEODSP 1
-+#define CONFIG_VP3DSP 1
++#define CONFIG_VP3DSP 0
 +#define CONFIG_VP56DSP 0
-+#define CONFIG_VP8DSP 1
++#define CONFIG_VP8DSP 0
 +#define CONFIG_WMA_FREQS 0
 +#define CONFIG_WMV2DSP 0
 +#endif /* FFMPEG_CONFIG_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/config_components.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/config_components.h
-@@ -0,0 +1,2217 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/config_components.h
+@@ -0,0 +1,2218 @@
 +/* Automatically generated by configure - do not modify! */
 +#ifndef FFMPEG_CONFIG_COMPONENTS_H
 +#define FFMPEG_CONFIG_COMPONENTS_H
@@ -3881,6 +3934,7 @@
 +#define CONFIG_PRORES_METADATA_BSF 0
 +#define CONFIG_REMOVE_EXTRADATA_BSF 0
 +#define CONFIG_SETTS_BSF 0
++#define CONFIG_SHOWINFO_BSF 0
 +#define CONFIG_TEXT2MOVSUB_BSF 0
 +#define CONFIG_TRACE_HEADERS_BSF 0
 +#define CONFIG_TRUEHD_CORE_BSF 0
@@ -4116,7 +4170,7 @@
 +#define CONFIG_TARGA_DECODER 0
 +#define CONFIG_TARGA_Y216_DECODER 0
 +#define CONFIG_TDSC_DECODER 0
-+#define CONFIG_THEORA_DECODER 1
++#define CONFIG_THEORA_DECODER 0
 +#define CONFIG_THP_DECODER 0
 +#define CONFIG_TIERTEXSEQVIDEO_DECODER 0
 +#define CONFIG_TIFF_DECODER 0
@@ -4147,14 +4201,14 @@
 +#define CONFIG_VMDVIDEO_DECODER 0
 +#define CONFIG_VMIX_DECODER 0
 +#define CONFIG_VMNC_DECODER 0
-+#define CONFIG_VP3_DECODER 1
++#define CONFIG_VP3_DECODER 0
 +#define CONFIG_VP4_DECODER 0
 +#define CONFIG_VP5_DECODER 0
 +#define CONFIG_VP6_DECODER 0
 +#define CONFIG_VP6A_DECODER 0
 +#define CONFIG_VP6F_DECODER 0
 +#define CONFIG_VP7_DECODER 0
-+#define CONFIG_VP8_DECODER 1
++#define CONFIG_VP8_DECODER 0
 +#define CONFIG_VP8_RKMPP_DECODER 0
 +#define CONFIG_VP8_V4L2M2M_DECODER 0
 +#define CONFIG_VP9_DECODER 0
@@ -4494,6 +4548,7 @@
 +#define CONFIG_DNXHD_ENCODER 0
 +#define CONFIG_DPX_ENCODER 0
 +#define CONFIG_DVVIDEO_ENCODER 0
++#define CONFIG_DXV_ENCODER 0
 +#define CONFIG_EXR_ENCODER 0
 +#define CONFIG_FFV1_ENCODER 0
 +#define CONFIG_FFVHUFF_ENCODER 0
@@ -4854,8 +4909,8 @@
 +#define CONFIG_TAK_PARSER 0
 +#define CONFIG_VC1_PARSER 0
 +#define CONFIG_VORBIS_PARSER 1
-+#define CONFIG_VP3_PARSER 1
-+#define CONFIG_VP8_PARSER 1
++#define CONFIG_VP3_PARSER 0
++#define CONFIG_VP8_PARSER 0
 +#define CONFIG_VP9_PARSER 1
 +#define CONFIG_VVC_PARSER 0
 +#define CONFIG_WEBP_PARSER 0
@@ -5467,8 +5522,6 @@
 +#define CONFIG_AVSYNCTEST_FILTER 0
 +#define CONFIG_AMOVIE_FILTER 0
 +#define CONFIG_MOVIE_FILTER 0
-+#define CONFIG_AFIFO_FILTER 0
-+#define CONFIG_FIFO_FILTER 0
 +#define CONFIG_AA_DEMUXER 0
 +#define CONFIG_AAC_DEMUXER 1
 +#define CONFIG_AAX_DEMUXER 0
@@ -5962,6 +6015,7 @@
 +#define CONFIG_PCM_U8_MUXER 0
 +#define CONFIG_PSP_MUXER 0
 +#define CONFIG_RAWVIDEO_MUXER 0
++#define CONFIG_RCWT_MUXER 0
 +#define CONFIG_RM_MUXER 0
 +#define CONFIG_ROQ_MUXER 0
 +#define CONFIG_RSO_MUXER 0
@@ -6061,21 +6115,22 @@
 +#define CONFIG_IPFS_GATEWAY_PROTOCOL 0
 +#define CONFIG_IPNS_GATEWAY_PROTOCOL 0
 +#endif /* FFMPEG_CONFIG_COMPONENTS_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/bsf_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/bsf_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/bsf_list.c
 @@ -0,0 +1,2 @@
 +static const FFBitStreamFilter * const bitstream_filters[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/codec_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/codec_list.c
-@@ -0,0 +1,22 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/codec_list.c
+@@ -0,0 +1,19 @@
 +static const FFCodec * const codec_list[] = {
 +    &ff_h263_decoder,
 +    &ff_h264_decoder,
 +    &ff_mpeg4_decoder,
-+    &ff_theora_decoder,
-+    &ff_vp3_decoder,
-+    &ff_vp8_decoder,
 +    &ff_aac_decoder,
 +    &ff_flac_decoder,
 +    &ff_mp3_decoder,
@@ -6091,9 +6146,11 @@
 +    &ff_pcm_u8_decoder,
 +    &ff_libopus_decoder,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/parser_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/parser_list.c
-@@ -0,0 +1,13 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavcodec/parser_list.c
+@@ -0,0 +1,11 @@
 +static const AVCodecParser * const parser_list[] = {
 +    &ff_aac_parser,
 +    &ff_flac_parser,
@@ -6103,12 +6160,37 @@
 +    &ff_mpegaudio_parser,
 +    &ff_opus_parser,
 +    &ff_vorbis_parser,
-+    &ff_vp3_parser,
-+    &ff_vp8_parser,
 +    &ff_vp9_parser,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavdevice/indev_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/demuxer_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavdevice/indev_list.c
+@@ -0,0 +1,2 @@
++static const AVInputFormat * const indev_list[] = {
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavdevice/outdev_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavdevice/outdev_list.c
+@@ -0,0 +1,2 @@
++static const FFOutputFormat * const outdev_list[] = {
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavfilter/filter_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavfilter/filter_list.c
+@@ -0,0 +1,6 @@
++static const AVFilter * const filter_list[] = {
++    &ff_asrc_abuffer,
++    &ff_vsrc_buffer,
++    &ff_asink_abuffer,
++    &ff_vsink_buffer,
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/demuxer_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/demuxer_list.c
 @@ -0,0 +1,10 @@
 +static const AVInputFormat * const demuxer_list[] = {
 +    &ff_aac_demuxer,
@@ -6120,18 +6202,24 @@
 +    &ff_ogg_demuxer,
 +    &ff_wav_demuxer,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/muxer_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/muxer_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/muxer_list.c
 @@ -0,0 +1,2 @@
 +static const FFOutputFormat * const muxer_list[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/protocol_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/protocol_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavformat/protocol_list.c
 @@ -0,0 +1,2 @@
 +static const URLProtocol * const url_protocols[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavutil/avconfig.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavutil/avconfig.h
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavutil/avconfig.h
 @@ -0,0 +1,6 @@
 +/* Generated by ffmpeg configure */
 +#ifndef AVUTIL_AVCONFIG_H
@@ -6139,21 +6227,25 @@
 +#define AV_HAVE_BIGENDIAN 0
 +#define AV_HAVE_FAST_UNALIGNED 1
 +#endif /* AVUTIL_AVCONFIG_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavutil/ffversion.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavutil/ffversion.h
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/ChromeOS/linux/ppc64/libavutil/ffversion.h
 @@ -0,0 +1,5 @@
 +/* Automatically generated by version.sh, do not manually edit! */
 +#ifndef AVUTIL_FFVERSION_H
 +#define AVUTIL_FFVERSION_H
 +#define FFMPEG_VERSION "N-113309-gf89a6e7576"
 +#endif /* AVUTIL_FFVERSION_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/config.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/config.h
-@@ -0,0 +1,768 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/config.h
+@@ -0,0 +1,772 @@
 +/* Automatically generated by configure - do not modify! */
 +#ifndef FFMPEG_CONFIG_H
 +#define FFMPEG_CONFIG_H
-+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/CHROMIUM_REBUILD/CHROMIUM_123/NEW.BUILD_TEST/chromium-123.0.6312.58/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=ppc64le --extra-cflags='-mcpu=power8' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld'" -- elide long configuration string from binary */
++/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/CHROMIUM_REBUILD/CHROMIUM_124/NEW.BUILD_TEST/chromium-124.0.6367.60/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --arch=ppc64le --extra-cflags='-mcpu=power8' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-fuse-ld=lld'" -- elide long configuration string from binary */
 +#define FFMPEG_LICENSE "LGPL version 2.1 or later"
 +#define CONFIG_THIS_YEAR 2024
 +#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
@@ -6165,7 +6257,6 @@
 +#define EXTERN_ASM 
 +#define BUILDSUF ""
 +#define SLIBSUF ".so"
-+#define HAVE_MMX2 HAVE_MMXEXT
 +#define SWS_MAX_FILTER_SIZE 256
 +#define ARCH_AARCH64 0
 +#define ARCH_ALPHA 0
@@ -6397,6 +6488,7 @@
 +#define HAVE_OPENCV2_CORE_CORE_C_H 0
 +#define HAVE_OPENGL_GL3_H 0
 +#define HAVE_POLL_H 1
++#define HAVE_PTHREAD_NP_H 0
 +#define HAVE_SYS_PARAM_H 1
 +#define HAVE_SYS_RESOURCE_H 1
 +#define HAVE_SYS_SELECT_H 1
@@ -6487,6 +6579,8 @@
 +#define HAVE_POSIX_MEMALIGN 1
 +#define HAVE_PRCTL 0 /* #define HAVE_PRCTL 1 -- forced to 0 for Fuchsia */
 +#define HAVE_PTHREAD_CANCEL 1
++#define HAVE_PTHREAD_SET_NAME_NP 0
++#define HAVE_PTHREAD_SETNAME_NP 0
 +#define HAVE_SCHED_GETAFFINITY 1
 +#define HAVE_SECITEMIMPORT 0
 +#define HAVE_SETCONSOLETEXTATTRIBUTE 0
@@ -6853,15 +6947,17 @@
 +#define CONFIG_H264CHROMA 0
 +#define CONFIG_H264DSP 0
 +#define CONFIG_H264PARSE 0
-+#define CONFIG_H264PRED 1
++#define CONFIG_H264PRED 0
 +#define CONFIG_H264QPEL 0
 +#define CONFIG_H264_SEI 0
 +#define CONFIG_HEVCPARSE 0
 +#define CONFIG_HEVC_SEI 0
-+#define CONFIG_HPELDSP 1
++#define CONFIG_HPELDSP 0
 +#define CONFIG_HUFFMAN 0
 +#define CONFIG_HUFFYUVDSP 0
 +#define CONFIG_HUFFYUVENCDSP 0
++#define CONFIG_IAMFDEC 0
++#define CONFIG_IAMFENC 0
 +#define CONFIG_IDCTDSP 0
 +#define CONFIG_IIRFILTER 0
 +#define CONFIG_INFLATE_WRAPPER 0
@@ -6911,16 +7007,18 @@
 +#define CONFIG_VAAPI_1 0
 +#define CONFIG_VAAPI_ENCODE 0
 +#define CONFIG_VC1DSP 0
-+#define CONFIG_VIDEODSP 1
-+#define CONFIG_VP3DSP 1
++#define CONFIG_VIDEODSP 0
++#define CONFIG_VP3DSP 0
 +#define CONFIG_VP56DSP 0
-+#define CONFIG_VP8DSP 1
++#define CONFIG_VP8DSP 0
 +#define CONFIG_WMA_FREQS 0
 +#define CONFIG_WMV2DSP 0
 +#endif /* FFMPEG_CONFIG_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/config_components.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/config_components.h
-@@ -0,0 +1,2217 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/config_components.h
+@@ -0,0 +1,2218 @@
 +/* Automatically generated by configure - do not modify! */
 +#ifndef FFMPEG_CONFIG_COMPONENTS_H
 +#define FFMPEG_CONFIG_COMPONENTS_H
@@ -6958,6 +7056,7 @@
 +#define CONFIG_PRORES_METADATA_BSF 0
 +#define CONFIG_REMOVE_EXTRADATA_BSF 0
 +#define CONFIG_SETTS_BSF 0
++#define CONFIG_SHOWINFO_BSF 0
 +#define CONFIG_TEXT2MOVSUB_BSF 0
 +#define CONFIG_TRACE_HEADERS_BSF 0
 +#define CONFIG_TRUEHD_CORE_BSF 0
@@ -7193,7 +7292,7 @@
 +#define CONFIG_TARGA_DECODER 0
 +#define CONFIG_TARGA_Y216_DECODER 0
 +#define CONFIG_TDSC_DECODER 0
-+#define CONFIG_THEORA_DECODER 1
++#define CONFIG_THEORA_DECODER 0
 +#define CONFIG_THP_DECODER 0
 +#define CONFIG_TIERTEXSEQVIDEO_DECODER 0
 +#define CONFIG_TIFF_DECODER 0
@@ -7224,14 +7323,14 @@
 +#define CONFIG_VMDVIDEO_DECODER 0
 +#define CONFIG_VMIX_DECODER 0
 +#define CONFIG_VMNC_DECODER 0
-+#define CONFIG_VP3_DECODER 1
++#define CONFIG_VP3_DECODER 0
 +#define CONFIG_VP4_DECODER 0
 +#define CONFIG_VP5_DECODER 0
 +#define CONFIG_VP6_DECODER 0
 +#define CONFIG_VP6A_DECODER 0
 +#define CONFIG_VP6F_DECODER 0
 +#define CONFIG_VP7_DECODER 0
-+#define CONFIG_VP8_DECODER 1
++#define CONFIG_VP8_DECODER 0
 +#define CONFIG_VP8_RKMPP_DECODER 0
 +#define CONFIG_VP8_V4L2M2M_DECODER 0
 +#define CONFIG_VP9_DECODER 0
@@ -7571,6 +7670,7 @@
 +#define CONFIG_DNXHD_ENCODER 0
 +#define CONFIG_DPX_ENCODER 0
 +#define CONFIG_DVVIDEO_ENCODER 0
++#define CONFIG_DXV_ENCODER 0
 +#define CONFIG_EXR_ENCODER 0
 +#define CONFIG_FFV1_ENCODER 0
 +#define CONFIG_FFVHUFF_ENCODER 0
@@ -7931,8 +8031,8 @@
 +#define CONFIG_TAK_PARSER 0
 +#define CONFIG_VC1_PARSER 0
 +#define CONFIG_VORBIS_PARSER 1
-+#define CONFIG_VP3_PARSER 1
-+#define CONFIG_VP8_PARSER 1
++#define CONFIG_VP3_PARSER 0
++#define CONFIG_VP8_PARSER 0
 +#define CONFIG_VP9_PARSER 1
 +#define CONFIG_VVC_PARSER 0
 +#define CONFIG_WEBP_PARSER 0
@@ -8544,8 +8644,6 @@
 +#define CONFIG_AVSYNCTEST_FILTER 0
 +#define CONFIG_AMOVIE_FILTER 0
 +#define CONFIG_MOVIE_FILTER 0
-+#define CONFIG_AFIFO_FILTER 0
-+#define CONFIG_FIFO_FILTER 0
 +#define CONFIG_AA_DEMUXER 0
 +#define CONFIG_AAC_DEMUXER 0
 +#define CONFIG_AAX_DEMUXER 0
@@ -9039,6 +9137,7 @@
 +#define CONFIG_PCM_U8_MUXER 0
 +#define CONFIG_PSP_MUXER 0
 +#define CONFIG_RAWVIDEO_MUXER 0
++#define CONFIG_RCWT_MUXER 0
 +#define CONFIG_RM_MUXER 0
 +#define CONFIG_ROQ_MUXER 0
 +#define CONFIG_RSO_MUXER 0
@@ -9138,18 +9237,19 @@
 +#define CONFIG_IPFS_GATEWAY_PROTOCOL 0
 +#define CONFIG_IPNS_GATEWAY_PROTOCOL 0
 +#endif /* FFMPEG_CONFIG_COMPONENTS_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/bsf_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/bsf_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/bsf_list.c
 @@ -0,0 +1,2 @@
 +static const FFBitStreamFilter * const bitstream_filters[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/codec_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/codec_list.c
-@@ -0,0 +1,18 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/codec_list.c
+@@ -0,0 +1,15 @@
 +static const FFCodec * const codec_list[] = {
-+    &ff_theora_decoder,
-+    &ff_vp3_decoder,
-+    &ff_vp8_decoder,
 +    &ff_flac_decoder,
 +    &ff_mp3_decoder,
 +    &ff_vorbis_decoder,
@@ -9164,20 +9264,47 @@
 +    &ff_pcm_u8_decoder,
 +    &ff_libopus_decoder,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/parser_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/parser_list.c
-@@ -0,0 +1,9 @@
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavcodec/parser_list.c
+@@ -0,0 +1,7 @@
 +static const AVCodecParser * const parser_list[] = {
 +    &ff_flac_parser,
 +    &ff_mpegaudio_parser,
 +    &ff_opus_parser,
 +    &ff_vorbis_parser,
-+    &ff_vp3_parser,
-+    &ff_vp8_parser,
 +    &ff_vp9_parser,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavdevice/indev_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavdevice/indev_list.c
+@@ -0,0 +1,2 @@
++static const AVInputFormat * const indev_list[] = {
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavdevice/outdev_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavdevice/outdev_list.c
+@@ -0,0 +1,2 @@
++static const FFOutputFormat * const outdev_list[] = {
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavfilter/filter_list.c
+===================================================================
+--- /dev/null
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavfilter/filter_list.c
+@@ -0,0 +1,6 @@
++static const AVFilter * const filter_list[] = {
++    &ff_asrc_abuffer,
++    &ff_vsrc_buffer,
++    &ff_asink_abuffer,
++    &ff_vsink_buffer,
++    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/demuxer_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/demuxer_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/demuxer_list.c
 @@ -0,0 +1,8 @@
 +static const AVInputFormat * const demuxer_list[] = {
 +    &ff_flac_demuxer,
@@ -9187,18 +9314,24 @@
 +    &ff_ogg_demuxer,
 +    &ff_wav_demuxer,
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/muxer_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/muxer_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/muxer_list.c
 @@ -0,0 +1,2 @@
 +static const FFOutputFormat * const muxer_list[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/protocol_list.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/protocol_list.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavformat/protocol_list.c
 @@ -0,0 +1,2 @@
 +static const URLProtocol * const url_protocols[] = {
 +    NULL };
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavutil/avconfig.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavutil/avconfig.h
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavutil/avconfig.h
 @@ -0,0 +1,6 @@
 +/* Generated by ffmpeg configure */
 +#ifndef AVUTIL_AVCONFIG_H
@@ -9206,16 +9339,20 @@
 +#define AV_HAVE_BIGENDIAN 0
 +#define AV_HAVE_FAST_UNALIGNED 1
 +#endif /* AVUTIL_AVCONFIG_H */
+Index: chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavutil/ffversion.h
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavutil/ffversion.h
++++ chromium-124.0.6367.60/third_party/ffmpeg/chromium/config/Chromium/linux/ppc64/libavutil/ffversion.h
 @@ -0,0 +1,5 @@
 +/* Automatically generated by version.sh, do not manually edit! */
 +#ifndef AVUTIL_FFVERSION_H
 +#define AVUTIL_FFVERSION_H
 +#define FFMPEG_VERSION "N-113309-gf89a6e7576"
 +#endif /* AVUTIL_FFVERSION_H */
---- a/third_party/ffmpeg/ffmpeg_generated.gni
-+++ b/third_party/ffmpeg/ffmpeg_generated.gni
+Index: chromium-124.0.6367.60/third_party/ffmpeg/ffmpeg_generated.gni
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/ffmpeg/ffmpeg_generated.gni
++++ chromium-124.0.6367.60/third_party/ffmpeg/ffmpeg_generated.gni
 @@ -281,6 +281,40 @@ if ((is_apple && ffmpeg_branding == "Chr
    ]
  }
@@ -9257,8 +9394,10 @@
  if ((is_apple && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
      (is_win && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
      (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
+Index: chromium-124.0.6367.60/third_party/ffmpeg/libavcodec/ppc/h264dsp_ppc.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/libavcodec/ppc/h264dsp_ppc.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/libavcodec/ppc/h264dsp_ppc.c
 @@ -0,0 +1,815 @@
 +/*
 + * Copyright (c) 2004 Romain Dolbeau <romain@dolbeau.org>
@@ -10075,8 +10214,10 @@
 +    }
 +#endif /* HAVE_ALTIVEC */
 +}
+Index: chromium-124.0.6367.60/third_party/ffmpeg/libavcodec/ppc/h264qpel_ppc.c
+===================================================================
 --- /dev/null
-+++ b/third_party/ffmpeg/libavcodec/ppc/h264qpel_ppc.c
++++ chromium-124.0.6367.60/third_party/ffmpeg/libavcodec/ppc/h264qpel_ppc.c
 @@ -0,0 +1,315 @@
 +/*
 + * Copyright (c) 2004 Romain Dolbeau <romain@dolbeau.org>

diff --git a/skia-vsx-instructions.patch b/skia-vsx-instructions.patch
index 13d7479..1cec31e 100644
--- a/skia-vsx-instructions.patch
+++ b/skia-vsx-instructions.patch
@@ -1,5 +1,7 @@
---- a/third_party/skia/BUILD.gn
-+++ b/third_party/skia/BUILD.gn
+Index: chromium-124.0.6367.60/third_party/skia/BUILD.gn
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/BUILD.gn
++++ chromium-124.0.6367.60/third_party/skia/BUILD.gn
 @@ -191,6 +191,12 @@ opts("skx") {
    }
  }
@@ -33,8 +35,10 @@
  
    sources = []
    sources += skia_pathops_sources
---- a/third_party/skia/gn/skia/BUILD.gn
-+++ b/third_party/skia/gn/skia/BUILD.gn
+Index: chromium-124.0.6367.60/third_party/skia/gn/skia/BUILD.gn
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/gn/skia/BUILD.gn
++++ chromium-124.0.6367.60/third_party/skia/gn/skia/BUILD.gn
 @@ -163,6 +163,8 @@ config("default") {
        "-mfpmath=sse",
      ]
@@ -44,8 +48,10 @@
    }
  
    if (malloc != "" && !is_win) {
---- a/third_party/skia/include/core/SkTypes.h
-+++ b/third_party/skia/include/core/SkTypes.h
+Index: chromium-124.0.6367.60/third_party/skia/include/core/SkTypes.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/include/core/SkTypes.h
++++ chromium-124.0.6367.60/third_party/skia/include/core/SkTypes.h
 @@ -195,5 +195,44 @@ static constexpr uint32_t SK_InvalidGenI
  */
  static constexpr uint32_t SK_InvalidUniqueID = 0;
@@ -91,8 +97,10 @@
 +
  
  #endif
---- a/third_party/skia/src/base/SkSpinlock.cpp
-+++ b/third_party/skia/src/base/SkSpinlock.cpp
+Index: chromium-124.0.6367.60/third_party/skia/src/base/SkSpinlock.cpp
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/base/SkSpinlock.cpp
++++ chromium-124.0.6367.60/third_party/skia/src/base/SkSpinlock.cpp
 @@ -33,7 +33,8 @@
  #endif
  
@@ -103,8 +111,10 @@
      #include <emmintrin.h>
      static void do_pause() { _mm_pause(); }
  #else
---- a/third_party/skia/src/opts/SkBitmapProcState_opts.h
-+++ b/third_party/skia/src/opts/SkBitmapProcState_opts.h
+Index: chromium-124.0.6367.60/third_party/skia/src/opts/SkBitmapProcState_opts.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/opts/SkBitmapProcState_opts.h
++++ chromium-124.0.6367.60/third_party/skia/src/opts/SkBitmapProcState_opts.h
 @@ -21,7 +21,13 @@
  // The rest are scattershot at the moment but I want to get them
  // all migrated to be normal code inside SkBitmapProcState.cpp.
@@ -120,8 +130,10 @@
      #include <immintrin.h>
  #elif defined(SK_ARM_HAS_NEON)
      #include <arm_neon.h>
---- a/third_party/skia/src/opts/SkBlitRow_opts.h
-+++ b/third_party/skia/src/opts/SkBlitRow_opts.h
+Index: chromium-124.0.6367.60/third_party/skia/src/opts/SkBlitRow_opts.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/opts/SkBlitRow_opts.h
++++ chromium-124.0.6367.60/third_party/skia/src/opts/SkBlitRow_opts.h
 @@ -69,7 +69,7 @@
  #endif
  
@@ -131,8 +143,10 @@
  
      static inline __m128i SkPMSrcOver_SSE2(const __m128i& src, const __m128i& dst) {
          __m128i scale = _mm_sub_epi32(_mm_set1_epi32(256),
---- a/third_party/skia/src/opts/SkRasterPipeline_opts.h
-+++ b/third_party/skia/src/opts/SkRasterPipeline_opts.h
+Index: chromium-124.0.6367.60/third_party/skia/src/opts/SkRasterPipeline_opts.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/opts/SkRasterPipeline_opts.h
++++ chromium-124.0.6367.60/third_party/skia/src/opts/SkRasterPipeline_opts.h
 @@ -1,5 +1,6 @@
  /*
   * Copyright 2018 Google Inc.
@@ -158,7 +172,7 @@
  #else
      #include <immintrin.h>
  #endif
-@@ -200,6 +205,182 @@ namespace SK_OPTS_NS {
+@@ -200,6 +205,184 @@ namespace SK_OPTS_NS {
          ptr[3] = a;
      }
  
@@ -213,10 +227,12 @@
 +    }
 +
 +    SI F     mad(F f, F m, F a) { return vec_madd(f,m,a); }
++    SI F    nmad(F f, F m, F a) { return vec_msub(f,m,a); }
 +    SI F  floor_(F v) { return vec_floor(v); }
 +    SI F   ceil_(F v) { return vec_ceil(v); }
 +    SI F   sqrt_(F v) { return vec_sqrt(v); }
-+    SI U32 round(F v) { return vec_cts((vector float)vec_rint(v), 0); }
++    SI I32 iround(F v) { return vec_cts((vector float)vec_rint(v), 0); }
++    SI U32 round(F v)  { return vec_ctu((vector float)vec_rint(v), 0); }
 +    SI U32 round(F v, F scale) { return vec_cts((vector float)vec_rint(v*scale), 0); }
 +
 +    template <typename T>
@@ -341,7 +357,7 @@
  #elif defined(JUMPER_IS_NEON)
      template <typename T> using V = Vec<4, T>;
      using F   = V<float   >;
-@@ -1025,6 +1206,15 @@ SI F from_half(U16 h) {
+@@ -1025,6 +1208,15 @@ SI F from_half(U16 h) {
  #elif defined(JUMPER_IS_HSW)
      return _mm256_cvtph_ps((__m128i)h);
  
@@ -357,7 +373,7 @@
  #else
      // Remember, a half is 1-5-10 (sign-exponent-mantissa) with 15 exponent bias.
      U32 sem = expand(h),
-@@ -1048,6 +1238,16 @@ SI U16 to_half(F f) {
+@@ -1048,6 +1240,16 @@ SI U16 to_half(F f) {
  #elif defined(JUMPER_IS_HSW)
      return (U16)_mm256_cvtps_ph(f, _MM_FROUND_CUR_DIRECTION);
  
@@ -374,7 +390,7 @@
  #else
      // Remember, a float is 1-8-23 (sign-exponent-mantissa) with 127 exponent bias.
      U32 sem = sk_bit_cast<U32>(f),
-@@ -1123,7 +1323,7 @@ static constexpr size_t N = sizeof(F) /
+@@ -1123,7 +1325,7 @@ static constexpr size_t N = sizeof(F) /
      // instead of {b,a} on the stack.  Narrow stages work best for __vectorcall.
      #define ABI __vectorcall
      #define JUMPER_NARROW_STAGES 1
@@ -383,7 +399,7 @@
      // These platforms are ideal for wider stages, and their default ABI is ideal.
      #define ABI
      #define JUMPER_NARROW_STAGES 0
-@@ -5023,6 +5223,10 @@ SI F sqrt_(F x) {
+@@ -5023,6 +5225,10 @@ SI F sqrt_(F x) {
      float32x4_t lo,hi;
      split(x, &lo,&hi);
      return join<F>(sqrt(lo), sqrt(hi));
@@ -394,7 +410,7 @@
  #else
      return F{
          sqrtf(x[0]), sqrtf(x[1]), sqrtf(x[2]), sqrtf(x[3]),
-@@ -5046,6 +5250,10 @@ SI F floor_(F x) {
+@@ -5046,6 +5252,10 @@ SI F floor_(F x) {
      __m128 lo,hi;
      split(x, &lo,&hi);
      return join<F>(_mm_floor_ps(lo), _mm_floor_ps(hi));
@@ -405,7 +421,7 @@
  #else
      F roundtrip = cast<F>(cast<I32>(x));
      return roundtrip - if_then_else(roundtrip > x, F_(1), F_(0));
-@@ -5057,6 +5265,7 @@ SI F floor_(F x) {
+@@ -5057,6 +5267,7 @@ SI F floor_(F x) {
  //     (2 * a * b + (1 << 15)) >> 16
  // The result is a number on [-1, 1).
  // Note: on neon this is a saturating multiply while the others are not.
@@ -413,7 +429,7 @@
  SI I16 scaled_mult(I16 a, I16 b) {
  #if defined(JUMPER_IS_SKX)
      return (I16)_mm256_mulhrs_epi16((__m256i)a, (__m256i)b);
-@@ -5068,6 +5277,22 @@ SI I16 scaled_mult(I16 a, I16 b) {
+@@ -5068,6 +5279,22 @@ SI I16 scaled_mult(I16 a, I16 b) {
      return vqrdmulhq_s16(a, b);
  #elif defined(JUMPER_IS_NEON)
      return vqrdmulhq_s16(a, b);
@@ -436,7 +452,7 @@
  #else
      const I32 roundingTerm = I32_(1 << 14);
      return cast<I16>((cast<I32>(a) * cast<I32>(b) + roundingTerm) >> 15);
-@@ -5089,7 +5314,26 @@ SI U16 constrained_add(I16 a, U16 b) {
+@@ -5089,7 +5316,26 @@ SI U16 constrained_add(I16 a, U16 b) {
              SkASSERT(-ib <= ia && ia <= 65535 - ib);
          }
      #endif
@@ -463,7 +479,7 @@
  }
  
  SI F fract(F x) { return x - floor_(x); }
-@@ -5947,8 +6191,14 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
+@@ -5947,8 +6193,14 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
      //         2^-8 * v = 2^-9 * (tx*(R - L) + (R + L))
      //                v = 1/2 * (tx*(R - L) + (R + L))
      auto lerpX = [&](U16 left, U16 right) -> U16 {
@@ -478,7 +494,7 @@
          // The constrained_add is the most subtle part of lerp. The first term is on the interval
          // [-1, 1), and the second term is on the interval is on the interval [0, 1) because
          // both terms are too high by a factor of 2 which will be handled below. (Both R and L are
-@@ -5960,7 +6210,12 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
+@@ -5960,7 +6212,12 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
          U16 v2  = constrained_add(scaled_mult(tx, width), middle) + 1;
          // Divide by 2 to calculate v and at the same time bring the intermediate value onto the
          // interval [0, 1/2] to set up for the lerpY.
@@ -491,7 +507,7 @@
      };
  
      const uint32_t* ptr;
-@@ -5994,9 +6249,15 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
+@@ -5994,9 +6251,15 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
          I16 width  = (I16)bottom - (I16)top;
          U16 middle = bottom + top;
          // Add + 0x80 for rounding.
@@ -508,8 +524,10 @@
      };
  
      r = lerpY(topR, bottomR);
---- a/third_party/skia/src/base/SkVx.h
-+++ b/third_party/skia/src/base/SkVx.h
+Index: chromium-124.0.6367.60/third_party/skia/src/base/SkVx.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/base/SkVx.h
++++ chromium-124.0.6367.60/third_party/skia/src/base/SkVx.h
 @@ -42,7 +42,13 @@
  
  #if SKVX_USE_SIMD
@@ -525,8 +543,10 @@
      #elif defined(SK_ARM_HAS_NEON)
          #include <arm_neon.h>
      #elif defined(__wasm_simd128__)
---- a/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
-+++ b/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
+Index: chromium-124.0.6367.60/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
++++ chromium-124.0.6367.60/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
 @@ -9,7 +9,7 @@
  #include "src/core/SkBlitMask.h"
  #include "src/core/SkOptsTargets.h"
@@ -536,8 +556,10 @@
  
  // The order of these includes is important:
  // 1) Select the target CPU architecture by defining SK_OPTS_TARGET and including SkOpts_SetTarget
---- a/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
-+++ b/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
+Index: chromium-124.0.6367.60/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
++++ chromium-124.0.6367.60/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
 @@ -10,7 +10,7 @@
  #include "src/core/SkOptsTargets.h"
  #include "src/core/SkSwizzlePriv.h"
@@ -547,8 +569,10 @@
      !defined(SK_ENABLE_OPTIMIZE_SIZE) && \
      SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3
  
---- a/third_party/skia/src/core/SkBlitMask_opts.cpp
-+++ b/third_party/skia/src/core/SkBlitMask_opts.cpp
+Index: chromium-124.0.6367.60/third_party/skia/src/core/SkBlitMask_opts.cpp
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/core/SkBlitMask_opts.cpp
++++ chromium-124.0.6367.60/third_party/skia/src/core/SkBlitMask_opts.cpp
 @@ -25,7 +25,7 @@ namespace SkOpts {
      static bool init() {
      #if defined(SK_ENABLE_OPTIMIZE_SIZE)
@@ -558,8 +582,10 @@
          #if SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3
              if (SkCpu::Supports(SkCpu::SSSE3)) { Init_BlitMask_ssse3(); }
          #endif
---- a/third_party/skia/src/core/SkBitmapProcState_opts.cpp
-+++ b/third_party/skia/src/core/SkBitmapProcState_opts.cpp
+Index: chromium-124.0.6367.60/third_party/skia/src/core/SkBitmapProcState_opts.cpp
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/core/SkBitmapProcState_opts.cpp
++++ chromium-124.0.6367.60/third_party/skia/src/core/SkBitmapProcState_opts.cpp
 @@ -25,7 +25,7 @@ namespace SkOpts {
      static bool init() {
      #if defined(SK_ENABLE_OPTIMIZE_SIZE)
@@ -569,8 +595,10 @@
          #if SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3
              if (SkCpu::Supports(SkCpu::SSSE3)) { Init_BitmapProcState_ssse3(); }
          #endif
---- a/third_party/skia/src/core/SkCpu.h
-+++ b/third_party/skia/src/core/SkCpu.h
+Index: chromium-124.0.6367.60/third_party/skia/src/core/SkCpu.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/core/SkCpu.h
++++ chromium-124.0.6367.60/third_party/skia/src/core/SkCpu.h
 @@ -55,7 +55,7 @@ inline bool SkCpu::Supports(uint32_t mas
  
      // If we mask in compile-time known lower limits, the compiler can
@@ -580,8 +608,10 @@
      #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE1
      features |= SSE1;
      #endif
---- a/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
-+++ b/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
+Index: chromium-124.0.6367.60/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
++++ chromium-124.0.6367.60/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
 @@ -8,7 +8,7 @@
  #include "include/private/base/SkFeatures.h"
  #include "src/core/SkOptsTargets.h"
@@ -591,8 +621,10 @@
  
  // The order of these includes is important:
  // 1) Select the target CPU architecture by defining SK_OPTS_TARGET and including SkOpts_SetTarget
---- a/third_party/skia/include/private/base/SkFeatures.h
-+++ b/third_party/skia/include/private/base/SkFeatures.h
+Index: chromium-124.0.6367.60/third_party/skia/include/private/base/SkFeatures.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/include/private/base/SkFeatures.h
++++ chromium-124.0.6367.60/third_party/skia/include/private/base/SkFeatures.h
 @@ -63,6 +63,8 @@
  
  #if defined(__i386) || defined(_M_IX86) ||  defined(__x86_64__) || defined(_M_X64)
@@ -602,8 +634,10 @@
  #endif
  
  /**
---- a/third_party/skia/modules/skcms/src/skcms_internals.h
-+++ b/third_party/skia/modules/skcms/src/skcms_internals.h
+Index: chromium-124.0.6367.60/third_party/skia/modules/skcms/src/skcms_internals.h
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/modules/skcms/src/skcms_internals.h
++++ chromium-124.0.6367.60/third_party/skia/modules/skcms/src/skcms_internals.h
 @@ -47,6 +47,7 @@ extern "C" {
                                                   && !defined(__EMSCRIPTEN__) \
                                                   && !defined(__arm__) \
@@ -612,8 +646,10 @@
                                                   && !defined(__loongarch__) \
                                                   && !defined(_WIN32) && !defined(__SYMBIAN32__)
              #define SKCMS_HAS_MUSTTAIL 1
---- a/third_party/skia/src/opts/SkSwizzler_opts.inc
-+++ b/third_party/skia/src/opts/SkSwizzler_opts.inc
+Index: chromium-124.0.6367.60/third_party/skia/src/opts/SkSwizzler_opts.inc
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/opts/SkSwizzler_opts.inc
++++ chromium-124.0.6367.60/third_party/skia/src/opts/SkSwizzler_opts.inc
 @@ -14,7 +14,10 @@
  #include <cmath>
  #include <utility>
@@ -633,7 +669,7 @@
 +#elif defined(SK_PPC64_HAS_SSE_COMPAT)
 +// -- VSX -- Harden against timing attacks
 +SK_NO_SANITIZE("float-divide-by-zero")
-+static inline float SkReciprocalAlphaTimes255(float a) {
++static inline float reciprocal_alpha_times_255(float a) {
 +    SkASSERT(0 <= a && a <= 255);
 +
 +    vector float vA{a,a,a,a};
@@ -646,7 +682,7 @@
 +}
 +
 +SK_NO_SANITIZE("float-divide-by-zero")
-+static inline float SkReciprocalAlpha(float a) {
++static inline float reciprocal_alpha(float a) {
 +    SkASSERT(0 <= a && a <= 1);
 +
 +    vector float vA{a,a,a,a};
@@ -660,3 +696,32 @@
  #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE1 && (defined(__clang__) || !defined(_MSC_VER))
  // -- SSE -- Harden against timing attacks -- MSVC is not supported.
  using F4 = __m128;
+Index: chromium-124.0.6367.60/third_party/skia/src/core/SkBlitter_ARGB32.cpp
+===================================================================
+--- chromium-124.0.6367.60.orig/third_party/skia/src/core/SkBlitter_ARGB32.cpp
++++ chromium-124.0.6367.60/third_party/skia/src/core/SkBlitter_ARGB32.cpp
+@@ -372,7 +372,11 @@ static inline SkPMColor blend_lcd16_opaq
+                 // Load four destination pixels into dst_sse.
+                 __m128i dst_sse = _mm_load_si128(d);
+                 // Load four 16-bit masks into lower half of mask_sse.
++#if defined(SK_CPU_PPC64)
++                __m128i mask_sse = _mm_loadl_epi64(reinterpret_cast<const __m128i*>(mask));
++#else
+                 __m128i mask_sse = _mm_loadu_si64(mask);
++#endif
+ 
+                 // Check whether masks are equal to 0 and get the highest bit
+                 // of each byte of result, if masks are all zero, we will get
+@@ -438,7 +442,12 @@ static inline SkPMColor blend_lcd16_opaq
+                 // Load four destination pixels into dst_sse.
+                 __m128i dst_sse = _mm_load_si128(d);
+                 // Load four 16-bit masks into lower half of mask_sse.
++#if defined(SK_CPU_PPC64)
++                __m128i mask_sse = _mm_loadl_epi64(reinterpret_cast<const __m128i*>(mask));
++#else
+                 __m128i mask_sse = _mm_loadu_si64(mask);
++#endif
++
+ 
+                 // Check whether masks are equal to 0 and get the highest bit
+                 // of each byte of result, if masks are all zero, we will get

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-07 16:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-07 16:06 [rpms/chromium] epel9-next: refresh ppc64 patches Than Ngo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox