)]}'
{
  "commit": "f92edf197f94de4ca9179cf1ccbcbe4de9c82160",
  "tree": "ecdf1c5d5569cdf12d1d33708055776a28260231",
  "parents": [
    "f76288c263432e506a5da7dfaddbc455f71dab19"
  ],
  "author": {
    "name": "Simon Tatham",
    "email": "simon.tatham@fuchsia.infra.roller.fuchsia.infra.roller.arm.com",
    "time": "Fri Jul 03 16:56:20 2026 -0700"
  },
  "committer": {
    "name": "Copybara Service",
    "email": "copybara-worker@google.com",
    "time": "Fri Jul 03 16:56:20 2026 -0700"
  },
  "message": "[roll] Roll fuchsia [roll] Roll llvm-project/libc [libc][ARM] Defend banked SP setup against register allocator (#206757)\n\nThe startup code for bare-metal AArch32 A/R shifts the CPU through all\nthe different modes which have their own copies of SP, updating all the\nstack pointers to the same value. But it does it using C intrinsics,\nleaving the register allocation to the compiler – so it\u0027s possible that\nthe register allocator happens to use one of the _other_ banked\nregisters, such as LR.\n\nFor example, when I built this code today, it happened that LR was used\nto hold one of the constants written into CPSR_c to change mode. That\nconstant was written into the SVC mode LR before any mode changes, but\nthe MSR instruction that tried to use it was run in a different mode, so\nit copied from _that_ mode\u0027s LR, which contained uninitialised nonsense\nin place of the desired constant, triggering a boot-time crash.\n\nI think it\u0027s safer to use a single asm statement for the whole job,\nguaranteeing which registers it uses.\n\nGitOrigin-RevId: 73e1c53474a46a9686d7111c8566be2d90263aa4\nOriginal-Original-Revision: 5b3c509f664e9c3bc3237f251c87b167b83e4f45\n\nOriginal-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1692018\nOriginal-Original-Revision: d521a8ae4cbcc1c9a0590650e0ca0828fb869ac6\nGitOrigin-RevId: b86033c3831371bd5d452e5fb0d614851bf4a859\nChange-Id: I831472473f66b4297ffb5b9ddfaeacfde950bcef\nReviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1692315\nCr-Commit-Position: refs/heads/main@{#196114}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "16d04b07d5cd72318cdc88bc08bbb9ced766e309",
      "old_mode": 33188,
      "old_path": "stem",
      "new_id": "33e5eb35db8898b5834bf10f101fdf8c11b71c59",
      "new_mode": 33188,
      "new_path": "stem"
    }
  ]
}
