diff options
| author | Graydon Hoare <graydon@mozilla.com> | 2011-05-10 16:10:08 -0700 |
|---|---|---|
| committer | Graydon Hoare <graydon@mozilla.com> | 2011-05-10 16:10:08 -0700 |
| commit | d6f1fcff6b056f1f0eb54989bbd2a68bf255ff22 (patch) | |
| tree | 71317080577dd8cac3cb0e0ce48e58960a9d1e96 /src/rustllvm/RustWrapper.cpp | |
| parent | 813636d52e1d77785e4ec28c0fd5e5f513d2e020 (diff) | |
| download | rust-d6f1fcff6b056f1f0eb54989bbd2a68bf255ff22.tar.gz rust-d6f1fcff6b056f1f0eb54989bbd2a68bf255ff22.zip | |
Add --time-llvm-passes.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
| -rw-r--r-- | src/rustllvm/RustWrapper.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
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); +} |
