diff options
| author | Tomasz Miąsko <tomasz.miasko@gmail.com> | 2022-12-02 00:00:00 +0000 |
|---|---|---|
| committer | Tomasz Miąsko <tomasz.miasko@gmail.com> | 2022-12-03 01:03:28 +0100 |
| commit | c955add18c88427eaf09ec2086e3f8a9ccd30021 (patch) | |
| tree | 858af4f02627cab87277cc28605a628d14f4921c /src/test/codegen | |
| parent | 32e613bbaafee1bcabba48a2257b838f8d1c03d3 (diff) | |
Disable coverage instrumentation for naked functions
Diffstat (limited to 'src/test/codegen')
| -rw-r--r-- | src/test/codegen/naked-nocoverage.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/codegen/naked-nocoverage.rs b/src/test/codegen/naked-nocoverage.rs new file mode 100644 index 00000000000..91a6260bf2a --- /dev/null +++ b/src/test/codegen/naked-nocoverage.rs @@ -0,0 +1,19 @@ +// Checks that naked functions are not instrumented by -Cinstrument-coverage. +// Regression test for issue #105170. +// +// needs-asm-support +// needs-profiler-support +// compile-flags: -Cinstrument-coverage +#![crate_type = "lib"] +#![feature(naked_functions)] +use std::arch::asm; + +#[naked] +#[no_mangle] +pub unsafe extern "C" fn f() { + // CHECK: define void @f() + // CHECK-NEXT: start: + // CHECK-NEXT: call void asm + // CHECK-NEXT: unreachable + asm!("", options(noreturn)); +} |
