)]}'
{
  "commit": "dc2ed0043295a397d680db091c2033a51d21e32e",
  "tree": "0403d11d1c9e2d3ff2b8c22175605b09b9978027",
  "parents": [
    "4e5e65e55dc5a5ffc6e3db321df7f118e1c42d38"
  ],
  "author": {
    "name": "Luke Lau",
    "email": "luke@igalia.com",
    "time": "Fri Sep 05 08:25:48 2025 +0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Sep 05 00:25:48 2025 +0000"
  },
  "message": "[RISCV] Handle non uimm5 VL constants in isVLKnownLE (#156639)\n\nIf a VL operand is \u003e 31 then it will be materialized into an ADDI $x0,\nimm. We can reason about it by peeking at the virtual register\ndefinition which allows RISCVVectorPeephole and RISCVVLOptimizer to\ncatch more cases.\n\nThere\u0027s a separate issue with RISCVVLOptimizer where the materialized\nimmediate may not always dominate the instruction we want to reduce the\nVL of, but this is left to another patch.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7b4a1de167695580e05afb578a55c092cc8e43e3",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/RISCV/RISCVInstrInfo.cpp",
      "new_id": "872f2cff67e5803aa45c52bda9abb75a83485a24",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/RISCV/RISCVInstrInfo.cpp"
    },
    {
      "type": "modify",
      "old_id": "785c8352d4a5e211e4d2aba1059ecd3e66643231",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/RISCV/RISCVInstrInfo.h",
      "new_id": "0defb184fba6d7b905f280d22cc7937cf99e227d",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/RISCV/RISCVInstrInfo.h"
    },
    {
      "type": "modify",
      "old_id": "4d4f1db21522042c115aa34deaefb21e410185f5",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp",
      "new_id": "dca86d75f5c497c383b34b4f72b2222e0c534a35",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp"
    },
    {
      "type": "modify",
      "old_id": "62651185137c9060607a5de5282af57127e4c70f",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp",
      "new_id": "6ea010ebb73d739fd36f58472102cbc896bcfabc",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp"
    },
    {
      "type": "modify",
      "old_id": "a66370f5ccc0a907edecbcf478aa24f3264a2800",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll",
      "new_id": "22c629088bacd5f637df24bebf3cf92cdc642072",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "fec54b36042fa4c4587310a42c6d90c73568d5b7",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll",
      "new_id": "ec5845752c29c3daba5ce627ae8e974383dbe054",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "7ca0dbd9adffc36f22d016889e2bb5b192bfe3a1",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll",
      "new_id": "2ffd3318d87593c7f145890fb27105f3e10c1ef3",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "ea75742ca6e43ec190f5ba05439efc2d885ebade",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll",
      "new_id": "53649c77098f2f6ea2e0b82f144a73c5fc1ca741",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "f4f54db64018d8dd779935492e785e7de38520b4",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll",
      "new_id": "76b5be39f2d93e3cfd2a721706b8f4b056be4582",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "902001a376d6aac0e86837d56bcf71fcacf9b5d5",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll",
      "new_id": "6ceb03c765fd74eb8e3906c8250e1ffe0b2138d9",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "57292147a014011c146d1239952e43a076f25ac1",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll",
      "new_id": "2839efd40305b57f2499d0f5ff95d8c99108cbf3",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "7b2dcbb025f8fce55edca601dd558a310cc3828a",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll",
      "new_id": "93f024c2b77a559f67fe1885e03e1f977d87f99d",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "353042fc889e578facbe9e2a303ca34d981099ce",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll",
      "new_id": "79856de0330605c7a6bc3acbd1fdfaf819e2f92d",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "c00fb329b2f0c3fb51e05ceca60c21e3059d8886",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll",
      "new_id": "7a9bef49c994dd7796aabef4fa89616ea1de5e91",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll"
    },
    {
      "type": "modify",
      "old_id": "2f2035b02b552e7e2886bb4cf16858f85afb4392",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll",
      "new_id": "89cd53977312c9c64f445345033faa14ebec30dc",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll"
    }
  ]
}
