2024-03-06 14:44:54 -06:00
|
|
|
//@ ignore-wasm32 custom sections work differently on wasm
|
2015-08-03 17:38:06 -05:00
|
|
|
//@ compile-flags: -C no-prepopulate-passes
|
|
|
|
|
2015-09-15 16:22:16 -05:00
|
|
|
#![crate_type = "lib"]
|
|
|
|
|
2023-05-23 08:26:31 -05:00
|
|
|
// CHECK: @VAR1 = {{(dso_local )?}}constant <{ [4 x i8] }> <{ [4 x i8] c"\01\00\00\00" }>, section ".test_one"
|
2015-08-03 17:38:06 -05:00
|
|
|
#[no_mangle]
|
|
|
|
#[link_section = ".test_one"]
|
2018-05-12 11:47:20 -05:00
|
|
|
#[cfg(target_endian = "little")]
|
2015-08-03 17:38:06 -05:00
|
|
|
pub static VAR1: u32 = 1;
|
|
|
|
|
2018-05-12 11:47:20 -05:00
|
|
|
#[no_mangle]
|
|
|
|
#[link_section = ".test_one"]
|
|
|
|
#[cfg(target_endian = "big")]
|
|
|
|
pub static VAR1: u32 = 0x01000000;
|
|
|
|
|
2015-08-03 17:38:06 -05:00
|
|
|
pub enum E {
|
|
|
|
A(u32),
|
|
|
|
B(f32)
|
|
|
|
}
|
|
|
|
|
2023-05-23 08:26:31 -05:00
|
|
|
// CHECK: @VAR2 = {{(dso_local )?}}constant {{.*}}, section ".test_two"
|
2015-08-03 17:38:06 -05:00
|
|
|
#[no_mangle]
|
|
|
|
#[link_section = ".test_two"]
|
|
|
|
pub static VAR2: E = E::A(666);
|
|
|
|
|
2023-05-23 08:26:31 -05:00
|
|
|
// CHECK: @VAR3 = {{(dso_local )?}}constant {{.*}}, section ".test_three"
|
2015-08-03 17:38:06 -05:00
|
|
|
#[no_mangle]
|
|
|
|
#[link_section = ".test_three"]
|
|
|
|
pub static VAR3: E = E::B(1.);
|
|
|
|
|
2023-05-23 08:26:31 -05:00
|
|
|
// CHECK: define {{(dso_local )?}}void @fn1() {{.*}} section ".test_four" {
|
2015-08-03 17:38:06 -05:00
|
|
|
#[no_mangle]
|
|
|
|
#[link_section = ".test_four"]
|
|
|
|
pub fn fn1() {}
|