From 23d0acc520a87e99695215bc0bb4cf4694c7fae8 Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Mon, 31 Jan 2011 21:36:24 +0000 Subject: [PATCH] While printing "interesting" breakpoint locations for debug info quality test harness, focus only on entry block's terminator for now. llvm-svn: 124610 --- tools/opt/opt.cpp | 39 ++++++++++++--------------------------- 1 file changed, 12 insertions(+), 27 deletions(-) diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp index ff8f65cfff7..64c08ab56af 100644 --- a/tools/opt/opt.cpp +++ b/tools/opt/opt.cpp @@ -349,34 +349,19 @@ struct BreakpointPrinter : public FunctionPass { } virtual bool runOnFunction(Function &F) { - for (Function::iterator I = F.begin(), E = F.end(); I != E; ++I) { - BasicBlock::const_iterator BI = I->end(); - --BI; - do { - const Instruction *In = BI; - const DebugLoc DL = In->getDebugLoc(); - if (!DL.isUnknown()) { - DIScope S(DL.getScope(getGlobalContext())); - Out << S.getFilename() << " " << DL.getLine() << "\n"; - break; - } - --BI; - } while (BI != I->begin()); - break; - } BasicBlock &EntryBB = F.getEntryBlock(); - for (Function::iterator I = F.begin(), E = F.end(); I != E; ++I) { - BasicBlock *BB = I; - if (BB == &EntryBB) continue; - for (BasicBlock::iterator BI = I->begin(), BE = I->end(); BI != BE; ++BI) - if (CallInst *CI = dyn_cast(BI)) { - const DebugLoc DL = CI->getDebugLoc(); - if (!DL.isUnknown()) { - DIScope S(DL.getScope(getGlobalContext())); - Out << S.getFilename() << " " << DL.getLine() << "\n"; - } - } - } + BasicBlock::const_iterator BI = EntryBB.end(); + --BI; + do { + const Instruction *In = BI; + const DebugLoc DL = In->getDebugLoc(); + if (!DL.isUnknown()) { + DIScope S(DL.getScope(getGlobalContext())); + Out << S.getFilename() << " " << DL.getLine() << "\n"; + break; + } + --BI; + } while (BI != EntryBB.begin()); return false; }