)]}'
{
  "commit": "d341128edf91ce9b032d16e7eca278f5fa4892a7",
  "tree": "e079dde678989648141d328a2c6753b37bc3f653",
  "parents": [
    "66c339742cad5c207e487bcc6e90105eebca0daf"
  ],
  "author": {
    "name": "Max191",
    "email": "44243577+Max191@users.noreply.github.com",
    "time": "Wed Oct 02 08:59:43 2024 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Oct 02 11:59:43 2024 -0400"
  },
  "message": "[ExternalInterfaces] Make fill non-hoistableLeafOp, hoist linalg init operands (#18634)\n\nThis PR changes the HoistableOpInterface implementation for LinalgOps to\r\nmake DPS init operands hoistable. If there is real computation on the\r\ninit of a linalg op, then we would want to hoist that computation. The\r\nmain way the current policy (not hoisting init operands) affects\r\nhoisting today is by preventing linalg.fill ops from being hoisted into\r\nsplat constants, since the init operands are usually linalg.fill or\r\ntensor.empty. Since we want to preserve the behavior of not hoisting\r\nfills (and instead fusing them with consumers to handle in codegen), the\r\ninterface implementation now treats fill ops as non-HoistableLeafOps.\r\n\r\nThis PR disables the top-k test on rocm, since it exposed a bug in rocm\r\ncodegen, but we want to move progress forward on GPU data tiling. The\r\ntest should be added back once the bug is resolved.\r\n\r\n---------\r\n\r\nSigned-off-by: Max Dawkins \u003cmax.dawkins@gmail.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f4e600271229742cc979644113c162c16b137efe",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/ExternalInterfaces/UtilExternalModels.cpp",
      "new_id": "c5e3e1679ec0a6f683704583ccf19c70562b85a5",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/ExternalInterfaces/UtilExternalModels.cpp"
    },
    {
      "type": "modify",
      "old_id": "80af04d835427fcae2cc588978deca597410816b",
      "old_mode": 33188,
      "old_path": "tests/e2e/linalg_ext_ops/BUILD.bazel",
      "new_id": "7e64cfe8d2b64136098bb7390c33469c869c4f12",
      "new_mode": 33188,
      "new_path": "tests/e2e/linalg_ext_ops/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "9865284cd705f4e71d014dfd2a5d7756e2eff7e0",
      "old_mode": 33188,
      "old_path": "tests/e2e/linalg_ext_ops/CMakeLists.txt",
      "new_id": "5c36220b2957475a2bcdcfe5358e2a19f3570fd4",
      "new_mode": 33188,
      "new_path": "tests/e2e/linalg_ext_ops/CMakeLists.txt"
    }
  ]
}
