Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
So without this fix, it would AV as well if a block only had dbg instruction?
llvm/lib/CodeGen/RegAllocGreedy.cpp | ||
---|---|---|
1328 | Without slot index for dbg or probe, we don't know whether the MBB is before the split, is it safe to allow insertion of spill there? |
llvm/lib/CodeGen/RegAllocGreedy.cpp | ||
---|---|---|
1328 | I think it's by design. The original code is like below. We were skipping dbg and probe but overlooked that the block could be empty in terms of real instructions. if (!MBB->empty() && SlotIndex::isEarlierInstr(LIS->getInstructionIndex(MBB->instr_front()), SA->getFirstSplitPoint(Number))) |
Comment Actions
lgtm, thanks for the fix.
llvm/lib/CodeGen/RegAllocGreedy.cpp | ||
---|---|---|
1328 | ok, makes sense. having a probe/dbg is no different from empty block. |
Without slot index for dbg or probe, we don't know whether the MBB is before the split, is it safe to allow insertion of spill there?