)]}'
{
  "commit": "fa720e7d5e5483b93b6098cf4d13dcebaf01ca92",
  "tree": "6dd3e548953842f051d2f248c7cc9fac61f96331",
  "parents": [
    "eb9a9b91ea65a7b0da1f84511df1c81805a4f7fd"
  ],
  "author": {
    "name": "Ian Tayler Lessa",
    "email": "ian.taylerlessa@arm.com",
    "time": "Tue Apr 14 09:55:41 2026 +0100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Apr 14 09:55:41 2026 +0100"
  },
  "message": "[mlir][tosa] Optimize non-narrowing float casts (#191439)\n\nExtend the existing NonNarrowingCastsOptimization to also cover casts\nbetween floating point types f32, f16, bf16, f8E4M3FN and F8E5M2. Avoid\nintroducing direct casts between f8 types since those are not allowed in\nTOSA.\n\nAlso expand the set of cases that are considering non-narrowing by only\nchecking if the cast we\u0027re trying to remove is non-narrowing. Example\ni16 -\u003e i32 -\u003e i8 would have been rejected before, but it is now safely\nconverted to a single i16 -\u003e i8 tosa.cast, since the behaviour should\nidentical for the entire input space.\n\nFinally disallow the optimization in the case when the cast that we\nwould remove involves integer types of different signedness.\n\nSigned-off-by: Ian Tayler Lessa \u003cian.taylerlessa@arm.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ecd485ae8d64177b1b029bc8d4ed3c3d4ac614d6",
      "old_mode": 33188,
      "old_path": "mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp",
      "new_id": "1c186cd3ae1224b75c52f280edc43eaf76b3cebe",
      "new_mode": 33188,
      "new_path": "mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp"
    },
    {
      "type": "modify",
      "old_id": "367a60c4d2a8deaa6ab2f5a4407e4a96b338524f",
      "old_mode": 33188,
      "old_path": "mlir/test/Dialect/Tosa/canonicalize.mlir",
      "new_id": "9a7fa3efc8d3c1337438ffb6fd3a5d562edaa703",
      "new_mode": 33188,
      "new_path": "mlir/test/Dialect/Tosa/canonicalize.mlir"
    }
  ]
}
