From d6f1fcff6b056f1f0eb54989bbd2a68bf255ff22 Mon Sep 17 00:00:00 2001 From: Graydon Hoare Date: Tue, 10 May 2011 16:10:08 -0700 Subject: Add --time-llvm-passes. --- src/rustllvm/RustWrapper.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/rustllvm/RustWrapper.cpp') diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index b57695199f9..2a3d8aeb79e 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -16,6 +16,8 @@ #include "llvm/PassManager.h" #include "llvm/ADT/Triple.h" #include "llvm/Support/FormattedStream.h" +#include "llvm/Support/Timer.h" +#include "llvm/Support/raw_ostream.h" #include "llvm/Target/TargetMachine.h" #include "llvm/Target/TargetSelect.h" #include "llvm/Target/TargetRegistry.h" @@ -121,3 +123,13 @@ extern "C" LLVMValueRef LLVMRustConstSmallInt(LLVMTypeRef IntTy, unsigned N, LLVMBool SignExtend) { return LLVMConstInt(IntTy, (unsigned long long)N, SignExtend); } + +extern bool llvm::TimePassesIsEnabled; +extern "C" void LLVMRustEnableTimePasses() { + TimePassesIsEnabled = true; +} + +extern "C" void LLVMRustPrintPassTimings() { + raw_fd_ostream OS (2, false); // stderr. + TimerGroup::printAll(OS); +} -- cgit 1.4.1-3-g733a5