@@ -57,7 +57,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
5757 } ;
5858
5959 for i in 0 ..dest_len {
60- let op = this. read_immediate ( & this. project_index ( & op, i) ?. into ( ) ) ?;
60+ let op = this. read_immediate ( & this. project_index ( & op, i) ?) ?;
6161 let dest = this. project_index ( & dest, i) ?;
6262 let val = match which {
6363 Op :: MirOp ( mir_op) => this. unary_op ( mir_op, & op) ?. to_scalar ( ) ,
@@ -172,8 +172,8 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
172172 } ;
173173
174174 for i in 0 ..dest_len {
175- let left = this. read_immediate ( & this. project_index ( & left, i) ?. into ( ) ) ?;
176- let right = this. read_immediate ( & this. project_index ( & right, i) ?. into ( ) ) ?;
175+ let left = this. read_immediate ( & this. project_index ( & left, i) ?) ?;
176+ let right = this. read_immediate ( & this. project_index ( & right, i) ?) ?;
177177 let dest = this. project_index ( & dest, i) ?;
178178 let val = match which {
179179 Op :: MirOp ( mir_op) => {
@@ -232,9 +232,9 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
232232 assert_eq ! ( dest_len, c_len) ;
233233
234234 for i in 0 ..dest_len {
235- let a = this. read_scalar ( & this. project_index ( & a, i) ?. into ( ) ) ?;
236- let b = this. read_scalar ( & this. project_index ( & b, i) ?. into ( ) ) ?;
237- let c = this. read_scalar ( & this. project_index ( & c, i) ?. into ( ) ) ?;
235+ let a = this. read_scalar ( & this. project_index ( & a, i) ?) ?;
236+ let b = this. read_scalar ( & this. project_index ( & b, i) ?) ?;
237+ let c = this. read_scalar ( & this. project_index ( & c, i) ?) ?;
238238 let dest = this. project_index ( & dest, i) ?;
239239
240240 // Works for f32 and f64.
@@ -295,13 +295,13 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
295295 } ;
296296
297297 // Initialize with first lane, then proceed with the rest.
298- let mut res = this. read_immediate ( & this. project_index ( & op, 0 ) ?. into ( ) ) ?;
298+ let mut res = this. read_immediate ( & this. project_index ( & op, 0 ) ?) ?;
299299 if matches ! ( which, Op :: MirOpBool ( _) ) {
300300 // Convert to `bool` scalar.
301301 res = imm_from_bool ( simd_element_to_bool ( res) ?) ;
302302 }
303303 for i in 1 ..op_len {
304- let op = this. read_immediate ( & this. project_index ( & op, i) ?. into ( ) ) ?;
304+ let op = this. read_immediate ( & this. project_index ( & op, i) ?) ?;
305305 res = match which {
306306 Op :: MirOp ( mir_op) => {
307307 this. binary_op ( mir_op, & res, & op) ?
@@ -355,7 +355,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
355355
356356 let mut res = init;
357357 for i in 0 ..op_len {
358- let op = this. read_immediate ( & this. project_index ( & op, i) ?. into ( ) ) ?;
358+ let op = this. read_immediate ( & this. project_index ( & op, i) ?) ?;
359359 res = this. binary_op ( mir_op, & res, & op) ?;
360360 }
361361 this. write_immediate ( * res, dest) ?;
@@ -372,9 +372,9 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
372372 assert_eq ! ( dest_len, no_len) ;
373373
374374 for i in 0 ..dest_len {
375- let mask = this. read_immediate ( & this. project_index ( & mask, i) ?. into ( ) ) ?;
376- let yes = this. read_immediate ( & this. project_index ( & yes, i) ?. into ( ) ) ?;
377- let no = this. read_immediate ( & this. project_index ( & no, i) ?. into ( ) ) ?;
375+ let mask = this. read_immediate ( & this. project_index ( & mask, i) ?) ?;
376+ let yes = this. read_immediate ( & this. project_index ( & yes, i) ?) ?;
377+ let no = this. read_immediate ( & this. project_index ( & no, i) ?) ?;
378378 let dest = this. project_index ( & dest, i) ?;
379379
380380 let val = if simd_element_to_bool ( mask) ? { yes } else { no } ;
@@ -403,8 +403,8 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
403403 & 1u64
404404 . checked_shl ( simd_bitmask_index ( i, dest_len, this. data_layout ( ) . endian ) )
405405 . unwrap ( ) ;
406- let yes = this. read_immediate ( & this. project_index ( & yes, i. into ( ) ) ?. into ( ) ) ?;
407- let no = this. read_immediate ( & this. project_index ( & no, i. into ( ) ) ?. into ( ) ) ?;
406+ let yes = this. read_immediate ( & this. project_index ( & yes, i. into ( ) ) ?) ?;
407+ let no = this. read_immediate ( & this. project_index ( & no, i. into ( ) ) ?) ?;
408408 let dest = this. project_index ( & dest, i. into ( ) ) ?;
409409
410410 let val = if mask != 0 { yes } else { no } ;
@@ -435,7 +435,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
435435 let from_exposed_cast = intrinsic_name == "from_exposed_addr" ;
436436
437437 for i in 0 ..dest_len {
438- let op = this. read_immediate ( & this. project_index ( & op, i) ?. into ( ) ) ?;
438+ let op = this. read_immediate ( & this. project_index ( & op, i) ?) ?;
439439 let dest = this. project_index ( & dest, i) ?;
440440
441441 let val = match ( op. layout . ty . kind ( ) , dest. layout . ty . kind ( ) ) {
@@ -503,10 +503,10 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
503503 let dest = this. project_index ( & dest, i) ?;
504504
505505 let val = if src_index < left_len {
506- this. read_immediate ( & this. project_index ( & left, src_index) ?. into ( ) ) ?
506+ this. read_immediate ( & this. project_index ( & left, src_index) ?) ?
507507 } else if src_index < left_len. checked_add ( right_len) . unwrap ( ) {
508508 let right_idx = src_index. checked_sub ( left_len) . unwrap ( ) ;
509- this. read_immediate ( & this. project_index ( & right, right_idx) ?. into ( ) ) ?
509+ this. read_immediate ( & this. project_index ( & right, right_idx) ?) ?
510510 } else {
511511 span_bug ! (
512512 this. cur_span( ) ,
@@ -528,14 +528,14 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
528528 assert_eq ! ( dest_len, mask_len) ;
529529
530530 for i in 0 ..dest_len {
531- let passthru = this. read_immediate ( & this. project_index ( & passthru, i) ?. into ( ) ) ?;
532- let ptr = this. read_immediate ( & this. project_index ( & ptrs, i) ?. into ( ) ) ?;
533- let mask = this. read_immediate ( & this. project_index ( & mask, i) ?. into ( ) ) ?;
531+ let passthru = this. read_immediate ( & this. project_index ( & passthru, i) ?) ?;
532+ let ptr = this. read_immediate ( & this. project_index ( & ptrs, i) ?) ?;
533+ let mask = this. read_immediate ( & this. project_index ( & mask, i) ?) ?;
534534 let dest = this. project_index ( & dest, i) ?;
535535
536536 let val = if simd_element_to_bool ( mask) ? {
537- let place = this. deref_operand ( & ptr. into ( ) ) ?;
538- this. read_immediate ( & place. into ( ) ) ?
537+ let place = this. deref_operand ( & ptr) ?;
538+ this. read_immediate ( & place) ?
539539 } else {
540540 passthru
541541 } ;
@@ -552,12 +552,12 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
552552 assert_eq ! ( ptrs_len, mask_len) ;
553553
554554 for i in 0 ..ptrs_len {
555- let value = this. read_immediate ( & this. project_index ( & value, i) ?. into ( ) ) ?;
556- let ptr = this. read_immediate ( & this. project_index ( & ptrs, i) ?. into ( ) ) ?;
557- let mask = this. read_immediate ( & this. project_index ( & mask, i) ?. into ( ) ) ?;
555+ let value = this. read_immediate ( & this. project_index ( & value, i) ?) ?;
556+ let ptr = this. read_immediate ( & this. project_index ( & ptrs, i) ?) ?;
557+ let mask = this. read_immediate ( & this. project_index ( & mask, i) ?) ?;
558558
559559 if simd_element_to_bool ( mask) ? {
560- let place = this. deref_operand ( & ptr. into ( ) ) ?;
560+ let place = this. deref_operand ( & ptr) ?;
561561 this. write_immediate ( * value, & place) ?;
562562 }
563563 }
@@ -578,7 +578,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriInterpCxExt<'mir, 'tcx> {
578578
579579 let mut res = 0u64 ;
580580 for i in 0 ..op_len {
581- let op = this. read_immediate ( & this. project_index ( & op, i. into ( ) ) ?. into ( ) ) ?;
581+ let op = this. read_immediate ( & this. project_index ( & op, i. into ( ) ) ?) ?;
582582 if simd_element_to_bool ( op) ? {
583583 res |= 1u64
584584 . checked_shl ( simd_bitmask_index ( i, op_len, this. data_layout ( ) . endian ) )
0 commit comments