From 8fa6dc431deb7a9aadc23ec0a7bdcb2d02330972 Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Sat, 9 Mar 2013 02:06:37 +0000 Subject: [PATCH] Fix bug introduced in r176616 when making function identifier numbers stable. Count the subprograms, not the compile units. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176751 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Instrumentation/GCOVProfiling.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/lib/Transforms/Instrumentation/GCOVProfiling.cpp b/lib/Transforms/Instrumentation/GCOVProfiling.cpp index c448caa15ab..cc0356e3d6a 100644 --- a/lib/Transforms/Instrumentation/GCOVProfiling.cpp +++ b/lib/Transforms/Instrumentation/GCOVProfiling.cpp @@ -665,10 +665,8 @@ void GCOVProfiler::insertCounterWriteout( Builder.CreateCall2(StartFile, Builder.CreateGlobalStringPtr(FilenameGcda), Builder.CreateGlobalStringPtr(Version)); - for (ArrayRef >::iterator - I = CountersBySP.begin(), E = CountersBySP.end(); - I != E; ++I) { - DISubprogram SP(I->second); + for (unsigned j = 0, e = CountersBySP.size(); j != e; ++j) { + DISubprogram SP(CountersBySP[j].second); Builder.CreateCall3(EmitFunction, Builder.getInt32(i), NoFunctionNamesInData ? @@ -676,7 +674,7 @@ void GCOVProfiler::insertCounterWriteout( Builder.CreateGlobalStringPtr(SP.getName()), Builder.getInt8(UseExtraChecksum)); - GlobalVariable *GV = I->first; + GlobalVariable *GV = CountersBySP[j].first; unsigned Arcs = cast(GV->getType()->getElementType())->getNumElements(); Builder.CreateCall2(EmitArcs,