)]}'
{
  "commit": "673a7fe5c3ff6686c98951cafb24a93ca5bd1303",
  "tree": "47fcd587829695ed33e046a42a6bc6bcfc71662f",
  "parents": [
    "8d50b556a5decb8a256c196282e42060a806fd35"
  ],
  "author": {
    "name": "Nicolas Capens",
    "email": "capn@google.com",
    "time": "Fri Feb 05 15:03:22 2021 -0500"
  },
  "committer": {
    "name": "Nicolas Capens",
    "email": "nicolascapens@google.com",
    "time": "Wed Feb 10 05:46:05 2021 +0000"
  },
  "message": "Unify load/store operand accessors\n\nLoad and store instructions, as well as intrinsics which access memory,\ncan now shared the same methods for accessing the memory address and\ndata operands.\n\nNote that while this change introduces the potential for non-load/store\ninstructions to have their operands accessed through getLoadAddress(),\ngetStoreAddress(), or getData(), that risk isn\u0027t any greater than using\nthe wrong getSrc() index, and would stick out as a mistake much more\nclearly. The advantage this change brings is that we no longer have to\nremember where the address and data operands are stored in sub-vector\nload/store intrinsics. In addition, there are no more overly verbose\ncasts, and their cost is eliminated.\n\nBug: b/179497998\nChange-Id: I0d9208555e00b0d3053f7d3baca241fef2b8cbeb\nReviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/52531\nPresubmit-Ready: Nicolas Capens \u003cnicolascapens@google.com\u003e\nTested-by: Nicolas Capens \u003cnicolascapens@google.com\u003e\nReviewed-by: Antonio Maiorano \u003camaiorano@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "27b14e3c1820a6a21f7e8bbc30520b90fa46476e",
      "old_mode": 33188,
      "old_path": "src/Reactor/Optimizer.cpp",
      "new_id": "4ac06de0a3cc844c4d5fe50337fda63b18284616",
      "new_mode": 33188,
      "new_path": "src/Reactor/Optimizer.cpp"
    },
    {
      "type": "modify",
      "old_id": "ac61f66fd63af3e788fb0257a41b6daea3f11b49",
      "old_mode": 33188,
      "old_path": "third_party/subzero/src/IceInst.h",
      "new_id": "0e2c039baec2408a6ae0ab9ef7b73732968eead8",
      "new_mode": 33188,
      "new_path": "third_party/subzero/src/IceInst.h"
    },
    {
      "type": "modify",
      "old_id": "179d760b1da5a8ae76080531c14aaa91f5a96224",
      "old_mode": 33188,
      "old_path": "third_party/subzero/src/IceTargetLowering.cpp",
      "new_id": "1381f03ec0e17bce56ae824baf5f7cc61a4523d0",
      "new_mode": 33188,
      "new_path": "third_party/subzero/src/IceTargetLowering.cpp"
    },
    {
      "type": "modify",
      "old_id": "aa7581528df0e554010bf400b296d2cb9f46bb49",
      "old_mode": 33188,
      "old_path": "third_party/subzero/src/IceTargetLoweringARM32.cpp",
      "new_id": "3795c04c38c9fdd7c037b694c241084891435cd7",
      "new_mode": 33188,
      "new_path": "third_party/subzero/src/IceTargetLoweringARM32.cpp"
    },
    {
      "type": "modify",
      "old_id": "9876fe7551d76697e19c77c5debd81639479565a",
      "old_mode": 33188,
      "old_path": "third_party/subzero/src/IceTargetLoweringMIPS32.cpp",
      "new_id": "eb9367c5cf178c0e0aa1c3ff5679ef9527e80e85",
      "new_mode": 33188,
      "new_path": "third_party/subzero/src/IceTargetLoweringMIPS32.cpp"
    },
    {
      "type": "modify",
      "old_id": "98d9fba671d2b21e63f14743a24d57b8aed7302b",
      "old_mode": 33188,
      "old_path": "third_party/subzero/src/IceTargetLoweringX86BaseImpl.h",
      "new_id": "fa37f050803278ccf6165e91027019da5c9aafd6",
      "new_mode": 33188,
      "new_path": "third_party/subzero/src/IceTargetLoweringX86BaseImpl.h"
    }
  ]
}
