)]}'
{
  "commit": "4e48c132c17ac3a48bdc5ac6cf5592f43aea4b61",
  "tree": "72177bda2c40db5c7eb543133b8b728405b002da",
  "parents": [
    "129974205665cad36f89dc6454e3cbcd52765828"
  ],
  "author": {
    "name": "Ben Vanik",
    "email": "ben.vanik@gmail.com",
    "time": "Wed Jun 07 22:08:50 2023 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Jun 07 22:08:50 2023 -0700"
  },
  "message": "Moving builtins lower in the pipeline and adding option to force. (#13994)\n\nBy moving it after partitioning we can use the resource config local to\r\nthe partitioned execution region where the ops live to make decisions.\r\nWe also are able to preserve the semantics of the ops through\r\npartitioning/placement such as whether splats should be rematerialized.\r\n\r\nTo work around the CUDA issue in #13984 a global flag was added to force\r\nall splats/fills into builtins that must be passed when graphs are used\r\nat runtime.\r\n\r\nI was hoping this would make it easier to support `complex\u003cf64\u003e` as well\r\nbut that doesn\u0027t quite fit due to the lack of an `i128` in MLIR. One\r\nday. May need to move the canonicalizeFillPattern doing the integer\r\nconversion down into MaterializeBuiltins but that would mean removing\r\nthe verifier on AsyncSplatOp/AsyncFillOp that the type is actually\r\nsupported and spreads encoding across stages of the pipeline. Still may\r\nbe worth it for readability but we can re-evaluate when we have a need\r\nfor `complex\u003cf64\u003e`.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ba7626828d7a2f24692927c621f082ace9fc33c7",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/BUILD.bazel",
      "new_id": "f832d0215ec87cde7725117386a2bb4ef9aa591a",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "390e91619013eb9a12f1c3ef4a404826d32527e2",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/CMakeLists.txt",
      "new_id": "6c5c8d50a3735897e3cb877cea375884de601d1d",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dfbff7a9ead25d8576bdadee5843630e976679ef",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/fill_i16.mlir"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8af753ae1ad0bec9aba0ed37f61d3776c358e681",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/fill_i32.mlir"
    },
    {
      "type": "modify",
      "old_id": "144d03b3304841953116ea089d290dd60d1010b8",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/fill_i64.mlir",
      "new_id": "707667b0a36187cea68a907283afa0439473bf3e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/fill_i64.mlir"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8b647ee153b735b8a7d587c4a9995ccf1df689e9",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/fill_i8.mlir"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a94cdf1d6cf7a4f18353f2904f2ae901dbbd1312",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/splat_i16.mlir"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "07f3b4cb1b54c8899d80d2a0fca6b3f714aa93d6",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/splat_i32.mlir"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5e5f8cb261d7f9f29511c257ebfc9dbf68c08546",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Builtins/splat_i8.mlir"
    },
    {
      "type": "modify",
      "old_id": "c338f2e2ef4e504e9fbe3aa7a6f66813b155fa16",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/BUILD.bazel",
      "new_id": "5b8ee110a6b8b8fb5daf5633b6b00e8841935bee",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "63a65c7bc85542ef4c33936c0cd362e11ee347a7",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/CMakeLists.txt",
      "new_id": "000c7e89aa4ac3f1756a47550df7942c7a04ccb6",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "1288878959d0eaa1de2d60760939e5ae25cfec42",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamBase.td",
      "new_id": "e148b27179711303e702c4736dec65ab00bafe0d",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamBase.td"
    },
    {
      "type": "modify",
      "old_id": "a67cb2bde52d46ae87a2f10ac4b4849cf7a1921f",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamInterfaces.td",
      "new_id": "a49941a0924c15242fb68a910b55215c14ad0ef4",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamInterfaces.td"
    },
    {
      "type": "modify",
      "old_id": "264c95c6914bdbf90c67cda394c21f4113628b6f",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamOps.cpp",
      "new_id": "9b0b1b4dbc69385dfc44c8bc9a58b2a72560f39d",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "d6e3111ca0b005024458dc7faafedf41a7482aae",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamOps.td",
      "new_id": "baba9d3feb73f4b72a62f1b0c6d283535ed55fd6",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamOps.td"
    },
    {
      "type": "modify",
      "old_id": "3d4093060b5fcc306e8a1773558586e01e17f499",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/test/BUILD.bazel",
      "new_id": "8470c43cc03cf00f0715d942d9a97bf6455de2b0",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/test/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "4d2afd62f7467a0cb283025ed9e7f464de1b75c0",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/test/CMakeLists.txt",
      "new_id": "3b513a831e9cd11072162634c773422043ebfc8c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/test/CMakeLists.txt"
    },
    {
      "type": "delete",
      "old_id": "4242bad592ae339c8482232797a43f4e99585f82",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/test/builtin_ops.mlir",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "bab44346340549c504d6c4645404ecde5c6aa6e0",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/BUILD.bazel",
      "new_id": "dda0c8298e83b66f7dce22844f2f6cf578f84a2a",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "eb8bb192a4e0a4933e464c466b573f3bda95bd6b",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/CMakeLists.txt",
      "new_id": "2bb7f3f7b62423ca3eb8bd55606d3dc4f93eec5b",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "0f0ea76bb21a7cf4443b49592e52cc6b6dea1f57",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/EncodeTensors.cpp",
      "new_id": "c221ec0e9cadd0c856b0d3d4b251e18b6459d5f7",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/EncodeTensors.cpp"
    },
    {
      "type": "modify",
      "old_id": "b12e6d00838f9263600cd05dc6b09b1c73f83b50",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/MaterializeBuiltins.cpp",
      "new_id": "024e611be708fb75c8046e979f2728db67de366d",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/MaterializeBuiltins.cpp"
    },
    {
      "type": "modify",
      "old_id": "3636a05b6383ab0d26eb6407f8dabf214f39beba",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/Passes.cpp",
      "new_id": "b620491e90d5c846855506449d8a4d0b6714e7e0",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/Passes.cpp"
    },
    {
      "type": "modify",
      "old_id": "7c64f8273d1fccc694bbf70fbba28233d368feb0",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/test/encode_host_tensors.mlir",
      "new_id": "de2f75992bac1ea0d0ca7baf2ca79eb905634adf",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/test/encode_host_tensors.mlir"
    },
    {
      "type": "modify",
      "old_id": "2a553253e00d23b1107e4a7f15b52328bab82e3e",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/test/materialize_builtins.mlir",
      "new_id": "3f8c39ec21e18e3efa33c279cd8194792e2c38ca",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Transforms/test/materialize_builtins.mlir"
    },
    {
      "type": "modify",
      "old_id": "cb8ef8bfb95c65dbbd3255fd77667d2a22605421",
      "old_mode": 33188,
      "old_path": "tests/e2e/stablehlo_ops/BUILD.bazel",
      "new_id": "ee1f04d941cbc0f14d7ed94b4fbd1b88beb7086e",
      "new_mode": 33188,
      "new_path": "tests/e2e/stablehlo_ops/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "58c4030fe3bb10c4b24aed2a2a78099ffe7896d3",
      "old_mode": 33188,
      "old_path": "tests/e2e/stablehlo_ops/CMakeLists.txt",
      "new_id": "451a00373dd57bb63ab8343e4f2a1902be3c235f",
      "new_mode": 33188,
      "new_path": "tests/e2e/stablehlo_ops/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "265ea87719bc16be9756fc538c63af00e0ea5ac1",
      "old_mode": 33188,
      "old_path": "tests/e2e/xla_ops/BUILD.bazel",
      "new_id": "14c3a9fe333cd3686a9718771f70dc35ccb85309",
      "new_mode": 33188,
      "new_path": "tests/e2e/xla_ops/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "2a9869b2ed9f7077deffa400616cba441f779b7f",
      "old_mode": 33188,
      "old_path": "tests/e2e/xla_ops/CMakeLists.txt",
      "new_id": "c23e05f37af9f918cd62138b9b6c3f503f38f87c",
      "new_mode": 33188,
      "new_path": "tests/e2e/xla_ops/CMakeLists.txt"
    }
  ]
}
