rust-lang / rust-lang/rustc_codegen_cranelift

-Zcoverage is unimplemented

Open
#1,494 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

C-enhancement
Dominant language
Rust
Stars
2.1k
Forks
157
Avg merge
1d 19h
Merged PRs (30d)
3

Description

I've tried to use the cranlift rust backend for a project that records code coverage for tests. For this I run the following command:

RUSTFLAGS="-Zcodegen-backend=cranelift" cargo +nightly llvm-cov test -j 1

which resulted in the following error:

   Compiling proc-macro2 v1.0.78
error: -Zcoverage is unimplemented

stmt Coverage::CounterIncrement(0)
fn main() -> () {
    let mut _0: ();
// … more MIR 

I expected that this would likely not work. I was just surprised that there is no issue for this yet, so I filled that one.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the reported command with the Cranelift backend and tracing where the -Zcoverage option reaches the backend. Review the emitted Coverage::CounterIncrement MIR shown in the report; done means coverage instrumentation works without the unimplemented error and the relevant behavior is tested.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.