diff options
| author | bors <bors@rust-lang.org> | 2020-07-19 07:25:18 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2020-07-19 07:25:18 +0000 |
| commit | 47ea6d90b073ab977cf072e2f5f46d63de532cc6 (patch) | |
| tree | d408537bbf5d8d3063d19914f6e30efe02c74681 /src/bootstrap | |
| parent | 0701419e96d94e5493c7ebfcecb66511ab0aa778 (diff) | |
| parent | a6f8b8a2116f0ea7e31d572d3120508678ed8079 (diff) | |
| download | rust-47ea6d90b073ab977cf072e2f5f46d63de532cc6.tar.gz rust-47ea6d90b073ab977cf072e2f5f46d63de532cc6.zip | |
Auto merge of #74091 - richkadel:llvm-coverage-map-gen-4, r=tmandry
Generating the coverage map @tmandry @wesleywiser rustc now generates the coverage map and can support (limited) coverage report generation, at the function level. Example commands to generate a coverage report: ```shell $ BUILD=$HOME/rust/build/x86_64-unknown-linux-gnu $ $BUILD/stage1/bin/rustc -Zinstrument-coverage \ $HOME/rust/src/test/run-make-fulldeps/instrument-coverage/main.rs $ LLVM_PROFILE_FILE="main.profraw" ./main called $ $BUILD/llvm/bin/llvm-profdata merge -sparse main.profraw -o main.profdata $ $BUILD/llvm/bin/llvm-cov show --instr-profile=main.profdata main ```  r? @wesleywiser Rust compiler MCP rust-lang/compiler-team#278 Relevant issue: #34701 - Implement support for LLVMs code coverage instrumentation
Diffstat (limited to 'src/bootstrap')
| -rw-r--r-- | src/bootstrap/builder.rs | 1 | ||||
| -rw-r--r-- | src/bootstrap/test.rs | 4 | ||||
| -rw-r--r-- | src/bootstrap/tool.rs | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs index a8161c9bfb8..70e5f6ac26f 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs @@ -370,6 +370,7 @@ impl<'a> Builder<'a> { tool::Cargo, tool::Rls, tool::RustAnalyzer, + tool::RustDemangler, tool::Rustdoc, tool::Clippy, tool::CargoClippy, diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs index b6641180c92..b76d80aa509 100644 --- a/src/bootstrap/test.rs +++ b/src/bootstrap/test.rs @@ -1022,6 +1022,10 @@ impl Step for Compiletest { cmd.arg("--rustdoc-path").arg(builder.rustdoc(compiler)); } + if mode == "run-make" && suite.ends_with("fulldeps") { + cmd.arg("--rust-demangler-path").arg(builder.tool_exe(Tool::RustDemangler)); + } + cmd.arg("--src-base").arg(builder.src.join("src/test").join(suite)); cmd.arg("--build-base").arg(testdir(builder, compiler.host).join(suite)); cmd.arg("--stage-id").arg(format!("stage{}-{}", compiler.stage, target)); diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs index f66061975d6..fe3f1e78029 100644 --- a/src/bootstrap/tool.rs +++ b/src/bootstrap/tool.rs @@ -361,6 +361,7 @@ bootstrap_tool!( Compiletest, "src/tools/compiletest", "compiletest", is_unstable_tool = true; BuildManifest, "src/tools/build-manifest", "build-manifest"; RemoteTestClient, "src/tools/remote-test-client", "remote-test-client"; + RustDemangler, "src/tools/rust-demangler", "rust-demangler"; RustInstaller, "src/tools/rust-installer", "fabricate", is_external_tool = true; RustdocTheme, "src/tools/rustdoc-themes", "rustdoc-themes"; ExpandYamlAnchors, "src/tools/expand-yaml-anchors", "expand-yaml-anchors"; |
