summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Instrumentation/ProfilingUtils.h
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2011-01-29 01:09:53 +0000
committerAndrew Trick <atrick@apple.com>2011-01-29 01:09:53 +0000
commit24f5ff0f234b1b786291d79e252ef1a7a7eb5f4b (patch)
tree10198d00ffe2811bff03dd747d5a2f6c4e528c49 /llvm/lib/Transforms/Instrumentation/ProfilingUtils.h
parentfea7ddc735d0f0981c2d8b0d0eeae1dd2ad88770 (diff)
downloadbcm5719-llvm-24f5ff0f234b1b786291d79e252ef1a7a7eb5f4b.tar.gz
bcm5719-llvm-24f5ff0f234b1b786291d79e252ef1a7a7eb5f4b.zip
Implementation of path profiling.
Modified patch by Adam Preuss. This builds on the existing framework for block tracing, edge profiling and optimal edge profiling. See -help-hidden for new flags. For documentation, see the technical report "Implementation of Path Profiling..." in llvm.org/pubs. llvm-svn: 124515
Diffstat (limited to 'llvm/lib/Transforms/Instrumentation/ProfilingUtils.h')
-rw-r--r--llvm/lib/Transforms/Instrumentation/ProfilingUtils.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Instrumentation/ProfilingUtils.h b/llvm/lib/Transforms/Instrumentation/ProfilingUtils.h
index 94efffec8a3..a76e3576e1c 100644
--- a/llvm/lib/Transforms/Instrumentation/ProfilingUtils.h
+++ b/llvm/lib/Transforms/Instrumentation/ProfilingUtils.h
@@ -21,11 +21,14 @@ namespace llvm {
class Function;
class GlobalValue;
class BasicBlock;
+ class PointerType;
void InsertProfilingInitCall(Function *MainFn, const char *FnName,
- GlobalValue *Arr = 0);
+ GlobalValue *Arr = 0,
+ PointerType *arrayType = 0);
void IncrementCounterInBlock(BasicBlock *BB, unsigned CounterNum,
- GlobalValue *CounterArray);
+ GlobalValue *CounterArray,
+ bool beginning = true);
}
#endif
OpenPOWER on IntegriCloud