From ffa467a0d0d184d1ff61e34f663d7dfbc75ae1aa Mon Sep 17 00:00:00 2001 From: Andrew Brown Date: Fri, 6 Mar 2020 19:12:43 -0800 Subject: [PATCH] Translate Wasm's f32x4.convert_i32x4s to Cranelift's fcvt_from_sint --- cranelift/wasm/src/code_translator.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cranelift/wasm/src/code_translator.rs b/cranelift/wasm/src/code_translator.rs index 4e64b539e8..b20d3091e7 100644 --- a/cranelift/wasm/src/code_translator.rs +++ b/cranelift/wasm/src/code_translator.rs @@ -1467,6 +1467,10 @@ pub fn translate_operator( let a = pop1_with_bitcast(state, type_of(op), builder); state.push1(builder.ins().fabs(a)) } + Operator::F32x4ConvertI32x4S => { + let a = pop1_with_bitcast(state, I32X4, builder); + state.push1(builder.ins().fcvt_from_sint(F32X4, a)) + } Operator::I8x16Shl | Operator::I8x16ShrS | Operator::I8x16ShrU @@ -1477,7 +1481,6 @@ pub fn translate_operator( | Operator::I32x4TruncSatF32x4U | Operator::I64x2TruncSatF64x2S | Operator::I64x2TruncSatF64x2U - | Operator::F32x4ConvertI32x4S | Operator::F32x4ConvertI32x4U | Operator::F64x2ConvertI64x2S | Operator::F64x2ConvertI64x2U { .. }