Skip to content

Commit 79f023e

Browse files
committed
Auto merge of #1547 - RalfJung:rustup, r=RalfJung
rustup; no need to special-case the guaranteed_eq/ne intrinsics any more
2 parents 09e6ccc + 3163242 commit 79f023e

File tree

2 files changed

+3
-10
lines changed

2 files changed

+3
-10
lines changed

rust-version

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
a1894e4afe1a39f718cc27232a5a2f0d02b501f6
1+
7bdb5dee7bac15458b10b148e9e24968e633053e

src/shims/intrinsics.rs

+2-9
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ use rustc_middle::{mir, ty};
88
use rustc_middle::ty::layout::IntegerExt;
99
use rustc_apfloat::{Float, Round};
1010
use rustc_target::abi::{Align, Integer, LayoutOf};
11-
use rustc_span::symbol::sym;
1211

1312
use crate::*;
1413
use helpers::check_arg_count;
@@ -23,19 +22,13 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriEvalContextExt<'mir, 'tcx
2322
_unwind: Option<mir::BasicBlock>,
2423
) -> InterpResult<'tcx> {
2524
let this = self.eval_context_mut();
26-
let intrinsic_name = this.tcx.item_name(instance.def_id());
27-
// We want to overwrite some of the intrinsic implementations that CTFE uses.
28-
let prefer_miri_intrinsic = match intrinsic_name {
29-
sym::ptr_guaranteed_eq | sym::ptr_guaranteed_ne => true,
30-
_ => false,
31-
};
3225

33-
if !prefer_miri_intrinsic && this.emulate_intrinsic(instance, args, ret)? {
26+
if this.emulate_intrinsic(instance, args, ret)? {
3427
return Ok(());
3528
}
3629

3730
// All supported intrinsics have a return place.
38-
let intrinsic_name = &*intrinsic_name.as_str();
31+
let intrinsic_name = &*this.tcx.item_name(instance.def_id()).as_str();
3932
let (dest, ret) = match ret {
4033
None => throw_unsup_format!("unimplemented (diverging) intrinsic: {}", intrinsic_name),
4134
Some(p) => p,

0 commit comments

Comments
 (0)