2018-08-02 16:10:26 +00:00
|
|
|
// This test makes sure that functions get annotated with the proper
|
|
|
|
// "target-cpu" attribute in LLVM.
|
|
|
|
|
2018-08-06 09:16:28 +00:00
|
|
|
//@ no-prefer-dynamic
|
2021-04-03 11:05:11 +00:00
|
|
|
//
|
2019-02-01 14:15:43 +00:00
|
|
|
//@ compile-flags: -C no-prepopulate-passes -C panic=abort -C linker-plugin-lto -Cpasses=name-anon-globals
|
2018-08-02 16:10:26 +00:00
|
|
|
|
|
|
|
#![crate_type = "staticlib"]
|
|
|
|
|
|
|
|
// CHECK-LABEL: define {{.*}} @exported() {{.*}} #0
|
|
|
|
#[no_mangle]
|
2020-09-01 21:28:11 +00:00
|
|
|
pub extern "C" fn exported() {
|
2018-08-02 16:10:26 +00:00
|
|
|
not_exported();
|
|
|
|
}
|
|
|
|
|
2019-04-13 16:03:02 +00:00
|
|
|
// CHECK-LABEL: ; target_cpu_on_functions::not_exported
|
|
|
|
// CHECK-NEXT: ; Function Attrs:
|
2023-10-07 00:29:42 +00:00
|
|
|
// CHECK-NEXT: define {{.*}}() {{.*}} #1
|
|
|
|
#[inline(never)]
|
2018-08-02 16:10:26 +00:00
|
|
|
fn not_exported() {}
|
|
|
|
|
2018-08-09 07:39:02 +00:00
|
|
|
// CHECK: attributes #0 = {{.*}} "target-cpu"="{{.*}}"
|