mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-10-20 09:24:58 +00:00
A few more comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45069 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
cdd0417ba3
commit
965b467767
@ -311,6 +311,10 @@ void StrongPHIElimination::processBlock(MachineBasicBlock* MBB) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// processPHIUnion - Take a set of candidate registers to be coallesced when
|
||||||
|
/// decomposing the PHI instruction. Use the DominanceForest to remove the ones
|
||||||
|
/// that are known to interfere, and flag others that need to be checked for
|
||||||
|
/// local interferences.
|
||||||
void StrongPHIElimination::processPHIUnion(MachineInstr* Inst,
|
void StrongPHIElimination::processPHIUnion(MachineInstr* Inst,
|
||||||
std::set<unsigned>& PHIUnion,
|
std::set<unsigned>& PHIUnion,
|
||||||
std::vector<StrongPHIElimination::DomForestNode*>& DF,
|
std::vector<StrongPHIElimination::DomForestNode*>& DF,
|
||||||
@ -322,6 +326,7 @@ void StrongPHIElimination::processPHIUnion(MachineInstr* Inst,
|
|||||||
LiveVariables& LV = getAnalysis<LiveVariables>();
|
LiveVariables& LV = getAnalysis<LiveVariables>();
|
||||||
unsigned DestReg = Inst->getOperand(0).getReg();
|
unsigned DestReg = Inst->getOperand(0).getReg();
|
||||||
|
|
||||||
|
// DF walk on the DomForest
|
||||||
while (!worklist.empty()) {
|
while (!worklist.empty()) {
|
||||||
DomForestNode* DFNode = worklist.back();
|
DomForestNode* DFNode = worklist.back();
|
||||||
|
|
||||||
@ -350,7 +355,7 @@ void StrongPHIElimination::processPHIUnion(MachineInstr* Inst,
|
|||||||
// Add (p, c) to possible local interferences
|
// Add (p, c) to possible local interferences
|
||||||
locals.push_back(std::make_pair(DFNode->getReg(), child->getReg()));
|
locals.push_back(std::make_pair(DFNode->getReg(), child->getReg()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!visited.count(child)) {
|
if (!visited.count(child)) {
|
||||||
worklist.push_back(child);
|
worklist.push_back(child);
|
||||||
inserted = true;
|
inserted = true;
|
||||||
|
Loading…
Reference in New Issue
Block a user