Skip to content

Commit e9f6dda

Browse files
authored
Rollup merge of rust-lang#62801 - bjorn3:remove_lower_128bit_ops, r=alexcrichton
Remove support for -Zlower-128bit-ops It is broken and unused cc rust-lang#58969 blocked rust-lang/compiler-builtins#302 (removes definitions of the lang items removed in this PR) r? @alexcrichton
2 parents e13ace7 + 93de733 commit e9f6dda

File tree

11 files changed

+22
-719
lines changed

11 files changed

+22
-719
lines changed

Cargo.lock

+19-19
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ dependencies = [
1717
name = "alloc"
1818
version = "0.0.0"
1919
dependencies = [
20-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
20+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
2121
"core 0.0.0",
2222
"rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
2323
"rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -110,7 +110,7 @@ dependencies = [
110110
"autocfg 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
111111
"backtrace-sys 0.1.27 (registry+https://github.com/rust-lang/crates.io-index)",
112112
"cfg-if 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
113-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
113+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
114114
"libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
115115
"rustc-demangle 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
116116
"rustc-std-workspace-core 1.0.0",
@@ -122,7 +122,7 @@ version = "0.1.27"
122122
source = "registry+https://github.com/rust-lang/crates.io-index"
123123
dependencies = [
124124
"cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
125-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
125+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
126126
"libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
127127
"rustc-std-workspace-core 1.0.0",
128128
]
@@ -331,7 +331,7 @@ name = "cfg-if"
331331
version = "0.1.8"
332332
source = "registry+https://github.com/rust-lang/crates.io-index"
333333
dependencies = [
334-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
334+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
335335
"rustc-std-workspace-core 1.0.0",
336336
]
337337

@@ -460,7 +460,7 @@ dependencies = [
460460

461461
[[package]]
462462
name = "compiler_builtins"
463-
version = "0.1.17"
463+
version = "0.1.18"
464464
source = "registry+https://github.com/rust-lang/crates.io-index"
465465
dependencies = [
466466
"cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -791,7 +791,7 @@ name = "dlmalloc"
791791
version = "0.1.3"
792792
source = "registry+https://github.com/rust-lang/crates.io-index"
793793
dependencies = [
794-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
794+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
795795
"libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
796796
"rustc-std-workspace-core 1.0.0",
797797
]
@@ -956,7 +956,7 @@ name = "fortanix-sgx-abi"
956956
version = "0.3.2"
957957
source = "registry+https://github.com/rust-lang/crates.io-index"
958958
dependencies = [
959-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
959+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
960960
"rustc-std-workspace-core 1.0.0",
961961
]
962962

@@ -1133,7 +1133,7 @@ name = "hashbrown"
11331133
version = "0.4.0"
11341134
source = "registry+https://github.com/rust-lang/crates.io-index"
11351135
dependencies = [
1136-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
1136+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
11371137
"rustc-std-workspace-alloc 1.0.0",
11381138
"rustc-std-workspace-core 1.0.0",
11391139
]
@@ -1951,7 +1951,7 @@ dependencies = [
19511951
name = "panic_abort"
19521952
version = "0.0.0"
19531953
dependencies = [
1954-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
1954+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
19551955
"core 0.0.0",
19561956
"libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
19571957
]
@@ -1962,7 +1962,7 @@ version = "0.0.0"
19621962
dependencies = [
19631963
"alloc 0.0.0",
19641964
"cfg-if 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
1965-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
1965+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
19661966
"core 0.0.0",
19671967
"libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
19681968
"unwind 0.0.0",
@@ -2133,7 +2133,7 @@ name = "profiler_builtins"
21332133
version = "0.0.0"
21342134
dependencies = [
21352135
"cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
2136-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
2136+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
21372137
"core 0.0.0",
21382138
]
21392139

@@ -2670,7 +2670,7 @@ name = "rustc-demangle"
26702670
version = "0.1.15"
26712671
source = "registry+https://github.com/rust-lang/crates.io-index"
26722672
dependencies = [
2673-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
2673+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
26742674
"rustc-std-workspace-core 1.0.0",
26752675
]
26762676

@@ -2762,7 +2762,7 @@ dependencies = [
27622762
"alloc 0.0.0",
27632763
"build_helper 0.1.0",
27642764
"cmake 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)",
2765-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
2765+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
27662766
"core 0.0.0",
27672767
]
27682768

@@ -2984,7 +2984,7 @@ dependencies = [
29842984
"alloc 0.0.0",
29852985
"build_helper 0.1.0",
29862986
"cmake 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)",
2987-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
2987+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
29882988
"core 0.0.0",
29892989
]
29902990

@@ -3047,7 +3047,7 @@ dependencies = [
30473047
"alloc 0.0.0",
30483048
"build_helper 0.1.0",
30493049
"cmake 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)",
3050-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
3050+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
30513051
"core 0.0.0",
30523052
]
30533053

@@ -3165,7 +3165,7 @@ dependencies = [
31653165
"alloc 0.0.0",
31663166
"build_helper 0.1.0",
31673167
"cmake 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)",
3168-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
3168+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
31693169
"core 0.0.0",
31703170
]
31713171

@@ -3472,7 +3472,7 @@ dependencies = [
34723472
"backtrace 0.3.29 (registry+https://github.com/rust-lang/crates.io-index)",
34733473
"cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
34743474
"cfg-if 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
3475-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
3475+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
34763476
"core 0.0.0",
34773477
"dlmalloc 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
34783478
"fortanix-sgx-abi 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -4099,7 +4099,7 @@ version = "0.0.0"
40994099
dependencies = [
41004100
"cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)",
41014101
"cfg-if 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
4102-
"compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
4102+
"compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
41034103
"core 0.0.0",
41044104
"libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
41054105
]
@@ -4313,7 +4313,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
43134313
"checksum colored 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b0aa3473e85a3161b59845d6096b289bb577874cafeaf75ea1b1beaa6572c7fc"
43144314
"checksum commoncrypto 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d056a8586ba25a1e4d61cb090900e495952c7886786fc55f909ab2f819b69007"
43154315
"checksum commoncrypto-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1fed34f46747aa73dfaa578069fd8279d2818ade2b55f38f22a9401c7f4083e2"
4316-
"checksum compiler_builtins 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "ad9b4731b9e701aefe9e6bd1e9173f30526661508f9aaadaa5caec25ddf95585"
4316+
"checksum compiler_builtins 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "ef1c086a06d6f52f9c0d50cacdc021bfb6034ddeec9fb7e62f099f13f65472f4"
43174317
"checksum compiletest_rs 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)" = "f40ecc9332b68270998995c00f8051ee856121764a0d3230e64c9efd059d27b6"
43184318
"checksum constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8ff012e225ce166d4422e0e78419d901719760f62ae2b7969ca6b564d1b54a9e"
43194319
"checksum core-foundation 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4e2640d6d0bf22e82bed1b73c6aef8d5dd31e5abe6666c57e6d45e2649f4f887"

src/librustc/middle/lang_items.rs

-28
Original file line numberDiff line numberDiff line change
@@ -367,34 +367,6 @@ language_item_table! {
367367

368368
DebugTraitLangItem, "debug_trait", debug_trait, Target::Trait;
369369

370-
// A lang item for each of the 128-bit operators we can optionally lower.
371-
I128AddFnLangItem, "i128_add", i128_add_fn, Target::Fn;
372-
U128AddFnLangItem, "u128_add", u128_add_fn, Target::Fn;
373-
I128SubFnLangItem, "i128_sub", i128_sub_fn, Target::Fn;
374-
U128SubFnLangItem, "u128_sub", u128_sub_fn, Target::Fn;
375-
I128MulFnLangItem, "i128_mul", i128_mul_fn, Target::Fn;
376-
U128MulFnLangItem, "u128_mul", u128_mul_fn, Target::Fn;
377-
I128DivFnLangItem, "i128_div", i128_div_fn, Target::Fn;
378-
U128DivFnLangItem, "u128_div", u128_div_fn, Target::Fn;
379-
I128RemFnLangItem, "i128_rem", i128_rem_fn, Target::Fn;
380-
U128RemFnLangItem, "u128_rem", u128_rem_fn, Target::Fn;
381-
I128ShlFnLangItem, "i128_shl", i128_shl_fn, Target::Fn;
382-
U128ShlFnLangItem, "u128_shl", u128_shl_fn, Target::Fn;
383-
I128ShrFnLangItem, "i128_shr", i128_shr_fn, Target::Fn;
384-
U128ShrFnLangItem, "u128_shr", u128_shr_fn, Target::Fn;
385-
// And overflow versions for the operators that are checkable.
386-
// While MIR calls these Checked*, they return (T,bool), not Option<T>.
387-
I128AddoFnLangItem, "i128_addo", i128_addo_fn, Target::Fn;
388-
U128AddoFnLangItem, "u128_addo", u128_addo_fn, Target::Fn;
389-
I128SuboFnLangItem, "i128_subo", i128_subo_fn, Target::Fn;
390-
U128SuboFnLangItem, "u128_subo", u128_subo_fn, Target::Fn;
391-
I128MuloFnLangItem, "i128_mulo", i128_mulo_fn, Target::Fn;
392-
U128MuloFnLangItem, "u128_mulo", u128_mulo_fn, Target::Fn;
393-
I128ShloFnLangItem, "i128_shlo", i128_shlo_fn, Target::Fn;
394-
U128ShloFnLangItem, "u128_shlo", u128_shlo_fn, Target::Fn;
395-
I128ShroFnLangItem, "i128_shro", i128_shro_fn, Target::Fn;
396-
U128ShroFnLangItem, "u128_shro", u128_shro_fn, Target::Fn;
397-
398370
// Align offset for stride != 1, must not panic.
399371
AlignOffsetLangItem, "align_offset", align_offset_fn, Target::Fn;
400372

src/librustc/session/config.rs

-4
Original file line numberDiff line numberDiff line change
@@ -1406,10 +1406,6 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
14061406
saturating_float_casts: bool = (false, parse_bool, [TRACKED],
14071407
"make float->int casts UB-free: numbers outside the integer type's range are clipped to \
14081408
the max/min integer respectively, and NaN is mapped to 0"),
1409-
lower_128bit_ops: Option<bool> = (None, parse_opt_bool, [TRACKED],
1410-
"rewrite operators on i128 and u128 into lang item calls (typically provided \
1411-
by compiler-builtins) so codegen doesn't need to support them,
1412-
overriding the default for the current target"),
14131409
human_readable_cgu_names: bool = (false, parse_bool, [TRACKED],
14141410
"generate human-readable, predictable names for codegen units"),
14151411
dep_info_omit_d_target: bool = (false, parse_bool, [TRACKED],

src/librustc/ty/context.rs

+1-35
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ use crate::middle::cstore::EncodedMetadata;
2121
use crate::middle::lang_items;
2222
use crate::middle::resolve_lifetime::{self, ObjectLifetimeDefault};
2323
use crate::middle::stability;
24-
use crate::mir::{self, Body, interpret, ProjectionKind};
24+
use crate::mir::{Body, interpret, ProjectionKind};
2525
use crate::mir::interpret::{ConstValue, Allocation, Scalar};
2626
use crate::ty::subst::{Kind, InternalSubsts, SubstsRef, Subst};
2727
use crate::ty::ReprOptions;
@@ -1297,40 +1297,6 @@ impl<'tcx> TyCtxt<'tcx> {
12971297
self.get_lang_items(LOCAL_CRATE)
12981298
}
12991299

1300-
/// Due to missing llvm support for lowering 128 bit math to software emulation
1301-
/// (on some targets), the lowering can be done in MIR.
1302-
///
1303-
/// This function only exists until said support is implemented.
1304-
pub fn is_binop_lang_item(&self, def_id: DefId) -> Option<(mir::BinOp, bool)> {
1305-
let items = self.lang_items();
1306-
let def_id = Some(def_id);
1307-
if items.i128_add_fn() == def_id { Some((mir::BinOp::Add, false)) }
1308-
else if items.u128_add_fn() == def_id { Some((mir::BinOp::Add, false)) }
1309-
else if items.i128_sub_fn() == def_id { Some((mir::BinOp::Sub, false)) }
1310-
else if items.u128_sub_fn() == def_id { Some((mir::BinOp::Sub, false)) }
1311-
else if items.i128_mul_fn() == def_id { Some((mir::BinOp::Mul, false)) }
1312-
else if items.u128_mul_fn() == def_id { Some((mir::BinOp::Mul, false)) }
1313-
else if items.i128_div_fn() == def_id { Some((mir::BinOp::Div, false)) }
1314-
else if items.u128_div_fn() == def_id { Some((mir::BinOp::Div, false)) }
1315-
else if items.i128_rem_fn() == def_id { Some((mir::BinOp::Rem, false)) }
1316-
else if items.u128_rem_fn() == def_id { Some((mir::BinOp::Rem, false)) }
1317-
else if items.i128_shl_fn() == def_id { Some((mir::BinOp::Shl, false)) }
1318-
else if items.u128_shl_fn() == def_id { Some((mir::BinOp::Shl, false)) }
1319-
else if items.i128_shr_fn() == def_id { Some((mir::BinOp::Shr, false)) }
1320-
else if items.u128_shr_fn() == def_id { Some((mir::BinOp::Shr, false)) }
1321-
else if items.i128_addo_fn() == def_id { Some((mir::BinOp::Add, true)) }
1322-
else if items.u128_addo_fn() == def_id { Some((mir::BinOp::Add, true)) }
1323-
else if items.i128_subo_fn() == def_id { Some((mir::BinOp::Sub, true)) }
1324-
else if items.u128_subo_fn() == def_id { Some((mir::BinOp::Sub, true)) }
1325-
else if items.i128_mulo_fn() == def_id { Some((mir::BinOp::Mul, true)) }
1326-
else if items.u128_mulo_fn() == def_id { Some((mir::BinOp::Mul, true)) }
1327-
else if items.i128_shlo_fn() == def_id { Some((mir::BinOp::Shl, true)) }
1328-
else if items.u128_shlo_fn() == def_id { Some((mir::BinOp::Shl, true)) }
1329-
else if items.i128_shro_fn() == def_id { Some((mir::BinOp::Shr, true)) }
1330-
else if items.u128_shro_fn() == def_id { Some((mir::BinOp::Shr, true)) }
1331-
else { None }
1332-
}
1333-
13341300
pub fn stability(self) -> &'tcx stability::Index<'tcx> {
13351301
self.stability_index(LOCAL_CRATE)
13361302
}

src/librustc_mir/interpret/intrinsics.rs

+2-13
Original file line numberDiff line numberDiff line change
@@ -230,21 +230,10 @@ impl<'mir, 'tcx, M: Machine<'mir, 'tcx>> InterpCx<'mir, 'tcx, M> {
230230
&mut self,
231231
instance: ty::Instance<'tcx>,
232232
args: &[OpTy<'tcx, M::PointerTag>],
233-
dest: Option<PlaceTy<'tcx, M::PointerTag>>,
233+
_dest: Option<PlaceTy<'tcx, M::PointerTag>>,
234234
) -> InterpResult<'tcx, bool> {
235235
let def_id = instance.def_id();
236-
// Some fn calls are actually BinOp intrinsics
237-
if let Some((op, oflo)) = self.tcx.is_binop_lang_item(def_id) {
238-
let dest = dest.expect("128 lowerings can't diverge");
239-
let l = self.read_immediate(args[0])?;
240-
let r = self.read_immediate(args[1])?;
241-
if oflo {
242-
self.binop_with_overflow(op, l, r, dest)?;
243-
} else {
244-
self.binop_ignore_overflow(op, l, r, dest)?;
245-
}
246-
return Ok(true);
247-
} else if Some(def_id) == self.tcx.lang_items().panic_fn() {
236+
if Some(def_id) == self.tcx.lang_items().panic_fn() {
248237
assert!(args.len() == 1);
249238
// &(&'static str, &'static str, u32, u32)
250239
let place = self.deref_operand(args[0])?;

src/librustc_mir/transform/inline.rs

-7
Original file line numberDiff line numberDiff line change
@@ -232,13 +232,6 @@ impl Inliner<'tcx> {
232232
return false;
233233
}
234234

235-
// Do not inline {u,i}128 lang items, codegen const eval depends
236-
// on detecting calls to these lang items and intercepting them
237-
if tcx.is_binop_lang_item(callsite.callee).is_some() {
238-
debug!(" not inlining 128bit integer lang item");
239-
return false;
240-
}
241-
242235
let codegen_fn_attrs = tcx.codegen_fn_attrs(callsite.callee);
243236

244237
let hinted = match codegen_fn_attrs.inline {

0 commit comments

Comments
 (0)