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

          A new commit has been pushed.

          Repo   : rpms/chromium
          Branch : epel9-next
          Commit : b287e3cae6c853f419e7de502ad0cb87169060be
          Author : Than Ngo <than@redhat.com>
          Date   : 2025-03-05T15:37:32+01:00
          Stats  : +1616/-1575 in 19 file(s)
          URL    : https://src.fedoraproject.org/rpms/chromium/c/b287e3cae6c853f419e7de502ad0cb87169060be?branch=epel9-next

          Log:
          - Update to 134.0.6998.35
* CVE-2025-1914: Out of bounds read in V8
* CVE-2025-1915: Improper Limitation of a Pathname to a Restricted Directory in DevTools
* CVE-2025-1916: Use after free in Profiles
* CVE-2025-1917: Inappropriate Implementation in Browser UI
* CVE-2025-1918: Out of bounds read in PDFium
* CVE-2025-1919: Out of bounds read in Media
* CVE-2025-1921: Inappropriate Implementation in Media Stream
* CVE-2025-1922: Inappropriate Implementation in Selection
* CVE-2025-1923: Inappropriate Implementation in Permission Prompts

---
diff --git a/0001-Add-PPC64-support-for-boringssl.patch b/0001-Add-PPC64-support-for-boringssl.patch
index cf36646..af1288b 100644
--- a/0001-Add-PPC64-support-for-boringssl.patch
+++ b/0001-Add-PPC64-support-for-boringssl.patch
@@ -1,7 +1,7 @@
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/abi_self_test.cc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/abi_self_test.cc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/abi_self_test.cc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/abi_self_test.cc
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/abi_self_test.cc
++++ chromium-134.0.6998.35/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);
  }
@@ -292,10 +292,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/abi_self_test.cc
 +  CHECK_ABI_NO_UNWIND(abi_test_clobber_lr);
 +}
 +#endif   // OPENSSL_PPC64LE && SUPPORTS_ABI_TEST
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/cpu_ppc64le.cc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/cpu_ppc64le.cc
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/cpu_ppc64le.cc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/cpu_ppc64le.cc
 @@ -0,0 +1,38 @@
 +/* Copyright (c) 2016, Google Inc.
 + *
@@ -335,10 +335,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/cpu_ppc64le.cc
 +}
 +
 +#endif  // OPENSSL_PPC64LE
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/crypto.cc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/crypto.cc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/crypto.cc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/crypto.cc
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/crypto.cc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/crypto.cc
 @@ -67,6 +67,10 @@ uint32_t OPENSSL_get_ia32cap(int idx) {
    return OPENSSL_ia32cap_P[idx];
  }
@@ -350,10 +350,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/crypto.cc
  #elif defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64)
  
  #include <openssl/arm_arch.h>
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl
++++ chromium-134.0.6998.35/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.
@@ -4164,10 +4164,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/aes/as
 +}
 +
 +close STDOUT or die "error closing STDOUT: $!";
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h
 @@ -82,6 +82,12 @@ inline int vpaes_capable(void) { return
  inline int vpaes_capable(void) { return CRYPTO_is_NEON_capable(); }
  #endif
@@ -4181,10 +4181,24 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/aes/in
  #endif
  
  #endif  // !NO_ASM
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/bcm.cc
+@@ -504,6 +510,13 @@ void aes_gcm_dec_kernel(const uint8_t *i
+                         const u128 Htable[16]);
+ #endif
+ 
++#elif defined(OPENSSL_PPC64LE)
++#define GHASH_ASM_PPC64LE
++#define GCM_FUNCREF
++void gcm_init_p8(u128 Htable[16], const uint64_t Xi[2]);
++void gcm_gmult_p8(uint8_t Xi[16], const u128 Htable[16]);
++void gcm_ghash_p8(uint8_t Xi[16], const u128 Htable[16], const uint8_t *inp,
++                  size_t len);
+ #endif
+ #endif  // OPENSSL_NO_ASM
+ 
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/bcm.cc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/bcm.cc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/bcm.cc
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/bcm.cc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/bcm.cc
 @@ -105,6 +105,7 @@
  #include "self_check/fips.cc.inc"
  #include "self_check/self_check.cc.inc"
@@ -4193,11 +4207,11 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/bcm.cc
  #include "sha/sha1.cc.inc"
  #include "sha/sha256.cc.inc"
  #include "sha/sha512.cc.inc"
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/bn/bn.cc.inc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/bn/bn.cc.inc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/bn/bn.cc.inc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/bn/bn.cc.inc
-@@ -325,6 +325,23 @@ int bn_expand(BIGNUM *bn, size_t bits) {
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/bn/bn.cc.inc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/bn/bn.cc.inc
+@@ -330,6 +330,23 @@ int bn_expand(BIGNUM *bn, size_t bits) {
  }
  
  int bn_resize_words(BIGNUM *bn, size_t words) {
@@ -4221,11 +4235,11 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/bn/bn.
    if ((size_t)bn->width <= words) {
      if (!bn_wexpand(bn, words)) {
        return 0;
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.cc.inc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.cc.inc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.cc.inc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.cc.inc
-@@ -1230,6 +1230,8 @@ int EVP_has_aes_hardware(void) {
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.cc.inc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.cc.inc
+@@ -1234,6 +1234,8 @@ int EVP_has_aes_hardware(void) {
    return hwaes_capable() && crypto_gcm_clmul_enabled();
  #elif defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64)
    return hwaes_capable() && CRYPTO_is_ARMv8_PMULL_capable();
@@ -4234,10 +4248,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/cipher
  #else
    return 0;
  #endif
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/asm/ghashp8-ppc.pl
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/asm/ghashp8-ppc.pl
 @@ -0,0 +1,671 @@
 +#! /usr/bin/env perl
 +# Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved.
@@ -4910,11 +4924,11 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/
 +}
 +
 +close STDOUT or die "error closing STDOUT: $!"; # enforce flush
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.cc.inc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/gcm.cc.inc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.cc.inc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.cc.inc
-@@ -228,6 +228,13 @@ void CRYPTO_ghash_init(gmult_func *out_m
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/aes/gcm.cc.inc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/gcm.cc.inc
+@@ -233,6 +233,13 @@ void CRYPTO_ghash_init(gmult_func *out_m
      *out_hash = gcm_ghash_neon;
      return;
    }
@@ -4928,10 +4942,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/
  #endif
  
    gcm_init_nohw(out_table, H);
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/gcm_test.cc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/aes/gcm_test.cc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/aes/gcm_test.cc
 @@ -170,5 +170,15 @@ TEST(GCMTest, ABI) {
      }
    }
@@ -4948,28 +4962,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/
 +#endif  // GHASH_ASM_PPC64LE
  }
  #endif  // SUPPORTS_ABI_TEST && !OPENSSL_NO_ASM
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h
-===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h
-@@ -260,6 +260,13 @@ void aes_gcm_dec_kernel(const uint8_t *i
-                         const u128 Htable[16]);
- #endif
- 
-+#elif defined(OPENSSL_PPC64LE)
-+#define GHASH_ASM_PPC64LE
-+#define GCM_FUNCREF
-+void gcm_init_p8(u128 Htable[16], const uint64_t Xi[2]);
-+void gcm_gmult_p8(uint8_t Xi[16], const u128 Htable[16]);
-+void gcm_ghash_p8(uint8_t Xi[16], const u128 Htable[16], const uint8_t *inp,
-+                  size_t len);
- #endif
- #endif  // OPENSSL_NO_ASM
- 
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/rand_extra/getrandom_fillin.h
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/rand/getrandom_fillin.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/rand_extra/getrandom_fillin.h
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/rand_extra/getrandom_fillin.h
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/rand/getrandom_fillin.h
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/rand/getrandom_fillin.h
 @@ -30,6 +30,8 @@
  #define EXPECTED_NR_getrandom 278
  #elif defined(OPENSSL_ARM)
@@ -4979,10 +4975,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/rand_extra/getran
  #elif defined(OPENSSL_RISCV64)
  #define EXPECTED_NR_getrandom 278
  #endif
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/rand/rand.cc.inc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/rand/rand.cc.inc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/rand/rand.cc.inc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/rand/rand.cc.inc
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/rand/rand.cc.inc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/rand/rand.cc.inc
 @@ -431,6 +431,11 @@ bcm_infallible BCM_rand_bytes_with_addit
      // Take a read lock around accesses to |state->drbg|. This is needed to
      // avoid returning bad entropy if we race with
@@ -4995,10 +4991,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/rand/r
      CRYPTO_MUTEX_lock_read(&state->clear_drbg_lock);
  #endif
      if (!CTR_DRBG_reseed(&state->drbg, seed, reseed_additional_data,
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h
 @@ -23,6 +23,16 @@
  extern "C" {
  #endif
@@ -5016,10 +5012,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/in
  // Define SHA{n}[_{variant}]_ASM if sha{n}_block_data_order[_{variant}] is
  // defined in assembly.
  
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.cc.inc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.cc.inc
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.cc.inc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.cc.inc
 @@ -0,0 +1,369 @@
 +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.ccom)
 + * All rights reserved.
@@ -5390,11 +5386,11 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/sh
 +#undef BODY_20_39
 +#undef BODY_40_59
 +#undef BODY_60_79
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/internal.h
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/internal.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/internal.h
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/internal.h
-@@ -56,8 +56,9 @@ extern "C" {
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/internal.h
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/internal.h
+@@ -61,8 +61,9 @@ extern "C" {
  #if !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_STATIC_ARMCAP) && \
      (defined(OPENSSL_X86) || defined(OPENSSL_X86_64) ||            \
       defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64))
@@ -5406,7 +5402,7 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/internal.h
  #define NEED_CPUID
  
  // OPENSSL_cpuid_setup initializes the platform-specific feature cache. This
-@@ -1397,6 +1398,16 @@ inline int CRYPTO_is_ARMv8_SHA512_capabl
+@@ -1402,6 +1403,16 @@ inline int CRYPTO_is_ARMv8_SHA512_capabl
  
  #endif  // OPENSSL_ARM || OPENSSL_AARCH64
  
@@ -5423,10 +5419,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/internal.h
  #if defined(BORINGSSL_DISPATCH_TEST)
  // Runtime CPU dispatch testing support
  
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl
++++ chromium-134.0.6998.35/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.
@@ -5748,10 +5744,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/perlasm/ppc-xlate
 +___
 +
 +close STDOUT or die "error closing STDOUT: $!";
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/test/abi_test.h
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/test/abi_test.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/test/abi_test.h
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/test/abi_test.h
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/test/abi_test.h
++++ chromium-134.0.6998.35/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)
@@ -5858,10 +5854,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/test/abi_test.h
    static_assert(sizeof...(args) <= 8,
                  "too many arguments for abi_test_trampoline");
  
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl
 @@ -0,0 +1,262 @@
 +#!/usr/bin/env perl
 +# Copyright (c) 2019, Google Inc.
@@ -6125,10 +6121,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/test/asm/trampoli
 +
 +print $code;
 +close STDOUT or die "error closing STDOUT: $!";
-Index: chromium-133.0.6943.35/third_party/boringssl/src/include/openssl/target.h
+Index: chromium-134.0.6998.35/third_party/boringssl/src/include/openssl/target.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/include/openssl/target.h
-+++ chromium-133.0.6943.35/third_party/boringssl/src/include/openssl/target.h
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/include/openssl/target.h
++++ chromium-134.0.6998.35/third_party/boringssl/src/include/openssl/target.h
 @@ -34,6 +34,9 @@
  #elif defined(__ARMEL__) || defined(_M_ARM)
  #define OPENSSL_32_BIT
@@ -6139,11 +6135,11 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/include/openssl/target.h
  #elif defined(__MIPSEL__) && !defined(__LP64__)
  #define OPENSSL_32_BIT
  #define OPENSSL_MIPS
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
-@@ -38,6 +38,8 @@ int main(int argc, char **argv) {
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc
+@@ -35,6 +35,8 @@ int main(int argc, char **argv) {
      puts("ARM (32-bit)");
  #elif defined(OPENSSL_AARCH64)
      puts("aarch64 (64-bit)");
@@ -6152,10 +6148,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/acvp/modu
  #else
  #error "FIPS build not supported on this architecture"
  #endif
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/delocate.go
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/delocate.go
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.go
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/delocate.go
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.go
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/delocate.go
 @@ -54,7 +54,8 @@ type stringWriter interface {
  type processorType int
  
@@ -6755,13 +6751,13 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
  		case "str", "bl", "ldr", "st1":
  			return aarch64
  		}
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/delocate.peg
 @@ -12,9 +12,9 @@
- # OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
- # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
  
 -# This is a rough parser for x86-64 and aarch64 assembly designed to work with
 -# https://github.com/pointlander/peg. delocate.go has a go:generate line for
@@ -6772,10 +6768,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
  
  # To regenerate delocate.peg.go:
  #
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go
 @@ -39,6 +39,11 @@ func (test *delocateTest) Path(file stri
  
  var delocateTests = []delocateTest{
@@ -6788,10 +6784,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
  	{"x86_64-Basic", []string{"in.s"}, "out.s"},
  	{"x86_64-BSS", []string{"in.s"}, "out.s"},
  	{"x86_64-GOTRewrite", []string{"in.s"}, "out.s"},
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s
 @@ -0,0 +1,9 @@
 +	.text
 +foo:
@@ -6802,10 +6798,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +	.localentry foo,.-foo
 +.LVL0:
 +	bl
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s
 @@ -0,0 +1,62 @@
 +.text
 +.file 1 "inserted_by_delocate.cc"
@@ -6869,19 +6865,19 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s
++++ chromium-134.0.6998.35/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)
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s
 @@ -0,0 +1,72 @@
 +.text
 +.file 1 "inserted_by_delocate.cc"
@@ -6955,10 +6951,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s
 @@ -0,0 +1,161 @@
 +	.file	"foo.cc"
 +	.abiversion 2
@@ -7121,10 +7117,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +	.size	exported_function,.-exported_function
 +	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
 +	.section	.note.GNU-stack,"",@progbits
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s
 @@ -0,0 +1,552 @@
 +.text
 +.file 1 "inserted_by_delocate.cc"
@@ -7678,10 +7674,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s
 @@ -0,0 +1,226 @@
 +	.file	"foo.cc"
 +	.abiversion 2
@@ -7909,10 +7905,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +	.zero	20
 +	.ident	"GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2"
 +	.section	.note.GNU-stack,"",@progbits
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s
 @@ -0,0 +1,677 @@
 +.text
 +.file 1 "inserted_by_delocate.cc"
@@ -8591,10 +8587,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s
 @@ -0,0 +1,23 @@
 +	.text
 +foo:
@@ -8619,10 +8615,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +
 +	addis 4, 2, 1+foo-2@toc@ha+3
 +	addi 4, 4, 1+foo-2@toc@l+3
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s
 @@ -0,0 +1,178 @@
 +.text
 +.file 1 "inserted_by_delocate.cc"
@@ -8802,11 +8798,11 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/fipstools/delocate/
 +.byte 0xff
 +.byte 0x31
 +.byte 0x80
-Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.cc.inc
+Index: chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.cc.inc
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.cc.inc
-+++ chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.cc.inc
-@@ -362,6 +362,10 @@ static void sha1_block_data_order(uint32
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.cc.inc
++++ chromium-134.0.6998.35/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.cc.inc
+@@ -367,6 +367,10 @@ static void sha1_block_data_order(uint32
      return;
    }
  #endif
@@ -8817,17 +8813,17 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/crypto/fipsmodule/sha/sh
    sha1_block_data_order_nohw(state, data, num);
  }
  
-Index: chromium-133.0.6943.35/third_party/boringssl/src/build.json
+Index: chromium-134.0.6998.35/third_party/boringssl/src/build.json
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/build.json
-+++ chromium-133.0.6943.35/third_party/boringssl/src/build.json
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/build.json
++++ chromium-134.0.6998.35/third_party/boringssl/src/build.json
 @@ -126,6 +126,10 @@
              {"src": "crypto/fipsmodule/sha/asm/sha512-armv4.pl"},
              {"src": "crypto/fipsmodule/aes/asm/vpaes-armv7.pl"}
          ],
 +        "perlasm_ppc64le": [
 +            {"src": "crypto/fipsmodule/aes/asm/aesp8-ppc.pl"},
-+            {"src": "crypto/fipsmodule/modes/asm/ghashp8-ppc.pl"}
++            {"src": "crypto/fipsmodule/aes/asm/ghashp8-ppc.pl"}
 +        ],
          "perlasm_x86": [
              {"src": "crypto/fipsmodule/aes/asm/aesni-x86.pl"},
@@ -8840,7 +8836,7 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/build.json
              "crypto/crypto.cc",
              "crypto/curve25519/curve25519.cc",
              "crypto/curve25519/curve25519_64_adx.cc",
-@@ -786,6 +791,9 @@
+@@ -787,6 +792,9 @@
          "perlasm_arm": [
              {"src": "crypto/test/asm/trampoline-armv4.pl"}
          ],
@@ -8850,10 +8846,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/build.json
          "perlasm_x86": [
              {"src": "crypto/test/asm/trampoline-x86.pl"}
          ],
-Index: chromium-133.0.6943.35/third_party/boringssl/src/util/pregenerate/build.go
+Index: chromium-134.0.6998.35/third_party/boringssl/src/util/pregenerate/build.go
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/util/pregenerate/build.go
-+++ chromium-133.0.6943.35/third_party/boringssl/src/util/pregenerate/build.go
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/util/pregenerate/build.go
++++ chromium-134.0.6998.35/third_party/boringssl/src/util/pregenerate/build.go
 @@ -38,6 +38,7 @@ type InputTarget struct {
  	// architecture.
  	PerlasmAarch64 []PerlasmSource `json:"perlasm_aarch64,omitempty"`
@@ -8872,10 +8868,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/util/pregenerate/build.g
  	for _, p := range in.PerlasmX86 {
  		addPerlasmTask(&out.Asm, &p, "-apple.S", []string{"macosx", "-fPIC"})
  		addPerlasmTask(&out.Asm, &p, "-linux.S", []string{"elf", "-fPIC"})
-Index: chromium-133.0.6943.35/third_party/boringssl/README.ppc64le
+Index: chromium-134.0.6998.35/third_party/boringssl/README.ppc64le
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/README.ppc64le
++++ chromium-134.0.6998.35/third_party/boringssl/README.ppc64le
 @@ -0,0 +1,8 @@
 +==============================================================
 +To recreate boringssl pregenerated files patch for ppc64le:
@@ -8885,10 +8881,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/README.ppc64le
 +go run ./util/pregenerate
 +cd ../../../../
 +diff -urN chromium-*/third_party/boringssl/src/gen.orig chromium-*/third_party/boringssl/src/gen
-Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.gni
+Index: chromium-134.0.6998.35/third_party/boringssl/src/gen/sources.gni
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/gen/sources.gni
-+++ chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.gni
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/gen/sources.gni
++++ chromium-134.0.6998.35/third_party/boringssl/src/gen/sources.gni
 @@ -119,6 +119,7 @@ bcm_sources_asm = [
    "gen/bcm/aesv8-gcm-armv8-apple.S",
    "gen/bcm/aesv8-gcm-armv8-linux.S",

diff --git a/0001-Add-pregenerated-config-for-libaom-on-ppc64.patch b/0001-Add-pregenerated-config-for-libaom-on-ppc64.patch
index 5fd44ff..2a77351 100644
--- a/0001-Add-pregenerated-config-for-libaom-on-ppc64.patch
+++ b/0001-Add-pregenerated-config-for-libaom-on-ppc64.patch
@@ -1,7 +1,7 @@
-Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm
+Index: chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm
 ===================================================================
 --- /dev/null
-+++ chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm
++++ chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm
 @@ -0,0 +1,95 @@
 +;
 +; Copyright (c) 2024, Alliance for Open Media. All rights reserved.
@@ -98,10 +98,10 @@ Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/confi
 +HAVE_VSX equ 1
 +HAVE_WXWIDGETS equ 0
 +STATIC_LINK_JXL equ 0
-Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_config.c
+Index: chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_config.c
 ===================================================================
 --- /dev/null
-+++ chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_config.c
++++ chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_config.c
 @@ -0,0 +1,13 @@
 +/*
 + * Copyright (c) 2024, Alliance for Open Media. All rights reserved.
@@ -116,10 +116,10 @@ Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/confi
 +#include "aom/aom_codec.h"
 +static const char* const cfg = "cmake ../source/libaom -G \"Unix Makefiles\" -DCMAKE_TOOLCHAIN_FILE=\"../source/libaom/build/cmake/toolchains/ppc-linux-gcc.cmake\" -DCONFIG_AV1_DECODER=0 -DCONFIG_AV1_ENCODER=1 -DCONFIG_LIBYUV=0 -DCONFIG_AV1_HIGHBITDEPTH=0 -DCONFIG_AV1_TEMPORAL_DENOISING=1 -DCONFIG_QUANT_MATRIX=0 -DCONFIG_REALTIME_ONLY=1 -DCONFIG_SIZE_LIMIT=1 -DDECODE_HEIGHT_LIMIT=16384 -DDECODE_WIDTH_LIMIT=16384";
 +const char *aom_codec_build_config(void) {return cfg;}
-Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_config.h
+Index: chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_config.h
 ===================================================================
 --- /dev/null
-+++ chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_config.h
++++ chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_config.h
 @@ -0,0 +1,98 @@
 +/*
 + * Copyright (c) 2024, Alliance for Open Media. All rights reserved.
@@ -219,10 +219,10 @@ Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/confi
 +#define HAVE_WXWIDGETS 0
 +#define STATIC_LINK_JXL 0
 +#endif  // AOM_CONFIG_H_
-Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h
 ===================================================================
 --- /dev/null
-+++ chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h
++++ chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h
 @@ -0,0 +1,1501 @@
 +/*
 + * Copyright (c) 2024, Alliance for Open Media. All rights reserved.
@@ -1725,10 +1725,10 @@ Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/confi
 +#endif
 +
 +#endif
-Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h
 ===================================================================
 --- /dev/null
-+++ chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h
++++ chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h
 @@ -0,0 +1,91 @@
 +/*
 + * Copyright (c) 2024, Alliance for Open Media. All rights reserved.
@@ -1821,10 +1821,10 @@ Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/confi
 +#endif
 +
 +#endif
-Index: chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h
 ===================================================================
 --- /dev/null
-+++ chromium-129.0.6668.42/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h
++++ chromium-134.0.6998.35/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h
 @@ -0,0 +1,438 @@
 +/*
 + * Copyright (c) 2024, Alliance for Open Media. All rights reserved.

diff --git a/0001-Implement-support-for-PPC64-on-Linux.patch b/0001-Implement-support-for-PPC64-on-Linux.patch
index c3c71b2..c526728 100644
--- a/0001-Implement-support-for-PPC64-on-Linux.patch
+++ b/0001-Implement-support-for-PPC64-on-Linux.patch
@@ -40,21 +40,21 @@ This patch implements support for the PPC64 architecture on Linux hosts.
  util/misc/capture_context_test_util_linux.cc  |   6 +
  36 files changed, 932 insertions(+), 12 deletions(-)
 
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/CONTRIBUTORS
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/CONTRIBUTORS
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/CONTRIBUTORS
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/CONTRIBUTORS
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/CONTRIBUTORS
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/CONTRIBUTORS
 @@ -13,3 +13,5 @@ Mark Mentovai <mark@chromium.org>
  Robert Sesek <rsesek@chromium.org>
  Scott Graham <scottmg@chromium.org>
  Joshua Peraza <jperaza@chromium.org>
 +Shawn Anastasio <sanastasio@raptorengineering.com>
 +Timothy Pearson <tpearson@raptorengineering.com>
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context.h
-@@ -687,6 +687,70 @@ struct MinidumpContextRISCV64 {
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/minidump/minidump_context.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context.h
+@@ -686,6 +686,70 @@ struct MinidumpContextRISCV64 {
    uint32_t fcsr;
  };
  
@@ -125,10 +125,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_co
  }  // namespace crashpad
  
  #endif  // CRASHPAD_MINIDUMP_MINIDUMP_CONTEXT_H_
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
 @@ -110,6 +110,13 @@ MinidumpContextWriter::CreateFromSnapsho
        break;
      }
@@ -192,10 +192,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_co
 +}
  
  }  // namespace crashpad
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
 @@ -413,6 +413,49 @@ class MinidumpContextRISCV64Writer final
    MinidumpContextRISCV64 context_;
  };
@@ -246,10 +246,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_co
  }  // namespace crashpad
  
  #endif  // CRASHPAD_MINIDUMP_MINIDUMP_CONTEXT_WRITER_H_
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
 @@ -322,6 +322,21 @@ TYPED_TEST(MinidumpContextWriter, RISCV6
                     TypeParam>(context, ExpectMinidumpContextRISCV64, kSeed);
  }
@@ -272,10 +272,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_co
  }  // namespace
  }  // namespace test
  }  // namespace crashpad
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
 @@ -177,6 +177,8 @@ std::string MinidumpMiscInfoDebugBuildSt
    static constexpr char kCPU[] = "mips64";
  #elif defined(ARCH_CPU_RISCV64)
@@ -285,10 +285,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_mi
  #else
  #error define kCPU for this CPU
  #endif
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc
 @@ -297,6 +297,40 @@ void InitializeMinidumpContextRISCV64(Mi
    context->fcsr = value++;
  }
@@ -369,10 +369,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidu
 +
  }  // namespace test
  }  // namespace crashpad
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h
 @@ -90,6 +90,9 @@ void ExpectMinidumpContextMIPS64(uint32_
  void ExpectMinidumpContextRISCV64(uint32_t expect_seed,
                                    const MinidumpContextRISCV64* observed,
@@ -383,10 +383,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidu
  //! \}
  
  }  // namespace test
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/capture_memory.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/capture_memory.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/capture_memory.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/capture_memory.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/capture_memory.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/capture_memory.cc
 @@ -123,6 +123,11 @@ void CaptureMemory::PointedToByContext(c
    for (size_t i = 0; i < std::size(context.riscv64->regs); ++i) {
      MaybeCaptureMemoryAround(delegate, context.riscv64->regs[i]);
@@ -399,10 +399,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/capture_mem
  #else
  #error Port.
  #endif
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
 @@ -47,6 +47,9 @@ enum CPUArchitecture {
  
    //! \brief 64-bit RISC-V.
@@ -413,10 +413,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_archite
  };
  
  }  // namespace crashpad
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/cpu_context.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/cpu_context.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/cpu_context.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/cpu_context.cc
 @@ -173,6 +173,8 @@ uint64_t CPUContext::InstructionPointer(
        return arm64->pc;
      case kCPUArchitectureRISCV64:
@@ -443,10 +443,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context
      case kCPUArchitectureRISCV64:
        return true;
      case kCPUArchitectureX86:
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/cpu_context.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/cpu_context.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/cpu_context.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/cpu_context.h
 @@ -371,6 +371,24 @@ struct CPUContextRISCV64 {
    uint32_t fcsr;
  };
@@ -480,10 +480,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context
    };
  };
  
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
 @@ -15,6 +15,7 @@
  #ifndef CRASHPAD_SNAPSHOT_LINUX_CPU_CONTEXT_LINUX_H_
  #define CRASHPAD_SNAPSHOT_LINUX_CPU_CONTEXT_LINUX_H_
@@ -571,10 +571,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/cpu_c
  }  // namespace internal
  }  // namespace crashpad
  
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
 @@ -194,12 +194,15 @@ void TestAgainstTarget(PtraceConnection*
                device == 0 && inode == 0 && mapping_name == "[vdso]";
  #if defined(ARCH_CPU_X86)
@@ -592,10 +592,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/debug
          },
          module_mapping->name,
          module_mapping->device,
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
 @@ -367,6 +367,69 @@ bool ExceptionSnapshotLinux::ReadContext
    return internal::ReadContext(reader, context_address, context_.riscv64);
  }
@@ -666,11 +666,11 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/excep
  #endif  // ARCH_CPU_X86_FAMILY
  
  bool ExceptionSnapshotLinux::Initialize(
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
-@@ -91,6 +91,8 @@ class ExceptionSnapshotLinux final : pub
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
+@@ -94,6 +94,8 @@ class ExceptionSnapshotLinux final : pub
      CPUContextMIPS64 mips64;
  #elif defined(ARCH_CPU_RISCV64)
      CPUContextRISCV64 riscv64;
@@ -679,10 +679,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/excep
  #endif
    } context_union_;
    CPUContext context_;
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
 @@ -325,7 +325,28 @@ void ExpectContext(const CPUContext& act
                     sizeof(actual.riscv64->fpregs)),
              0);
@@ -712,10 +712,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/excep
  #else
  #error Port.
  #endif
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
 @@ -129,6 +129,8 @@ void ProcessReaderLinux::Thread::Initial
                                      : thread_info.thread_context.t32.regs[29];
  #elif defined(ARCH_CPU_RISCV64)
@@ -725,10 +725,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/proce
  #else
  #error Port.
  #endif
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
 @@ -456,6 +456,89 @@ static_assert(offsetof(UContext<ContextT
                    offsetof(ucontext_t, uc_mcontext.__fpregs),
                "context offset mismatch");
@@ -819,10 +819,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/signa
  #else
  #error Port.
  #endif  // ARCH_CPU_X86_FAMILY
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
 @@ -208,6 +208,8 @@ CPUArchitecture SystemSnapshotLinux::Get
                                      : kCPUArchitectureMIPSEL;
  #elif defined(ARCH_CPU_RISCV64)
@@ -862,10 +862,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/syste
  #else
  #error Port.
  #endif  // ARCH_CPU_X86_FAMILY
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
 @@ -196,6 +196,14 @@ bool ThreadSnapshotLinux::Initialize(
    InitializeCPUContextRISCV64(thread.thread_info.thread_context.t64,
                                thread.thread_info.float_context.f64,
@@ -881,11 +881,11 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/threa
  #else
  #error Port.
  #endif
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
-@@ -76,6 +76,8 @@ class ThreadSnapshotLinux final : public
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
+@@ -79,6 +79,8 @@ class ThreadSnapshotLinux final : public
      CPUContextMIPS64 mips64;
  #elif defined(ARCH_CPU_RISCV64)
      CPUContextRISCV64 riscv64;
@@ -894,10 +894,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/threa
  #else
  #error Port.
  #endif  // ARCH_CPU_X86_FAMILY
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.cc
 @@ -317,5 +317,38 @@ void InitializeCPUContextRISCV64(CPUCont
    riscv64->fcsr = value++;
  }
@@ -937,10 +937,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_c
 +
  }  // namespace test
  }  // namespace crashpad
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h
 @@ -64,6 +64,7 @@ void InitializeCPUContextARM64(CPUContex
  void InitializeCPUContextMIPS(CPUContext* context, uint32_t seed);
  void InitializeCPUContextMIPS64(CPUContext* context, uint32_t seed);
@@ -949,10 +949,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_c
  //! \}
  
  }  // namespace test
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/test/linux/get_tls.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/test/linux/get_tls.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/test/linux/get_tls.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/test/linux/get_tls.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/test/linux/get_tls.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/test/linux/get_tls.cc
 @@ -51,6 +51,8 @@ LinuxVMAddress GetTLS() {
        : "$3");
  #elif defined(ARCH_CPU_RISCV64)
@@ -962,10 +962,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/test/linux/get_tls.c
  #else
  #error Port.
  #endif  // ARCH_CPU_ARMEL
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/test/multiprocess_posix.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/test/multiprocess_posix.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/test/multiprocess_posix.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/test/multiprocess_posix.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/test/multiprocess_posix.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/test/multiprocess_posix.cc
 @@ -162,7 +162,8 @@ void Multiprocess::SetExpectedChildTermi
  }
  
@@ -976,10 +976,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/test/multiprocess_po
    SetExpectedChildTermination(kTerminationSignal, SIGTRAP);
  #else
    SetExpectedChildTermination(kTerminationSignal, SIGILL);
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
 @@ -56,6 +56,11 @@ bool AuxiliaryVector::Read(PtraceConnect
      if (type == AT_IGNORE) {
        continue;
@@ -992,10 +992,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/auxiliary
      if (!MapInsertOrReplace(&values_, type, value, nullptr)) {
        LOG(ERROR) << "duplicate auxv entry";
        return false;
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/ptracer.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/util/linux/ptracer.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/linux/ptracer.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/ptracer.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/util/linux/ptracer.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/util/linux/ptracer.cc
 @@ -430,6 +430,64 @@ bool GetThreadArea64(pid_t tid,
    return true;
  }
@@ -1071,10 +1071,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/ptracer.c
             GetThreadArea64(tid,
                             info->thread_context,
                             &info->thread_specific_data_address,
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/thread_info.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/util/linux/thread_info.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/linux/thread_info.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/thread_info.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/util/linux/thread_info.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/util/linux/thread_info.h
 @@ -34,6 +34,10 @@
  #include <asm/ptrace.h>
  #endif
@@ -1193,10 +1193,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/thread_in
    //! \brief The thread-local storage address for the thread.
    LinuxVMAddress thread_specific_data_address;
  };
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context.h
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context.h
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context.h
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/util/misc/capture_context.h
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context.h
 @@ -70,6 +70,7 @@ using NativeCPUContext = ucontext_t;
  //!     Linux               | ARM/ARM64    | `r0`/`x0`
  //!     Linux               | MIPS/MIPS64  | `$a0`
@@ -1205,10 +1205,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_co
  //!
  //!     Additionally, the value `LR` on ARM/ARM64 will be the return address of
  //!     this function.
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
 @@ -30,7 +30,7 @@
    .globl CAPTURECONTEXT_SYMBOL2
  #if defined(__i386__) || defined(__x86_64__)
@@ -1435,10 +1435,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_co
  #elif defined(__riscv)
  
    #define MCONTEXT_GREGS_OFFSET 176
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
 @@ -48,7 +48,7 @@ void TestCaptureContext() {
    uintptr_t pc = ProgramCounterFromContext(context_1);
  
@@ -1448,10 +1448,10 @@ Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_co
    // Sanitizers can cause enough code bloat that the “nearby” check would
    // likely fail.
    const uintptr_t kReferencePC =
-Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
+Index: chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
-+++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
+--- chromium-134.0.6998.35.orig/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
++++ chromium-134.0.6998.35/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
 @@ -38,6 +38,8 @@ void SanityCheckContext(const NativeCPUC
  #elif defined(ARCH_CPU_RISCV64)
    EXPECT_EQ(context.uc_mcontext.__gregs[10],

diff --git a/0001-Implement-support-for-ppc64-on-Linux.patch b/0001-Implement-support-for-ppc64-on-Linux.patch
index 8253398..90eedf6 100644
--- a/0001-Implement-support-for-ppc64-on-Linux.patch
+++ b/0001-Implement-support-for-ppc64-on-Linux.patch
@@ -54,10 +54,10 @@ https://wiki.raptorcs.com/wiki/Porting/Chromium
  src/tools/linux/md2core/minidump-2-core.cc    | 45 +++++++++++++++
  25 files changed, 281 insertions(+), 35 deletions(-)
 
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
 @@ -51,6 +51,8 @@ typedef MDRawContextRISCV64 RawContextCP
  # else
  #  error "Unexpected __riscv_xlen"
@@ -67,10 +67,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dum
  #else
  #error "This code has not been ported to your platform yet."
  #endif
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
 @@ -336,7 +336,42 @@ void ThreadInfo::FillCPUContext(RawConte
  #error "Unexpected __riscv_xlen"
  #endif
@@ -153,10 +153,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dum
 +#endif
 +
  }  // namespace google_breakpad
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
 @@ -67,6 +67,10 @@ struct ThreadInfo {
    // Use the structures defined in <sys/user.h>
    struct user_regs_struct regs;
@@ -180,10 +180,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dum
  };
  
  }  // namespace google_breakpad
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
 @@ -324,6 +324,48 @@ void UContextReader::FillCPUContext(RawC
  #error "Unexpected __riscv_xlen"
  #endif
@@ -233,10 +233,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dum
  #endif
  
  }  // namespace google_breakpad
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
 @@ -54,6 +54,9 @@ struct UContextReader {
  #elif defined(__aarch64__)
    static void FillCPUContext(RawContextCPU* out, const ucontext_t* uc,
@@ -247,10 +247,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dum
  #else
    static void FillCPUContext(RawContextCPU* out, const ucontext_t* uc);
  #endif
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
 @@ -464,6 +464,13 @@ bool ExceptionHandler::HandleSignal(int
      memcpy(&g_crash_context_.float_state, fp_ptr,
             sizeof(g_crash_context_.float_state));
@@ -295,10 +295,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/han
  #elif defined(__riscv)
    context.siginfo.si_addr =
        reinterpret_cast<void*>(context.context.uc_mcontext.__gregs[REG_PC]);
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
 @@ -200,7 +200,11 @@ class ExceptionHandler {
      siginfo_t siginfo;
      pid_t tid;  // the crashing thread.
@@ -312,10 +312,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/han
      fpstate_t float_state;
  #endif
    };
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
 @@ -321,7 +321,7 @@ TEST(ExceptionHandlerTest, ParallelChild
        ASSERT_EQ(SIGSEGV, WTERMSIG(status));
        return;
@@ -347,10 +347,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/han
    const int kOffset = kMemorySize - sizeof(kIllegalInstruction);
  
    const pid_t child = fork();
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
 @@ -141,7 +141,9 @@ class MicrodumpWriter {
                    const MicrodumpExtraInfo& microdump_extra_info,
                    LinuxDumper* dumper)
@@ -393,10 +393,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/mic
    const google_breakpad::fpstate_t* const float_state_;
  #endif
    LinuxDumper* dumper_;
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
 @@ -282,10 +282,19 @@ TEST(MicrodumpWriterTest, BasicWithMappi
    CrashAndGetMicrodump(mappings, MicrodumpExtraInfo(), &buf);
    ASSERT_TRUE(ContainsMicrodump(buf));
@@ -420,10 +420,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/mic
  #else
    ASSERT_NE(std::string::npos,
              buf.find("M 00001000 0000002A 00001000 "
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
 @@ -118,6 +118,9 @@ bool LinuxCoreDumper::GetThreadInfoByInd
  #elif defined(__riscv)
      stack_pointer = reinterpret_cast<uint8_t*>(
@@ -446,10 +446,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  # if defined(__ANDROID__)
          for (int i = EF_R0; i <= EF_R31; i++)
            info.mcontext.gregs[i - EF_R0] = status->pr_reg[i];
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
 @@ -770,7 +770,9 @@ bool LinuxDumper::GetStackInfo(const voi
        reinterpret_cast<uint8_t*>(int_stack_pointer & ~(page_size - 1));
  
@@ -461,10 +461,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  
    const MappingInfo* mapping = FindMapping(stack_pointer);
    if (!mapping)
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
 @@ -64,7 +64,8 @@ namespace google_breakpad {
  typedef Elf32_auxv_t elf_aux_entry;
  #elif defined(__x86_64) || defined(__aarch64__) || \
@@ -475,10 +475,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  typedef Elf64_auxv_t elf_aux_entry;
  #endif
  
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
 @@ -56,6 +56,8 @@
  #define TID_PTR_REGISTER "$1"
  #elif defined(__riscv)
@@ -488,10 +488,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  #else
  #error This test has not been ported to this platform.
  #endif
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
 @@ -208,12 +208,12 @@ bool LinuxPtraceDumper::ReadRegisterSet(
  #ifdef PTRACE_GETREGSET
    struct iovec io;
@@ -533,10 +533,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  #else
  # error "This code hasn't been ported to your platform yet."
  #endif
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
 @@ -470,6 +470,9 @@ TEST(LinuxPtraceDumperTest, VerifyStackR
  #elif defined(__riscv)
      pid_t* process_tid_location =
@@ -556,10 +556,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  #else
  #error This test has not been ported to this platform.
  #endif
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
 @@ -144,7 +144,9 @@ class MinidumpWriter {
        : fd_(minidump_fd),
          path_(minidump_path),
@@ -613,10 +613,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
    const google_breakpad::fpstate_t* const float_state_;  // ditto
  #endif
    LinuxDumper* dumper_;
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
 @@ -47,6 +47,8 @@ class ExceptionHandler;
  
  #if defined(__aarch64__)
@@ -626,10 +626,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  #elif !defined(__ARM_EABI__) && !defined(__mips__)
  typedef std::remove_pointer<fpregset_t>::type fpstate_t;
  #endif
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
 @@ -723,6 +723,9 @@ TEST(MinidumpWriterTest, InvalidStackPoi
  #elif defined(__riscv)
    context.context.uc_mcontext.__gregs[MD_CONTEXT_RISCV_REG_SP] =
@@ -640,10 +640,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/min
  #else
  # error "This code has not been ported to your platform yet."
  #endif
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
 @@ -72,8 +72,7 @@ bool MemoryMappedFile::Map(const char* p
  
  #if defined(__x86_64__) || defined(__aarch64__) || \
@@ -654,10 +654,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/mem
    struct kernel_stat st;
    if (sys_fstat(fd, &st) == -1 || st.st_size < 0) {
  #else
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
 @@ -179,9 +179,10 @@ TEST_F(MemoryMappedFileTest, RemapAfterM
  TEST_F(MemoryMappedFileTest, MapWithOffset) {
    // Put more data in the test file this time. Offsets can only be
@@ -672,10 +672,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/mem
    for (size_t i = 0; i < data1_size; ++i) {
      data1[i] = i & 0x7f;
    }
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc
 @@ -60,8 +60,9 @@ TEST(PageAllocatorTest, LargeObject) {
  
    EXPECT_EQ(0U, allocator.pages_allocated());
@@ -687,10 +687,10 @@ Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/memory_al
    for (unsigned i = 1; i < 10; ++i) {
      uint8_t* p = reinterpret_cast<uint8_t*>(allocator.Alloc(i));
      ASSERT_FALSE(p == NULL);
-Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
+Index: chromium-134.0.6998.35/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
-+++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
+--- chromium-134.0.6998.35.orig/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
++++ chromium-134.0.6998.35/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
 @@ -82,6 +82,8 @@
    #define ELF_ARCH  EM_AARCH64
  #elif defined(__riscv)

diff --git a/0001-sandbox-linux-Implement-partial-support-for-ppc64-sy.patch b/0001-sandbox-linux-Implement-partial-support-for-ppc64-sy.patch
index d572850..6fe84fa 100644
--- a/0001-sandbox-linux-Implement-partial-support-for-ppc64-sy.patch
+++ b/0001-sandbox-linux-Implement-partial-support-for-ppc64-sy.patch
@@ -17,11 +17,11 @@ GNU/Linux environments, but may require expansion elsewhere.
  create mode 100644 sandbox/linux/system_headers/ppc64_linux_syscalls.h
  create mode 100644 sandbox/linux/system_headers/ppc64_linux_ucontext.h
 
-Index: chromium-128.0.6613.113/sandbox/linux/BUILD.gn
+Index: chromium-134.0.6998.35/sandbox/linux/BUILD.gn
 ===================================================================
---- chromium-128.0.6613.113.orig/sandbox/linux/BUILD.gn
-+++ chromium-128.0.6613.113/sandbox/linux/BUILD.gn
-@@ -383,6 +383,8 @@ component("sandbox_services") {
+--- chromium-134.0.6998.35.orig/sandbox/linux/BUILD.gn
++++ chromium-134.0.6998.35/sandbox/linux/BUILD.gn
+@@ -384,6 +384,8 @@ component("sandbox_services") {
  
  source_set("sandbox_services_headers") {
    sources = [
@@ -30,10 +30,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/BUILD.gn
      "system_headers/arm64_linux_syscalls.h",
      "system_headers/arm_linux_syscalls.h",
      "system_headers/arm_linux_ucontext.h",
-Index: chromium-128.0.6613.113/sandbox/linux/system_headers/linux_syscalls.h
+Index: chromium-134.0.6998.35/sandbox/linux/system_headers/linux_syscalls.h
 ===================================================================
---- chromium-128.0.6613.113.orig/sandbox/linux/system_headers/linux_syscalls.h
-+++ chromium-128.0.6613.113/sandbox/linux/system_headers/linux_syscalls.h
+--- chromium-134.0.6998.35.orig/sandbox/linux/system_headers/linux_syscalls.h
++++ chromium-134.0.6998.35/sandbox/linux/system_headers/linux_syscalls.h
 @@ -35,5 +35,9 @@
  #include "sandbox/linux/system_headers/arm64_linux_syscalls.h"
  #endif
@@ -44,10 +44,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/system_headers/linux_syscalls.h
 +
  #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
  
-Index: chromium-128.0.6613.113/sandbox/linux/system_headers/ppc64_linux_syscalls.h
+Index: chromium-134.0.6998.35/sandbox/linux/system_headers/ppc64_linux_syscalls.h
 ===================================================================
 --- /dev/null
-+++ chromium-128.0.6613.113/sandbox/linux/system_headers/ppc64_linux_syscalls.h
++++ chromium-134.0.6998.35/sandbox/linux/system_headers/ppc64_linux_syscalls.h
 @@ -0,0 +1,12 @@
 +// Copyright 2014 The Chromium Authors. All rights reserved.
 +// Use of this source code is governed by a BSD-style license that can be
@@ -61,10 +61,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/system_headers/ppc64_linux_syscalls
 +//TODO: is it necessary to redefine syscall numbers for PPC64?
 +
 +#endif  // SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_SYSCALLS_H_
-Index: chromium-128.0.6613.113/sandbox/linux/system_headers/ppc64_linux_ucontext.h
+Index: chromium-134.0.6998.35/sandbox/linux/system_headers/ppc64_linux_ucontext.h
 ===================================================================
 --- /dev/null
-+++ chromium-128.0.6613.113/sandbox/linux/system_headers/ppc64_linux_ucontext.h
++++ chromium-134.0.6998.35/sandbox/linux/system_headers/ppc64_linux_ucontext.h
 @@ -0,0 +1,12 @@
 +// Copyright 2014 The Chromium Authors. All rights reserved.
 +// Use of this source code is governed by a BSD-style license that can be

diff --git a/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch b/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch
index a1eee2e..6c29a57 100644
--- a/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch
+++ b/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch
@@ -12,10 +12,10 @@ Subject: [PATCH] sandbox/linux: Update syscall helpers/lists for ppc64
  sandbox/linux/services/syscall_wrappers.cc    |   2 +-
  6 files changed, 73 insertions(+), 55 deletions(-)
 
-Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+Index: chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-+++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+--- chromium-134.0.6998.35.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
++++ chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
 @@ -90,7 +90,8 @@ bool IsBaselinePolicyWatched(int sysno)
           SyscallSets::IsPrctl(sysno) ||
           SyscallSets::IsProcessGroupOrSession(sysno) ||
@@ -54,10 +54,10 @@ Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/baseline_policy.
    if (SyscallSets::IsSocketCall(sysno))
      return RestrictSocketcallCommand();
  #endif
-Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+Index: chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-+++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+--- chromium-134.0.6998.35.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
++++ chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
 @@ -36,7 +36,7 @@
  #include "sandbox/linux/system_headers/linux_time.h"
  
@@ -137,7 +137,7 @@ Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
  ResultExpr RestrictSocketcallCommand() {
    // Unfortunately, we are unable to restrict the first parameter to
    // socketpair(2). Whilst initially sounding bad, it's noteworthy that very
-@@ -463,7 +488,7 @@ ResultExpr RestrictPtrace() {
+@@ -461,7 +486,7 @@ ResultExpr RestrictPtrace() {
  #endif
    return Switch(request)
        .Cases({
@@ -146,10 +146,10 @@ Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
                   PTRACE_GETREGS, PTRACE_GETFPREGS, PTRACE_GET_THREAD_AREA,
                   PTRACE_GETREGSET,
  #endif
-Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
+Index: chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
 ===================================================================
---- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
-+++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
+--- chromium-134.0.6998.35.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
++++ chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
 @@ -52,7 +52,7 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr Restr
  // O_NONBLOCK | O_SYNC | O_LARGEFILE | O_CLOEXEC | O_NOATIME.
  SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictFcntlCommands();
@@ -159,10 +159,10 @@ Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
  // Restrict socketcall(2) to only allow socketpair(2), send(2), recv(2),
  // sendto(2), recvfrom(2), shutdown(2), sendmsg(2) and recvmsg(2).
  SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictSocketcallCommand();
-Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+Index: chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-+++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+--- chromium-134.0.6998.35.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
++++ chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
 @@ -29,7 +29,8 @@ bool SyscallSets::IsAllowedGettime(int s
    switch (sysno) {
      case __NR_gettimeofday:
@@ -582,10 +582,10 @@ Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
      case __NR_vserver:
  #endif
        return true;
-Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+Index: chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
 ===================================================================
---- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-+++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+--- chromium-134.0.6998.35.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
++++ chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
 @@ -46,13 +46,14 @@ class SANDBOX_EXPORT SyscallSets {
    static bool IsDeniedGetOrModifySocket(int sysno);
  
@@ -623,11 +623,11 @@ Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
    // Big system V multiplexing system call.
    static bool IsSystemVIpc(int sysno);
  #endif
-Index: chromium-130.0.6723.44/sandbox/linux/services/syscall_wrappers.cc
+Index: chromium-134.0.6998.35/sandbox/linux/services/syscall_wrappers.cc
 ===================================================================
---- chromium-130.0.6723.44.orig/sandbox/linux/services/syscall_wrappers.cc
-+++ chromium-130.0.6723.44/sandbox/linux/services/syscall_wrappers.cc
-@@ -61,7 +61,7 @@ long sys_clone(unsigned long flags,
+--- chromium-134.0.6998.35.orig/sandbox/linux/services/syscall_wrappers.cc
++++ chromium-134.0.6998.35/sandbox/linux/services/syscall_wrappers.cc
+@@ -66,7 +66,7 @@ long sys_clone(unsigned long flags,
  #if defined(ARCH_CPU_X86_64)
    return syscall(__NR_clone, flags, child_stack, ptid, ctid, tls);
  #elif defined(ARCH_CPU_X86) || defined(ARCH_CPU_ARM_FAMILY) || \

diff --git a/0002-Add-PPC64-generated-files-for-boringssl.patch b/0002-Add-PPC64-generated-files-for-boringssl.patch
index bd2d9e4..7a1f11a 100644
--- a/0002-Add-PPC64-generated-files-for-boringssl.patch
+++ b/0002-Add-PPC64-generated-files-for-boringssl.patch
@@ -1,7 +1,7 @@
-Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S
+Index: chromium-134.0.6998.35/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S
++++ chromium-134.0.6998.35/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S
 @@ -0,0 +1,3673 @@
 +// This file is generated from a similarly-named Perl script in the BoringSSL
 +// source tree. Do not edit by hand.
@@ -3676,10 +3676,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.
 +// See https://www.airs.ccom/blog/archives/518.
 +.section .note.GNU-stack,"",%progbits
 +#endif
-Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S
+Index: chromium-134.0.6998.35/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S
++++ chromium-134.0.6998.35/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S
 @@ -0,0 +1,590 @@
 +// This file is generated from a similarly-named Perl script in the BoringSSL
 +// source tree. Do not edit by hand.
@@ -4271,10 +4271,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linu
 +// See https://www.airs.ccom/blog/archives/518.
 +.section .note.GNU-stack,"",%progbits
 +#endif
-Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.cmake
+Index: chromium-134.0.6998.35/third_party/boringssl/src/gen/sources.cmake
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/gen/sources.cmake
-+++ chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.cmake
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/gen/sources.cmake
++++ chromium-134.0.6998.35/third_party/boringssl/src/gen/sources.cmake
 @@ -118,6 +118,7 @@ set(
    gen/bcm/aesni-x86-linux.S
    gen/bcm/aesni-x86_64-apple.S
@@ -4299,7 +4299,7 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.cmake
    crypto/crypto.cc
    crypto/curve25519/curve25519.cc
    crypto/curve25519/curve25519_64_adx.cc
-@@ -2830,6 +2833,7 @@ set(
+@@ -2832,6 +2835,7 @@ set(
    gen/test_support/trampoline-armv8-apple.S
    gen/test_support/trampoline-armv8-linux.S
    gen/test_support/trampoline-armv8-win.S
@@ -4307,10 +4307,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.cmake
    gen/test_support/trampoline-x86-apple.S
    gen/test_support/trampoline-x86-linux.S
    gen/test_support/trampoline-x86_64-apple.S
-Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.json
+Index: chromium-134.0.6998.35/third_party/boringssl/src/gen/sources.json
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/boringssl/src/gen/sources.json
-+++ chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.json
+--- chromium-134.0.6998.35.orig/third_party/boringssl/src/gen/sources.json
++++ chromium-134.0.6998.35/third_party/boringssl/src/gen/sources.json
 @@ -96,6 +96,7 @@
        "gen/bcm/aesni-x86-linux.S",
        "gen/bcm/aesni-x86_64-apple.S",
@@ -4335,7 +4335,7 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.json
        "crypto/crypto.cc",
        "crypto/curve25519/curve25519.cc",
        "crypto/curve25519/curve25519_64_adx.cc",
-@@ -2750,6 +2753,7 @@
+@@ -2752,6 +2755,7 @@
        "gen/test_support/trampoline-armv8-apple.S",
        "gen/test_support/trampoline-armv8-linux.S",
        "gen/test_support/trampoline-armv8-win.S",
@@ -4343,10 +4343,10 @@ Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/sources.json
        "gen/test_support/trampoline-x86-apple.S",
        "gen/test_support/trampoline-x86-linux.S",
        "gen/test_support/trampoline-x86_64-apple.S",
-Index: chromium-133.0.6943.35/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S
+Index: chromium-134.0.6998.35/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S
 ===================================================================
 --- /dev/null
-+++ chromium-133.0.6943.35/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S
++++ chromium-134.0.6998.35/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S
 @@ -0,0 +1,1413 @@
 +// This file is generated from a similarly-named Perl script in the BoringSSL
 +// source tree. Do not edit by hand.

diff --git a/0002-third_party-libvpx-Remove-bad-ppc64-config.patch b/0002-third_party-libvpx-Remove-bad-ppc64-config.patch
index e2eb5e5..ac86882 100644
--- a/0002-third_party-libvpx-Remove-bad-ppc64-config.patch
+++ b/0002-third_party-libvpx-Remove-bad-ppc64-config.patch
@@ -1,6 +1,6 @@
-Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
 +++ /dev/null
 @@ -1,330 +0,0 @@
 -/*
@@ -333,9 +333,9 @@ Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vp8_r
 -#endif
 -
 -#endif  // VP8_RTCD_H_
-Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
 +++ /dev/null
 @@ -1,206 +0,0 @@
 -/*
@@ -544,9 +544,9 @@ Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vp9_r
 -#endif
 -
 -#endif  // VP9_RTCD_H_
-Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
 +++ /dev/null
 @@ -1,108 +0,0 @@
 -@ This file was created from a .asm file
@@ -657,9 +657,9 @@ Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_c
 -.equ DECODE_WIDTH_LIMIT ,  16384
 -.equ DECODE_HEIGHT_LIMIT ,  16384
 -    .section .note.GNU-stack,"",%progbits
-Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
 +++ /dev/null
 @@ -1,10 +0,0 @@
 -/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
@@ -672,9 +672,9 @@ Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_c
 -#include "vpx/vpx_codec.h"
 -static const char* const cfg = "--target=ppc64le-linux-gcc --enable-external-build --enable-postproc --enable-multi-res-encoding --enable-temporal-denoising --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384 --enable-realtime-only --disable-install-docs --disable-libyuv --enable-unit-tests";
 -const char *vpx_codec_build_config(void) {return cfg;}
-Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
 +++ /dev/null
 @@ -1,117 +0,0 @@
 -/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
@@ -794,9 +794,9 @@ Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_c
 -#define DECODE_WIDTH_LIMIT 16384
 -#define DECODE_HEIGHT_LIMIT 16384
 -#endif /* VPX_CONFIG_H */
-Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
 +++ /dev/null
 @@ -1,2138 +0,0 @@
 -/*
@@ -2937,9 +2937,9 @@ Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_d
 -#endif
 -
 -#endif  // VPX_DSP_RTCD_H_
-Index: chromium-133.0.6943.35/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
 ===================================================================
---- chromium-133.0.6943.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
 +++ /dev/null
 @@ -1,110 +0,0 @@
 -/*

diff --git a/0003-third_party-libvpx-Add-ppc64-generated-config.patch b/0003-third_party-libvpx-Add-ppc64-generated-config.patch
index 4aab2ee..a97e719 100644
--- a/0003-third_party-libvpx-Add-ppc64-generated-config.patch
+++ b/0003-third_party-libvpx-Add-ppc64-generated-config.patch
@@ -1,7 +1,7 @@
-Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
 ===================================================================
 --- /dev/null
-+++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
++++ chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h
 @@ -0,0 +1,316 @@
 +// This file is generated. Do not edit.
 +#ifndef VP8_RTCD_H_
@@ -319,10 +319,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp8_r
 +#endif
 +
 +#endif
-Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
 ===================================================================
 --- /dev/null
-+++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
++++ chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h
 @@ -0,0 +1,267 @@
 +// This file is generated. Do not edit.
 +#ifndef VP9_RTCD_H_
@@ -591,10 +591,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp9_r
 +#endif
 +
 +#endif
-Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
 ===================================================================
 --- /dev/null
-+++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
++++ chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm
 @@ -0,0 +1,107 @@
 +@ This file was created from a .asm file
 +@  using the ads2gas.pl script.
@@ -703,10 +703,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_c
 +.equ DECODE_WIDTH_LIMIT ,  16384
 +.equ DECODE_HEIGHT_LIMIT ,  16384
 +    .section .note.GNU-stack,"",%progbits
-Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
 ===================================================================
 --- /dev/null
-+++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
++++ chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.c
 @@ -0,0 +1,10 @@
 +/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
 +/*  */
@@ -718,10 +718,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_c
 +#include "vpx/vpx_codec.h"
 +static const char* const cfg = "--target=generic-gnu --enable-vp9-highbitdepth --enable-external-build --enable-postproc --enable-multi-res-encoding --enable-temporal-denoising --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384 --enable-realtime-only --disable-install-docs --disable-libyuv";
 +const char *vpx_codec_build_config(void) {return cfg;}
-Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
 ===================================================================
 --- /dev/null
-+++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
++++ chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_config.h
 @@ -0,0 +1,116 @@
 +/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
 +/*  */
@@ -839,10 +839,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_c
 +#define DECODE_WIDTH_LIMIT 16384
 +#define DECODE_HEIGHT_LIMIT 16384
 +#endif /* VPX_CONFIG_H */
-Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
 ===================================================================
 --- /dev/null
-+++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
++++ chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h
 @@ -0,0 +1,4128 @@
 +// This file is generated. Do not edit.
 +#ifndef VPX_DSP_RTCD_H_
@@ -4972,10 +4972,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_d
 +#endif
 +
 +#endif
-Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
+Index: chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
 ===================================================================
 --- /dev/null
-+++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
++++ chromium-134.0.6998.35/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h
 @@ -0,0 +1,96 @@
 +// This file is generated. Do not edit.
 +#ifndef VPX_SCALE_RTCD_H_

diff --git a/0004-third_party-libvpx-work-around-ambiguous-vsx.patch b/0004-third_party-libvpx-work-around-ambiguous-vsx.patch
index 49855ac..9a37b40 100644
--- a/0004-third_party-libvpx-work-around-ambiguous-vsx.patch
+++ b/0004-third_party-libvpx-work-around-ambiguous-vsx.patch
@@ -1,7 +1,7 @@
-Index: chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vp9/encoder/ppc/vp9_quantize_vsx.c
+Index: chromium-134.0.6998.35/third_party/libvpx/source/libvpx/vp9/encoder/ppc/vp9_quantize_vsx.c
 ===================================================================
---- chromium-128.0.6613.113.orig/third_party/libvpx/source/libvpx/vp9/encoder/ppc/vp9_quantize_vsx.c
-+++ chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vp9/encoder/ppc/vp9_quantize_vsx.c
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/libvpx/vp9/encoder/ppc/vp9_quantize_vsx.c
++++ chromium-134.0.6998.35/third_party/libvpx/source/libvpx/vp9/encoder/ppc/vp9_quantize_vsx.c
 @@ -38,6 +38,28 @@ static INLINE int16x8_t vec_max_across(i
    return vec_max(a, vec_perm(a, a, vec_perm16));
  }
@@ -137,10 +137,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vp9/encoder/ppc/
  
      eob = vec_max(eob, vec_or(scan0, zero_coeff0));
      eob2 = vec_max(vec_or(scan1, zero_coeff1), vec_or(scan2, zero_coeff2));
-Index: chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vpx_dsp/ppc/fdct32x32_vsx.c
+Index: chromium-134.0.6998.35/third_party/libvpx/source/libvpx/vpx_dsp/ppc/fdct32x32_vsx.c
 ===================================================================
---- chromium-128.0.6613.113.orig/third_party/libvpx/source/libvpx/vpx_dsp/ppc/fdct32x32_vsx.c
-+++ chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vpx_dsp/ppc/fdct32x32_vsx.c
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/libvpx/vpx_dsp/ppc/fdct32x32_vsx.c
++++ chromium-134.0.6998.35/third_party/libvpx/source/libvpx/vpx_dsp/ppc/fdct32x32_vsx.c
 @@ -15,6 +15,28 @@
  #include "vpx_dsp/ppc/txfm_common_vsx.h"
  #include "vpx_dsp/ppc/types_vsx.h"
@@ -255,10 +255,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vpx_dsp/ppc/fdct
  }
  
  // Returns 1 if negative 0 if positive
