)]}'
{
  "commit": "949cb623bf904c5e7a7c060ab0ae609574870fb3",
  "tree": "97dd36c2f55a575ff55534ae88639fd0c57b2f27",
  "parents": [
    "951e43439c3125bc55df43c01f13041a253a59dc"
  ],
  "author": {
    "name": "George Steed",
    "email": "george.steed@arm.com",
    "time": "Sun Mar 23 10:13:57 2025 +0000"
  },
  "committer": {
    "name": "Frank Barchard",
    "email": "fbarchard@chromium.org",
    "time": "Thu May 22 13:33:06 2025 -0700"
  },
  "message": "Add SVE2 and SME implementations of I444ToRGB24Row\n\nMove the READYUV444_SVE_2X and I444TORGB_SVE_2X macros to row_sve.h so\nthey are usable in both SVE2 and SME implementations, and use them to\nadd new I444ToRGB24Row implementations for SVE2 and SME. We need to use\nthe unrolled versions here to use the ST3B interleaving store\ninstructions, since there is no partial vector version of this store\ninstruction.\n\nReduction in time taken observed for the new SVE2 implementation,\ncompared to the existing Neon implementation:\n\nCortex-A510: -57.6%\nCortex-A520: -38.1%\nCortex-A710: -15.5%\nCortex-A715:  -9.2%\nCortex-A720:  -9.2%\n  Cortex-X2: -25.8%\n  Cortex-X3: -26.2%\n  Cortex-X4: -23.2%\nCortex-X925: -17.8%\n\nChange-Id: I6acd0b798a35e5352d4fad664769f12d3d938ed7\nReviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/6530646\nReviewed-by: Justin Green \u003cgreenjustin@google.com\u003e\nReviewed-by: Frank Barchard \u003cfbarchard@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "46cec27235056664595543957fb9988b33b4c3a9",
      "old_mode": 33188,
      "old_path": "include/libyuv/row.h",
      "new_id": "e83773f11753e3945ab56ebdb657910e2b161915",
      "new_mode": 33188,
      "new_path": "include/libyuv/row.h"
    },
    {
      "type": "modify",
      "old_id": "82103419c1c20ae85a0658c7f413873c2a13e612",
      "old_mode": 33188,
      "old_path": "include/libyuv/row_sve.h",
      "new_id": "5c0c210df6162f87e2e0a86c9ff200f7b6af5071",
      "new_mode": 33188,
      "new_path": "include/libyuv/row_sve.h"
    },
    {
      "type": "modify",
      "old_id": "41997fe3b6ae40335ba3a79a1fcab100c0c0f4d4",
      "old_mode": 33188,
      "old_path": "source/convert_argb.cc",
      "new_id": "e9346f3e8f6888317b5d89b9e934ddd3a596f1ba",
      "new_mode": 33188,
      "new_path": "source/convert_argb.cc"
    },
    {
      "type": "modify",
      "old_id": "1cbc42f3ee4cec444ea22e7c6ed894d2e7bfe250",
      "old_mode": 33188,
      "old_path": "source/row_sme.cc",
      "new_id": "c6917bf3c1fd715b8577df3fe9746c1f7838f1ce",
      "new_mode": 33188,
      "new_path": "source/row_sme.cc"
    },
    {
      "type": "modify",
      "old_id": "ba89b163a5eea9c50baa8bd807a3d47c9c3020c9",
      "old_mode": 33188,
      "old_path": "source/row_sve.cc",
      "new_id": "474c7950ce393e574cee07cfa73f5e237da3d1a4",
      "new_mode": 33188,
      "new_path": "source/row_sve.cc"
    }
  ]
}
