Roll clang+rust llvmorg-22-init-6852-g2384a6a2-4 : llvmorg-22-init-8940-g4d4cb757-1 / 99317ef14d0be42fa4039eea7c5ce50cb4e9aee7-4 : 15283f6fe95e5b604273d13a428bab5fc0788f5a-1

https://chromium.googlesource.com/external/github.com/llvm/llvm-project/+log/2384a6a2..4d4cb757

https://chromium.googlesource.com/external/github.com/rust-lang/rust/+log/99317ef14d0b..15283f6fe95e

Ran: ./tools/clang/scripts/upload_revision.py 4d4cb757f94470b95458fcbe3b88332b212feeee

Also:
* ran gnrt_stdlib.py
* use immediate-abort for official builds for *all* crates (instead of
  just the stdlib) to deal with
  https://github.com/rust-lang/rust/pull/146317.

Bug: 444224976,447200172
Disable-Rts: True
Cq-Include-Trybots: chromium/try:android-cronet-riscv64-dbg
Cq-Include-Trybots: chromium/try:android-cronet-riscv64-rel
Cq-Include-Trybots: chromium/try:chromeos-amd64-generic-cfi-thin-lto-rel
Cq-Include-Trybots: chromium/try:dawn-win10-x86-deps-rel
Cq-Include-Trybots: chromium/try:fuchsia-arm64-cast-receiver-rel
Cq-Include-Trybots: chromium/try:ios-catalyst,win-asan,android-official
Cq-Include-Trybots: chromium/try:linux-cast-x64-rel
Cq-Include-Trybots: chromium/try:linux-chromeos-dbg
Cq-Include-Trybots: chromium/try:linux-swangle-try-x64,win-swangle-try-x86
Cq-Include-Trybots: chromium/try:linux-v4l2-codec-rel
Cq-Include-Trybots: chromium/try:linux-wayland-mutter-rel
Cq-Include-Trybots: chromium/try:linux_chromium_cfi_rel_ng
Cq-Include-Trybots: chromium/try:linux_chromium_msan_rel_ng
Cq-Include-Trybots: chromium/try:mac-official,linux-official
Cq-Include-Trybots: chromium/try:mac12-arm64-rel,mac_chromium_asan_rel_ng
Cq-Include-Trybots: chromium/try:win-arm64-rel
Cq-Include-Trybots: chromium/try:win-official,win32-official
Cq-Include-Trybots: chrome/try:android-arm32-pgo,android-arm64-pgo
Cq-Include-Trybots: chrome/try:android-x64-rel-ready
Cq-Include-Trybots: chrome/try:chromeos-brya-chrome,chromeos-eve-chrome
Cq-Include-Trybots: chrome/try:chromeos-volteer-chrome
Cq-Include-Trybots: chrome/try:iphone-device
Cq-Include-Trybots: chrome/try:linux-chromeos-chrome
Cq-Include-Trybots: chrome/try:linux-pgo,mac-pgo,win32-pgo,win64-pgo
Cq-Include-Trybots: chrome/try:win-chrome,win64-chrome,linux-chrome,mac-chrome
Cq-Include-Trybots: chromium/try:android-rust-arm32-rel
Cq-Include-Trybots: chromium/try:android-rust-arm64-dbg
Cq-Include-Trybots: chromium/try:android-rust-arm64-rel
Cq-Include-Trybots: chromium/try:linux-rust-x64-dbg
Cq-Include-Trybots: chromium/try:linux-rust-x64-rel
Cq-Include-Trybots: chromium/try:mac-rust-x64-dbg
Cq-Include-Trybots: chromium/try:win-rust-x64-dbg
Cq-Include-Trybots: chromium/try:win-rust-x64-rel
Change-Id: I078392e5e8cd86b791906fc47aebafed25527097
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6980648
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Auto-Submit: Alan Zhao <ayzhao@google.com>
Cr-Commit-Position: refs/heads/main@{#1520848}
NOKEYCHECK=True
GitOrigin-RevId: 03ecd7d4ec31f8f07a659cbb19baf662012a1c8d
diff --git a/build_rust.py b/build_rust.py
index 0970c21..2906050 100755
--- a/build_rust.py
+++ b/build_rust.py
@@ -656,14 +656,9 @@
     # TODO(https://crbug.com/441524277): remove revert after resolving issue upstream
     GitRevert(RUST_SRC_DIR, '8ea3b093819aabd92a605b42989341da0c97c0d6')
 
-    # TODO(crbug.com/442444725): Remove once
-    # https://github.com/rust-lang/rust/pull/146116 lands and we roll past it.
-    GitCherryPick(RUST_SRC_DIR, '4ecca581fad73c51d7c7a78c4b97a3ada2ca5249',
-                  'https://github.com/rust-lang/rust.git')
-
-    # TODO(crbug.com/442112342): Remove once
-    # https://github.com/rust-lang/rust/pull/146133 lands and we roll past it.
-    GitCherryPick(RUST_SRC_DIR, '916b55e08217ca14dabec0169067ed8d6523bf6e',
+    # TODO(crbug.com/446690349): Remove once
+    # https://github.com/rust-lang/rust/pull/146905 lands and we roll past it.
+    GitCherryPick(RUST_SRC_DIR, 'f9c040b7318f86e54fc57119ba5e0664df117600',
                   'https://github.com/rust-lang/rust.git')
 
     print('Finished applying cherry-picks.')
diff --git a/update_rust.py b/update_rust.py
index cc456df..a5f4cbc 100755
--- a/update_rust.py
+++ b/update_rust.py
@@ -36,8 +36,8 @@
 # These fields are written by //tools/clang/scripts/upload_revision.py, and
 # should not be changed manually.
 # They are also read by build/config/compiler/BUILD.gn.
-RUST_REVISION = '99317ef14d0be42fa4039eea7c5ce50cb4e9aee7'
-RUST_SUB_REVISION = 4
+RUST_REVISION = '15283f6fe95e5b604273d13a428bab5fc0788f5a'
+RUST_SUB_REVISION = 1
 
 # The revision of Crubit to use from https://github.com/google/crubit
 #
@@ -51,7 +51,7 @@
 # Hash of src/stage0.json, which itself contains the stage0 toolchain hashes.
 # We trust the Rust build system checks, but to ensure it is not tampered with
 # itself check the hash.
-STAGE0_JSON_SHA256 = 'f7cff7857a78cadfb89f861a7e24c84b1f33835a3b8f6011f669f28df822b20e'
+STAGE0_JSON_SHA256 = 'e2d3d97d3dff925c7016c3dfafe2e7207dd7f4806215fb22c4337f4dacf45dea'
 
 THIS_DIR = os.path.abspath(os.path.dirname(__file__))
 CHROMIUM_DIR = os.path.abspath(os.path.join(THIS_DIR, '..', '..'))