mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-19 18:24:00 +00:00
LiveInterval: Document and enforce rules about empty subranges.
Empty subranges are not allowed in a LiveInterval and must be removed instead: Check this in the verifiers, put a reminder for this in the comment of the shrinkToUses variant for a single lane and make it automatic for the shrinkToUses variant for a LiveInterval. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@242431 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -1671,6 +1671,8 @@ void MachineVerifier::verifyLiveInterval(const LiveInterval &LI) {
|
||||
report("Lane masks of sub ranges overlap in live interval", MF, LI);
|
||||
if ((SR.LaneMask & ~MaxMask) != 0)
|
||||
report("Subrange lanemask is invalid", MF, LI);
|
||||
if (SR.empty())
|
||||
report("Subrange must not be empty", MF, SR, LI.reg, SR.LaneMask);
|
||||
Mask |= SR.LaneMask;
|
||||
verifyLiveRange(SR, LI.reg, SR.LaneMask);
|
||||
if (!LI.covers(SR))
|
||||
|
Reference in New Issue
Block a user