@@ -272,8 +272,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
272272 let a = this. read_scalar ( a) ?. to_f32 ( ) ?;
273273 let b = this. read_scalar ( b) ?. to_f32 ( ) ?;
274274 let c = this. read_scalar ( c) ?. to_f32 ( ) ?;
275- // FIXME: Using host floats, to work around https://github.com/rust-lang/rustc_apfloat/issues/11
276- let res = a. to_host ( ) . mul_add ( b. to_host ( ) , c. to_host ( ) ) . to_soft ( ) ;
275+ let res = a. mul_add ( b, c) . value ;
277276 let res = this. adjust_nan ( res, & [ a, b, c] ) ;
278277 this. write_scalar ( res, dest) ?;
279278 }
@@ -282,8 +281,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
282281 let a = this. read_scalar ( a) ?. to_f64 ( ) ?;
283282 let b = this. read_scalar ( b) ?. to_f64 ( ) ?;
284283 let c = this. read_scalar ( c) ?. to_f64 ( ) ?;
285- // FIXME: Using host floats, to work around https://github.com/rust-lang/rustc_apfloat/issues/11
286- let res = a. to_host ( ) . mul_add ( b. to_host ( ) , c. to_host ( ) ) . to_soft ( ) ;
284+ let res = a. mul_add ( b, c) . value ;
287285 let res = this. adjust_nan ( res, & [ a, b, c] ) ;
288286 this. write_scalar ( res, dest) ?;
289287 }
@@ -295,8 +293,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
295293 let c = this. read_scalar ( c) ?. to_f32 ( ) ?;
296294 let fuse: bool = this. machine . float_nondet && this. machine . rng . get_mut ( ) . random ( ) ;
297295 let res = if fuse {
298- // FIXME: Using host floats, to work around https://github.com/rust-lang/rustc_apfloat/issues/11
299- a. to_host ( ) . mul_add ( b. to_host ( ) , c. to_host ( ) ) . to_soft ( )
296+ a. mul_add ( b, c) . value
300297 } else {
301298 ( ( a * b) . value + c) . value
302299 } ;
@@ -310,8 +307,7 @@ pub trait EvalContextExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
310307 let c = this. read_scalar ( c) ?. to_f64 ( ) ?;
311308 let fuse: bool = this. machine . float_nondet && this. machine . rng . get_mut ( ) . random ( ) ;
312309 let res = if fuse {
313- // FIXME: Using host floats, to work around https://github.com/rust-lang/rustc_apfloat/issues/11
314- a. to_host ( ) . mul_add ( b. to_host ( ) , c. to_host ( ) ) . to_soft ( )
310+ a. mul_add ( b, c) . value
315311 } else {
316312 ( ( a * b) . value + c) . value
317313 } ;
0 commit comments