summaryrefslogtreecommitdiffstats
path: root/llvm/runtime/libprofile/BasicBlockTracing.c
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2006-11-16 23:17:27 +0000
committerReid Spencer <rspencer@reidspencer.com>2006-11-16 23:17:27 +0000
commit3f97d03f862e1debfedfda4e6dd5ed7bb4ee8c4c (patch)
tree83dcd162f585ea723252fa1ec7ed4fae49828948 /llvm/runtime/libprofile/BasicBlockTracing.c
parent48850c10c0278cb335aa2158166241923705ad6c (diff)
downloadbcm5719-llvm-3f97d03f862e1debfedfda4e6dd5ed7bb4ee8c4c.tar.gz
bcm5719-llvm-3f97d03f862e1debfedfda4e6dd5ed7bb4ee8c4c.zip
In LLVM 2.0 we won't use the runtime libraries as llvm-gcc3 support will
be dropped. This patch pertains to removing the runtime directory from LLVM. llvm-svn: 31793
Diffstat (limited to 'llvm/runtime/libprofile/BasicBlockTracing.c')
-rw-r--r--llvm/runtime/libprofile/BasicBlockTracing.c67
1 files changed, 0 insertions, 67 deletions
diff --git a/llvm/runtime/libprofile/BasicBlockTracing.c b/llvm/runtime/libprofile/BasicBlockTracing.c
deleted file mode 100644
index e70dc052843..00000000000
--- a/llvm/runtime/libprofile/BasicBlockTracing.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/*===-- BasicBlockTracing.c - Support library for basic block tracing -----===*\
-|*
-|* The LLVM Compiler Infrastructure
-|*
-|* This file was developed by the LLVM research group and is distributed under
-|* the University of Illinois Open Source License. See LICENSE.TXT for details.
-|*
-|*===----------------------------------------------------------------------===*|
-|*
-|* This file implements the call back routines for the basic block tracing
-|* instrumentation pass. This should be used with the -trace-basic-blocks
-|* LLVM pass.
-|*
-\*===----------------------------------------------------------------------===*/
-
-#include "Profiling.h"
-#include <stdlib.h>
-#include <stdio.h>
-
-static unsigned *ArrayStart, *ArrayEnd, *ArrayCursor;
-
-/* WriteAndFlushBBTraceData - write out the currently accumulated trace data
- * and reset the cursor to point to the beginning of the buffer.
- */
-static void WriteAndFlushBBTraceData () {
- write_profiling_data(BBTraceInfo, ArrayStart, (ArrayCursor - ArrayStart));
- ArrayCursor = ArrayStart;
-}
-
-/* BBTraceAtExitHandler - When the program exits, just write out any remaining
- * data and free the trace buffer.
- */
-static void BBTraceAtExitHandler() {
- WriteAndFlushBBTraceData ();
- free (ArrayStart);
-}
-
-/* llvm_trace_basic_block - called upon hitting a new basic block. */
-void llvm_trace_basic_block (unsigned BBNum) {
- *ArrayCursor++ = BBNum;
- if (ArrayCursor == ArrayEnd)
- WriteAndFlushBBTraceData ();
-}
-
-/* llvm_start_basic_block_tracing - This is the main entry point of the basic
- * block tracing library. It is responsible for setting up the atexit
- * handler and allocating the trace buffer.
- */
-int llvm_start_basic_block_tracing(int argc, const char **argv,
- unsigned *arrayStart, unsigned numElements) {
- int Ret;
- const unsigned BufferSize = 128 * 1024;
- unsigned ArraySize;
-
- Ret = save_arguments(argc, argv);
-
- /* Allocate a buffer to contain BB tracing data */
- ArraySize = BufferSize / sizeof (unsigned);
- ArrayStart = malloc (ArraySize * sizeof (unsigned));
- ArrayEnd = ArrayStart + ArraySize;
- ArrayCursor = ArrayStart;
-
- /* Set up the atexit handler. */
- atexit (BBTraceAtExitHandler);
-
- return Ret;
-}
OpenPOWER on IntegriCloud