)]}'
{
  "commit": "2a3334473e83771b84272793b60af9678f64c1d3",
  "tree": "33d50019d20d5a3762f11f164d24cecc062e4e41",
  "parents": [
    "2f21136f4ea05813a4e2cffd4ab6337a5a09cecb"
  ],
  "author": {
    "name": "Protobuf Team Bot",
    "email": "protobuf-github-bot@google.com",
    "time": "Tue Oct 13 15:07:41 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Oct 13 15:12:53 2026 -0700"
  },
  "message": "Avoid PLT calls to the library memcpy() for field, map and array element copies\n\nBefore/after (android_arm64, -c opt, fasttable):\n\nupb_Array_Set, before (17 instructions):\n```armasm\n  sub   sp, sp, #0x20\n  stp   x3, x30, [sp, #0x8]\n  ldr   x9, [x0]\n  mov   w8, #0x1\n  str   x2, [sp]\n  ands  x10, x9, #0x3\n  and   x9, x9, #0xfffffffffffffff8\n  cinc  x10, x10, ne\n  lsl   x11, x1, x10\n  lsl   w8, w8, w10\n  mov   x1, sp\n  add   x0, x9, x11\n  mov   x2, x8\n  bl    memcpy@plt\n  ldr   x30, [sp, #0x10]\n  add   sp, sp, #0x20\n  ret\n```\nafter (no call, no stack frame):\n```armasm\n  ldr   x8, [x0]\n  ands  x9, x8, #0x3\n  and   x8, x8, #0xfffffffffffffff8\n  cinc  x9, x9, ne\n  lsl   x10, x1, x9\n  cmp   x9, #0x2\n  add   x8, x8, x10\n  b.gt  1f\n  cbnz  x9, 2f\n  strb  w2, [x8]\n  ret\n1:cmp   x9, #0x3\n  b.ne  3f\n  str   x2, [x8]\n  ret\n2:str   w2, [x8]\n  ret\n3:stp   x2, x3, [x8]\n  ret\n```\nPiperOrigin-RevId: 998917610\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f8a670a96831e4b394073dc282e7cb7e1b4e19ff",
      "old_mode": 33188,
      "old_path": "upb/message/array.c",
      "new_id": "a4369af925003ca0204e194207f73cbe22e0c547",
      "new_mode": 33188,
      "new_path": "upb/message/array.c"
    },
    {
      "type": "modify",
      "old_id": "e1af48709afb8d869300929fd017cd767c25327f",
      "old_mode": 33188,
      "old_path": "upb/message/internal/accessors.h",
      "new_id": "f38b5b8e719a3bbcca8781392ca9da2e57c7bcf8",
      "new_mode": 33188,
      "new_path": "upb/message/internal/accessors.h"
    },
    {
      "type": "modify",
      "old_id": "59c56f3d716feb9c3afedfa4fc852c80d276c669",
      "old_mode": 33188,
      "old_path": "upb/message/internal/array.h",
      "new_id": "6524c7c1c494c8a7a5f3f33bea543e3388d27840",
      "new_mode": 33188,
      "new_path": "upb/message/internal/array.h"
    },
    {
      "type": "modify",
      "old_id": "bcf9c3479973e5e3cee3b31b28c92664aa709e16",
      "old_mode": 33188,
      "old_path": "upb/message/internal/field_data.h",
      "new_id": "459e7853cf36d3a6c93b33f8b8eb6ba92f192b87",
      "new_mode": 33188,
      "new_path": "upb/message/internal/field_data.h"
    },
    {
      "type": "modify",
      "old_id": "b32cfaa8a5011f1f68b3145dfb47415213ab13b6",
      "old_mode": 33188,
      "old_path": "upb/message/internal/map.h",
      "new_id": "b0482557b3ee9e55720c867ed3d8a83ecb50b059",
      "new_mode": 33188,
      "new_path": "upb/message/internal/map.h"
    },
    {
      "type": "modify",
      "old_id": "664dde22b9faaf1ffbceff972aecf2fe9c702128",
      "old_mode": 33188,
      "old_path": "upb/message/map.c",
      "new_id": "e01dce67d216875d692aea5aac3bd520ff52c21d",
      "new_mode": 33188,
      "new_path": "upb/message/map.c"
    },
    {
      "type": "modify",
      "old_id": "cfba74fd9e5ac6070bed1e6da7bdbe2a04c3c0a5",
      "old_mode": 33188,
      "old_path": "upb/port/def.inc",
      "new_id": "6685380250d3c1a78d2f8b7730dbc566991bdd8b",
      "new_mode": 33188,
      "new_path": "upb/port/def.inc"
    },
    {
      "type": "modify",
      "old_id": "554dfe352df0f4197324474528ce3888ed52b49f",
      "old_mode": 33188,
      "old_path": "upb/port/undef.inc",
      "new_id": "bfe09de9f9ff9048337d13b785adf6ce4a33f6c3",
      "new_mode": 33188,
      "new_path": "upb/port/undef.inc"
    }
  ]
}
