summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-10-28 19:16:35 +0000
committerChris Lattner <sabre@nondot.org>2003-10-28 19:16:35 +0000
commit6f82d07060b5eb90bf12a1a03a268df18baff67b (patch)
treec773a028fba27da72307b59d15cda8e08c527124
parent8be7aa11c36f9ccbfddca0744321740a4558db94 (diff)
downloadllvm-6f82d07060b5eb90bf12a1a03a268df18baff67b.tar.gz
llvm-6f82d07060b5eb90bf12a1a03a268df18baff67b.tar.bz2
llvm-6f82d07060b5eb90bf12a1a03a268df18baff67b.tar.xz
Initial checkin of llvmprof stub
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9551 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--tools/llvm-prof/Makefile13
-rw-r--r--tools/llvm-prof/llvm-prof.cpp36
2 files changed, 49 insertions, 0 deletions
diff --git a/tools/llvm-prof/Makefile b/tools/llvm-prof/Makefile
new file mode 100644
index 0000000000..4132e11f40
--- /dev/null
+++ b/tools/llvm-prof/Makefile
@@ -0,0 +1,13 @@
+##===- tools/llvm-prof/Makefile ----------------------------*- Makefile -*-===##
+#
+# 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.
+#
+##===----------------------------------------------------------------------===##
+LEVEL = ../..
+
+TOOLNAME = llvm-prof
+USEDLIBS = bcreader vmcore support.a
+include $(LEVEL)/Makefile.common
diff --git a/tools/llvm-prof/llvm-prof.cpp b/tools/llvm-prof/llvm-prof.cpp
new file mode 100644
index 0000000000..0d5778ae51
--- /dev/null
+++ b/tools/llvm-prof/llvm-prof.cpp
@@ -0,0 +1,36 @@
+//===- llvm-prof.cpp - Read in and process llvmprof.out data files --------===//
+//
+// 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 tools is meant for use with the various LLVM profiling instrumentation
+// passes. It reads in the data file produced by executing an instrumented
+// program, and outputs a nice report.
+//
+//===----------------------------------------------------------------------===//
+
+#include "llvm/Bytecode/Reader.h"
+#include "Support/CommandLine.h"
+
+namespace {
+ cl::opt<std::string>
+ BytecodeFile(cl::Positional, cl::desc("<program bytecode file>"),
+ cl::Required);
+
+ cl::opt<std::string>
+ ProfileDataFile(cl::Positional, cl::desc("<llvmprof.out file>"),
+ cl::Optional, cl::init("llvmprof.out"));
+}
+
+int main(int argc, char **argv) {
+ cl::ParseCommandLineOptions(argc, argv, " llvm profile dump decoder\n");
+
+
+
+
+ return 0;
+}