• R
    Generating the coverage map · a6f8b8a2
    Rich Kadel 提交于
    rustc now generates the coverage map and can support (limited)
    coverage report generation, at the function level.
    
    Example:
    
    $ 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
        1|      1|pub fn will_be_called() {
        2|      1|    println!("called");
        3|      1|}
        4|       |
        5|      0|pub fn will_not_be_called() {
        6|      0|    println!("should not have been called");
        7|      0|}
        8|       |
        9|      1|fn main() {
       10|      1|    let less = 1;
       11|      1|    let more = 100;
       12|      1|
       13|      1|    if less < more {
       14|      1|        will_be_called();
       15|      1|    } else {
       16|      1|        will_not_be_called();
       17|      1|    }
       18|      1|}
    a6f8b8a2
fake_lang_items.rs 1.0 KB