mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-05 12:31:33 +00:00
The fast-path still needs to set kill markers and spill/restore points as appropriate.
With this patch, all of MultiSource/Applications and all of SPEC2000/2006 pass with the SimpleSpiller and this fast-path enabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55000 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
140be2dfb7
commit
712c9f0690
@ -1666,12 +1666,15 @@ addIntervalsForSpillsFast(const LiveInterval &li,
|
|||||||
VNMap[MO.getParent()]);
|
VNMap[MO.getParent()]);
|
||||||
DOUT << " +" << LR;
|
DOUT << " +" << LR;
|
||||||
nI.addRange(LR);
|
nI.addRange(LR);
|
||||||
|
vrm.addRestorePoint(NewVReg, MO.getParent());
|
||||||
|
MO.setIsKill(true);
|
||||||
}
|
}
|
||||||
if (HasDef) {
|
if (HasDef) {
|
||||||
LiveRange LR(getDefIndex(index), getStoreIndex(index),
|
LiveRange LR(getDefIndex(index), getStoreIndex(index),
|
||||||
VNMap[MO.getParent()]);
|
VNMap[MO.getParent()]);
|
||||||
DOUT << " +" << LR;
|
DOUT << " +" << LR;
|
||||||
nI.addRange(LR);
|
nI.addRange(LR);
|
||||||
|
vrm.addSpillPoint(NewVReg, true, MO.getParent());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (newInt)
|
if (newInt)
|
||||||
|
Loading…
Reference in New Issue
Block a user