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