[llvm] [NFC][PowerPC] Use tablegen's MatchRegisterName() (PR #111553)

Lei Huang via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 11 11:31:54 PST 2025


lei137 wrote:

> I think this commit caused a regression in the dotnet9.0 build for Fedora:
> 
> ```
> Consolidate compiler generated dependencies of target utilcodestaticnohost
> make[3]: Leaving directory '/builddir/build/BUILD/dotnet9.0-9.0.102-build/dotnet-9.0.1/src/runtime/artifacts/obj/coreclr/linux.ppc64le.Release'
> make  -f utilcode/CMakeFiles/utilcodestaticnohost.dir/build.make utilcode/CMakeFiles/utilcodestaticnohost.dir/build
> /builddir/build/BUILD/dotnet9.0-9.0.102-build/dotnet-9.0.1/src/runtime/src/coreclr/pal/src/arch/ppc64le/context2.S:140:15: error: invalid register name
>               ld %r0, 0 +8(%R3)
>                            ^
> ```

Is the problem `R3` vs `r3`?  I don't see a way for this patch to cause register name to resolve to `R*` in some cases and the valid `r*` in other.... The code that returns either `r*` or `x*` register types have actually not changed.
```
else if (Name.starts_with_insensitive("r"))
    RegNo = isPPC64() ? XRegs[IntVal] : RRegs[IntVal];
```
I might be missing something, can you please provide more info as to why you think this patch is the issue?

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


More information about the llvm-commits mailing list