mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 21:29:20 +00:00
Ugh, perform an optimization that GCC should be able to do itself. This
speeds up livevar from .48/.32s -> .45/.31s in LLC on perlbmk git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11217 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
96aef89338
commit
499487742e
@ -146,14 +146,15 @@ void LiveVariables::HandlePhysRegDef(unsigned Reg, MachineInstr *MI) {
|
|||||||
|
|
||||||
for (const unsigned *AliasSet = RegInfo->getAliasSet(Reg);
|
for (const unsigned *AliasSet = RegInfo->getAliasSet(Reg);
|
||||||
*AliasSet; ++AliasSet) {
|
*AliasSet; ++AliasSet) {
|
||||||
if (MachineInstr *LastUse = PhysRegInfo[*AliasSet]) {
|
unsigned Alias = *AliasSet;
|
||||||
if (PhysRegUsed[*AliasSet])
|
if (MachineInstr *LastUse = PhysRegInfo[Alias]) {
|
||||||
RegistersKilled.insert(std::make_pair(LastUse, *AliasSet));
|
if (PhysRegUsed[Alias])
|
||||||
|
RegistersKilled.insert(std::make_pair(LastUse, Alias));
|
||||||
else
|
else
|
||||||
RegistersDead.insert(std::make_pair(LastUse, *AliasSet));
|
RegistersDead.insert(std::make_pair(LastUse, Alias));
|
||||||
}
|
}
|
||||||
PhysRegInfo[*AliasSet] = MI;
|
PhysRegInfo[Alias] = MI;
|
||||||
PhysRegUsed[*AliasSet] = false;
|
PhysRegUsed[Alias] = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user