Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 2fd73fa

Browse files
committed
Auto merge of rust-lang#83412 - pnkfelix:stable-revert-effect-of-pr-77885-for-issue-83139, r=nagisa
[stable] probe-stack=call everywhere again, for now. To buy time on issue 83139, revert effect of PR 77885: We will not conditionally enable probe-stack=inline-asm on LLVM 11+ anymore on any of our targets that opted into doing so on PR rust-lang#77885 (and were subsequently configured to do so in a fine grained manner on PR rust-lang#80838). After we resolve 83139 (potentially by backporting a fix to LLVM, or potentially by deciding that one cannot rely on the quality of our DWARF output in the manner described in issue 83139), we can change this back. cc rust-lang#83139
2 parents 9bb6d54 + b75894e commit 2fd73fa

33 files changed

+64
-75
lines changed

compiler/rustc_target/src/spec/i386_apple_ios.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ pub fn target() -> Target {
1212
arch: "x86".to_string(),
1313
options: TargetOptions {
1414
max_atomic_width: Some(64),
15-
stack_probes: StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) },
15+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
16+
stack_probes: StackProbeType::Call,
1617
..base
1718
},
1819
}

compiler/rustc_target/src/spec/i686_apple_darwin.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ pub fn target() -> Target {
66
base.max_atomic_width = Some(64);
77
base.pre_link_args.insert(LinkerFlavor::Gcc, vec!["-m32".to_string()]);
88
base.link_env_remove.extend(super::apple_base::macos_link_env_remove());
9-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
9+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
10+
base.stack_probes = StackProbeType::Call;
1011
base.eliminate_frame_pointer = false;
1112

1213
// Clang automatically chooses a more specific target based on

compiler/rustc_target/src/spec/i686_linux_android.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ pub fn target() -> Target {
1111
// http://developer.android.com/ndk/guides/abis.html#x86
1212
base.cpu = "pentiumpro".to_string();
1313
base.features = "+mmx,+sse,+sse2,+sse3,+ssse3".to_string();
14-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
14+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
15+
base.stack_probes = StackProbeType::Call;
1516

1617
Target {
1718
llvm_target: "i686-linux-android".to_string(),

compiler/rustc_target/src/spec/i686_unknown_freebsd.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@ pub fn target() -> Target {
77
let pre_link_args = base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap();
88
pre_link_args.push("-m32".to_string());
99
pre_link_args.push("-Wl,-znotext".to_string());
10-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
10+
11+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
12+
base.stack_probes = StackProbeType::Call;
1113

1214
Target {
1315
llvm_target: "i686-unknown-freebsd".to_string(),

compiler/rustc_target/src/spec/i686_unknown_haiku.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ pub fn target() -> Target {
55
base.cpu = "pentium4".to_string();
66
base.max_atomic_width = Some(64);
77
base.pre_link_args.insert(LinkerFlavor::Gcc, vec!["-m32".to_string()]);
8-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
8+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
9+
base.stack_probes = StackProbeType::Call;
910

1011
Target {
1112
llvm_target: "i686-unknown-haiku".to_string(),

compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ pub fn target() -> Target {
55
base.cpu = "pentium4".to_string();
66
base.max_atomic_width = Some(64);
77
base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string());
8-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
8+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
9+
base.stack_probes = StackProbeType::Call;
910

1011
Target {
1112
llvm_target: "i686-unknown-linux-gnu".to_string(),

compiler/rustc_target/src/spec/i686_unknown_linux_musl.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ pub fn target() -> Target {
66
base.max_atomic_width = Some(64);
77
base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string());
88
base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-Wl,-melf_i386".to_string());
9-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
9+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
10+
base.stack_probes = StackProbeType::Call;
1011

1112
// The unwinder used by i686-unknown-linux-musl, the LLVM libunwind
1213
// implementation, apparently relies on frame pointers existing... somehow.

compiler/rustc_target/src/spec/i686_unknown_netbsd.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ pub fn target() -> Target {
55
base.cpu = "pentium4".to_string();
66
base.max_atomic_width = Some(64);
77
base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string());
8-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
8+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
9+
base.stack_probes = StackProbeType::Call;
910

1011
Target {
1112
llvm_target: "i686-unknown-netbsdelf".to_string(),

compiler/rustc_target/src/spec/i686_unknown_openbsd.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ pub fn target() -> Target {
66
base.max_atomic_width = Some(64);
77
base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string());
88
base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-fuse-ld=lld".to_string());
9-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
9+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
10+
base.stack_probes = StackProbeType::Call;
1011

1112
Target {
1213
llvm_target: "i686-unknown-openbsd".to_string(),

compiler/rustc_target/src/spec/i686_wrs_vxworks.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ pub fn target() -> Target {
55
base.cpu = "pentium4".to_string();
66
base.max_atomic_width = Some(64);
77
base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string());
8-
base.stack_probes = StackProbeType::InlineOrCall { min_llvm_version_for_inline: (11, 0, 1) };
8+
// don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
9+
base.stack_probes = StackProbeType::Call;
910

1011
Target {
1112
llvm_target: "i686-unknown-linux-gnu".to_string(),

0 commit comments

Comments
 (0)