-Index: chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vpx_dsp/ppc/quantize_vsx.c
+Index: chromium-134.0.6998.35/third_party/libvpx/source/libvpx/vpx_dsp/ppc/quantize_vsx.c
 ===================================================================
---- chromium-128.0.6613.113.orig/third_party/libvpx/source/libvpx/vpx_dsp/ppc/quantize_vsx.c
-+++ chromium-128.0.6613.113/third_party/libvpx/source/libvpx/vpx_dsp/ppc/quantize_vsx.c
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/libvpx/vpx_dsp/ppc/quantize_vsx.c
++++ chromium-134.0.6998.35/third_party/libvpx/source/libvpx/vpx_dsp/ppc/quantize_vsx.c
 @@ -13,6 +13,28 @@
  #include "./vpx_dsp_rtcd.h"
  #include "vpx_dsp/ppc/types_vsx.h"

diff --git a/0008-sandbox-fix-ppc64le-glibc234.patch b/0008-sandbox-fix-ppc64le-glibc234.patch
index 8c52acb..4c9943d 100644
--- a/0008-sandbox-fix-ppc64le-glibc234.patch
+++ b/0008-sandbox-fix-ppc64le-glibc234.patch
@@ -1,5 +1,7 @@
---- a/sandbox/policy/linux/bpf_utility_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_utility_policy_linux.cc
+Index: chromium-134.0.6998.35/sandbox/policy/linux/bpf_utility_policy_linux.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc
++++ chromium-134.0.6998.35/sandbox/policy/linux/bpf_utility_policy_linux.cc
 @@ -34,7 +34,7 @@ ResultExpr UtilityProcessPolicy::Evaluat
      case __NR_fdatasync:
      case __NR_fsync:
@@ -9,8 +11,10 @@
      case __NR_getrlimit:
  #endif
  #if defined(__i386__) || defined(__arm__)
---- a/sandbox/policy/linux/bpf_renderer_policy_linux.cc
-+++ b/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+Index: chromium-134.0.6998.35/sandbox/policy/linux/bpf_renderer_policy_linux.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc
++++ chromium-134.0.6998.35/sandbox/policy/linux/bpf_renderer_policy_linux.cc
 @@ -90,7 +90,7 @@ ResultExpr RendererProcessPolicy::Evalua
      case __NR_ftruncate64:
  #endif
@@ -20,8 +24,10 @@
      case __NR_getrlimit:
      case __NR_setrlimit:
  // We allow setrlimit to dynamically adjust the address space limit as
---- a/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-+++ b/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+Index: chromium-134.0.6998.35/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+===================================================================
+--- chromium-134.0.6998.35.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
++++ chromium-134.0.6998.35/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
 @@ -58,9 +58,9 @@
  
  #elif defined(__powerpc64__)
