Open
Description
Issue
I tried to compile a generic hello-world binary with the -Zinstrument-mcount
compiler option.
I expected every function-entry to have a call to mcount()
.
Instead, there are no such calls inserted.
Triage
I have triaged the bug, and it first occurred in nightly-2021-08-22
, the first version with LLVM13.
The LLVM-IR still contains the "instrument-function-entry-inlined"="mcount"
attributes, but the corrosponding llvm-pass is not run anymore.
rustc +nightly-2021-08-21 -O -Zinstrument-mcount main.rs --emit asm -Z print-llvm-passes -Z no-parallel-llvm 2>&1 | grep mcount
Instrument function entry/exit with calls to e.g. mcount() (pre inlining)
Instrument function entry/exit with calls to e.g. mcount() (post inlining)
rustc +nightly-2021-08-22 -O -Zinstrument-mcount main.rs --emit asm -Z print-llvm-passes -Z no-parallel-llvm 2>&1 | grep mcount
[empty]
Verbose Versions:
❯ rustc +nightly-2021-08-21 --version --verbose
rustc 1.56.0-nightly (a0035916e 2021-08-20)
binary: rustc
commit-hash: a0035916e01d8e644ccd44554c57f0874cef8c8c
commit-date: 2021-08-20
host: x86_64-unknown-linux-gnu
release: 1.56.0-nightly
LLVM version: 12.0.1
❯ rustc +nightly-2021-08-22 --version --verbose
rustc 1.56.0-nightly (d3e2578c3 2021-08-21)
binary: rustc
commit-hash: d3e2578c31688619ddc0a10ddf8543bf4ebcba5b
commit-date: 2021-08-21
host: x86_64-unknown-linux-gnu
release: 1.56.0-nightly
LLVM version: 13.0.0