1
Fork 0

Add unstable -Z direct-access-external-data cmdline flag for rustc

The new flag has been described in the Major Change Proposal at
https://github.com/rust-lang/compiler-team/issues/707
This commit is contained in:
WANG Rui 2023-12-14 22:07:53 +08:00
parent 94807670a6
commit 06a41687b1
8 changed files with 74 additions and 10 deletions

View file

@ -0,0 +1,21 @@
// only-loongarch64-unknown-linux-gnu
// revisions: DEFAULT DIRECT INDIRECT
// [DEFAULT] compile-flags: -C relocation-model=static
// [DIRECT] compile-flags: -C relocation-model=static -Z direct-access-external-data=yes
// [INDIRECT] compile-flags: -C relocation-model=static -Z direct-access-external-data=no
#![crate_type = "rlib"]
// DEFAULT: @VAR = external {{.*}} global i32
// DIRECT: @VAR = external dso_local {{.*}} global i32
// INDIRECT: @VAR = external {{.*}} global i32
extern "C" {
static VAR: i32;
}
#[no_mangle]
pub fn get() -> i32 {
unsafe { VAR }
}