)]}'
{
  "commit": "d5303f4f779a6baf66bbac8a97937e507ffaaaba",
  "tree": "5a90ee5285e107ec34ae4feca7a931e4ce0cef8b",
  "parents": [
    "772f0fde1c6f5dbdd741b8c79e626a97304ebc7e"
  ],
  "author": {
    "name": "George Steed",
    "email": "george.steed@arm.com",
    "time": "Mon Apr 22 10:03:28 2024 +0100"
  },
  "committer": {
    "name": "Frank Barchard",
    "email": "fbarchard@chromium.org",
    "time": "Mon Sep 16 04:36:43 2024 +0000"
  },
  "message": "[AArch64] Unroll ARGB1555ToARGBRow_NEON to use full Neon vectors\n\nProcessing more data per loop iteration means that we can use the full\n128-bit Neon vectors and also allows us to use e.g. UZP1 to perform XTN\n+ XTN2 in a single instruction.\n\nThe early Cortex-X cores are not a fan of ST4 .16b with a\npost-increment, so split out the pointer increment to a separate\ninstruction to avoid this bottleneck.\n\nReductions in runtime observed for ARGB1555ToARGBRow_NEON:\n\n Cortex-A55: -18.1%\nCortex-A510: -11.2%\nCortex-A520: -39.5%\n Cortex-A76: -18.0%\nCortex-A715: -34.8%\nCortex-A720: -34.8%\n  Cortex-X1:  -0.9%\n  Cortex-X2:  -4.6%\n  Cortex-X3:  -3.6%\n  Cortex-X4: -20.8%\n\nBug: libyuv:976\nChange-Id: Iae2ac24ffdbc718cd1e05bb77191f8d1df3fcf6f\nReviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/5790975\nReviewed-by: Frank Barchard \u003cfbarchard@chromium.org\u003e\nReviewed-by: Justin Green \u003cgreenjustin@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "dd94c1b7750817bb57ce743e507fd0e474c887b5",
      "old_mode": 33188,
      "old_path": "source/convert_argb.cc",
      "new_id": "a77358df887d129ee1448375a712c79d40fb4ca3",
      "new_mode": 33188,
      "new_path": "source/convert_argb.cc"
    },
    {
      "type": "modify",
      "old_id": "b9eaa0a3cc20bd3f26bda5ba6250ff44356acc60",
      "old_mode": 33188,
      "old_path": "source/row_any.cc",
      "new_id": "d2f8a541955940845e924da08f3a457bc7ec5563",
      "new_mode": 33188,
      "new_path": "source/row_any.cc"
    },
    {
      "type": "modify",
      "old_id": "6d50b27600421b5cb031fd43782d1056922127df",
      "old_mode": 33188,
      "old_path": "source/row_neon64.cc",
      "new_id": "7ad54b43054049c99b1d2b9ad10e804072472213",
      "new_mode": 33188,
      "new_path": "source/row_neon64.cc"
    }
  ]
}