@@ -34,8 +40,10 @@
  #define MAX_SYSCALL MAX_PUBLIC_SYSCALL
  
  #else
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
+Index: chromium-134.0.6998.35/sandbox/linux/services/credentials.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/sandbox/linux/services/credentials.cc
++++ chromium-134.0.6998.35/sandbox/linux/services/credentials.cc
 @@ -96,7 +96,8 @@ bool ChrootToSafeEmptyDir() {
  
    int clone_flags = CLONE_FS | LINUX_SIGCHLD;
@@ -58,8 +66,10 @@
    clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
  
    char tls_buf[PTHREAD_STACK_MIN_CONST] = {};
---- a/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
+Index: chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
+===================================================================
+--- chromium-134.0.6998.35.orig/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
++++ chromium-134.0.6998.35/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
 @@ -362,7 +362,16 @@ intptr_t SIGSYSFstatatHandler(const stru
    if (args.nr == __NR_fstatat_default) {
      if (*reinterpret_cast<const char*>(args.args[1]) == '\0' &&

diff --git a/HACK-third_party-libvpx-use-generic-gnu.patch b/HACK-third_party-libvpx-use-generic-gnu.patch
index c4a9298..3b1423d 100644
--- a/HACK-third_party-libvpx-use-generic-gnu.patch
+++ b/HACK-third_party-libvpx-use-generic-gnu.patch
@@ -1,7 +1,7 @@
-Index: chromium-130.0.6723.44/third_party/libvpx/generate_gni.sh
+Index: chromium-134.0.6998.35/third_party/libvpx/generate_gni.sh
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/libvpx/generate_gni.sh
-+++ chromium-130.0.6723.44/third_party/libvpx/generate_gni.sh
+--- chromium-134.0.6998.35.orig/third_party/libvpx/generate_gni.sh
++++ chromium-134.0.6998.35/third_party/libvpx/generate_gni.sh
 @@ -433,7 +433,7 @@ gen_config_files linux/mipsel "--target=
  gen_config_files linux/mips64el "--target=mips64-linux-gcc ${all_platforms}"
  gen_config_files linux/loongarch \
@@ -11,10 +11,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/generate_gni.sh
  gen_config_files linux/generic "--target=generic-gnu $HIGHBD ${all_platforms}"
  gen_config_files win/arm64-highbd \
    "--target=arm64-win64-vs15 ${all_platforms} ${HIGHBD} ${disable_sve}"
-Index: chromium-130.0.6723.44/third_party/libvpx/source/libvpx/build/make/rtcd.pl
+Index: chromium-134.0.6998.35/third_party/libvpx/source/libvpx/build/make/rtcd.pl
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/libvpx/source/libvpx/build/make/rtcd.pl
-+++ chromium-130.0.6723.44/third_party/libvpx/source/libvpx/build/make/rtcd.pl
+--- chromium-134.0.6998.35.orig/third_party/libvpx/source/libvpx/build/make/rtcd.pl
++++ chromium-134.0.6998.35/third_party/libvpx/source/libvpx/build/make/rtcd.pl
 @@ -509,8 +509,9 @@ if ($opts{arch} eq 'x86') {
    &require(@REQUIRES);
    arm;
@@ -27,10 +27,10 @@ Index: chromium-130.0.6723.44/third_party/libvpx/source/libvpx/build/make/rtcd.p
  } elsif ($opts{arch} =~ /loongarch/ ) {
    @ALL_ARCHS = filter(qw/lsx lasx/);
    loongarch;
-Index: chromium-130.0.6723.44/third_party/libvpx/BUILD.gn
+Index: chromium-134.0.6998.35/third_party/libvpx/BUILD.gn
 ===================================================================
---- chromium-130.0.6723.44.orig/third_party/libvpx/BUILD.gn
-+++ chromium-130.0.6723.44/third_party/libvpx/BUILD.gn
+--- chromium-134.0.6998.35.orig/third_party/libvpx/BUILD.gn
++++ chromium-134.0.6998.35/third_party/libvpx/BUILD.gn
 @@ -102,6 +102,14 @@ config("libvpx_config") {
        "-Wno-sign-compare",
      ]

diff --git a/chromium-133-el8-atk-compiler-error.patch b/chromium-133-el8-atk-compiler-error.patch
deleted file mode 100644
index 627c0a6..0000000
--- a/chromium-133-el8-atk-compiler-error.patch
+++ /dev/null
@@ -1,1081 +0,0 @@
-diff -up chromium-133.0.6943.35/content/browser/accessibility/accessibility_auralinux_browsertest.cc.el8-atk-compiler-error chromium-133.0.6943.35/content/browser/accessibility/accessibility_auralinux_browsertest.cc
---- chromium-133.0.6943.35/content/browser/accessibility/accessibility_auralinux_browsertest.cc.el8-atk-compiler-error	2025-01-28 23:03:27.000000000 +0100
-+++ chromium-133.0.6943.35/content/browser/accessibility/accessibility_auralinux_browsertest.cc	2025-02-04 10:56:08.414126354 +0100
-@@ -3,6 +3,7 @@
- // found in the LICENSE file.
- 
- #include <atk/atk.h>
-+#include <dlfcn.h>
- 
- #include <string>
- #include <vector>
-@@ -549,6 +550,10 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   g_object_unref(div_element);
- }
- 
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 30, 0)
-+#define ATK_230
-+#endif
-+
- IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
-                        TestCharacterExtentsWithInvalidArguments) {
-   AtkText* atk_text = SetUpSampleParagraph();
-@@ -571,12 +576,14 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   EXPECT_EQ(expect, width);
-   EXPECT_EQ(expect, height);
- 
-+#ifdef ATK_230
-   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
-                                  &height, ATK_XY_PARENT);
-   EXPECT_EQ(expect, x);
-   EXPECT_EQ(expect, y);
-   EXPECT_EQ(expect, width);
-   EXPECT_EQ(expect, height);
-+#endif  // ATK_230
- 
-   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
-                                  &height, ATK_XY_WINDOW);
-@@ -595,12 +602,14 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   EXPECT_EQ(expect, width);
-   EXPECT_EQ(expect, height);
- 
-+#ifdef ATK_230
-   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
-                                  &height, ATK_XY_PARENT);
-   EXPECT_EQ(expect, x);
-   EXPECT_EQ(expect, y);
-   EXPECT_EQ(expect, width);
-   EXPECT_EQ(expect, height);
-+#endif  // ATK_230
- 
-   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
-                                  &height, ATK_XY_WINDOW);
-@@ -615,7 +624,9 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
- AtkCoordType kCoordinateTypes[] = {
-     ATK_XY_SCREEN,
-     ATK_XY_WINDOW,
-+#ifdef ATK_230
-     ATK_XY_PARENT,
-+#endif  // ATK_230
- };
- 
- IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
-@@ -874,6 +885,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   TestCharacterExtentsInScrollableInput();
- }
- 
-+#if defined(ATK_230)
- typedef bool (*ScrollToPointFunc)(AtkComponent* component,
-                                   AtkCoordType coords,
-                                   gint x,
-@@ -883,6 +895,18 @@ typedef bool (*ScrollToFunc)(AtkComponen
- // TODO(crbug.com/40866728): Enable this test.
- IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
-                        DISABLED_TestScrollToPoint) {
-+  // There's a chance we may be compiled with a newer version of ATK and then
-+  // run with an older one, so we need to do a runtime check for this method
-+  // that is available in ATK 2.30 instead of linking directly.
-+  ScrollToPointFunc scroll_to_point = reinterpret_cast<ScrollToPointFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_component_scroll_to_point"));
-+  if (!scroll_to_point) {
-+    LOG(WARNING)
-+        << "Skipping AccessibilityAuraLinuxBrowserTest::TestScrollToPoint"
-+           " because ATK version < 2.30 detected.";
-+    return;
-+  }
-+
-   LoadSampleParagraphInScrollableDocument();
-   AtkText* atk_text = GetSampleParagraph();
-   ASSERT_TRUE(ATK_IS_COMPONENT(atk_text));
-@@ -895,7 +919,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   AccessibilityNotificationWaiter location_changed_waiter(
-       shell()->web_contents(), ui::kAXModeComplete,
-       ax::mojom::Event::kLocationChanged);
--  atk_component_scroll_to_point(atk_component, ATK_XY_PARENT, 0, 0);
-+  scroll_to_point(atk_component, ATK_XY_PARENT, 0, 0);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
- 
-   atk_component_get_extents(atk_component, &x, &y, nullptr, nullptr,
-@@ -904,20 +928,20 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   EXPECT_GT(prev_y, y);
- 
-   constexpr int kScrollToY = 0;
--  atk_component_scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY);
-+  scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
-   atk_component_get_extents(atk_component, &x, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-   EXPECT_EQ(kScrollToY, y);
- 
-   constexpr int kScrollToY_2 = 243;
--  atk_component_scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY_2);
-+  scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY_2);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
-   atk_component_get_extents(atk_component, nullptr, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-   EXPECT_EQ(kScrollToY_2, y);
- 
--  atk_component_scroll_to_point(atk_component, ATK_XY_SCREEN, 0, 129);
-+  scroll_to_point(atk_component, ATK_XY_SCREEN, 0, 129);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
-   atk_component_get_extents(atk_component, nullptr, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-@@ -934,6 +958,17 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
- // TODO(crbug.com/40866728): Enable this test.
- IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
-                        DISABLED_TestScrollTo) {
-+  // There's a chance we may be compiled with a newer version of ATK and then
-+  // run with an older one, so we need to do a runtime check for this method
-+  // that is available in ATK 2.30 instead of linking directly.
-+  ScrollToFunc scroll_to = reinterpret_cast<ScrollToFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_component_scroll_to"));
-+  if (!scroll_to) {
-+    LOG(WARNING) << "Skipping AccessibilityAuraLinuxBrowserTest::TestScrollTo"
-+                    " because ATK version < 2.30 detected.";
-+    return;
-+  }
-+
-   LoadInitialAccessibilityTreeFromHtml(
-       R"HTML(<!DOCTYPE html>
-       <html>
-@@ -975,8 +1010,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   AccessibilityNotificationWaiter waiter(
-       shell()->web_contents(), ui::kAXModeComplete,
-       ax::mojom::Event::kScrollPositionChanged);
--  ASSERT_TRUE(
--      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_EDGE));
-+  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   int x, y;
-   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
-@@ -984,40 +1018,35 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   EXPECT_EQ(y, doc_y);
-   EXPECT_NE(x, doc_x);
- 
--  ASSERT_TRUE(
--      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_LEFT));
-+  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_LEFT));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-   EXPECT_EQ(y, doc_y);
-   EXPECT_EQ(x, doc_x);
- 
--  ASSERT_TRUE(
--      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_BOTTOM_EDGE));
-+  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_BOTTOM_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-   EXPECT_NE(y, doc_y);
-   EXPECT_EQ(x, doc_x);
- 
--  ASSERT_TRUE(
--      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_RIGHT_EDGE));
-+  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_RIGHT_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-   EXPECT_NE(y, doc_y);
-   EXPECT_NE(x, doc_x);
- 
--  ASSERT_TRUE(
--      atk_component_scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_LEFT_EDGE));
-+  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_LEFT_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_component_get_extents(ATK_COMPONENT(target2), &x, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-   EXPECT_NE(y, doc_y);
-   EXPECT_EQ(x, doc_x);
- 
--  ASSERT_TRUE(
--      atk_component_scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_TOP_LEFT));
-+  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_TOP_LEFT));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_component_get_extents(ATK_COMPONENT(target2), &x, &y, nullptr, nullptr,
-                             ATK_XY_SCREEN);
-@@ -1049,10 +1078,39 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   g_object_unref(target2);
-   g_object_unref(target3);
- }
-+#endif  //  defined(ATK_230)
-+
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 32, 0)
-+typedef gboolean (*ScrollSubstringToFunc)(AtkText* text,
-+                                          gint start_offset,
-+                                          gint end_offset,
-+                                          AtkScrollType type);
-+ScrollSubstringToFunc g_scroll_substring_to = nullptr;
-+
-+NO_SANITIZE("cfi-icall")
-+gboolean ScrollSubstringTo(AtkText* text,
-+                           gint start_offset,
-+                           gint end_offset,
-+                           AtkScrollType type) {
-+  EXPECT_NE(g_scroll_substring_to, nullptr);
-+  return g_scroll_substring_to(text, start_offset, end_offset, type);
-+}
- 
- // TODO(crbug.com/40866728): Enable this test.
- IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
-                        DISABLED_TestScrollSubstringTo) {
-+  // There's a chance we may be compiled with a newer version of ATK and then
-+  // run with an older one, so we need to do a runtime check for this method
-+  // that is available in ATK 2.32 instead of linking directly.
-+  g_scroll_substring_to = reinterpret_cast<ScrollSubstringToFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_text_scroll_substring_to"));
-+  if (!g_scroll_substring_to) {
-+    LOG(WARNING) << "Skipping "
-+                    "AccessibilityAuraLinuxBrowserTest::TestSubstringScrollTo"
-+                    " because ATK version < 2.32 detected.";
-+    return;
-+  }
-+
-   LoadInitialAccessibilityTreeFromHtml(
-       R"HTML(<!DOCTYPE html>
-       <html>
-@@ -1086,8 +1144,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   AccessibilityNotificationWaiter waiter(
-       shell()->web_contents(), ui::kAXModeComplete,
-       ax::mojom::Event::kScrollPositionChanged);
--  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
--                                           ATK_SCROLL_TOP_EDGE));
-+  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_TOP_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   int x, y;
-   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
-@@ -1095,40 +1152,37 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   EXPECT_EQ(y, doc_y);
-   EXPECT_NE(x, doc_x);
- 
--  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
--                                           ATK_SCROLL_TOP_LEFT));
-+  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_TOP_LEFT));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-   EXPECT_EQ(y, doc_y);
-   EXPECT_EQ(x, doc_x);
- 
--  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
--                                           ATK_SCROLL_BOTTOM_EDGE));
-+  ASSERT_TRUE(
-+      ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_BOTTOM_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-   EXPECT_NE(y, doc_y);
-   EXPECT_EQ(x, doc_x);
- 
--  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
--                                           ATK_SCROLL_RIGHT_EDGE));
-+  ASSERT_TRUE(
-+      ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_RIGHT_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-   EXPECT_NE(y, doc_y);
-   EXPECT_NE(x, doc_x);
- 
--  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
--                                           ATK_SCROLL_LEFT_EDGE));
-+  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_LEFT_EDGE));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-   EXPECT_NE(y, doc_y);
-   EXPECT_EQ(x, doc_x);
- 
--  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
--                                           ATK_SCROLL_TOP_LEFT));
-+  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_TOP_LEFT));
-   ASSERT_TRUE(waiter.WaitForNotification());
-   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-@@ -1138,9 +1192,42 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   g_object_unref(target1);
- }
- 
-+typedef gboolean (*ScrollSubstringToPointFunc)(AtkText* text,
-+                                               gint start_offset,
-+                                               gint end_offset,
-+                                               AtkCoordType coord_type,
-+                                               gint x,
-+                                               gint y);
-+ScrollSubstringToPointFunc g_scroll_substring_to_point = nullptr;
-+
-+NO_SANITIZE("cfi-icall")
-+gboolean ScrollSubstringToPoint(AtkText* text,
-+                                gint start_offset,
-+                                gint end_offset,
-+                                AtkCoordType coord_type,
-+                                gint x,
-+                                gint y) {
-+  EXPECT_NE(g_scroll_substring_to_point, nullptr);
-+  return g_scroll_substring_to_point(text, start_offset, end_offset, coord_type,
-+                                     x, y);
-+}
-+
- // TODO(crbug.com/40866728): Enable this test.
- IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
-                        DISABLED_TestScrollSubstringToPoint) {
-+  // There's a chance we may be compiled with a newer version of ATK and then
-+  // run with an older one, so we need to do a runtime check for this method
-+  // that is available in ATK 2.30 instead of linking directly.
-+  g_scroll_substring_to_point = reinterpret_cast<ScrollSubstringToPointFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_text_scroll_substring_to_point"));
-+  if (!g_scroll_substring_to_point) {
-+    LOG(WARNING)
-+        << "Skipping "
-+           "AccessibilityAuraLinuxBrowserTest::TestScrollSubstringToPoint"
-+           " because ATK version < 2.30 detected.";
-+    return;
-+  }
-+
-   LoadSampleParagraphInScrollableDocument();
-   AtkText* atk_text = GetSampleParagraph();
-   ASSERT_TRUE(ATK_IS_COMPONENT(atk_text));
-@@ -1153,7 +1240,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   AccessibilityNotificationWaiter location_changed_waiter(
-       shell()->web_contents(), ui::kAXModeComplete,
-       ax::mojom::Event::kLocationChanged);
--  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_PARENT, 0, 0);
-+  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_PARENT, 0, 0);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
- 
-   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
-@@ -1162,22 +1249,20 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
-   EXPECT_GT(prev_y, y);
- 
-   constexpr int kScrollToY = 0;
--  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_SCREEN, 0,
--                                     kScrollToY);
-+  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_SCREEN, 0, kScrollToY);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
-   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-   EXPECT_EQ(kScrollToY, y);
- 
-   constexpr int kScrollToY_2 = 243;
--  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_SCREEN, 0,
--                                     kScrollToY_2);
-+  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_SCREEN, 0, kScrollToY_2);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
-   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-   EXPECT_EQ(kScrollToY_2, y);
- 
--  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_SCREEN, 0, 129);
-+  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_SCREEN, 0, 129);
-   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
-   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
-                                  ATK_XY_SCREEN);
-@@ -1193,6 +1278,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
- 
-   g_object_unref(atk_text);
- }
-+#endif  //  defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 32, 0)
- 
- #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
- // Flaky on crbug.com/1026149
-diff -up chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.cc.el8-atk-compiler-error chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.cc
---- chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.cc.el8-atk-compiler-error	2025-01-28 23:03:27.000000000 +0100
-+++ chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.cc	2025-02-04 10:56:08.424126602 +0100
-@@ -2,12 +2,12 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- 
--#include "base/version.h"
- #ifdef UNSAFE_BUFFERS_BUILD
- // TODO(crbug.com/40285824): Remove this and convert code to safer constructs.
- #pragma allow_unsafe_buffers
- #endif
- 
-+#include <dlfcn.h>
- #include <stdint.h>
- 
- #include <algorithm>
-@@ -47,14 +47,33 @@
- #include "ui/accessibility/platform/child_iterator.h"
- #include "ui/gfx/geometry/rect_conversions.h"
- 
--// Function availability can be tested by checking whether its address is not
--// nullptr.
--#define WEAK_ATK_FN(x) extern "C" __attribute__((weak)) decltype(x) x
--
--// TODO(https://crbug.com/40549424): This may be removed when support for
--// Ubuntu 18.04 is dropped.
--WEAK_ATK_FN(atk_component_scroll_to_point);
--WEAK_ATK_FN(atk_text_scroll_substring_to_point);
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 10, 0)
-+#define ATK_210
-+#endif
-+
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 12, 0)
-+#define ATK_212
-+#endif
-+
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 16, 0)
-+#define ATK_216
-+#endif
-+
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 26, 0)
-+#define ATK_226
-+#endif
-+
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 30, 0)
-+#define ATK_230
-+#endif
-+
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 32, 0)
-+#define ATK_232
-+#endif
-+
-+#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 34, 0)
-+#define ATK_234
-+#endif
- 
- namespace ui {
- 
-@@ -146,11 +165,29 @@ AtkObject* g_active_top_level_frame = nu
- 
- AtkObject* g_active_views_dialog = nullptr;
- 
-+#if defined(ATK_216)
- constexpr AtkRole kStaticRole = ATK_ROLE_STATIC;
- constexpr AtkRole kSubscriptRole = ATK_ROLE_SUBSCRIPT;
- constexpr AtkRole kSuperscriptRole = ATK_ROLE_SUPERSCRIPT;
-+#else
-+constexpr AtkRole kStaticRole = ATK_ROLE_TEXT;
-+constexpr AtkRole kSubscriptRole = ATK_ROLE_TEXT;
-+constexpr AtkRole kSuperscriptRole = ATK_ROLE_TEXT;
-+#endif
- 
-+#if defined(ATK_226)
- constexpr AtkRole kAtkFootnoteRole = ATK_ROLE_FOOTNOTE;
-+#else
-+constexpr AtkRole kAtkFootnoteRole = ATK_ROLE_LIST_ITEM;
-+#endif
-+
-+#if defined(ATK_234)
-+constexpr AtkRole kAtkRoleContentDeletion = ATK_ROLE_CONTENT_DELETION;
-+constexpr AtkRole kAtkRoleContentInsertion = ATK_ROLE_CONTENT_INSERTION;
-+#else
-+constexpr AtkRole kAtkRoleContentDeletion = ATK_ROLE_SECTION;
-+constexpr AtkRole kAtkRoleContentInsertion = ATK_ROLE_SECTION;
-+#endif
- 
- using GetTypeFunc = GType (*)();
- using GetColumnHeaderCellsFunc = GPtrArray* (*)(AtkTableCell* cell);
-@@ -161,6 +198,11 @@ using GetRowColumnSpanFunc = bool (*)(At
-                                       gint* row_span,
-                                       gint* col_span);
- 
-+static GetTypeFunc g_atk_table_cell_get_type;
-+static GetColumnHeaderCellsFunc g_atk_table_cell_get_column_header_cells;
-+static GetRowHeaderCellsFunc g_atk_table_cell_get_row_header_cells;
-+static GetRowColumnSpanFunc g_atk_table_cell_get_row_column_span;
-+
- // The ATK API often requires pointers to be used as out arguments, while
- // allowing for those pointers to be null if the caller is not interested in
- // the value. This function is a simpler helper to avoid continually checking
-@@ -170,35 +212,17 @@ void SetIntPointerValueIfNotNull(int* po
-     *pointer = value;
- }
- 
--// TODO(https://crbug.com/40549424): This may be removed when support for
--// Ubuntu 18.04 is dropped.
-+#if defined(ATK_230)
- bool SupportsAtkComponentScrollingInterface() {
--  return atk_component_scroll_to_point;
-+  return dlsym(RTLD_DEFAULT, "atk_component_scroll_to_point");
- }
-+#endif
- 
--// TODO(https://crbug.com/40549424): This may be removed when support for
--// Ubuntu 18.04 is dropped.
-+#if defined(ATK_232)
- bool SupportsAtkTextScrollingInterface() {
--  return atk_text_scroll_substring_to_point;
--}
--
--// TODO(https://crbug.com/40549424): This may be removed when support for
--// Ubuntu 18.04 is dropped.
--AtkRole GetAtkRoleContentDeletion() {
--  base::Version atk_version(atk_get_version());
--  return atk_version.CompareTo(base::Version("2.34.0")) >= 0
--             ? ATK_ROLE_CONTENT_DELETION
--             : ATK_ROLE_SECTION;
--}
--
--// TODO(https://crbug.com/40549424): This may be removed when support for
--// Ubuntu 18.04 is dropped.
--AtkRole GetAtkRoleContentInsertion() {
--  base::Version atk_version(atk_get_version());
--  return atk_version.CompareTo(base::Version("2.34.0")) >= 0
--             ? ATK_ROLE_CONTENT_INSERTION
--             : ATK_ROLE_SECTION;
-+  return dlsym(RTLD_DEFAULT, "atk_text_scroll_substring_to_point");
- }
-+#endif
- 
- AtkObject* FindAtkObjectParentFrame(AtkObject* atk_object) {
-   AXPlatformNodeAuraLinux* node =
-@@ -297,10 +321,12 @@ AXCoordinateSystem AtkCoordTypeToAXCoord
-       return AXCoordinateSystem::kScreenDIPs;
-     case ATK_XY_WINDOW:
-       return AXCoordinateSystem::kRootFrame;
-+#if defined(ATK_230)
-     case ATK_XY_PARENT:
-       // AXCoordinateSystem does not support parent coordinates.
-       NOTIMPLEMENTED();
-       return AXCoordinateSystem::kFrame;
-+#endif
-     default:
-       return AXCoordinateSystem::kScreenDIPs;
-   }
-@@ -513,6 +539,7 @@ gboolean GrabFocus(AtkComponent* atk_com
-   return obj->GrabFocus();
- }
- 
-+#if defined(ATK_230)
- gboolean ScrollTo(AtkComponent* atk_component, AtkScrollType scroll_type) {
-   g_return_val_if_fail(ATK_IS_COMPONENT(atk_component), FALSE);
- 
-@@ -539,6 +566,7 @@ gboolean ScrollToPoint(AtkComponent* atk
-   obj->ScrollToPoint(atk_coord_type, x, y);
-   return TRUE;
- }
-+#endif
- 
- void Init(AtkComponentIface* iface) {
-   iface->get_extents = GetExtents;
-@@ -546,10 +574,12 @@ void Init(AtkComponentIface* iface) {
-   iface->get_size = GetSize;
-   iface->ref_accessible_at_point = RefAccesibleAtPoint;
-   iface->grab_focus = GrabFocus;
-+#if defined(ATK_230)
-   if (SupportsAtkComponentScrollingInterface()) {
-     iface->scroll_to = ScrollTo;
-     iface->scroll_to_point = ScrollToPoint;
-   }
-+#endif
- }
- 
- const GInterfaceInfo Info = {reinterpret_cast<GInterfaceInitFunc>(Init),
-@@ -1310,6 +1340,7 @@ gboolean AddSelection(AtkText* atk_text,
-   return SetSelection(atk_text, 0, start_offset, end_offset);
- }
- 
-+#if defined(ATK_210)
- char* GetStringAtOffset(AtkText* atk_text,
-                         int offset,
-                         AtkTextGranularity atk_granularity,
-@@ -1324,7 +1355,9 @@ char* GetStringAtOffset(AtkText* atk_tex
-   return GetTextWithBoundaryType(atk_text, offset, boundary, start_offset,
-                                  end_offset);
- }
-+#endif
- 
-+#if defined(ATK_230)
- gfx::Rect GetUnclippedParentHypertextRangeBoundsRect(
-     AXPlatformNodeDelegate* ax_platform_node_delegate,
-     const int start_offset,
-@@ -1348,6 +1381,7 @@ gfx::Rect GetUnclippedParentHypertextRan
-                              AXClippingBehavior::kClipped)
-              .OffsetFromOrigin();
- }
-+#endif
- 
- void GetCharacterExtents(AtkText* atk_text,
-                          int offset,
-@@ -1363,10 +1397,12 @@ void GetCharacterExtents(AtkText* atk_te
-       AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(atk_text));
-   if (obj) {
-     switch (coordinate_type) {
-+#if defined(ATK_230)
-       case ATK_XY_PARENT:
-         rect = GetUnclippedParentHypertextRangeBoundsRect(obj->GetDelegate(),
-                                                           offset, offset + 1);
-         break;
-+#endif
-       default:
-         rect = obj->GetDelegate()->GetHypertextRangeBoundsRect(
-             obj->UnicodeToUTF16OffsetInText(offset),
-@@ -1402,10 +1438,12 @@ void GetRangeExtents(AtkText* atk_text,
-       AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(atk_text));
-   if (obj) {
-     switch (coordinate_type) {
-+#if defined(ATK_230)
-       case ATK_XY_PARENT:
-         rect = GetUnclippedParentHypertextRangeBoundsRect(
-             obj->GetDelegate(), start_offset, end_offset);
-         break;
-+#endif
-       default:
-         rect = obj->GetDelegate()->GetHypertextRangeBoundsRect(
-             obj->UnicodeToUTF16OffsetInText(start_offset),
-@@ -1455,6 +1493,7 @@ AtkAttributeSet* GetDefaultAttributes(At
-   return ToAtkAttributeSet(obj->GetDefaultTextAttributes());
- }
- 
-+#if defined(ATK_232)
- gboolean ScrollSubstringTo(AtkText* atk_text,
-                            gint start_offset,
-                            gint end_offset,
-@@ -1485,6 +1524,7 @@ gboolean ScrollSubstringToPoint(AtkText*
-   return obj->ScrollSubstringToPoint(start_offset, end_offset, atk_coord_type,
-                                      x, y);
- }
-+#endif  // ATK_232
- 
- void Init(AtkTextIface* iface) {
-   iface->get_text = GetText;
-@@ -1507,12 +1547,16 @@ void Init(AtkTextIface* iface) {
-   iface->get_run_attributes = GetRunAttributes;
-   iface->get_default_attributes = GetDefaultAttributes;
- 
-+#if defined(ATK_210)
-   iface->get_string_at_offset = GetStringAtOffset;
-+#endif
- 
-+#if defined(ATK_232)
-   if (SupportsAtkTextScrollingInterface()) {
-     iface->scroll_substring_to = ScrollSubstringTo;
-     iface->scroll_substring_to_point = ScrollSubstringToPoint;
-   }
-+#endif
- }
- 
- const GInterfaceInfo Info = {reinterpret_cast<GInterfaceInitFunc>(Init),
-@@ -1915,11 +1959,15 @@ const GInterfaceInfo Info = {reinterpret
- 
- }  // namespace atk_table
- 
-+// The ATK table cell interface was added in ATK 2.12.
-+#if defined(ATK_212)
-+
- namespace atk_table_cell {
- 
- gint GetColumnSpan(AtkTableCell* cell) {
-+  DCHECK(g_atk_table_cell_get_type);
-   g_return_val_if_fail(
--      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), 0);
-+      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()), 0);
- 
-   if (const AXPlatformNodeBase* obj =
-           AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
-@@ -1931,8 +1979,10 @@ gint GetColumnSpan(AtkTableCell* cell) {
- }
- 
- GPtrArray* GetColumnHeaderCells(AtkTableCell* cell) {
-+  DCHECK(g_atk_table_cell_get_type);
-   g_return_val_if_fail(
--      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), nullptr);
-+      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
-+      nullptr);
- 
-   GPtrArray* array = g_ptr_array_new_with_free_func(g_object_unref);
- 
-@@ -1966,8 +2016,10 @@ GPtrArray* GetColumnHeaderCells(AtkTable
- }
- 
- gboolean GetCellPosition(AtkTableCell* cell, gint* row, gint* column) {
-+  DCHECK(g_atk_table_cell_get_type);
-   g_return_val_if_fail(
--      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), FALSE);
-+      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
-+      FALSE);
- 
-   if (auto* obj = AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
-     std::optional<int> row_index = obj->GetTableRow();
-@@ -1984,8 +2036,9 @@ gboolean GetCellPosition(AtkTableCell* c
- }
- 
- gint GetRowSpan(AtkTableCell* cell) {
-+  DCHECK(g_atk_table_cell_get_type);
-   g_return_val_if_fail(
--      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), 0);
-+      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()), 0);
- 
-   if (auto* obj = AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
-     // If the object is not a cell, we return 0.
-@@ -1996,8 +2049,10 @@ gint GetRowSpan(AtkTableCell* cell) {
- }
- 
- GPtrArray* GetRowHeaderCells(AtkTableCell* cell) {
-+  DCHECK(g_atk_table_cell_get_type);
-   g_return_val_if_fail(
--      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), nullptr);
-+      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
-+      nullptr);
- 
-   GPtrArray* array = g_ptr_array_new_with_free_func(g_object_unref);
- 
-@@ -2031,8 +2086,10 @@ GPtrArray* GetRowHeaderCells(AtkTableCel
- }
- 
- AtkObject* GetTable(AtkTableCell* cell) {
-+  DCHECK(g_atk_table_cell_get_type);
-   g_return_val_if_fail(
--      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), nullptr);
-+      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
-+      nullptr);
- 
-   if (auto* obj = AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
-     if (auto* table = obj->GetTable())
-@@ -2058,6 +2115,8 @@ const GInterfaceInfo Info = {reinterpret
- 
- }  // namespace atk_table_cell
- 
-+#endif  // ATK_212
-+
- namespace atk_object {
- 
- gpointer kAXPlatformNodeAuraLinuxParentClass = nullptr;
-@@ -2324,6 +2383,50 @@ void Detach(AXPlatformNodeAuraLinuxObjec
- 
- }  // namespace
- 
-+// static
-+NO_SANITIZE("cfi-icall")
-+GType AtkTableCellInterface::GetType() {
-+  return g_atk_table_cell_get_type();
-+}
-+
-+// static
-+NO_SANITIZE("cfi-icall")
-+GPtrArray* AtkTableCellInterface::GetColumnHeaderCells(AtkTableCell* cell) {
-+  return g_atk_table_cell_get_column_header_cells(cell);
-+}
-+
-+// static
-+NO_SANITIZE("cfi-icall")
-+GPtrArray* AtkTableCellInterface::GetRowHeaderCells(AtkTableCell* cell) {
-+  return g_atk_table_cell_get_row_header_cells(cell);
-+}
-+
-+// static
-+NO_SANITIZE("cfi-icall")
-+bool AtkTableCellInterface::GetRowColumnSpan(AtkTableCell* cell,
-+                                             gint* row,
-+                                             gint* column,
-+                                             gint* row_span,
-+                                             gint* col_span) {
-+  return g_atk_table_cell_get_row_column_span(cell, row, column, row_span,
-+                                              col_span);
-+}
-+
-+// static
-+bool AtkTableCellInterface::Exists() {
-+  g_atk_table_cell_get_type = reinterpret_cast<GetTypeFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_table_cell_get_type"));
-+  g_atk_table_cell_get_column_header_cells =
-+      reinterpret_cast<GetColumnHeaderCellsFunc>(
-+          dlsym(RTLD_DEFAULT, "atk_table_cell_get_column_header_cells"));
-+  g_atk_table_cell_get_row_header_cells =
-+      reinterpret_cast<GetRowHeaderCellsFunc>(
-+          dlsym(RTLD_DEFAULT, "atk_table_cell_get_row_header_cells"));
-+  g_atk_table_cell_get_row_column_span = reinterpret_cast<GetRowColumnSpanFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_table_cell_get_row_column_span"));
-+  return *g_atk_table_cell_get_type;
-+}
-+
- void AXPlatformNodeAuraLinux::EnsureGTypeInit() {
- #if !GLIB_CHECK_VERSION(2, 36, 0)
-   static bool first_time = true;
-@@ -2431,8 +2534,11 @@ GType AXPlatformNodeAuraLinux::GetAccess
-     g_type_add_interface_static(type, ATK_TYPE_TABLE, &atk_table::Info);
- 
-   if (interface_mask_.Implements(ImplementedAtkInterfaces::Value::kTableCell)) {
--    g_type_add_interface_static(type, atk_table_cell_get_type(),
--                                &atk_table_cell::Info);
-+    // Run-time check to ensure AtkTableCell is supported (requires ATK 2.12).
-+    if (AtkTableCellInterface::Exists()) {
-+      g_type_add_interface_static(type, AtkTableCellInterface::GetType(),
-+                                  &atk_table_cell::Info);
-+    }
-   }
- 
-   return type;
-@@ -2667,9 +2773,9 @@ AtkRole AXPlatformNodeAuraLinux::GetAtkR
-     case ax::mojom::Role::kComplementary:
-       return ATK_ROLE_LANDMARK;
-     case ax::mojom::Role::kContentDeletion:
--      return GetAtkRoleContentDeletion();
-+      return kAtkRoleContentDeletion;
-     case ax::mojom::Role::kContentInsertion:
--      return GetAtkRoleContentInsertion();
-+      return kAtkRoleContentInsertion;
-     case ax::mojom::Role::kContentInfo:
-     case ax::mojom::Role::kFooter:
-       return ATK_ROLE_LANDMARK;
-@@ -3105,12 +3211,14 @@ void AXPlatformNodeAuraLinux::GetAtkStat
-           static_cast<int32_t>(ax::mojom::AriaCurrentState::kFalse)) {
-     atk_state_set_add_state(atk_state_set, ATK_STATE_ACTIVE);
-   }
-+#if defined(ATK_216)
-   // Runtime checks in case we were compiled with a newer version of ATK.
-   if (IsPlatformCheckable() && PlatformSupportsState(ATK_STATE_CHECKABLE))
-     atk_state_set_add_state(atk_state_set, ATK_STATE_CHECKABLE);
-   if (HasIntAttribute(ax::mojom::IntAttribute::kHasPopup) &&
-       PlatformSupportsState(ATK_STATE_HAS_POPUP))
-     atk_state_set_add_state(atk_state_set, ATK_STATE_HAS_POPUP);
-+#endif
-   if (GetBoolAttribute(ax::mojom::BoolAttribute::kBusy))
-     atk_state_set_add_state(atk_state_set, ATK_STATE_BUSY);
-   if (GetBoolAttribute(ax::mojom::BoolAttribute::kModal))
-@@ -3149,9 +3257,11 @@ void AXPlatformNodeAuraLinux::GetAtkStat
-   if (GetData().GetRestriction() != ax::mojom::Restriction::kDisabled) {
-     if (GetDelegate()->IsReadOnlySupported() &&
-         GetDelegate()->IsReadOnlyOrDisabled()) {
-+#if defined(ATK_216)
-       // Runtime check in case we were compiled with a newer version of ATK.
-       if (PlatformSupportsState(ATK_STATE_READ_ONLY))
-         atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY);
-+#endif
-     } else {
-       atk_state_set_add_state(atk_state_set, ATK_STATE_ENABLED);
-       atk_state_set_add_state(atk_state_set, ATK_STATE_SENSITIVE);
-@@ -3185,12 +3295,16 @@ struct AtkIntListRelation {
- static AtkIntListRelation kIntListRelations[] = {
-     {ax::mojom::IntListAttribute::kControlsIds, ATK_RELATION_CONTROLLER_FOR,
-      ATK_RELATION_CONTROLLED_BY},
-+#if defined(ATK_226)
-     {ax::mojom::IntListAttribute::kDetailsIds, ATK_RELATION_DETAILS,
-      ATK_RELATION_DETAILS_FOR},
-+#endif
-     {ax::mojom::IntListAttribute::kDescribedbyIds, ATK_RELATION_DESCRIBED_BY,
-      ATK_RELATION_DESCRIPTION_FOR},
-+#if defined(ATK_226)
-     {ax::mojom::IntListAttribute::kErrormessageIds, ATK_RELATION_ERROR_MESSAGE,
-      ATK_RELATION_ERROR_FOR},
-+#endif
-     {ax::mojom::IntListAttribute::kFlowtoIds, ATK_RELATION_FLOWS_TO,
-      ATK_RELATION_FLOWS_FROM},
-     {ax::mojom::IntListAttribute::kLabelledbyIds, ATK_RELATION_LABELLED_BY,
-@@ -3981,6 +4095,7 @@ void AXPlatformNodeAuraLinux::OnReadonly
-   if (!obj)
-     return;
- 
-+#if defined(ATK_216)
-   // Runtime check in case we were compiled with a newer version of ATK.
-   if (!PlatformSupportsState(ATK_STATE_READ_ONLY))
-     return;
-@@ -3988,6 +4103,7 @@ void AXPlatformNodeAuraLinux::OnReadonly
-   atk_object_notify_state_change(
-       obj, ATK_STATE_READ_ONLY,
-       GetData().GetRestriction() == ax::mojom::Restriction::kReadOnly);
-+#endif
- }
- 
- void AXPlatformNodeAuraLinux::OnInvalidStatusChanged() {
-@@ -4314,11 +4430,13 @@ gfx::Rect AXPlatformNodeAuraLinux::GetEx
-       extents.Offset(window_origin);
-       break;
-     }
-+#if defined(ATK_230)
-     case ATK_XY_PARENT: {
-       gfx::Vector2d parent_origin = -GetParentOriginInScreenCoordinates();
-       extents.Offset(parent_origin);
-       break;
-     }
-+#endif
-   }
- 
-   return extents;
-@@ -4755,6 +4873,7 @@ bool AXPlatformNodeAuraLinux::IsInLiveRe
-   return HasStringAttribute(ax::mojom::StringAttribute::kContainerLiveStatus);
- }
- 
-+#if defined(ATK_230)
- void AXPlatformNodeAuraLinux::ScrollToPoint(AtkCoordType atk_coord_type,
-                                             int x,
-                                             int y) {
-@@ -4827,7 +4946,9 @@ void AXPlatformNodeAuraLinux::ScrollNode
-   rect -= rect.OffsetFromOrigin();
-   ScrollNodeRectIntoView(rect, atk_scroll_type);
- }
-+#endif  // defined(ATK_230)
- 
-+#if defined(ATK_232)
- std::optional<gfx::Rect>
- AXPlatformNodeAuraLinux::GetUnclippedHypertextRangeBoundsRect(int start_offset,
-                                                               int end_offset) {
-@@ -4886,6 +5007,7 @@ bool AXPlatformNodeAuraLinux::ScrollSubs
- 
-   return true;
- }
-+#endif  // defined(ATK_232)
- 
- void AXPlatformNodeAuraLinux::ComputeStylesIfNeeded() {
-   if (!offset_to_text_attributes_.empty())
-@@ -5066,8 +5188,10 @@ gfx::Point AXPlatformNodeAuraLinux::Conv
-   switch (atk_coord_type) {
-     case ATK_XY_WINDOW:
-       return point + GetParentFrameOriginInScreenCoordinates();
-+#if defined(ATK_230)
-     case ATK_XY_PARENT:
-       return point + GetParentOriginInScreenCoordinates();
-+#endif
-     case ATK_XY_SCREEN:
-     default:
-       return point;
-diff -up chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.h.el8-atk-compiler-error chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.h
---- chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.h.el8-atk-compiler-error	2025-01-28 23:03:27.000000000 +0100
-+++ chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux.h	2025-02-04 10:56:08.439126973 +0100
-@@ -52,6 +52,31 @@ struct FindInPageResultInfo {
-   }
- };
- 
-+// AtkTableCell was introduced in ATK 2.12. Ubuntu Trusty has ATK 2.10.
-+// Compile-time checks are in place for ATK versions that are older than 2.12.
-+// However, we also need runtime checks in case the version we are building
-+// against is newer than the runtime version. To prevent a runtime error, we
-+// check that we have a version of ATK that supports AtkTableCell. If we do,
-+// we dynamically load the symbol; if we don't, the interface is absent from
-+// the accessible object and its methods will not be exposed or callable.
-+// The definitions below ensure we have no missing symbols. Note that in
-+// environments where we have ATK > 2.12, the definitions of AtkTableCell and
-+// AtkTableCellIface below are overridden by the runtime version.
-+// TODO(accessibility) Remove AtkTableCellInterface when 2.12 is the minimum
-+// supported version.
-+struct COMPONENT_EXPORT(AX_PLATFORM) AtkTableCellInterface {
-+  typedef struct _AtkTableCell AtkTableCell;
-+  static GType GetType();
-+  static GPtrArray* GetColumnHeaderCells(AtkTableCell* cell);
-+  static GPtrArray* GetRowHeaderCells(AtkTableCell* cell);
-+  static bool GetRowColumnSpan(AtkTableCell* cell,
-+                               gint* row,
-+                               gint* column,
-+                               gint* row_span,
-+                               gint* col_span);
-+  static bool Exists();
-+};
-+
- // This class with an enum is used to generate a bitmask which tracks the ATK
- // interfaces that an AXPlatformNodeAuraLinux's ATKObject implements.
- class ImplementedAtkInterfaces {
-diff -up chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc.el8-atk-compiler-error chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc
---- chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc.el8-atk-compiler-error	2025-01-28 23:03:27.000000000 +0100
-+++ chromium-133.0.6943.35/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc	2025-02-04 12:06:15.819918562 +0100
-@@ -11,6 +11,7 @@
- 
- #include <atk/atk.h>
- 
-+#include <dlfcn.h>
- #include <array>
- #include <utility>
- #include <vector>
-@@ -887,6 +888,17 @@ typedef bool (*ScrollToPointFunc)(AtkCom
- typedef bool (*ScrollToFunc)(AtkComponent* component, AtkScrollType type);
- 
- TEST_F(AXPlatformNodeAuraLinuxTest, AtkComponentScrollToPoint) {
-+  // There's a chance we may be compiled with a newer version of ATK and then
-+  // run with an older one, so we need to do a runtime check for this method
-+  // that is available in ATK 2.30 instead of linking directly.
-+  ScrollToPointFunc scroll_to_point = reinterpret_cast<ScrollToPointFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_component_scroll_to_point"));
-+  if (!scroll_to_point) {
-+    LOG(WARNING) << "Skipping AtkComponentScrollToPoint"
-+                    " because ATK version < 2.30 detected.";
-+    return;
-+  }
-+
-   AXNodeData root;
-   root.id = 1;
-   root.role = ax::mojom::Role::kRootWebArea;
-@@ -914,8 +926,7 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
-   EXPECT_EQ(10, width);
-   EXPECT_EQ(10, height);
- 
--  atk_component_scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_SCREEN, 600,
--                                650);
-+  scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_SCREEN, 600, 650);
-   atk_component_get_extents(ATK_COMPONENT(child_obj), &x_left, &y_top, &width,
-                             &height, ATK_XY_SCREEN);
-   EXPECT_EQ(610, x_left);
-@@ -923,8 +934,7 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
-   EXPECT_EQ(10, width);
-   EXPECT_EQ(10, height);
- 
--  atk_component_scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_PARENT, 10,
--                                10);
-+  scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_PARENT, 10, 10);
-   atk_component_get_extents(ATK_COMPONENT(child_obj), &x_left, &y_top, &width,
-                             &height, ATK_XY_SCREEN);
-   // The test wrapper scrolls every element when scrolling, so this should be
-@@ -941,6 +951,17 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
- }
- 
- TEST_F(AXPlatformNodeAuraLinuxTest, AtkComponentScrollTo) {
-+  // There's a chance we may be compiled with a newer version of ATK and then
-+  // run with an older one, so we need to do a runtime check for this method
-+  // that is available in ATK 2.30 instead of linking directly.
-+  ScrollToFunc scroll_to = reinterpret_cast<ScrollToFunc>(
-+      dlsym(RTLD_DEFAULT, "atk_component_scroll_to"));
-+  if (!scroll_to) {
-+    LOG(WARNING) << "Skipping AtkComponentScrollTo"
-+                    " because ATK version < 2.30 detected.";
-+    return;
-+  }
-+
-   AXNodeData root;
-   root.id = 1;
-   root.role = ax::mojom::Role::kRootWebArea;
-@@ -968,7 +989,7 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
-   EXPECT_EQ(10, width);
-   EXPECT_EQ(10, height);
- 
--  atk_component_scroll_to(ATK_COMPONENT(child_obj), ATK_SCROLL_ANYWHERE);
-+  scroll_to(ATK_COMPONENT(child_obj), ATK_SCROLL_ANYWHERE);
-   atk_component_get_extents(ATK_COMPONENT(child_obj), &x_left, &y_top, &width,
-                             &height, ATK_XY_SCREEN);
-   EXPECT_EQ(0, x_left);
-diff -up chromium-133.0.6943.35/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc.el8-atk-compiler-error chromium-133.0.6943.35/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc
---- chromium-133.0.6943.35/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc.el8-atk-compiler-error	2025-01-28 23:03:27.000000000 +0100
-+++ chromium-133.0.6943.35/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc	2025-02-04 10:56:08.464127592 +0100
-@@ -474,18 +474,34 @@ void AXTreeFormatterAuraLinux::AddTableC
-   int row = 0, col = 0, row_span = 0, col_span = 0;
-   int n_row_headers = 0, n_column_headers = 0;
- 
--  AtkTableCell* cell = G_TYPE_CHECK_INSTANCE_CAST(
--      (atk_object), atk_table_cell_get_type(), AtkTableCell);
-+  // Properties obtained via AtkTableCell, if possible. If we do not have at
-+  // least ATK 2.12, use the same logic in our AtkTableCell implementation so
-+  // that tests can still be run.
-+  if (AtkTableCellInterface::Exists()) {
-+    AtkTableCell* cell = G_TYPE_CHECK_INSTANCE_CAST(
-+        (atk_object), AtkTableCellInterface::GetType(), AtkTableCell);
- 
--  atk_table_cell_get_row_column_span(cell, &row, &col, &row_span, &col_span);
-+    AtkTableCellInterface::GetRowColumnSpan(cell, &row, &col, &row_span,
-+                                            &col_span);
- 
--  GPtrArray* column_headers = atk_table_cell_get_column_header_cells(cell);
--  n_column_headers = column_headers->len;
--  g_ptr_array_unref(column_headers);
-+    GPtrArray* column_headers =
-+        AtkTableCellInterface::GetColumnHeaderCells(cell);
-+    n_column_headers = column_headers->len;
-+    g_ptr_array_unref(column_headers);
- 
--  GPtrArray* row_headers = atk_table_cell_get_row_header_cells(cell);
--  n_row_headers = row_headers->len;
--  g_ptr_array_unref(row_headers);
-+    GPtrArray* row_headers = AtkTableCellInterface::GetRowHeaderCells(cell);
-+    n_row_headers = row_headers->len;
-+    g_ptr_array_unref(row_headers);
-+  } else {
-+    row = node->GetTableRow().value_or(-1);
-+    col = node->GetTableColumn().value_or(-1);
-+    row_span = node->GetTableRowSpan().value_or(0);
-+    col_span = node->GetTableColumnSpan().value_or(0);
-+    if (role == ATK_ROLE_TABLE_CELL) {
-+      n_column_headers = node->GetDelegate()->GetColHeaderNodeIds(col).size();
-+      n_row_headers = node->GetDelegate()->GetRowHeaderNodeIds(row).size();
-+    }
-+  }
- 
-   std::vector<std::string> cell_info;
-   cell_info.push_back(base::StringPrintf("row=%i", row));

diff --git a/chromium-134-el8-atk-compiler-error.patch b/chromium-134-el8-atk-compiler-error.patch
new file mode 100644
index 0000000..c44d174
--- /dev/null
+++ b/chromium-134-el8-atk-compiler-error.patch
@@ -0,0 +1,1067 @@
+diff -up chromium-134.0.6998.15/content/browser/accessibility/accessibility_auralinux_browsertest.cc.than chromium-134.0.6998.15/content/browser/accessibility/accessibility_auralinux_browsertest.cc
+--- chromium-134.0.6998.15/content/browser/accessibility/accessibility_auralinux_browsertest.cc.than	2025-02-12 02:31:02.000000000 +0100
++++ chromium-134.0.6998.15/content/browser/accessibility/accessibility_auralinux_browsertest.cc	2025-02-17 17:13:30.971343965 +0100
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+ 
+ #include <atk/atk.h>
++#include <dlfcn.h>
+ 
+ #include <string>
+ #include <vector>
+@@ -550,6 +551,10 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   g_object_unref(div_element);
+ }
+ 
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 30, 0)
++#define ATK_230
++#endif
++
+ IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
+                        TestCharacterExtentsWithInvalidArguments) {
+   AtkText* atk_text = SetUpSampleParagraph();
+@@ -572,12 +577,14 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   EXPECT_EQ(expect, width);
+   EXPECT_EQ(expect, height);
+ 
++#ifdef ATK_230
+   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
+                                  &height, ATK_XY_PARENT);
+   EXPECT_EQ(expect, x);
+   EXPECT_EQ(expect, y);
+   EXPECT_EQ(expect, width);
+   EXPECT_EQ(expect, height);
++#endif  // ATK_230
+ 
+   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
+                                  &height, ATK_XY_WINDOW);
+@@ -596,12 +603,14 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   EXPECT_EQ(expect, width);
+   EXPECT_EQ(expect, height);
+ 
++#ifdef ATK_230
+   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
+                                  &height, ATK_XY_PARENT);
+   EXPECT_EQ(expect, x);
+   EXPECT_EQ(expect, y);
+   EXPECT_EQ(expect, width);
+   EXPECT_EQ(expect, height);
++#endif  // ATK_230
+ 
+   atk_text_get_character_extents(atk_text, invalid_offset, &x, &y, &width,
+                                  &height, ATK_XY_WINDOW);
+@@ -616,7 +625,9 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+ AtkCoordType kCoordinateTypes[] = {
+     ATK_XY_SCREEN,
+     ATK_XY_WINDOW,
++#ifdef ATK_230
+     ATK_XY_PARENT,
++#endif  // ATK_230
+ };
+ 
+ IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
+@@ -875,6 +886,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   TestCharacterExtentsInScrollableInput();
+ }
+ 
++#if defined(ATK_230)
+ typedef bool (*ScrollToPointFunc)(AtkComponent* component,
+                                   AtkCoordType coords,
+                                   gint x,
+@@ -884,6 +896,18 @@ typedef bool (*ScrollToFunc)(AtkComponen
+ // TODO(crbug.com/40866728): Enable this test.
+ IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
+                        DISABLED_TestScrollToPoint) {
++  // There's a chance we may be compiled with a newer version of ATK and then
++  // run with an older one, so we need to do a runtime check for this method
++  // that is available in ATK 2.30 instead of linking directly.
++  ScrollToPointFunc scroll_to_point = reinterpret_cast<ScrollToPointFunc>(
++      dlsym(RTLD_DEFAULT, "atk_component_scroll_to_point"));
++  if (!scroll_to_point) {
++    LOG(WARNING)
++        << "Skipping AccessibilityAuraLinuxBrowserTest::TestScrollToPoint"
++           " because ATK version < 2.30 detected.";
++    return;
++  }
++
+   LoadSampleParagraphInScrollableDocument();
+   AtkText* atk_text = GetSampleParagraph();
+   ASSERT_TRUE(ATK_IS_COMPONENT(atk_text));
+@@ -896,7 +920,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   AccessibilityNotificationWaiter location_changed_waiter(
+       shell()->web_contents(), ui::kAXModeComplete,
+       ax::mojom::Event::kLocationChanged);
+-  atk_component_scroll_to_point(atk_component, ATK_XY_PARENT, 0, 0);
++  scroll_to_point(atk_component, ATK_XY_PARENT, 0, 0);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+ 
+   atk_component_get_extents(atk_component, &x, &y, nullptr, nullptr,
+@@ -905,20 +929,20 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   EXPECT_GT(prev_y, y);
+ 
+   constexpr int kScrollToY = 0;
+-  atk_component_scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY);
++  scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+   atk_component_get_extents(atk_component, &x, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+   EXPECT_EQ(kScrollToY, y);
+ 
+   constexpr int kScrollToY_2 = 243;
+-  atk_component_scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY_2);
++  scroll_to_point(atk_component, ATK_XY_SCREEN, 0, kScrollToY_2);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+   atk_component_get_extents(atk_component, nullptr, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+   EXPECT_EQ(kScrollToY_2, y);
+ 
+-  atk_component_scroll_to_point(atk_component, ATK_XY_SCREEN, 0, 129);
++  scroll_to_point(atk_component, ATK_XY_SCREEN, 0, 129);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+   atk_component_get_extents(atk_component, nullptr, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+@@ -935,6 +959,17 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+ // TODO(crbug.com/40866728): Enable this test.
+ IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
+                        DISABLED_TestScrollTo) {
++  // There's a chance we may be compiled with a newer version of ATK and then
++  // run with an older one, so we need to do a runtime check for this method
++  // that is available in ATK 2.30 instead of linking directly.
++  ScrollToFunc scroll_to = reinterpret_cast<ScrollToFunc>(
++      dlsym(RTLD_DEFAULT, "atk_component_scroll_to"));
++  if (!scroll_to) {
++    LOG(WARNING) << "Skipping AccessibilityAuraLinuxBrowserTest::TestScrollTo"
++                    " because ATK version < 2.30 detected.";
++    return;
++  }
++
+   LoadInitialAccessibilityTreeFromHtml(
+       R"HTML(<!DOCTYPE html>
+       <html>
+@@ -976,8 +1011,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   AccessibilityNotificationWaiter waiter(
+       shell()->web_contents(), ui::kAXModeComplete,
+       ax::mojom::Event::kScrollPositionChanged);
+-  ASSERT_TRUE(
+-      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_EDGE));
++  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   int x, y;
+   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
+@@ -985,40 +1019,35 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   EXPECT_EQ(y, doc_y);
+   EXPECT_NE(x, doc_x);
+ 
+-  ASSERT_TRUE(
+-      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_LEFT));
++  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_TOP_LEFT));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+   EXPECT_EQ(y, doc_y);
+   EXPECT_EQ(x, doc_x);
+ 
+-  ASSERT_TRUE(
+-      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_BOTTOM_EDGE));
++  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_BOTTOM_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+   EXPECT_NE(y, doc_y);
+   EXPECT_EQ(x, doc_x);
+ 
+-  ASSERT_TRUE(
+-      atk_component_scroll_to(ATK_COMPONENT(target), ATK_SCROLL_RIGHT_EDGE));
++  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target), ATK_SCROLL_RIGHT_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_component_get_extents(ATK_COMPONENT(target), &x, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+   EXPECT_NE(y, doc_y);
+   EXPECT_NE(x, doc_x);
+ 
+-  ASSERT_TRUE(
+-      atk_component_scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_LEFT_EDGE));
++  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_LEFT_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_component_get_extents(ATK_COMPONENT(target2), &x, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+   EXPECT_NE(y, doc_y);
+   EXPECT_EQ(x, doc_x);
+ 
+-  ASSERT_TRUE(
+-      atk_component_scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_TOP_LEFT));
++  ASSERT_TRUE(scroll_to(ATK_COMPONENT(target2), ATK_SCROLL_TOP_LEFT));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_component_get_extents(ATK_COMPONENT(target2), &x, &y, nullptr, nullptr,
+                             ATK_XY_SCREEN);
+@@ -1050,10 +1079,39 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   g_object_unref(target2);
+   g_object_unref(target3);
+ }
++#endif  //  defined(ATK_230)
++
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 32, 0)
++typedef gboolean (*ScrollSubstringToFunc)(AtkText* text,
++                                          gint start_offset,
++                                          gint end_offset,
++                                          AtkScrollType type);
++ScrollSubstringToFunc g_scroll_substring_to = nullptr;
++
++NO_SANITIZE("cfi-icall")
++gboolean ScrollSubstringTo(AtkText* text,
++                           gint start_offset,
++                           gint end_offset,
++                           AtkScrollType type) {
++  EXPECT_NE(g_scroll_substring_to, nullptr);
++  return g_scroll_substring_to(text, start_offset, end_offset, type);
++}
+ 
+ // TODO(crbug.com/40866728): Enable this test.
+ IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
+                        DISABLED_TestScrollSubstringTo) {
++  // There's a chance we may be compiled with a newer version of ATK and then
++  // run with an older one, so we need to do a runtime check for this method
++  // that is available in ATK 2.32 instead of linking directly.
++  g_scroll_substring_to = reinterpret_cast<ScrollSubstringToFunc>(
++      dlsym(RTLD_DEFAULT, "atk_text_scroll_substring_to"));
++  if (!g_scroll_substring_to) {
++    LOG(WARNING) << "Skipping "
++                    "AccessibilityAuraLinuxBrowserTest::TestSubstringScrollTo"
++                    " because ATK version < 2.32 detected.";
++    return;
++  }
++
+   LoadInitialAccessibilityTreeFromHtml(
+       R"HTML(<!DOCTYPE html>
+       <html>
+@@ -1087,8 +1145,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   AccessibilityNotificationWaiter waiter(
+       shell()->web_contents(), ui::kAXModeComplete,
+       ax::mojom::Event::kScrollPositionChanged);
+-  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
+-                                           ATK_SCROLL_TOP_EDGE));
++  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_TOP_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   int x, y;
+   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
+@@ -1096,40 +1153,37 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   EXPECT_EQ(y, doc_y);
+   EXPECT_NE(x, doc_x);
+ 
+-  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
+-                                           ATK_SCROLL_TOP_LEFT));
++  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_TOP_LEFT));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+   EXPECT_EQ(y, doc_y);
+   EXPECT_EQ(x, doc_x);
+ 
+-  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
+-                                           ATK_SCROLL_BOTTOM_EDGE));
++  ASSERT_TRUE(
++      ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_BOTTOM_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+   EXPECT_NE(y, doc_y);
+   EXPECT_EQ(x, doc_x);
+ 
+-  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
+-                                           ATK_SCROLL_RIGHT_EDGE));
++  ASSERT_TRUE(
++      ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_RIGHT_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+   EXPECT_NE(y, doc_y);
+   EXPECT_NE(x, doc_x);
+ 
+-  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
+-                                           ATK_SCROLL_LEFT_EDGE));
++  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_LEFT_EDGE));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+   EXPECT_NE(y, doc_y);
+   EXPECT_EQ(x, doc_x);
+ 
+-  ASSERT_TRUE(atk_text_scroll_substring_to(ATK_TEXT(target1), 1, 2,
+-                                           ATK_SCROLL_TOP_LEFT));
++  ASSERT_TRUE(ScrollSubstringTo(ATK_TEXT(target1), 1, 2, ATK_SCROLL_TOP_LEFT));
+   ASSERT_TRUE(waiter.WaitForNotification());
+   atk_text_get_character_extents(ATK_TEXT(target1), 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+@@ -1139,9 +1193,42 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   g_object_unref(target1);
+ }
+ 
++typedef gboolean (*ScrollSubstringToPointFunc)(AtkText* text,
++                                               gint start_offset,
++                                               gint end_offset,
++                                               AtkCoordType coord_type,
++                                               gint x,
++                                               gint y);
++ScrollSubstringToPointFunc g_scroll_substring_to_point = nullptr;
++
++NO_SANITIZE("cfi-icall")
++gboolean ScrollSubstringToPoint(AtkText* text,
++                                gint start_offset,
++                                gint end_offset,
++                                AtkCoordType coord_type,
++                                gint x,
++                                gint y) {
++  EXPECT_NE(g_scroll_substring_to_point, nullptr);
++  return g_scroll_substring_to_point(text, start_offset, end_offset, coord_type,
++                                     x, y);
++}
++
+ // TODO(crbug.com/40866728): Enable this test.
+ IN_PROC_BROWSER_TEST_F(AccessibilityAuraLinuxBrowserTest,
+                        DISABLED_TestScrollSubstringToPoint) {
++  // There's a chance we may be compiled with a newer version of ATK and then
++  // run with an older one, so we need to do a runtime check for this method
++  // that is available in ATK 2.30 instead of linking directly.
++  g_scroll_substring_to_point = reinterpret_cast<ScrollSubstringToPointFunc>(
++      dlsym(RTLD_DEFAULT, "atk_text_scroll_substring_to_point"));
++  if (!g_scroll_substring_to_point) {
++    LOG(WARNING)
++        << "Skipping "
++           "AccessibilityAuraLinuxBrowserTest::TestScrollSubstringToPoint"
++           " because ATK version < 2.30 detected.";
++    return;
++  }
++
+   LoadSampleParagraphInScrollableDocument();
+   AtkText* atk_text = GetSampleParagraph();
+   ASSERT_TRUE(ATK_IS_COMPONENT(atk_text));
+@@ -1154,7 +1241,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   AccessibilityNotificationWaiter location_changed_waiter(
+       shell()->web_contents(), ui::kAXModeComplete,
+       ax::mojom::Event::kLocationChanged);
+-  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_PARENT, 0, 0);
++  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_PARENT, 0, 0);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+ 
+   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
+@@ -1163,22 +1250,20 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+   EXPECT_GT(prev_y, y);
+ 
+   constexpr int kScrollToY = 0;
+-  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_SCREEN, 0,
+-                                     kScrollToY);
++  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_SCREEN, 0, kScrollToY);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+   EXPECT_EQ(kScrollToY, y);
+ 
+   constexpr int kScrollToY_2 = 243;
+-  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_SCREEN, 0,
+-                                     kScrollToY_2);
++  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_SCREEN, 0, kScrollToY_2);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+   EXPECT_EQ(kScrollToY_2, y);
+ 
+-  atk_text_scroll_substring_to_point(atk_text, 1, 2, ATK_XY_SCREEN, 0, 129);
++  ScrollSubstringToPoint(atk_text, 1, 2, ATK_XY_SCREEN, 0, 129);
+   ASSERT_TRUE(location_changed_waiter.WaitForNotification());
+   atk_text_get_character_extents(atk_text, 1, &x, &y, nullptr, nullptr,
+                                  ATK_XY_SCREEN);
+@@ -1194,6 +1279,7 @@ IN_PROC_BROWSER_TEST_F(AccessibilityAura
+ 
+   g_object_unref(atk_text);
+ }
++#endif  //  defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 32, 0)
+ 
+ #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
+ // Flaky on crbug.com/1026149
+diff -up chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.cc.than chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.cc
+--- chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.cc.than	2025-02-12 02:31:02.000000000 +0100
++++ chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.cc	2025-02-17 17:13:30.972343990 +0100
+@@ -48,14 +48,33 @@
+ #include "ui/accessibility/platform/child_iterator.h"
+ #include "ui/gfx/geometry/rect_conversions.h"
+ 
+-// Function availability can be tested by checking whether its address is not
+-// nullptr.
+-#define WEAK_ATK_FN(x) extern "C" __attribute__((weak)) decltype(x) x
+-
+-// TODO(https://crbug.com/40549424): This may be removed when support for
+-// Ubuntu 18.04 is dropped.
+-WEAK_ATK_FN(atk_component_scroll_to_point);
+-WEAK_ATK_FN(atk_text_scroll_substring_to_point);
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 10, 0)
++#define ATK_210
++#endif
++
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 12, 0)
++#define ATK_212
++#endif
++
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 16, 0)
++#define ATK_216
++#endif
++
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 26, 0)
++#define ATK_226
++#endif
++
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 30, 0)
++#define ATK_230
++#endif
++
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 32, 0)
++#define ATK_232
++#endif
++
++#if defined(ATK_CHECK_VERSION) && ATK_CHECK_VERSION(2, 34, 0)
++#define ATK_234
++#endif
+ 
+ namespace ui {
+ 
+@@ -147,11 +166,29 @@ AtkObject* g_active_top_level_frame = nu
+ 
+ AtkObject* g_active_views_dialog = nullptr;
+ 
++#if defined(ATK_216)
+ constexpr AtkRole kStaticRole = ATK_ROLE_STATIC;
+ constexpr AtkRole kSubscriptRole = ATK_ROLE_SUBSCRIPT;
+ constexpr AtkRole kSuperscriptRole = ATK_ROLE_SUPERSCRIPT;
++#else
++constexpr AtkRole kStaticRole = ATK_ROLE_TEXT;
++constexpr AtkRole kSubscriptRole = ATK_ROLE_TEXT;
++constexpr AtkRole kSuperscriptRole = ATK_ROLE_TEXT;
++#endif
+ 
++#if defined(ATK_226)
+ constexpr AtkRole kAtkFootnoteRole = ATK_ROLE_FOOTNOTE;
++#else
++constexpr AtkRole kAtkFootnoteRole = ATK_ROLE_LIST_ITEM;
++#endif
++
++#if defined(ATK_234)
++constexpr AtkRole kAtkRoleContentDeletion = ATK_ROLE_CONTENT_DELETION;
++constexpr AtkRole kAtkRoleContentInsertion = ATK_ROLE_CONTENT_INSERTION;
++#else
++constexpr AtkRole kAtkRoleContentDeletion = ATK_ROLE_SECTION;
++constexpr AtkRole kAtkRoleContentInsertion = ATK_ROLE_SECTION;
++#endif
+ 
+ using GetTypeFunc = GType (*)();
+ using GetColumnHeaderCellsFunc = GPtrArray* (*)(AtkTableCell* cell);
+@@ -162,6 +199,11 @@ using GetRowColumnSpanFunc = bool (*)(At
+                                       gint* row_span,
+                                       gint* col_span);
+ 
++static GetTypeFunc g_atk_table_cell_get_type;
++static GetColumnHeaderCellsFunc g_atk_table_cell_get_column_header_cells;
++static GetRowHeaderCellsFunc g_atk_table_cell_get_row_header_cells;
++static GetRowColumnSpanFunc g_atk_table_cell_get_row_column_span;
++
+ // The ATK API often requires pointers to be used as out arguments, while
+ // allowing for those pointers to be null if the caller is not interested in
+ // the value. This function is a simpler helper to avoid continually checking
+@@ -171,35 +213,17 @@ void SetIntPointerValueIfNotNull(int* po
+     *pointer = value;
+ }
+ 
+-// TODO(https://crbug.com/40549424): This may be removed when support for
+-// Ubuntu 18.04 is dropped.
++#if defined(ATK_230)
+ bool SupportsAtkComponentScrollingInterface() {
+-  return atk_component_scroll_to_point;
++  return dlsym(RTLD_DEFAULT, "atk_component_scroll_to_point");
+ }
++#endif
+ 
+-// TODO(https://crbug.com/40549424): This may be removed when support for
+-// Ubuntu 18.04 is dropped.
++#if defined(ATK_232)
+ bool SupportsAtkTextScrollingInterface() {
+-  return atk_text_scroll_substring_to_point;
+-}
+-
+-// TODO(https://crbug.com/40549424): This may be removed when support for
+-// Ubuntu 18.04 is dropped.
+-AtkRole GetAtkRoleContentDeletion() {
+-  base::Version atk_version(atk_get_version());
+-  return atk_version.CompareTo(base::Version("2.34.0")) >= 0
+-             ? ATK_ROLE_CONTENT_DELETION
+-             : ATK_ROLE_SECTION;
+-}
+-
+-// TODO(https://crbug.com/40549424): This may be removed when support for
+-// Ubuntu 18.04 is dropped.
+-AtkRole GetAtkRoleContentInsertion() {
+-  base::Version atk_version(atk_get_version());
+-  return atk_version.CompareTo(base::Version("2.34.0")) >= 0
+-             ? ATK_ROLE_CONTENT_INSERTION
+-             : ATK_ROLE_SECTION;
++  return dlsym(RTLD_DEFAULT, "atk_text_scroll_substring_to_point");
+ }
++#endif
+ 
+ AtkObject* FindAtkObjectParentFrame(AtkObject* atk_object) {
+   AXPlatformNodeAuraLinux* node =
+@@ -298,10 +322,12 @@ AXCoordinateSystem AtkCoordTypeToAXCoord
+       return AXCoordinateSystem::kScreenDIPs;
+     case ATK_XY_WINDOW:
+       return AXCoordinateSystem::kRootFrame;
++#if defined(ATK_230)
+     case ATK_XY_PARENT:
+       // AXCoordinateSystem does not support parent coordinates.
+       NOTIMPLEMENTED();
+       return AXCoordinateSystem::kFrame;
++#endif
+     default:
+       return AXCoordinateSystem::kScreenDIPs;
+   }
+@@ -514,6 +540,7 @@ gboolean GrabFocus(AtkComponent* atk_com
+   return obj->GrabFocus();
+ }
+ 
++#if defined(ATK_230)
+ gboolean ScrollTo(AtkComponent* atk_component, AtkScrollType scroll_type) {
+   g_return_val_if_fail(ATK_IS_COMPONENT(atk_component), FALSE);
+ 
+@@ -540,6 +567,7 @@ gboolean ScrollToPoint(AtkComponent* atk
+   obj->ScrollToPoint(atk_coord_type, x, y);
+   return TRUE;
+ }
++#endif
+ 
+ void Init(AtkComponentIface* iface) {
+   iface->get_extents = GetExtents;
+@@ -547,10 +575,12 @@ void Init(AtkComponentIface* iface) {
+   iface->get_size = GetSize;
+   iface->ref_accessible_at_point = RefAccesibleAtPoint;
+   iface->grab_focus = GrabFocus;
++#if defined(ATK_230)
+   if (SupportsAtkComponentScrollingInterface()) {
+     iface->scroll_to = ScrollTo;
+     iface->scroll_to_point = ScrollToPoint;
+   }
++#endif
+ }
+ 
+ const GInterfaceInfo Info = {reinterpret_cast<GInterfaceInitFunc>(Init),
+@@ -1311,6 +1341,7 @@ gboolean AddSelection(AtkText* atk_text,
+   return SetSelection(atk_text, 0, start_offset, end_offset);
+ }
+ 
++#if defined(ATK_210)
+ char* GetStringAtOffset(AtkText* atk_text,
+                         int offset,
+                         AtkTextGranularity atk_granularity,
+@@ -1325,7 +1356,9 @@ char* GetStringAtOffset(AtkText* atk_tex
+   return GetTextWithBoundaryType(atk_text, offset, boundary, start_offset,
+                                  end_offset);
+ }
++#endif
+ 
++#if defined(ATK_230)
+ gfx::Rect GetUnclippedParentHypertextRangeBoundsRect(
+     AXPlatformNodeDelegate* ax_platform_node_delegate,
+     const int start_offset,
+@@ -1349,6 +1382,7 @@ gfx::Rect GetUnclippedParentHypertextRan
+                              AXClippingBehavior::kClipped)
+              .OffsetFromOrigin();
+ }
++#endif
+ 
+ void GetCharacterExtents(AtkText* atk_text,
+                          int offset,
+@@ -1364,10 +1398,12 @@ void GetCharacterExtents(AtkText* atk_te
+       AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(atk_text));
+   if (obj) {
+     switch (coordinate_type) {
++#if defined(ATK_230)
+       case ATK_XY_PARENT:
+         rect = GetUnclippedParentHypertextRangeBoundsRect(obj->GetDelegate(),
+                                                           offset, offset + 1);
+         break;
++#endif
+       default:
+         rect = obj->GetDelegate()->GetHypertextRangeBoundsRect(
+             obj->UnicodeToUTF16OffsetInText(offset),
+@@ -1403,10 +1439,12 @@ void GetRangeExtents(AtkText* atk_text,
+       AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(atk_text));
+   if (obj) {
+     switch (coordinate_type) {
++#if defined(ATK_230)
+       case ATK_XY_PARENT:
+         rect = GetUnclippedParentHypertextRangeBoundsRect(
+             obj->GetDelegate(), start_offset, end_offset);
+         break;
++#endif
+       default:
+         rect = obj->GetDelegate()->GetHypertextRangeBoundsRect(
+             obj->UnicodeToUTF16OffsetInText(start_offset),
+@@ -1456,6 +1494,7 @@ AtkAttributeSet* GetDefaultAttributes(At
+   return ToAtkAttributeSet(obj->GetDefaultTextAttributes());
+ }
+ 
++#if defined(ATK_232)
+ gboolean ScrollSubstringTo(AtkText* atk_text,
+                            gint start_offset,
+                            gint end_offset,
+@@ -1486,6 +1525,7 @@ gboolean ScrollSubstringToPoint(AtkText*
+   return obj->ScrollSubstringToPoint(start_offset, end_offset, atk_coord_type,
+                                      x, y);
+ }
++#endif  // ATK_232
+ 
+ void Init(AtkTextIface* iface) {
+   iface->get_text = GetText;
+@@ -1508,12 +1548,16 @@ void Init(AtkTextIface* iface) {
+   iface->get_run_attributes = GetRunAttributes;
+   iface->get_default_attributes = GetDefaultAttributes;
+ 
++#if defined(ATK_210)
+   iface->get_string_at_offset = GetStringAtOffset;
++#endif
+ 
++#if defined(ATK_232)
+   if (SupportsAtkTextScrollingInterface()) {
+     iface->scroll_substring_to = ScrollSubstringTo;
+     iface->scroll_substring_to_point = ScrollSubstringToPoint;
+   }
++#endif
+ }
+ 
+ const GInterfaceInfo Info = {reinterpret_cast<GInterfaceInitFunc>(Init),
+@@ -1916,11 +1960,15 @@ const GInterfaceInfo Info = {reinterpret
+ 
+ }  // namespace atk_table
+ 
++// The ATK table cell interface was added in ATK 2.12.
++#if defined(ATK_212)
++
+ namespace atk_table_cell {
+ 
+ gint GetColumnSpan(AtkTableCell* cell) {
++  DCHECK(g_atk_table_cell_get_type);
+   g_return_val_if_fail(
+-      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), 0);
++      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()), 0);
+ 
+   if (const AXPlatformNodeBase* obj =
+           AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
+@@ -1932,8 +1980,10 @@ gint GetColumnSpan(AtkTableCell* cell) {
+ }
+ 
+ GPtrArray* GetColumnHeaderCells(AtkTableCell* cell) {
++  DCHECK(g_atk_table_cell_get_type);
+   g_return_val_if_fail(
+-      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), nullptr);
++      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
++      nullptr);
+ 
+   GPtrArray* array = g_ptr_array_new_with_free_func(g_object_unref);
+ 
+@@ -1967,8 +2017,10 @@ GPtrArray* GetColumnHeaderCells(AtkTable
+ }
+ 
+ gboolean GetCellPosition(AtkTableCell* cell, gint* row, gint* column) {
++  DCHECK(g_atk_table_cell_get_type);
+   g_return_val_if_fail(
+-      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), FALSE);
++      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
++      FALSE);
+ 
+   if (auto* obj = AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
+     std::optional<int> row_index = obj->GetTableRow();
+@@ -1985,8 +2037,9 @@ gboolean GetCellPosition(AtkTableCell* c
+ }
+ 
+ gint GetRowSpan(AtkTableCell* cell) {
++  DCHECK(g_atk_table_cell_get_type);
+   g_return_val_if_fail(
+-      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), 0);
++      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()), 0);
+ 
+   if (auto* obj = AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
+     // If the object is not a cell, we return 0.
+@@ -1997,8 +2050,10 @@ gint GetRowSpan(AtkTableCell* cell) {
+ }
+ 
+ GPtrArray* GetRowHeaderCells(AtkTableCell* cell) {
++  DCHECK(g_atk_table_cell_get_type);
+   g_return_val_if_fail(
+-      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), nullptr);
++      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
++      nullptr);
+ 
+   GPtrArray* array = g_ptr_array_new_with_free_func(g_object_unref);
+ 
+@@ -2032,8 +2087,10 @@ GPtrArray* GetRowHeaderCells(AtkTableCel
+ }
+ 
+ AtkObject* GetTable(AtkTableCell* cell) {
++  DCHECK(g_atk_table_cell_get_type);
+   g_return_val_if_fail(
+-      G_TYPE_CHECK_INSTANCE_TYPE((cell), atk_table_cell_get_type()), nullptr);
++      G_TYPE_CHECK_INSTANCE_TYPE((cell), AtkTableCellInterface::GetType()),
++      nullptr);
+ 
+   if (auto* obj = AXPlatformNodeAuraLinux::FromAtkObject(ATK_OBJECT(cell))) {
+     if (auto* table = obj->GetTable())
+@@ -2059,6 +2116,8 @@ const GInterfaceInfo Info = {reinterpret
+ 
+ }  // namespace atk_table_cell
+ 
++#endif  // ATK_212
++
+ namespace atk_object {
+ 
+ gpointer kAXPlatformNodeAuraLinuxParentClass = nullptr;
+@@ -2325,6 +2384,50 @@ void Detach(AXPlatformNodeAuraLinuxObjec
+ 
+ }  // namespace
+ 
++// static
++NO_SANITIZE("cfi-icall")
++GType AtkTableCellInterface::GetType() {
++  return g_atk_table_cell_get_type();
++}
++
++// static
++NO_SANITIZE("cfi-icall")
++GPtrArray* AtkTableCellInterface::GetColumnHeaderCells(AtkTableCell* cell) {
++  return g_atk_table_cell_get_column_header_cells(cell);
++}
++
++// static
++NO_SANITIZE("cfi-icall")
++GPtrArray* AtkTableCellInterface::GetRowHeaderCells(AtkTableCell* cell) {
++  return g_atk_table_cell_get_row_header_cells(cell);
++}
++
++// static
++NO_SANITIZE("cfi-icall")
++bool AtkTableCellInterface::GetRowColumnSpan(AtkTableCell* cell,
++                                             gint* row,
++                                             gint* column,
++                                             gint* row_span,
++                                             gint* col_span) {
++  return g_atk_table_cell_get_row_column_span(cell, row, column, row_span,
++                                              col_span);
++}
++
++// static
++bool AtkTableCellInterface::Exists() {
++  g_atk_table_cell_get_type = reinterpret_cast<GetTypeFunc>(
++      dlsym(RTLD_DEFAULT, "atk_table_cell_get_type"));
++  g_atk_table_cell_get_column_header_cells =
++      reinterpret_cast<GetColumnHeaderCellsFunc>(
++          dlsym(RTLD_DEFAULT, "atk_table_cell_get_column_header_cells"));
++  g_atk_table_cell_get_row_header_cells =
++      reinterpret_cast<GetRowHeaderCellsFunc>(
++          dlsym(RTLD_DEFAULT, "atk_table_cell_get_row_header_cells"));
++  g_atk_table_cell_get_row_column_span = reinterpret_cast<GetRowColumnSpanFunc>(
++      dlsym(RTLD_DEFAULT, "atk_table_cell_get_row_column_span"));
++  return *g_atk_table_cell_get_type;
++}
++
+ void AXPlatformNodeAuraLinux::EnsureGTypeInit() {
+ #if !GLIB_CHECK_VERSION(2, 36, 0)
+   static bool first_time = true;
+@@ -2432,8 +2535,11 @@ GType AXPlatformNodeAuraLinux::GetAccess
+     g_type_add_interface_static(type, ATK_TYPE_TABLE, &atk_table::Info);
+ 
+   if (interface_mask_.Implements(ImplementedAtkInterfaces::Value::kTableCell)) {
+-    g_type_add_interface_static(type, atk_table_cell_get_type(),
+-                                &atk_table_cell::Info);
++    // Run-time check to ensure AtkTableCell is supported (requires ATK 2.12).
++    if (AtkTableCellInterface::Exists()) {
++      g_type_add_interface_static(type, AtkTableCellInterface::GetType(),
++                                  &atk_table_cell::Info);
++    }
+   }
+ 
+   return type;
+@@ -2668,9 +2774,9 @@ AtkRole AXPlatformNodeAuraLinux::GetAtkR
+     case ax::mojom::Role::kComplementary:
+       return ATK_ROLE_LANDMARK;
+     case ax::mojom::Role::kContentDeletion:
+-      return GetAtkRoleContentDeletion();
++      return kAtkRoleContentDeletion;
+     case ax::mojom::Role::kContentInsertion:
+-      return GetAtkRoleContentInsertion();
++      return kAtkRoleContentInsertion;
+     case ax::mojom::Role::kContentInfo:
+     case ax::mojom::Role::kFooter:
+       return ATK_ROLE_LANDMARK;
+@@ -3106,12 +3212,14 @@ void AXPlatformNodeAuraLinux::GetAtkStat
+           static_cast<int32_t>(ax::mojom::AriaCurrentState::kFalse)) {
+     atk_state_set_add_state(atk_state_set, ATK_STATE_ACTIVE);
+   }
++#if defined(ATK_216)
+   // Runtime checks in case we were compiled with a newer version of ATK.
+   if (IsPlatformCheckable() && PlatformSupportsState(ATK_STATE_CHECKABLE))
+     atk_state_set_add_state(atk_state_set, ATK_STATE_CHECKABLE);
+   if (HasIntAttribute(ax::mojom::IntAttribute::kHasPopup) &&
+       PlatformSupportsState(ATK_STATE_HAS_POPUP))
+     atk_state_set_add_state(atk_state_set, ATK_STATE_HAS_POPUP);
++#endif
+   if (GetBoolAttribute(ax::mojom::BoolAttribute::kBusy))
+     atk_state_set_add_state(atk_state_set, ATK_STATE_BUSY);
+   if (GetBoolAttribute(ax::mojom::BoolAttribute::kModal))
+@@ -3150,9 +3258,11 @@ void AXPlatformNodeAuraLinux::GetAtkStat
+   if (GetData().GetRestriction() != ax::mojom::Restriction::kDisabled) {
+     if (GetDelegate()->IsReadOnlySupported() &&
+         GetDelegate()->IsReadOnlyOrDisabled()) {
++#if defined(ATK_216)
+       // Runtime check in case we were compiled with a newer version of ATK.
+       if (PlatformSupportsState(ATK_STATE_READ_ONLY))
+         atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY);
++#endif
+     } else {
+       atk_state_set_add_state(atk_state_set, ATK_STATE_ENABLED);
+       atk_state_set_add_state(atk_state_set, ATK_STATE_SENSITIVE);
+@@ -3186,12 +3296,16 @@ struct AtkIntListRelation {
+ static AtkIntListRelation kIntListRelations[] = {
+     {ax::mojom::IntListAttribute::kControlsIds, ATK_RELATION_CONTROLLER_FOR,
+      ATK_RELATION_CONTROLLED_BY},
++#if defined(ATK_226)
+     {ax::mojom::IntListAttribute::kDetailsIds, ATK_RELATION_DETAILS,
+      ATK_RELATION_DETAILS_FOR},
++#endif
+     {ax::mojom::IntListAttribute::kDescribedbyIds, ATK_RELATION_DESCRIBED_BY,
+      ATK_RELATION_DESCRIPTION_FOR},
++#if defined(ATK_226)
+     {ax::mojom::IntListAttribute::kErrormessageIds, ATK_RELATION_ERROR_MESSAGE,
+      ATK_RELATION_ERROR_FOR},
++#endif
+     {ax::mojom::IntListAttribute::kFlowtoIds, ATK_RELATION_FLOWS_TO,
+      ATK_RELATION_FLOWS_FROM},
+     {ax::mojom::IntListAttribute::kLabelledbyIds, ATK_RELATION_LABELLED_BY,
+@@ -3982,6 +4096,7 @@ void AXPlatformNodeAuraLinux::OnReadonly
+   if (!obj)
+     return;
+ 
++#if defined(ATK_216)
+   // Runtime check in case we were compiled with a newer version of ATK.
+   if (!PlatformSupportsState(ATK_STATE_READ_ONLY))
+     return;
+@@ -3989,6 +4104,7 @@ void AXPlatformNodeAuraLinux::OnReadonly
+   atk_object_notify_state_change(
+       obj, ATK_STATE_READ_ONLY,
+       GetData().GetRestriction() == ax::mojom::Restriction::kReadOnly);
++#endif
+ }
+ 
+ void AXPlatformNodeAuraLinux::OnInvalidStatusChanged() {
+@@ -4315,11 +4431,13 @@ gfx::Rect AXPlatformNodeAuraLinux::GetEx
+       extents.Offset(window_origin);
+       break;
+     }
++#if defined(ATK_230)
+     case ATK_XY_PARENT: {
+       gfx::Vector2d parent_origin = -GetParentOriginInScreenCoordinates();
+       extents.Offset(parent_origin);
+       break;
+     }
++#endif
+   }
+ 
+   return extents;
+@@ -4761,6 +4879,7 @@ bool AXPlatformNodeAuraLinux::IsInLiveRe
+   return HasStringAttribute(ax::mojom::StringAttribute::kContainerLiveStatus);
+ }
+ 
++#if defined(ATK_230)
+ void AXPlatformNodeAuraLinux::ScrollToPoint(AtkCoordType atk_coord_type,
+                                             int x,
+                                             int y) {
+@@ -4833,7 +4952,9 @@ void AXPlatformNodeAuraLinux::ScrollNode
+   rect -= rect.OffsetFromOrigin();
+   ScrollNodeRectIntoView(rect, atk_scroll_type);
+ }
++#endif  // defined(ATK_230)
+ 
++#if defined(ATK_232)
+ std::optional<gfx::Rect>
+ AXPlatformNodeAuraLinux::GetUnclippedHypertextRangeBoundsRect(int start_offset,
+                                                               int end_offset) {
+@@ -4892,6 +5013,7 @@ bool AXPlatformNodeAuraLinux::ScrollSubs
+ 
+   return true;
+ }
++#endif  // defined(ATK_232)
+ 
+ void AXPlatformNodeAuraLinux::ComputeStylesIfNeeded() {
+   if (!offset_to_text_attributes_.empty())
+@@ -5074,8 +5196,10 @@ gfx::Point AXPlatformNodeAuraLinux::Conv
+   switch (atk_coord_type) {
+     case ATK_XY_WINDOW:
+       return point + GetParentFrameOriginInScreenCoordinates();
++#if defined(ATK_230)
+     case ATK_XY_PARENT:
+       return point + GetParentOriginInScreenCoordinates();
++#endif
+     case ATK_XY_SCREEN:
+     default:
+       return point;
+diff -up chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.h.than chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.h
+--- chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.h.than	2025-02-12 02:31:02.000000000 +0100
++++ chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux.h	2025-02-17 17:13:30.973344015 +0100
+@@ -52,6 +52,31 @@ struct FindInPageResultInfo {
+   }
+ };
+ 
++// AtkTableCell was introduced in ATK 2.12. Ubuntu Trusty has ATK 2.10.
++// Compile-time checks are in place for ATK versions that are older than 2.12.
++// However, we also need runtime checks in case the version we are building
++// against is newer than the runtime version. To prevent a runtime error, we
++// check that we have a version of ATK that supports AtkTableCell. If we do,
++// we dynamically load the symbol; if we don't, the interface is absent from
++// the accessible object and its methods will not be exposed or callable.
++// The definitions below ensure we have no missing symbols. Note that in
++// environments where we have ATK > 2.12, the definitions of AtkTableCell and
++// AtkTableCellIface below are overridden by the runtime version.
++// TODO(accessibility) Remove AtkTableCellInterface when 2.12 is the minimum
++// supported version.
++struct COMPONENT_EXPORT(AX_PLATFORM) AtkTableCellInterface {
++  typedef struct _AtkTableCell AtkTableCell;
++  static GType GetType();
++  static GPtrArray* GetColumnHeaderCells(AtkTableCell* cell);
++  static GPtrArray* GetRowHeaderCells(AtkTableCell* cell);
++  static bool GetRowColumnSpan(AtkTableCell* cell,
++                               gint* row,
++                               gint* column,
++                               gint* row_span,
++                               gint* col_span);
++  static bool Exists();
++};
++
+ // This class with an enum is used to generate a bitmask which tracks the ATK
+ // interfaces that an AXPlatformNodeAuraLinux's ATKObject implements.
+ class ImplementedAtkInterfaces {
+diff -up chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc.than chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc
+--- chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc.than	2025-02-12 02:31:02.000000000 +0100
++++ chromium-134.0.6998.15/ui/accessibility/platform/ax_platform_node_auralinux_unittest.cc	2025-02-17 17:13:30.973344015 +0100
+@@ -11,6 +11,7 @@
+ 
+ #include <atk/atk.h>
+ 
++#include <dlfcn.h>
+ #include <array>
+ #include <utility>
+ #include <vector>
+@@ -887,6 +888,17 @@ typedef bool (*ScrollToPointFunc)(AtkCom
+ typedef bool (*ScrollToFunc)(AtkComponent* component, AtkScrollType type);
+ 
+ TEST_F(AXPlatformNodeAuraLinuxTest, AtkComponentScrollToPoint) {
++  // There's a chance we may be compiled with a newer version of ATK and then
++  // run with an older one, so we need to do a runtime check for this method
++  // that is available in ATK 2.30 instead of linking directly.
++  ScrollToPointFunc scroll_to_point = reinterpret_cast<ScrollToPointFunc>(
++      dlsym(RTLD_DEFAULT, "atk_component_scroll_to_point"));
++  if (!scroll_to_point) {
++    LOG(WARNING) << "Skipping AtkComponentScrollToPoint"
++                    " because ATK version < 2.30 detected.";
++    return;
++  }
++
+   AXNodeData root;
+   root.id = 1;
+   root.role = ax::mojom::Role::kRootWebArea;
+@@ -914,8 +926,7 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
+   EXPECT_EQ(10, width);
+   EXPECT_EQ(10, height);
+ 
+-  atk_component_scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_SCREEN, 600,
+-                                650);
++  scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_SCREEN, 600, 650);
+   atk_component_get_extents(ATK_COMPONENT(child_obj), &x_left, &y_top, &width,
+                             &height, ATK_XY_SCREEN);
+   EXPECT_EQ(610, x_left);
+@@ -923,8 +934,7 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
+   EXPECT_EQ(10, width);
+   EXPECT_EQ(10, height);
+ 
+-  atk_component_scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_PARENT, 10,
+-                                10);
++  scroll_to_point(ATK_COMPONENT(child_obj), ATK_XY_PARENT, 10, 10);
+   atk_component_get_extents(ATK_COMPONENT(child_obj), &x_left, &y_top, &width,
+                             &height, ATK_XY_SCREEN);
+   // The test wrapper scrolls every element when scrolling, so this should be
+@@ -941,6 +951,17 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
+ }
+ 
+ TEST_F(AXPlatformNodeAuraLinuxTest, AtkComponentScrollTo) {
++  // There's a chance we may be compiled with a newer version of ATK and then
++  // run with an older one, so we need to do a runtime check for this method
++  // that is available in ATK 2.30 instead of linking directly.
++  ScrollToFunc scroll_to = reinterpret_cast<ScrollToFunc>(
++      dlsym(RTLD_DEFAULT, "atk_component_scroll_to"));
++  if (!scroll_to) {
++    LOG(WARNING) << "Skipping AtkComponentScrollTo"
++                    " because ATK version < 2.30 detected.";
++    return;
++  }
++
+   AXNodeData root;
+   root.id = 1;
+   root.role = ax::mojom::Role::kRootWebArea;
+@@ -968,7 +989,7 @@ TEST_F(AXPlatformNodeAuraLinuxTest, AtkC
+   EXPECT_EQ(10, width);
+   EXPECT_EQ(10, height);
+ 
+-  atk_component_scroll_to(ATK_COMPONENT(child_obj), ATK_SCROLL_ANYWHERE);
++  scroll_to(ATK_COMPONENT(child_obj), ATK_SCROLL_ANYWHERE);
+   atk_component_get_extents(ATK_COMPONENT(child_obj), &x_left, &y_top, &width,
+                             &height, ATK_XY_SCREEN);
+   EXPECT_EQ(0, x_left);
+diff -up chromium-134.0.6998.15/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc.than chromium-134.0.6998.15/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc
+--- chromium-134.0.6998.15/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc.than	2025-02-12 02:31:02.000000000 +0100
++++ chromium-134.0.6998.15/ui/accessibility/platform/inspect/ax_tree_formatter_auralinux.cc	2025-02-17 17:13:30.974344040 +0100
+@@ -474,18 +474,34 @@ void AXTreeFormatterAuraLinux::AddTableC
+   int row = 0, col = 0, row_span = 0, col_span = 0;
+   int n_row_headers = 0, n_column_headers = 0;
+ 
+-  AtkTableCell* cell = G_TYPE_CHECK_INSTANCE_CAST(
+-      (atk_object), atk_table_cell_get_type(), AtkTableCell);
++  // Properties obtained via AtkTableCell, if possible. If we do not have at
++  // least ATK 2.12, use the same logic in our AtkTableCell implementation so
++  // that tests can still be run.
++  if (AtkTableCellInterface::Exists()) {
++    AtkTableCell* cell = G_TYPE_CHECK_INSTANCE_CAST(
++        (atk_object), AtkTableCellInterface::GetType(), AtkTableCell);
+ 
+-  atk_table_cell_get_row_column_span(cell, &row, &col, &row_span, &col_span);
++    AtkTableCellInterface::GetRowColumnSpan(cell, &row, &col, &row_span,
++                                            &col_span);
+ 
+-  GPtrArray* column_headers = atk_table_cell_get_column_header_cells(cell);
+-  n_column_headers = column_headers->len;
+-  g_ptr_array_unref(column_headers);
++    GPtrArray* column_headers =
++        AtkTableCellInterface::GetColumnHeaderCells(cell);
++    n_column_headers = column_headers->len;
++    g_ptr_array_unref(column_headers);
+ 
+-  GPtrArray* row_headers = atk_table_cell_get_row_header_cells(cell);
+-  n_row_headers = row_headers->len;
+-  g_ptr_array_unref(row_headers);
++    GPtrArray* row_headers = AtkTableCellInterface::GetRowHeaderCells(cell);
++    n_row_headers = row_headers->len;
++    g_ptr_array_unref(row_headers);
++  } else {
++    row = node->GetTableRow().value_or(-1);
++    col = node->GetTableColumn().value_or(-1);
++    row_span = node->GetTableRowSpan().value_or(0);
++    col_span = node->GetTableColumnSpan().value_or(0);
++    if (role == ATK_ROLE_TABLE_CELL) {
++      n_column_headers = node->GetDelegate()->GetColHeaderNodeIds(col).size();
++      n_row_headers = node->GetDelegate()->GetRowHeaderNodeIds(row).size();
++    }
++  }
+ 
+   std::vector<std::string> cell_info;
+   cell_info.push_back(base::StringPrintf("row=%i", row));

diff --git a/chromium-134-rust-libadler2.patch b/chromium-134-rust-libadler2.patch
new file mode 100644
index 0000000..cada806
--- /dev/null
+++ b/chromium-134-rust-libadler2.patch
@@ -0,0 +1,14 @@
+Fix warning: libadler2 not found
+
+diff -up chromium-134.0.6998.23/build/rust/std/BUILD.gn.than chromium-134.0.6998.23/build/rust/std/BUILD.gn
+--- chromium-134.0.6998.23/build/rust/std/BUILD.gn.than	2025-02-24 09:47:57.560506410 +0100
++++ chromium-134.0.6998.23/build/rust/std/BUILD.gn	2025-02-24 09:48:02.335676712 +0100
+@@ -89,7 +89,7 @@ if (toolchain_has_rust) {
+     # These are no longer present in the Windows toolchain.
+     stdlib_files += [
+       "addr2line",
+-      "adler2",
++      "adler",
+       "gimli",
+       "libc",
+       "memchr",

diff --git a/chromium-134-type-mismatch-error.patch b/chromium-134-type-mismatch-error.patch
new file mode 100644
index 0000000..19d263c
--- /dev/null
+++ b/chromium-134-type-mismatch-error.patch
@@ -0,0 +1,13 @@
+diff -up chromium-134.0.6998.23/base/containers/to_value_list.h.me chromium-134.0.6998.23/base/containers/to_value_list.h
+--- chromium-134.0.6998.23/base/containers/to_value_list.h.me	2025-02-23 22:39:33.369668072 +0100
++++ chromium-134.0.6998.23/base/containers/to_value_list.h	2025-02-23 22:42:42.653990901 +0100
+@@ -36,8 +36,7 @@ Value::List ToValueList(Range&& range, P
+   auto container = Value::List::with_capacity(std::ranges::size(range));
+   std::ranges::for_each(
+       std::forward<Range>(range),
+-      [&]<typename T>(T&& value) { container.Append(std::forward<T>(value)); },
+-      std::move(proj));
++      [&](auto&& value) { container.Append(std::invoke(proj, std::forward<decltype(*std::ranges::begin(range))>(value))); });
+   return container;
+ }
+ 

diff --git a/chromium.spec b/chromium.spec
index 8e2a531..35d216a 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -152,14 +152,14 @@
 %if %{enable_qt}
 %if 0%{?rhel} > 9 || 0%{?fedora} > 39
 %global use_qt6 1
-%global use_qt 1
+%global use_qt5 1
 %else
 %global use_qt6 0
-%global use_qt 1
+%global use_qt5 1
 %endif
 %else
 %global use_qt6 0
-%global use_qt 0
+%global use_qt5 0
 %endif
 
 # bundle re2, jsoncpp, woff2 - build errors with use_custom_libcxx=true
@@ -261,7 +261,7 @@
 %endif
 
 Name:	chromium
-Version: 133.0.6943.141
+Version: 134.0.6998.35 
 Release: 1%{?dist}
 Summary: A WebKit (Blink) powered web browser that Google doesn't want you to use
 Url: http://www.chromium.org/Home
@@ -321,7 +321,7 @@ Patch305: chromium-124-el8-arm64-memory_tagging.patch
 Patch306: chromium-127-el8-ifunc-header.patch
 
 # workaround for build error due to old atk version on el8
-Patch307: chromium-133-el8-atk-compiler-error.patch
+Patch307: chromium-134-el8-atk-compiler-error.patch
 # Fix build errors due to old clang18 in el 8/9 and f40
 Patch308: chromium-132-el8-unsupport-clang-flags.patch
 Patch309: chromium-132-el8-unsupport-rustc-flags.patch
@@ -330,12 +330,16 @@ Patch311: chromium-133-clang18-template.patch
 
 # enable fstack-protector-strong
 Patch312: chromium-123-fstack-protector-strong.patch
+
 # build error stdarch_arm_crc32
 Patch313: chromium-133-rust-crc32fast.patch
 
 # warning: unknown warning option '-Wno-nontrivial-memcall'
 Patch314: chromium-134-clang-unknown-option.patch
 
+# build error: libadler2 not found
+Patch315: chromium-134-rust-libadler2.patch
+
 # add -ftrivial-auto-var-init=zero and -fwrapv
 Patch316: chromium-122-clang-build-flags.patch
 
@@ -343,6 +347,7 @@ Patch316: chromium-122-clang-build-flags.patch
 # https://bugs.chromium.org/p/chromium/issues/detail?id=1145581#c60
 # Disable BTI until this is fixed upstream.
 Patch352: chromium-117-workaround_for_crash_on_BTI_capable_system.patch
+
 # workaround for build error on aarch64
 Patch353: chromium-127-aarch64-duplicate-case-value.patch
 
@@ -355,6 +360,9 @@ Patch355: chromium-130-hardware_destructive_interference_size.patch
 # fix build error with new pipewire in f43
 Patch356: chromium-133-pipewire-cast.patch
 
+# error: no matching member function for call to 'Append'
+Patch357: chromium-134-type-mismatch-error.patch
+
 # set clang_lib path
 Patch358: chromium-127-rust-clanglib.patch
 
@@ -526,7 +534,7 @@ BuildRequires:	glib2-devel
 BuildRequires:	glibc-devel
 BuildRequires:	gperf
 
-%if %{use_qt}
+%if %{use_qt5}
 BuildRequires: pkgconfig(Qt5Core)
 BuildRequires: pkgconfig(Qt5Widgets)
 %endif
@@ -1031,8 +1039,8 @@ Qt6 UI for chromium.
 %patch -P313 -p1 -b .rust-crc32fast
 %endif
 %endif
-
 %patch -P314 -p1 -b .clang-unknown-option
+%patch -P315 -p1 -b .rust-libadler2
 %patch -P316 -p1 -b .clang-build-flags
 
 %if %{disable_bti}
@@ -1053,6 +1061,8 @@ Qt6 UI for chromium.
 %patch -P356 -p1 -b .pipewire-cast
 %endif
 
+%patch -P357 -p1 -b .type-mismatch-error
+
 %patch -P358 -p1 -b .rust-clang_lib
 
 %ifarch ppc64le
@@ -1313,10 +1323,10 @@ CHROMIUM_BROWSER_GN_DEFINES+=' rtc_use_h264=false'
 %endif
 CHROMIUM_BROWSER_GN_DEFINES+=' use_kerberos=true'
 
-%if %{use_qt}
-CHROMIUM_BROWSER_GN_DEFINES+=" use_qt=true moc_qt5_path=\"$(%{_qt5_qmake} -query QT_HOST_BINS)\""
+%if %{use_qt5}
+CHROMIUM_BROWSER_GN_DEFINES+=" use_qt5=true moc_qt5_path=\"$(%{_qt5_qmake} -query QT_HOST_BINS)\""
 %else
-CHROMIUM_BROWSER_GN_DEFINES+=' use_qt=false'
+CHROMIUM_BROWSER_GN_DEFINES+=' use_qt5=false'
 %endif
 
 %if %{use_qt6}
@@ -1378,7 +1388,7 @@ CHROMIUM_HEADLESS_GN_DEFINES+=' v8_use_external_startup_data=false enable_print_
 CHROMIUM_HEADLESS_GN_DEFINES+=' use_alsa=false use_bluez=false use_cups=false use_dbus=false use_gio=false use_kerberos=false'
 CHROMIUM_HEADLESS_GN_DEFINES+=' use_libpci=false use_pulseaudio=false use_udev=false rtc_use_pipewire=false'
 CHROMIUM_HEADLESS_GN_DEFINES+=' v8_enable_lazy_source_positions=false use_glib=false use_gtk=false use_pangocairo=false'
-CHROMIUM_HEADLESS_GN_DEFINES+=' use_qt=false use_qt6=false is_component_build=false enable_ffmpeg_video_decoders=false media_use_ffmpeg=false'
+CHROMIUM_HEADLESS_GN_DEFINES+=' use_qt5=false use_qt6=false is_component_build=false enable_ffmpeg_video_decoders=false media_use_ffmpeg=false'
 CHROMIUM_HEADLESS_GN_DEFINES+=' media_use_libvpx=false proprietary_codecs=false'
 export CHROMIUM_HEADLESS_GN_DEFINES
 
@@ -1556,7 +1566,7 @@ pushd %{chromebuilddir}
 	# This is ANGLE, not to be confused with the similarly named files under swiftshader/
 	cp -a libEGL.so libGLESv2.so %{buildroot}%{chromium_path}
 
-	%if %{use_qt}
+	%if %{use_qt5}
 		cp -a libqt5_shim.so %{buildroot}%{chromium_path}
 	%endif
 
@@ -1649,7 +1659,7 @@ fi
 %{_datadir}/appdata/*.appdata.xml
 %{_datadir}/gnome-control-center/default-apps/chromium-browser.xml
 
-%if %{use_qt}
+%if %{use_qt5}
 %files qt5-ui
 %{chromium_path}/libqt5_shim.so
 %endif
@@ -1752,6 +1762,18 @@ fi
 %endif
 
 %changelog
+* Wed Mar 05 2025 Than Ngo <than@redhat.com> -  134.0.6998.35 -1
+- Update to 134.0.6998.35
+  * CVE-2025-1914: Out of bounds read in V8
+  * CVE-2025-1915: Improper Limitation of a Pathname to a Restricted Directory in DevTools
+  * CVE-2025-1916: Use after free in Profiles
+  * CVE-2025-1917: Inappropriate Implementation in Browser UI
+  * CVE-2025-1918: Out of bounds read in PDFium
+  * CVE-2025-1919: Out of bounds read in Media
+  * CVE-2025-1921: Inappropriate Implementation in Media Stream
+  * CVE-2025-1922: Inappropriate Implementation in Selection
+  * CVE-2025-1923: Inappropriate Implementation in Permission Prompts
+
 * Wed Feb 26 2025 Than Ngo <than@redhat.com> - 133.0.6943.141-1
 - Update to 133.0.6943.141
 

diff --git a/skia-vsx-instructions.patch b/skia-vsx-instructions.patch
index d78d6cd..faac39f 100644
--- a/skia-vsx-instructions.patch
+++ b/skia-vsx-instructions.patch
@@ -1,7 +1,7 @@
-Index: chromium-132.0.6834.83/third_party/skia/BUILD.gn
+Index: chromium-134.0.6998.35/third_party/skia/BUILD.gn
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/BUILD.gn
-+++ chromium-132.0.6834.83/third_party/skia/BUILD.gn
+--- chromium-134.0.6998.35.orig/third_party/skia/BUILD.gn
++++ chromium-134.0.6998.35/third_party/skia/BUILD.gn
 @@ -193,6 +193,12 @@ opts("lasx") {
    cflags = [ "-mlasx" ]
  }
@@ -15,7 +15,7 @@ Index: chromium-132.0.6834.83/third_party/skia/BUILD.gn
  # Any feature of Skia that requires third-party code should be optional and use this template.
  template("optional") {
    if (invoker.enabled) {
-@@ -1601,6 +1607,7 @@ skia_component("skia") {
+@@ -1642,6 +1648,7 @@ skia_component("skia") {
      ":skx",
      ":typeface_fontations",
      ":vello",
@@ -23,7 +23,7 @@ Index: chromium-132.0.6834.83/third_party/skia/BUILD.gn
      ":webp_decode",
      ":wuffs",
      ":xml",
-@@ -1772,7 +1779,10 @@ skia_static_library("pathkit") {
+@@ -1813,7 +1820,10 @@ skia_static_library("pathkit") {
    public_configs = [ ":skia_public" ]
    configs = skia_library_configs
  
@@ -35,11 +35,11 @@ Index: chromium-132.0.6834.83/third_party/skia/BUILD.gn
  
    sources = []
    sources += skia_pathops_sources
-Index: chromium-132.0.6834.83/third_party/skia/gn/skia/BUILD.gn
+Index: chromium-134.0.6998.35/third_party/skia/gn/skia/BUILD.gn
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/gn/skia/BUILD.gn
-+++ chromium-132.0.6834.83/third_party/skia/gn/skia/BUILD.gn
-@@ -167,6 +167,8 @@ config("default") {
+--- chromium-134.0.6998.35.orig/third_party/skia/gn/skia/BUILD.gn
++++ chromium-134.0.6998.35/third_party/skia/gn/skia/BUILD.gn
+@@ -166,6 +166,8 @@ config("default") {
        "-mfpmath=sse",
      ]
      ldflags += [ "-m32" ]
@@ -48,10 +48,10 @@ Index: chromium-132.0.6834.83/third_party/skia/gn/skia/BUILD.gn
    } else if (current_cpu == "loong64") {
      cflags += [
        "-mlsx",
-Index: chromium-132.0.6834.83/third_party/skia/include/core/SkTypes.h
+Index: chromium-134.0.6998.35/third_party/skia/include/core/SkTypes.h
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/include/core/SkTypes.h
-+++ chromium-132.0.6834.83/third_party/skia/include/core/SkTypes.h
+--- chromium-134.0.6998.35.orig/third_party/skia/include/core/SkTypes.h
++++ chromium-134.0.6998.35/third_party/skia/include/core/SkTypes.h
 @@ -183,4 +183,43 @@ static constexpr uint32_t SK_InvalidGenI
  */
  static constexpr uint32_t SK_InvalidUniqueID = 0;
@@ -96,10 +96,10 @@ Index: chromium-132.0.6834.83/third_party/skia/include/core/SkTypes.h
 +#endif
 +
  #endif
-Index: chromium-132.0.6834.83/third_party/skia/src/base/SkSpinlock.cpp
+Index: chromium-134.0.6998.35/third_party/skia/src/base/SkSpinlock.cpp
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/base/SkSpinlock.cpp
-+++ chromium-132.0.6834.83/third_party/skia/src/base/SkSpinlock.cpp
+--- chromium-134.0.6998.35.orig/third_party/skia/src/base/SkSpinlock.cpp
++++ chromium-134.0.6998.35/third_party/skia/src/base/SkSpinlock.cpp
 @@ -33,7 +33,8 @@
  #endif
  
@@ -110,10 +110,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/base/SkSpinlock.cpp
      #include <emmintrin.h>
      static void do_pause() { _mm_pause(); }
  #else
-Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkBitmapProcState_opts.h
+Index: chromium-134.0.6998.35/third_party/skia/src/opts/SkBitmapProcState_opts.h
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/opts/SkBitmapProcState_opts.h
-+++ chromium-132.0.6834.83/third_party/skia/src/opts/SkBitmapProcState_opts.h
+--- chromium-134.0.6998.35.orig/third_party/skia/src/opts/SkBitmapProcState_opts.h
++++ chromium-134.0.6998.35/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.
@@ -129,10 +129,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkBitmapProcState_opts.h
      #include <immintrin.h>
  #elif defined(SK_ARM_HAS_NEON)
      #include <arm_neon.h>
-Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkBlitRow_opts.h
+Index: chromium-134.0.6998.35/third_party/skia/src/opts/SkBlitRow_opts.h
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/opts/SkBlitRow_opts.h
-+++ chromium-132.0.6834.83/third_party/skia/src/opts/SkBlitRow_opts.h
+--- chromium-134.0.6998.35.orig/third_party/skia/src/opts/SkBlitRow_opts.h
++++ chromium-134.0.6998.35/third_party/skia/src/opts/SkBlitRow_opts.h
 @@ -69,7 +69,7 @@
  #endif
  
@@ -142,10 +142,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkBlitRow_opts.h
  
      static inline __m128i SkPMSrcOver_SSE2(const __m128i& src, const __m128i& dst) {
          __m128i scale = _mm_sub_epi32(_mm_set1_epi32(256),
-Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
+Index: chromium-134.0.6998.35/third_party/skia/src/opts/SkRasterPipeline_opts.h
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/opts/SkRasterPipeline_opts.h
-+++ chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
+--- chromium-134.0.6998.35.orig/third_party/skia/src/opts/SkRasterPipeline_opts.h
++++ chromium-134.0.6998.35/third_party/skia/src/opts/SkRasterPipeline_opts.h
 @@ -1,5 +1,6 @@
  /*
   * Copyright 2018 Google Inc.
@@ -171,7 +171,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  #elif defined(SKRP_CPU_LASX)
      #include <lasxintrin.h>
      #include <lsxintrin.h>
-@@ -195,6 +200,184 @@ namespace SK_OPTS_NS {
+@@ -194,6 +199,184 @@ namespace SK_OPTS_NS {
          ptr[3] = a;
      }
  
@@ -356,7 +356,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  #elif defined(SKRP_CPU_NEON)
      template <typename T> using V = Vec<4, T>;
      using F   = V<float   >;
-@@ -1401,6 +1584,15 @@ SI F from_half(U16 h) {
+@@ -1383,6 +1566,15 @@ SI F from_half(U16 h) {
  #elif defined(SKRP_CPU_HSW)
      return _mm256_cvtph_ps((__m128i)h);
  
@@ -372,7 +372,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  #else
      // Remember, a half is 1-5-10 (sign-exponent-mantissa) with 15 exponent bias.
      U32 sem = expand(h),
-@@ -1424,6 +1616,16 @@ SI U16 to_half(F f) {
+@@ -1406,6 +1598,16 @@ SI U16 to_half(F f) {
  #elif defined(SKRP_CPU_HSW)
      return (U16)_mm256_cvtps_ph(f, _MM_FROUND_CUR_DIRECTION);
  
@@ -389,7 +389,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  #else
      // Remember, a float is 1-8-23 (sign-exponent-mantissa) with 127 exponent bias.
      U32 sem = sk_bit_cast<U32>(f),
-@@ -1499,7 +1701,7 @@ static constexpr size_t N = sizeof(F) /
+@@ -1481,7 +1683,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 SKRP_NARROW_STAGES 1
@@ -398,7 +398,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
      // These platforms are ideal for wider stages, and their default ABI is ideal.
      #define ABI
      #define SKRP_NARROW_STAGES 0
-@@ -5481,6 +5683,10 @@ SI F sqrt_(F x) {
+@@ -5470,6 +5672,10 @@ SI F sqrt_(F x) {
      float32x4_t lo,hi;
      split(x, &lo,&hi);
      return join<F>(sqrt(lo), sqrt(hi));
@@ -409,7 +409,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  #elif defined(SKRP_CPU_LASX)
      __m256 lo,hi;
      split(x, &lo,&hi);
-@@ -5512,6 +5718,10 @@ SI F floor_(F x) {
+@@ -5501,6 +5707,10 @@ SI F floor_(F x) {
      __m128 lo,hi;
      split(x, &lo,&hi);
      return join<F>(_mm_floor_ps(lo), _mm_floor_ps(hi));
@@ -420,7 +420,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  #elif defined(SKRP_CPU_LASX)
      __m256 lo,hi;
      split(x, &lo,&hi);
-@@ -5531,6 +5741,7 @@ SI F floor_(F x) {
+@@ -5520,6 +5730,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.
@@ -428,7 +428,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  SI I16 scaled_mult(I16 a, I16 b) {
  #if defined(SKRP_CPU_SKX)
      return (I16)_mm256_mulhrs_epi16((__m256i)a, (__m256i)b);
-@@ -5542,6 +5753,22 @@ SI I16 scaled_mult(I16 a, I16 b) {
+@@ -5531,6 +5742,22 @@ SI I16 scaled_mult(I16 a, I16 b) {
      return vqrdmulhq_s16(a, b);
  #elif defined(SKRP_CPU_NEON)
      return vqrdmulhq_s16(a, b);
@@ -451,7 +451,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  #elif defined(SKRP_CPU_LASX)
      I16 res = __lasx_xvmuh_h(a, b);
      return __lasx_xvslli_h(res, 1);
-@@ -5569,7 +5796,26 @@ SI U16 constrained_add(I16 a, U16 b) {
+@@ -5558,7 +5785,26 @@ SI U16 constrained_add(I16 a, U16 b) {
              SkASSERT(-ib <= ia && ia <= 65535 - ib);
          }
      #endif
@@ -478,7 +478,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
  }
  
  SI F fract(F x) { return x - floor_(x); }
-@@ -6582,8 +6828,14 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
+@@ -6571,8 +6817,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 {
@@ -493,7 +493,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
          // 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
-@@ -6595,7 +6847,12 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
+@@ -6584,7 +6836,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.
@@ -506,7 +506,7 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
      };
  
      const uint32_t* ptr;
-@@ -6629,9 +6886,15 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
+@@ -6618,9 +6875,15 @@ STAGE_GP(bilerp_clamp_8888, const SkRast
          I16 width  = (I16)bottom - (I16)top;
          U16 middle = bottom + top;
          // Add + 0x80 for rounding.
@@ -523,10 +523,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkRasterPipeline_opts.h
      };
  
      r = lerpY(topR, bottomR);
-Index: chromium-132.0.6834.83/third_party/skia/src/base/SkVx.h
+Index: chromium-134.0.6998.35/third_party/skia/src/base/SkVx.h
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/base/SkVx.h
-+++ chromium-132.0.6834.83/third_party/skia/src/base/SkVx.h
+--- chromium-134.0.6998.35.orig/third_party/skia/src/base/SkVx.h
++++ chromium-134.0.6998.35/third_party/skia/src/base/SkVx.h
 @@ -41,7 +41,12 @@
  #endif
  
@@ -541,10 +541,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/base/SkVx.h
          #include <immintrin.h>
      #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE41
          #include <smmintrin.h>
-Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
+Index: chromium-134.0.6998.35/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
-+++ chromium-132.0.6834.83/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
+--- chromium-134.0.6998.35.orig/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
++++ chromium-134.0.6998.35/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp
 @@ -9,7 +9,7 @@
  #include "src/core/SkBlitMask.h"
  #include "src/core/SkOptsTargets.h"
@@ -554,10 +554,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBlitMask_opts_ssse3.cp
  
  // The order of these includes is important:
  // 1) Select the target CPU architecture by defining SK_OPTS_TARGET and including SkOpts_SetTarget
-Index: chromium-132.0.6834.83/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
+Index: chromium-134.0.6998.35/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
-+++ chromium-132.0.6834.83/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
+--- chromium-134.0.6998.35.orig/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
++++ chromium-134.0.6998.35/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp
 @@ -10,7 +10,7 @@
  #include "src/core/SkOptsTargets.h"
  #include "src/core/SkSwizzlePriv.h"
@@ -567,10 +567,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/core/SkSwizzler_opts_ssse3.cp
      !defined(SK_ENABLE_OPTIMIZE_SIZE) && \
      SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3
  
-Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBlitMask_opts.cpp
+Index: chromium-134.0.6998.35/third_party/skia/src/core/SkBlitMask_opts.cpp
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/core/SkBlitMask_opts.cpp
-+++ chromium-132.0.6834.83/third_party/skia/src/core/SkBlitMask_opts.cpp
+--- chromium-134.0.6998.35.orig/third_party/skia/src/core/SkBlitMask_opts.cpp
++++ chromium-134.0.6998.35/third_party/skia/src/core/SkBlitMask_opts.cpp
 @@ -25,7 +25,7 @@ namespace SkOpts {
      static bool init() {
      #if defined(SK_ENABLE_OPTIMIZE_SIZE)
@@ -580,10 +580,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBlitMask_opts.cpp
          #if SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3
              if (SkCpu::Supports(SkCpu::SSSE3)) { Init_BlitMask_ssse3(); }
          #endif
-Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBitmapProcState_opts.cpp
+Index: chromium-134.0.6998.35/third_party/skia/src/core/SkBitmapProcState_opts.cpp
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/core/SkBitmapProcState_opts.cpp
-+++ chromium-132.0.6834.83/third_party/skia/src/core/SkBitmapProcState_opts.cpp
+--- chromium-134.0.6998.35.orig/third_party/skia/src/core/SkBitmapProcState_opts.cpp
++++ chromium-134.0.6998.35/third_party/skia/src/core/SkBitmapProcState_opts.cpp
 @@ -27,7 +27,7 @@ namespace SkOpts {
      static bool init() {
      #if defined(SK_ENABLE_OPTIMIZE_SIZE)
@@ -593,10 +593,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBitmapProcState_opts.c
          #if SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3
              if (SkCpu::Supports(SkCpu::SSSE3)) { Init_BitmapProcState_ssse3(); }
          #endif
-Index: chromium-132.0.6834.83/third_party/skia/src/core/SkCpu.h
+Index: chromium-134.0.6998.35/third_party/skia/src/core/SkCpu.h
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/core/SkCpu.h
-+++ chromium-132.0.6834.83/third_party/skia/src/core/SkCpu.h
+--- chromium-134.0.6998.35.orig/third_party/skia/src/core/SkCpu.h
++++ chromium-134.0.6998.35/third_party/skia/src/core/SkCpu.h
 @@ -60,7 +60,7 @@ inline bool SkCpu::Supports(uint32_t mas
  
      // If we mask in compile-time known lower limits, the compiler can
@@ -606,10 +606,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/core/SkCpu.h
      #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE1
      features |= SSE1;
      #endif
-Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
+Index: chromium-134.0.6998.35/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
-+++ chromium-132.0.6834.83/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
+--- chromium-134.0.6998.35.orig/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
++++ chromium-134.0.6998.35/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp
 @@ -8,7 +8,7 @@
  #include "include/private/base/SkFeatures.h"
  #include "src/core/SkOptsTargets.h"
@@ -619,10 +619,10 @@ Index: chromium-132.0.6834.83/third_party/skia/src/core/SkBitmapProcState_opts_s
  
  // The order of these includes is important:
  // 1) Select the target CPU architecture by defining SK_OPTS_TARGET and including SkOpts_SetTarget
-Index: chromium-132.0.6834.83/third_party/skia/include/private/base/SkFeatures.h
+Index: chromium-134.0.6998.35/third_party/skia/include/private/base/SkFeatures.h
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/include/private/base/SkFeatures.h
-+++ chromium-132.0.6834.83/third_party/skia/include/private/base/SkFeatures.h
+--- chromium-134.0.6998.35.orig/third_party/skia/include/private/base/SkFeatures.h
++++ chromium-134.0.6998.35/third_party/skia/include/private/base/SkFeatures.h
 @@ -63,6 +63,8 @@
  
  #if defined(__i386) || defined(_M_IX86) ||  defined(__x86_64__) || defined(_M_X64)
@@ -632,10 +632,10 @@ Index: chromium-132.0.6834.83/third_party/skia/include/private/base/SkFeatures.h
  #endif
  
  #if defined(__loongarch__) || defined (__loongarch64)
-Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkSwizzler_opts.inc
+Index: chromium-134.0.6998.35/third_party/skia/src/opts/SkSwizzler_opts.inc
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/opts/SkSwizzler_opts.inc
-+++ chromium-132.0.6834.83/third_party/skia/src/opts/SkSwizzler_opts.inc
+--- chromium-134.0.6998.35.orig/third_party/skia/src/opts/SkSwizzler_opts.inc
++++ chromium-134.0.6998.35/third_party/skia/src/opts/SkSwizzler_opts.inc
 @@ -14,7 +14,10 @@
  #include <cmath>
  #include <utility>
@@ -682,11 +682,11 @@ Index: chromium-132.0.6834.83/third_party/skia/src/opts/SkSwizzler_opts.inc
  #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-132.0.6834.83/third_party/skia/src/core/SkBlitter_ARGB32.cpp
+Index: chromium-134.0.6998.35/third_party/skia/src/core/SkBlitter_ARGB32.cpp
 ===================================================================
---- chromium-132.0.6834.83.orig/third_party/skia/src/core/SkBlitter_ARGB32.cpp
-+++ chromium-132.0.6834.83/third_party/skia/src/core/SkBlitter_ARGB32.cpp
-@@ -126,6 +126,16 @@ static inline SkPMColor blend_lcd16_opaq
+--- chromium-134.0.6998.35.orig/third_party/skia/src/core/SkBlitter_ARGB32.cpp
++++ chromium-134.0.6998.35/third_party/skia/src/core/SkBlitter_ARGB32.cpp
+@@ -127,6 +127,16 @@ static inline SkPMColor blend_lcd16_opaq
  #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
      #include <emmintrin.h>
  

diff --git a/sources b/sources
index ca2a4a0..797f403 100644
--- a/sources
+++ b/sources
@@ -2,4 +2,4 @@ SHA512 (node-v20.6.1-linux-arm64.tar.xz) = adfcaf2c22614797fd69fb46d94c1cbf64dea
 SHA512 (node-v20.6.1-linux-x64.tar.xz) = 7e15c05041a9a50f0046266aadb2e092a5aefbec19be1c7c809471add520cb57c7df3c47d88b1888b29bf2979dca3c92adddfd965370fa2a9da4ea02186464fd
 SHA512 (linux-arm64-0.19.2.tgz) = 8a0d8fec6786fffcd6954d00820037a55d61e60762c74300df0801f8db27057562c221a063bedfb8df56af9ba80abb366336987e881782c5996e6f871abd3dc6
 SHA512 (linux-x64-0.19.2.tgz) = a31cc74c4bfa54f9b75d735a1cfc944d3b5efb7c06bfba9542da9a642ae0b2d235ea00ae84d3ad0572c406405110fe7b61377af0fd15803806ef78d20fc6f05d
-SHA512 (chromium-133.0.6943.141-clean.tar.xz) = 3e9a04b9168db93a523d538bdff0b9f35dc697b0006dd0e74e897f5f2df5a9e461e9c6067fadbb6ec907ee31edcf80f3f95ef19750bf12961b3f20436f91fe46
+SHA512 (chromium-134.0.6998.35-clean.tar.xz) = 8491cc3362faad817f2175d0d5f1d4c78a27186c6dbfde681682ca9a0da45487837fa7bc259c37edbfa7863ee95ca55351e1d36d3fe4cfefef5e246f55688976

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

only message in thread, other threads:[~2026-08-07 16:07 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:07 [rpms/chromium] epel9-next: - Update to 134.0.6998.35 Than Ngo

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