diff options
Diffstat (limited to 'deps/v8/test/cctest/wasm/wasm-simd-utils.cc')
-rw-r--r-- | deps/v8/test/cctest/wasm/wasm-simd-utils.cc | 206 |
1 files changed, 103 insertions, 103 deletions
diff --git a/deps/v8/test/cctest/wasm/wasm-simd-utils.cc b/deps/v8/test/cctest/wasm/wasm-simd-utils.cc index 5d280d6a58..44dc6ce075 100644 --- a/deps/v8/test/cctest/wasm/wasm-simd-utils.cc +++ b/deps/v8/test/cctest/wasm/wasm-simd-utils.cc @@ -30,9 +30,9 @@ void RunI8x16UnOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, // Build fn to splat test value, perform unop, and write the result. byte value = 0; byte temp1 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), + WASM_ONE}); FOR_INT8_INPUTS(x) { r.Call(x); @@ -53,11 +53,11 @@ void RunI8x16BinOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value1 = 0, value2 = 1; byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); for (T x : compiler::ValueHelper::GetVector<T>()) { for (T y : compiler::ValueHelper::GetVector<T>()) { @@ -88,14 +88,14 @@ void RunI8x16ShiftOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value = 0; byte simd = r.AllocateLocal(kWasmS128); // Shift using an immediate, and shift using a value loaded from memory. - BUILD( - r, WASM_LOCAL_SET(simd, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), - WASM_I32V(shift))), - WASM_GLOBAL_SET(1, WASM_SIMD_SHIFT_OP( - opcode, WASM_LOCAL_GET(simd), - WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(simd, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), + WASM_I32V(shift))), + WASM_GLOBAL_SET( + 1, WASM_SIMD_SHIFT_OP( + opcode, WASM_LOCAL_GET(simd), + WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), + WASM_ONE}); r.builder().WriteMemory(&memory[0], shift); FOR_INT8_INPUTS(x) { @@ -116,11 +116,11 @@ void RunI8x16MixedRelationalOpTest(TestExecutionTier execution_tier, byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); byte temp3 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value2))), - WASM_LOCAL_SET(temp3, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_SIMD_I8x16_EXTRACT_LANE(0, WASM_LOCAL_GET(temp3))); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I8x16_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value2))), + WASM_LOCAL_SET(temp3, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_SIMD_I8x16_EXTRACT_LANE(0, WASM_LOCAL_GET(temp3))}); CHECK_EQ(expected_op(0xff, static_cast<uint8_t>(0x7fff)), r.Call(0xff, 0x7fff)); @@ -138,9 +138,9 @@ void RunI16x8UnOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, // Build fn to splat test value, perform unop, and write the result. byte value = 0; byte temp1 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), + WASM_ONE}); FOR_INT16_INPUTS(x) { r.Call(x); @@ -161,11 +161,11 @@ void RunI16x8BinOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value1 = 0, value2 = 1; byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); for (T x : compiler::ValueHelper::GetVector<T>()) { for (T y : compiler::ValueHelper::GetVector<T>()) { @@ -195,14 +195,14 @@ void RunI16x8ShiftOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value = 0; byte simd = r.AllocateLocal(kWasmS128); // Shift using an immediate, and shift using a value loaded from memory. - BUILD( - r, WASM_LOCAL_SET(simd, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), - WASM_I32V(shift))), - WASM_GLOBAL_SET(1, WASM_SIMD_SHIFT_OP( - opcode, WASM_LOCAL_GET(simd), - WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(simd, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), + WASM_I32V(shift))), + WASM_GLOBAL_SET( + 1, WASM_SIMD_SHIFT_OP( + opcode, WASM_LOCAL_GET(simd), + WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), + WASM_ONE}); r.builder().WriteMemory(&memory[0], shift); FOR_INT16_INPUTS(x) { @@ -223,11 +223,11 @@ void RunI16x8MixedRelationalOpTest(TestExecutionTier execution_tier, byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); byte temp3 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value2))), - WASM_LOCAL_SET(temp3, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_SIMD_I16x8_EXTRACT_LANE(0, WASM_LOCAL_GET(temp3))); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I16x8_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value2))), + WASM_LOCAL_SET(temp3, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_SIMD_I16x8_EXTRACT_LANE(0, WASM_LOCAL_GET(temp3))}); CHECK_EQ(expected_op(0xffff, static_cast<uint16_t>(0x7fffffff)), r.Call(0xffff, 0x7fffffff)); @@ -245,9 +245,9 @@ void RunI32x4UnOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, // Build fn to splat test value, perform unop, and write the result. byte value = 0; byte temp1 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), + WASM_ONE}); FOR_INT32_INPUTS(x) { r.Call(x); @@ -267,11 +267,11 @@ void RunI32x4BinOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value1 = 0, value2 = 1; byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); FOR_INT32_INPUTS(x) { FOR_INT32_INPUTS(y) { @@ -295,14 +295,14 @@ void RunI32x4ShiftOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value = 0; byte simd = r.AllocateLocal(kWasmS128); // Shift using an immediate, and shift using a value loaded from memory. - BUILD( - r, WASM_LOCAL_SET(simd, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), - WASM_I32V(shift))), - WASM_GLOBAL_SET(1, WASM_SIMD_SHIFT_OP( - opcode, WASM_LOCAL_GET(simd), - WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(simd, WASM_SIMD_I32x4_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), + WASM_I32V(shift))), + WASM_GLOBAL_SET( + 1, WASM_SIMD_SHIFT_OP( + opcode, WASM_LOCAL_GET(simd), + WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), + WASM_ONE}); r.builder().WriteMemory(&memory[0], shift); FOR_INT32_INPUTS(x) { @@ -324,9 +324,9 @@ void RunI64x2UnOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, // Build fn to splat test value, perform unop, and write the result. byte value = 0; byte temp1 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), + WASM_ONE}); FOR_INT64_INPUTS(x) { r.Call(x); @@ -346,11 +346,11 @@ void RunI64x2BinOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value1 = 0, value2 = 1; byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); FOR_INT64_INPUTS(x) { FOR_INT64_INPUTS(y) { @@ -374,14 +374,14 @@ void RunI64x2ShiftOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value = 0; byte simd = r.AllocateLocal(kWasmS128); // Shift using an immediate, and shift using a value loaded from memory. - BUILD( - r, WASM_LOCAL_SET(simd, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), - WASM_I32V(shift))), - WASM_GLOBAL_SET(1, WASM_SIMD_SHIFT_OP( - opcode, WASM_LOCAL_GET(simd), - WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(simd, WASM_SIMD_I64x2_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_SHIFT_OP(opcode, WASM_LOCAL_GET(simd), + WASM_I32V(shift))), + WASM_GLOBAL_SET( + 1, WASM_SIMD_SHIFT_OP( + opcode, WASM_LOCAL_GET(simd), + WASM_LOAD_MEM(MachineType::Int32(), WASM_ZERO))), + WASM_ONE}); r.builder().WriteMemory(&memory[0], shift); FOR_INT64_INPUTS(x) { @@ -448,9 +448,9 @@ void RunF32x4UnOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, // Build fn to splat test value, perform unop, and write the result. byte value = 0; byte temp1 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), + WASM_ONE}); FOR_FLOAT32_INPUTS(x) { if (!PlatformCanRepresent(x)) continue; @@ -508,11 +508,11 @@ void RunF32x4BinOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value1 = 0, value2 = 1; byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); FOR_FLOAT32_INPUTS(x) { if (!PlatformCanRepresent(x)) continue; @@ -556,11 +556,11 @@ void RunF32x4CompareOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value1 = 0, value2 = 1; byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_F32x4_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); FOR_FLOAT32_INPUTS(x) { if (!PlatformCanRepresent(x)) continue; @@ -630,9 +630,9 @@ void RunF64x2UnOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, // Build fn to splat test value, perform unop, and write the result. byte value = 0; byte temp1 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value))), - WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value))), + WASM_GLOBAL_SET(0, WASM_SIMD_UNOP(opcode, WASM_LOCAL_GET(temp1))), + WASM_ONE}); FOR_FLOAT64_INPUTS(x) { if (!PlatformCanRepresent(x)) continue; @@ -675,11 +675,11 @@ void RunF64x2BinOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte value1 = 0, value2 = 1; byte temp1 = r.AllocateLocal(kWasmS128); byte temp2 = r.AllocateLocal(kWasmS128); - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp2, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp2, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); FOR_FLOAT64_INPUTS(x) { if (!PlatformCanRepresent(x)) continue; @@ -724,14 +724,14 @@ void RunF64x2CompareOpTest(TestExecutionTier execution_tier, WasmOpcode opcode, byte temp2 = r.AllocateLocal(kWasmS128); // Make the lanes of each temp compare differently: // temp1 = y, x and temp2 = y, y. - BUILD(r, WASM_LOCAL_SET(temp1, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value1))), - WASM_LOCAL_SET(temp1, - WASM_SIMD_F64x2_REPLACE_LANE(1, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(value2))), - WASM_LOCAL_SET(temp2, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value2))), - WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), - WASM_LOCAL_GET(temp2))), - WASM_ONE); + r.Build({WASM_LOCAL_SET(temp1, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value1))), + WASM_LOCAL_SET(temp1, + WASM_SIMD_F64x2_REPLACE_LANE(1, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(value2))), + WASM_LOCAL_SET(temp2, WASM_SIMD_F64x2_SPLAT(WASM_LOCAL_GET(value2))), + WASM_GLOBAL_SET(0, WASM_SIMD_BINOP(opcode, WASM_LOCAL_GET(temp1), + WASM_LOCAL_GET(temp2))), + WASM_ONE}); FOR_FLOAT64_INPUTS(x) { if (!PlatformCanRepresent(x)) continue; |