@@ -8,7 +8,6 @@ use rustc_middle::{mir, ty};
8
8
use rustc_middle:: ty:: layout:: IntegerExt ;
9
9
use rustc_apfloat:: { Float , Round } ;
10
10
use rustc_target:: abi:: { Align , Integer , LayoutOf } ;
11
- use rustc_span:: symbol:: sym;
12
11
13
12
use crate :: * ;
14
13
use helpers:: check_arg_count;
@@ -23,19 +22,13 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriEvalContextExt<'mir, 'tcx
23
22
_unwind : Option < mir:: BasicBlock > ,
24
23
) -> InterpResult < ' tcx > {
25
24
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
- } ;
32
25
33
- if !prefer_miri_intrinsic && this. emulate_intrinsic ( instance, args, ret) ? {
26
+ if this. emulate_intrinsic ( instance, args, ret) ? {
34
27
return Ok ( ( ) ) ;
35
28
}
36
29
37
30
// 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 ( ) ;
39
32
let ( dest, ret) = match ret {
40
33
None => throw_unsup_format ! ( "unimplemented (diverging) intrinsic: {}" , intrinsic_name) ,
41
34
Some ( p) => p,
0 commit comments