Skip to content

Commit 9b1f943

Browse files
authored
Rollup merge of #114496 - taiki-e:sparc32-atomic, r=Amanieu
Set max_atomic_width for sparc-unknown-linux-gnu to 32 This is currently set to 64 https://github.com/rust-lang/rust/blob/90f0b24ad3e7fc0dc0e419c9da30d74629cd5736/compiler/rustc_target/src/spec/sparc_unknown_linux_gnu.rs#L8 However, AFAIK, this architecture doesn't support 64-bit atomics, and LLVM generates libcalls: https://godbolt.org/z/chzThWGG1 (Currently, attempts to run `cargo test` for this target result in "undefined reference to `__sync_val_compare_and_swap_8'" error. taiki-e/rust-cross-toolchain@02efe1e) r? `@Amanieu`
2 parents b0a5126 + 4d4df88 commit 9b1f943

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

compiler/rustc_target/src/spec/sparc_unknown_linux_gnu.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ pub fn target() -> Target {
55
let mut base = super::linux_gnu_base::opts();
66
base.endian = Endian::Big;
77
base.cpu = "v9".into();
8-
base.max_atomic_width = Some(64);
8+
base.max_atomic_width = Some(32);
99
base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-mv8plus"]);
1010

1111
Target {

0 commit comments

Comments
 (0)