diff options
| author | pat-nel87 <71235856+pat-nel87@users.noreply.github.com> | 2023-03-26 11:20:56 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-26 11:20:56 -0400 |
| commit | af489afeb7b6ca6f31848c4141652f4dcb2a7fa6 (patch) | |
| tree | f28bc68704d4bc0dc9a4490258b569f77e47d629 /compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp | |
| parent | 21549dac539dc220f052d038ec643645cedbbd6d (diff) | |
| parent | 89c2e3d3d75486e52473de3ae38f0ca6efeffef2 (diff) | |
| download | rust-af489afeb7b6ca6f31848c4141652f4dcb2a7fa6.tar.gz rust-af489afeb7b6ca6f31848c4141652f4dcb2a7fa6.zip | |
Merge branch 'master' into Issue-107957-black_box_docs
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp')
| -rw-r--r-- | compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp b/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp index b1e6534944d..e3493caaaf7 100644 --- a/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp +++ b/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp @@ -1751,6 +1751,19 @@ LLVMRustModuleCost(LLVMModuleRef M) { return std::distance(std::begin(f), std::end(f)); } +extern "C" void +LLVMRustModuleInstructionStats(LLVMModuleRef M, RustStringRef Str) +{ + RawRustStringOstream OS(Str); + llvm::json::OStream JOS(OS); + auto Module = unwrap(M); + + JOS.object([&] { + JOS.attribute("module", Module->getName()); + JOS.attribute("total", Module->getInstructionCount()); + }); +} + // Vector reductions: extern "C" LLVMValueRef LLVMRustBuildVectorReduceFAdd(LLVMBuilderRef B, LLVMValueRef Acc, LLVMValueRef Src) { |
