There is no need to write a local utility routine to find subprogram info if the utility routine is already available in DebugInfo.

llvm-svn: 140145
This commit is contained in:
Devang Patel 2011-09-20 15:57:19 +00:00
parent 96a806199d
commit b011105d6c
1 changed files with 1 additions and 10 deletions

View File

@ -109,15 +109,6 @@ ModulePass *llvm::createGCOVProfilerPass(bool EmitNotes, bool EmitData,
return new GCOVProfiler(EmitNotes, EmitData, Use402Format);
}
static DISubprogram findSubprogram(DIScope Scope) {
while (!Scope.isSubprogram()) {
assert(Scope.isLexicalBlock() &&
"Debug location not lexical block or subprogram");
Scope = DILexicalBlock(Scope).getContext();
}
return DISubprogram(Scope);
}
namespace {
class GCOVRecord {
protected:
@ -403,7 +394,7 @@ void GCOVProfiler::emitGCNO() {
if (Loc.isUnknown()) continue;
if (Line == Loc.getLine()) continue;
Line = Loc.getLine();
if (SP != findSubprogram(DIScope(Loc.getScope(*Ctx)))) continue;
if (SP != getDISubprogram(Loc.getScope(*Ctx))) continue;
GCOVLines &Lines = Block.getFile(SP.getFilename());
Lines.addLine(Loc.getLine());