[all-commits] [llvm/llvm-project] cbcb90: VirtRegRewriter: Add super register defs for live ...
Matt Arsenault via All-commits
all-commits at lists.llvm.org
Thu Oct 17 01:35:36 PDT 2024
Branch: refs/heads/users/arsenm/issue98474-register-coalescer-verifier-error
Home: https://github.com/llvm/llvm-project
Commit: cbcb90a37d9df6260bdec96ad234584f7b00991a
https://github.com/llvm/llvm-project/commit/cbcb90a37d9df6260bdec96ad234584f7b00991a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-17 (Thu, 17 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/VirtRegMap.cpp
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/indirect-call.ll
M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill-inspect-subrange.mir
M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill.mir
A llvm/test/CodeGen/AMDGPU/issue98474-need-live-out-undef-subregister-def.ll
A llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll
A llvm/test/MachineVerifier/AMDGPU/issue98474-missing-def-liveout-physical-subregister.mir
Log Message:
-----------
VirtRegRewriter: Add super register defs for live out undef lanes
If an undef subregister def is live into another block, we need to
maintain a physreg def to track the liveness of those lanes. This
would manifest a verifier error after branch folding, when the cloned
tail block use no longer had a def.
There is a missing verifier check for this situation. Added an xfailed
test that demonstrates this. We may also be able to revert the changes
in 47d3cbcf842a036c20c3f1c74255cdfc213f41c2.
It might be better to insert an IMPLICIT_DEF before the instruction
rather than using the implicit-def operand.
Fixes #98474
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list