From f42264e7e4cb947bcd1ff7dd48fd0ba4e9fbbf9f Mon Sep 17 00:00:00 2001 From: Yuchen Wu Date: Tue, 12 Nov 2013 04:59:08 +0000 Subject: [PATCH] llvm-cov: Added call to update run/program counts. Also updated test files that were generated from this change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194453 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../Instrumentation/GCOVProfiling.cpp | 8 ++++++++ test/tools/llvm-cov/Inputs/test.gcda | Bin 857 -> 824 bytes test/tools/llvm-cov/Inputs/test.gcno | Bin 3113 -> 3112 bytes 3 files changed, 8 insertions(+) diff --git a/lib/Transforms/Instrumentation/GCOVProfiling.cpp b/lib/Transforms/Instrumentation/GCOVProfiling.cpp index 4e9afeed430..206bffbb274 100644 --- a/lib/Transforms/Instrumentation/GCOVProfiling.cpp +++ b/lib/Transforms/Instrumentation/GCOVProfiling.cpp @@ -102,6 +102,7 @@ namespace { Constant *getIncrementIndirectCounterFunc(); Constant *getEmitFunctionFunc(); Constant *getEmitArcsFunc(); + Constant *getSummaryInfoFunc(); Constant *getDeleteWriteoutFunctionListFunc(); Constant *getDeleteFlushFunctionListFunc(); Constant *getEndFileFunc(); @@ -700,6 +701,11 @@ Constant *GCOVProfiler::getEmitArcsFunc() { return M->getOrInsertFunction("llvm_gcda_emit_arcs", FTy); } +Constant *GCOVProfiler::getSummaryInfoFunc() { + FunctionType *FTy = FunctionType::get(Type::getVoidTy(*Ctx), false); + return M->getOrInsertFunction("llvm_gcda_summary_info", FTy); +} + Constant *GCOVProfiler::getDeleteWriteoutFunctionListFunc() { FunctionType *FTy = FunctionType::get(Type::getVoidTy(*Ctx), false); return M->getOrInsertFunction("llvm_delete_writeout_function_list", FTy); @@ -746,6 +752,7 @@ Function *GCOVProfiler::insertCounterWriteout( Constant *StartFile = getStartFileFunc(); Constant *EmitFunction = getEmitFunctionFunc(); Constant *EmitArcs = getEmitArcsFunc(); + Constant *SummaryInfo = getSummaryInfoFunc(); Constant *EndFile = getEndFileFunc(); NamedMDNode *CU_Nodes = M->getNamedMetadata("llvm.dbg.cu"); @@ -772,6 +779,7 @@ Function *GCOVProfiler::insertCounterWriteout( Builder.getInt32(Arcs), Builder.CreateConstGEP2_64(GV, 0, 0)); } + Builder.CreateCall(SummaryInfo); Builder.CreateCall(EndFile); } } diff --git a/test/tools/llvm-cov/Inputs/test.gcda b/test/tools/llvm-cov/Inputs/test.gcda index 16fff43acc9e59b4452e27fea7223d30215b648c..23d03bdd1fd2e4da1ed7ea957db0477b88c0eeda 100644 GIT binary patch delta 40 Zcmcb~wu5a02lM0?j3P1&s9-TN7XX(-1gHQ2 delta 89 vcmdnNc9U%b2Xml20|NsS5a$6g8xVs4BZLBr1DT6CfyAOae{+dY%fJNywi*X` diff --git a/test/tools/llvm-cov/Inputs/test.gcno b/test/tools/llvm-cov/Inputs/test.gcno index 9db4f59dc78818edad0c202389603850b7b9c6da..6162604e7449ce85feb8bb6cd6438556c21ab1ee 100644 GIT binary patch delta 7 OcmZ1}u|i^l1`hxWN&;p8 delta 9 QcmZ1>u~K4#1`i__01zMoaR2}S -- 2.34.1