There is no need to maintain InsnsBeginScopeSet separately.

llvm-svn: 104165
This commit is contained in:
Devang Patel 2010-05-19 21:26:53 +00:00
parent 63476ddae6
commit 0fe341e2e2
2 changed files with 5 additions and 13 deletions

View File

@ -2230,11 +2230,8 @@ void DwarfDebug::beginScope(const MachineInstr *MI) {
Label = recordSourceLine(DL.getLine(), DL.getCol(), 0);
PrevInstLoc = DL;
PrevLabel = Label;
}
// If this instruction begins a scope then note down corresponding label.
if (InsnsBeginScopeSet.count(MI) != 0)
LabelsBeforeInsn[MI] = Label;
}
}
return;
@ -2258,6 +2255,7 @@ void DwarfDebug::beginScope(const MachineInstr *MI) {
Label = recordSourceLine(DL.getLine(), DL.getCol(), Scope);
PrevInstLoc = DL;
PrevLabel = Label;
LabelsBeforeInsn[MI] = Label;
}
DI->second->setDbgValueLabel(Label);
}
@ -2273,11 +2271,9 @@ void DwarfDebug::beginScope(const MachineInstr *MI) {
Label = recordSourceLine(DL.getLine(), DL.getCol(), Scope);
PrevInstLoc = DL;
PrevLabel = Label;
LabelsBeforeInsn[MI] = Label;
}
// If this instruction begins a scope then note down corresponding label.
if (InsnsBeginScopeSet.count(MI) != 0)
LabelsBeforeInsn[MI] = Label;
}
/// endScope - Process end of a scope.
@ -2535,9 +2531,8 @@ void DwarfDebug::identifyScopeMarkers() {
continue;
for (SmallVector<DbgRange, 4>::const_iterator RI = Ranges.begin(),
RE = Ranges.end(); RI != RE; ++RI) {
assert(RI->first && "DbgRange does not have first instruction!");
assert(RI->second && "DbgRange does not have second instruction!");
InsnsBeginScopeSet.insert(RI->first);
assert(RI->first && "DbgRange does not have first instruction!");
assert(RI->second && "DbgRange does not have second instruction!");
InsnsEndScopeSet.insert(RI->second);
}
}
@ -2631,7 +2626,6 @@ void DwarfDebug::endFunction(const MachineFunction *MF) {
// Clear debug info
CurrentFnDbgScope = NULL;
DeleteContainerSeconds(DbgScopeMap);
InsnsBeginScopeSet.clear();
InsnsEndScopeSet.clear();
DbgValueStartMap.clear();
ConcreteScopes.clear();

View File

@ -179,8 +179,6 @@ class DwarfDebug {
/// corresponds to the MDNode mapped with the subprogram DIE.
DenseMap<DIE *, const MDNode *> ContainingTypeMap;
typedef SmallVector<DbgScope *, 2> ScopeVector;
SmallPtrSet<const MachineInstr *, 8> InsnsBeginScopeSet;
SmallPtrSet<const MachineInstr *, 8> InsnsEndScopeSet;
/// InlineInfo - Keep track of inlined functions and their location. This