[llvm] [WIP][CodeGen] Modifying MBB's liveins representation as into regUnits (PR #129847)

Jay Foad via llvm-commits llvm-commits at lists.llvm.org
Mon May 19 07:07:11 PDT 2025


jayfoad wrote:

> 2. MachineVerifier failure (Exit Code : 2) -> due to use of register whose regUnits are completely killed in some other form (its subreg or alias). There are only such 2 tests, that can be easily modified to solve it keeping it semantically same.

I took a look at `test/CodeGen/RISCV/make-compressible-zfinx.mir`. I disagree with "can be easily modified to solve it". This is another case where regunits cannot distinguish between a subreg and a superreg.

The RISCV example is: `x10_h` is a subreg of `x10_w` which is a subreg of `x10`. But all of them have only a single regunit (number 56 in the dumps I looked at).

This has been discussed before: #96146, https://github.com/llvm/llvm-project/pull/95926#discussion_r1644612311
FYI @topperc, @Pierre-vh, @qcolombet 

We need a proper solution for this issue _before_ continuing with the current patch.

https://github.com/llvm/llvm-project/pull/129847


More information about the llvm-commits mailing list