[llvm] [InlineSpiller] Hoist spills only when all of its subranges are available (PR #177703)
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 29 09:51:53 PST 2026
================
@@ -1409,8 +1409,11 @@ bool HoistSpillHelper::isSpillCandBB(LiveInterval &OrigLI, VNInfo &OrigVNI,
for (const Register &SibReg : Siblings) {
LiveInterval &LI = LIS.getInterval(SibReg);
- VNInfo *VNI = LI.getVNInfoAt(Idx);
- if (VNI) {
+ if (!LI.getVNInfoAt(Idx))
+ continue;
+ if (all_of(LI.subranges(), [&](const LiveInterval::SubRange &SR) {
+ return SR.getVNInfoAt(Idx);
----------------
topperc wrote:
It might be slightly clear to write `SR.getVNInfoAt(Idx) != nullptr` here.
https://github.com/llvm/llvm-project/pull/177703
More information about the llvm-commits
mailing list