mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-22 10:24:26 +00:00
Fix PR3486. Fix a bug in code that manually patch physical register live interval after its sub-register is coalesced with a virtual register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64082 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -824,11 +824,18 @@ bool LiveIntervals::findReachableMBBs(unsigned Start, unsigned End,
|
||||
}
|
||||
|
||||
LiveInterval* LiveIntervals::createInterval(unsigned reg) {
|
||||
float Weight = TargetRegisterInfo::isPhysicalRegister(reg) ?
|
||||
HUGE_VALF : 0.0F;
|
||||
float Weight = TargetRegisterInfo::isPhysicalRegister(reg) ? HUGE_VALF : 0.0F;
|
||||
return new LiveInterval(reg, Weight);
|
||||
}
|
||||
|
||||
/// dupInterval - Duplicate a live interval. The caller is responsible for
|
||||
/// managing the allocated memory.
|
||||
LiveInterval* LiveIntervals::dupInterval(LiveInterval *li) {
|
||||
LiveInterval *NewLI = createInterval(li->reg);
|
||||
NewLI->Copy(*li, getVNInfoAllocator());
|
||||
return NewLI;
|
||||
}
|
||||
|
||||
/// getVNInfoSourceReg - Helper function that parses the specified VNInfo
|
||||
/// copy field and returns the source register that defines it.
|
||||
unsigned LiveIntervals::getVNInfoSourceReg(const VNInfo *VNI) const {
|
||||
|
Reference in New Issue
Block a user