diff options
| author | Michael Woerister <michaelwoerister@posteo> | 2019-04-16 13:54:01 +0200 |
|---|---|---|
| committer | Michael Woerister <michaelwoerister@posteo> | 2019-04-18 15:33:59 +0200 |
| commit | e2acaee8bb364197af2ab197f0f641e8f988ae04 (patch) | |
| tree | 176c8db289a2112b6c1beb37bb8841a6fa08034c /src/test/codegen | |
| parent | 227be657cdeee2259199b24fb9691f7f8994c5e6 (diff) | |
| download | rust-e2acaee8bb364197af2ab197f0f641e8f988ae04.tar.gz rust-e2acaee8bb364197af2ab197f0f641e8f988ae04.zip | |
Add codegen test that makes sure PGO instrumentation is emitted as expected.
Diffstat (limited to 'src/test/codegen')
| -rw-r--r-- | src/test/codegen/pgo-instrumentation.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/test/codegen/pgo-instrumentation.rs b/src/test/codegen/pgo-instrumentation.rs new file mode 100644 index 00000000000..8493ef565d8 --- /dev/null +++ b/src/test/codegen/pgo-instrumentation.rs @@ -0,0 +1,20 @@ +// Test that `-Zpgo-gen` creates expected instrumentation artifacts in LLVM IR. + +// needs-profiler-support +// compile-flags: -Z pgo-gen -Ccodegen-units=1 + +// CHECK: @__llvm_profile_raw_version = +// CHECK: @__profc_{{.*}}pgo_instrumentation{{.*}}some_function{{.*}} = private global +// CHECK: @__profd_{{.*}}pgo_instrumentation{{.*}}some_function{{.*}} = private global +// CHECK: @__profc_{{.*}}pgo_instrumentation{{.*}}main{{.*}} = private global +// CHECK: @__profd_{{.*}}pgo_instrumentation{{.*}}main{{.*}} = private global +// CHECK: @__llvm_profile_filename = {{.*}}"default_%m.profraw\00"{{.*}} + +#[inline(never)] +fn some_function() { + +} + +fn main() { + some_function(); +} |
