)]}'
{
  "commit": "f2dfbf06f7db1a3cace4beb9f65d5a7f6a8b6235",
  "tree": "a83b5f846ad31006855e59b7885a8666828db561",
  "parents": [
    "f66516456d3cf4cff2c1ab6d83afac6e2f9e4c26"
  ],
  "author": {
    "name": "Nikita Popov",
    "email": "npopov@redhat.com",
    "time": "Fri Jul 10 16:08:02 2026 +0200"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Jul 10 16:08:02 2026 +0200"
  },
  "message": "[SDAG] Freeze condition in select of load fold (#208683)\n\nWhen converting `select cond, (load p1), (load p2)` to `load (select\ncond, p1, p2)`, if `cond` is poison, originally this would result in a\n`poison` result, while after the transform it would result in a load of\npoison, which is immediate UB. Fix this by freezing the condition.\n\nFixes https://github.com/llvm/llvm-project/issues/208611.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c81c43c94b0f0565e820e13654af04863ea5bbde",
      "old_mode": 33188,
      "old_path": "llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp",
      "new_id": "ee30495055f47c6700fd8bde41141225e9cc547e",
      "new_mode": 33188,
      "new_path": "llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp"
    },
    {
      "type": "modify",
      "old_id": "b0fdf1820d7ebf58f67639bc19a519951d32cbe9",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/AArch64/icmp.ll",
      "new_id": "6830ce834ab11508e6d5564fa4900f75c719755f",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/AArch64/icmp.ll"
    },
    {
      "type": "modify",
      "old_id": "27a0bf2eb90370b261228c417a1dcb774e6cc463",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/ARM/fp16-promote.ll",
      "new_id": "5b3539def98a05d854d4be5f44ececf056796ea0",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/ARM/fp16-promote.ll"
    },
    {
      "type": "modify",
      "old_id": "c64c60ddef73d38ed1967c2fcd3757c1ddba355a",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/Mips/cconv/vector.ll",
      "new_id": "5cd2b77615fcdca3a2d919dcf2b49e66334aa0a0",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/Mips/cconv/vector.ll"
    },
    {
      "type": "modify",
      "old_id": "bb3c7c27a122d804a38a3d3fc54a0d0cdc4e93f4",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/Mips/cmov.ll",
      "new_id": "ee60b353b86b63b6ea682fa9e8988ebd2bc724ef",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/Mips/cmov.ll"
    },
    {
      "type": "modify",
      "old_id": "c91a3df204d8099290aa73997780ad005befd0a6",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/NVPTX/i1-select.ll",
      "new_id": "c13e494c3077a68ab2208dec3027abca7cdd013a",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/NVPTX/i1-select.ll"
    },
    {
      "type": "modify",
      "old_id": "6a6b86e8efa7c33d9fce4c62a2726d42dc5e8112",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/fp-strict-scalar-cmp-fp16.ll",
      "new_id": "8e660e9193fcf775b7e74e6358c27a74ab0e78d8",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/fp-strict-scalar-cmp-fp16.ll"
    },
    {
      "type": "modify",
      "old_id": "e3e2b6225a7ba0dea34bc492d1dc460c27bb6c95",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/fp-strict-scalar-cmp.ll",
      "new_id": "9c88632e68d4aaacc0ff537eaae3b2313d891446",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/fp-strict-scalar-cmp.ll"
    },
    {
      "type": "modify",
      "old_id": "dfff88d30bcd406fb0395c730d660d465184eaf8",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/fp128-libcalls-strict.ll",
      "new_id": "cae271f7a2ed46dbd6d9514591e4cbaddc6a5303",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/fp128-libcalls-strict.ll"
    },
    {
      "type": "modify",
      "old_id": "cb2361fbb8d3795e5e58cde6a2d5f630e962f1ee",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/fp80-strict-scalar-cmp.ll",
      "new_id": "81c7647bf04f63693cae79446f51faba3ca3adba",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/fp80-strict-scalar-cmp.ll"
    },
    {
      "type": "modify",
      "old_id": "d013ad2c7fbff09514be8db81a659d984184ccc5",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/isel-select-cmov.ll",
      "new_id": "6ced7f45b6233621f93b38fd5e2c4ae3794e0a40",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/isel-select-cmov.ll"
    },
    {
      "type": "modify",
      "old_id": "efc367d204cf1369db8341ed2dc837d0d66f6332",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/select-constant-xor.ll",
      "new_id": "5d80e04fef38c803ea9dcf6e170dd3c305e0fd9d",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/select-constant-xor.ll"
    },
    {
      "type": "modify",
      "old_id": "8a4308a5af64b2b5dab75969638c31f41f662b06",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/X86/select-mmx.ll",
      "new_id": "cc6603382082c7342eac11cd06a1e44dd8d60eed",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/select-mmx.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1f71f812d2327d317cd54f880fbd8c9b9ea2771b",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/X86/select-of-load-poison.ll"
    }
  ]
}
