Following on from D87757 "[SplitKit] Only copy live lanes", it is
possible to split a live range at a point when none of its subranges
are live. This patch handles that case by inserting an implicit def
of the superreg.
Patch by Quentin Colombet!
Paths
| Differential D88397
[SplitKit] Cope with no live subranges in defFromParent ClosedPublic Authored by foad on Sep 28 2020, 1:39 AM.
Details Summary Following on from D87757 "[SplitKit] Only copy live lanes", it is Patch by Quentin Colombet!
Diff Detail
Event TimelineThis revision is now accepted and ready to land.Sep 28 2020, 10:06 AM Comment Actions Hi @foad, LGTM. Cheers,
Closed by commit rGcdac4492b4a5: [SplitKit] Cope with no live subranges in defFromParent (authored by foad). · Explain WhySep 30 2020, 2:16 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 295214 llvm/lib/CodeGen/SplitKit.cpp
llvm/test/CodeGen/AMDGPU/splitkit-nolivesubranges.mir
|
Could you add a comment on the characteristic of the test?
For instance, "This test aims at triggering a live-range splitting in a place when %0 subranges are all dead, but the main live-range of %0 is still alive. %0 main range is kept alive simply by not using undef. Then, the splitting is triggered by creating two points of high register pressure: