Skip to content

Commit b97c58b

Browse files
Update compiler_builtins to 0.1.112
The `weak-intrinsics` feature was removed from compiler_builtins in rust-lang/compiler-builtins#598, so dropped the `compiler-builtins-weak-intrinsics` feature from alloc/std/sysroot. In rust-lang/compiler-builtins#593, some builtins for f16/f128 were added. These don't work for all compiler backends, so add a `compiler-builtins-no-f16-f128` feature and disable it for cranelift and gcc. Also disable it for LLVM targets that don't support it.
1 parent 99e6a28 commit b97c58b

File tree

6 files changed

+19
-9
lines changed

6 files changed

+19
-9
lines changed

Cargo.lock

+2-2
Original file line numberDiff line numberDiff line change
@@ -769,9 +769,9 @@ checksum = "55b672471b4e9f9e95499ea597ff64941a309b2cdbffcc46f2cc5e2d971fd335"
769769

770770
[[package]]
771771
name = "compiler_builtins"
772-
version = "0.1.109"
772+
version = "0.1.112"
773773
source = "registry+https://github.com/rust-lang/crates.io-index"
774-
checksum = "f11973008a8cf741fe6d22f339eba21fd0ca81e2760a769ba8243ed6c21edd7e"
774+
checksum = "b15acab2bb4fe4dad1f1e31f3d9e714f50ef561a0f87dd8a9da004f14d455e1a"
775775
dependencies = [
776776
"cc",
777777
"rustc-std-workspace-core",

compiler/rustc_codegen_cranelift/build_system/build_sysroot.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ fn build_clif_sysroot_for_triple(
276276
if channel == "release" {
277277
build_cmd.arg("--release");
278278
}
279-
build_cmd.arg("--features").arg("backtrace panic-unwind");
279+
build_cmd.arg("--features").arg("backtrace panic-unwind compiler-builtins-no-f16-f128");
280280
build_cmd.env("CARGO_PROFILE_RELEASE_DEBUG", "true");
281281
build_cmd.env("__CARGO_DEFAULT_LIB_METADATA", "cg_clif");
282282
if compiler.triple.contains("apple") {

compiler/rustc_codegen_gcc/build_system/src/build.rs

+8-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,14 @@ pub fn build_sysroot(env: &HashMap<String, String>, config: &ConfigInfo) -> Resu
112112
}
113113
let mut env = env.clone();
114114

115-
let mut args: Vec<&dyn AsRef<OsStr>> = vec![&"cargo", &"build", &"--target", &config.target];
115+
let mut args: Vec<&dyn AsRef<OsStr>> = vec![
116+
&"cargo",
117+
&"build",
118+
&"--target",
119+
&config.target,
120+
&"--features",
121+
&"compiler-builtins-no-f16-f128",
122+
];
116123

117124
if config.no_default_features {
118125
rustflags.push_str(" -Csymbol-mangling-version=v0");

library/alloc/Cargo.toml

+5-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@ edition = "2021"
1010

1111
[dependencies]
1212
core = { path = "../core" }
13-
compiler_builtins = { version = "0.1.40", features = ['rustc-dep-of-std'] }
13+
compiler_builtins = { version = "0.1.112", features = ['rustc-dep-of-std'] }
14+
15+
[target.'cfg(not(any(target_arch = "aarch64", target_arch = "x86", target_arch = "x86_64")))'.dependencies]
16+
compiler_builtins = { version = "0.1.112", features = ["no-f16-f128"] }
1417

1518
[dev-dependencies]
1619
rand = { version = "0.8.5", default-features = false, features = ["alloc"] }
@@ -38,8 +41,8 @@ harness = false
3841
compiler-builtins-mem = ['compiler_builtins/mem']
3942
compiler-builtins-c = ["compiler_builtins/c"]
4043
compiler-builtins-no-asm = ["compiler_builtins/no-asm"]
44+
compiler-builtins-no-f16-f128 = ["compiler_builtins/no-f16-f128"]
4145
compiler-builtins-mangled-names = ["compiler_builtins/mangled-names"]
42-
compiler-builtins-weak-intrinsics = ["compiler_builtins/weak-intrinsics"]
4346
# Make panics and failed asserts immediately abort without formatting any message
4447
panic_immediate_abort = ["core/panic_immediate_abort"]
4548
# Choose algorithms that are optimized for binary size instead of runtime performance

library/std/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ cfg-if = { version = "1.0", features = ['rustc-dep-of-std'] }
1717
panic_unwind = { path = "../panic_unwind", optional = true }
1818
panic_abort = { path = "../panic_abort" }
1919
core = { path = "../core", public = true }
20-
compiler_builtins = { version = "0.1.105" }
20+
compiler_builtins = { version = "0.1.112" }
2121
profiler_builtins = { path = "../profiler_builtins", optional = true }
2222
unwind = { path = "../unwind" }
2323
hashbrown = { version = "0.14", default-features = false, features = ['rustc-dep-of-std'] }
@@ -71,8 +71,8 @@ profiler = ["profiler_builtins"]
7171
compiler-builtins-c = ["alloc/compiler-builtins-c"]
7272
compiler-builtins-mem = ["alloc/compiler-builtins-mem"]
7373
compiler-builtins-no-asm = ["alloc/compiler-builtins-no-asm"]
74+
compiler-builtins-no-f16-f128 = ["alloc/compiler-builtins-no-f16-f128"]
7475
compiler-builtins-mangled-names = ["alloc/compiler-builtins-mangled-names"]
75-
compiler-builtins-weak-intrinsics = ["alloc/compiler-builtins-weak-intrinsics"]
7676
llvm-libunwind = ["unwind/llvm-libunwind"]
7777
system-llvm-libunwind = ["unwind/system-llvm-libunwind"]
7878

library/sysroot/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ backtrace = ["std/backtrace"]
1616
compiler-builtins-c = ["std/compiler-builtins-c"]
1717
compiler-builtins-mem = ["std/compiler-builtins-mem"]
1818
compiler-builtins-no-asm = ["std/compiler-builtins-no-asm"]
19+
compiler-builtins-no-f16-f128 = ["std/compiler-builtins-no-f16-f128"]
1920
compiler-builtins-mangled-names = ["std/compiler-builtins-mangled-names"]
20-
compiler-builtins-weak-intrinsics = ["std/compiler-builtins-weak-intrinsics"]
2121
llvm-libunwind = ["std/llvm-libunwind"]
2222
system-llvm-libunwind = ["std/system-llvm-libunwind"]
2323
panic-unwind = ["std/panic_unwind"]

0 commit comments

Comments
 (0)