)]}'
{
  "commit": "78f5f7717a2e058c4d685feb3edb7d991efacbc2",
  "tree": "6c41a8aa6031e5dd3d6591592d40b08df9612f2e",
  "parents": [
    "f0ae26c925ef85dd1e6f5217afcdb620641e8db5"
  ],
  "author": {
    "name": "Amy Kwan",
    "email": "amy.kwan1@ibm.com",
    "time": "Wed May 27 09:27:11 2026 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed May 27 09:27:11 2026 -0400"
  },
  "message": "[PowerPC] Drop invalid range metadata when lowering i64 load to fp in INT_TO_FP (#198705)\n\nWhen lowering an i64 load in LowerINT_TO_FP, we were forwarding the\noriginal !range metadata to a new f64 load. This is invalid because the\nmetadata no longer matches the value type/semantics, and can trigger\nassertions when lowering i64 to fp (double or float) conversions.\n\nThis patch fixes this by passing a nullptr for the Ranges operand when\ncalling getLoad() and adds extra test cases to cover signed/unsigned i64\nto f32/f64 conversions and to ensure they do not assert when the !range\nmetadata is present.\n\nThe assertion this patch attempts to fix is:\n```\nAssertion failed: (!MMO-\u003egetRanges() || (mdconst::extract\u003cConstantInt\u003e(MMO-\u003egetRanges()-\u003egetOperand(0)) -\u003egetBitWidth() \u003d\u003d MemVT.getScalarSizeInBits() \u0026\u0026 MemVT.isInteger())) \u0026\u0026 \"Range metadata and load type must match!\"\n```\nThis assert was originally seen when building Rust on AIX.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "56acde88577720e067199daf1b57f0226d31fa8a",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/PowerPC/PPCISelLowering.cpp",
      "new_id": "d1654c36451c915f856731cb2a47e283f4f9bf46",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/PowerPC/PPCISelLowering.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b6f58938d03bfccd33c5892c33f57c12f0fc4162",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/PowerPC/ppc-i64-to-fp.ll"
    }
  ]
}
