Commit 334cc5f8 authored by Deepti Gandluri's avatar Deepti Gandluri Committed by V8 LUCI CQ

[wasm-relaxed-simd][liftoff] Enable relaxed LaneSelect on Arm/Arm64

Bug: v8:12284
Change-Id: Ica2564e8b34f8edd9492ef379cf3a3eb5575633d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3642948
Commit-Queue: Deepti Gandluri <gdeepti@chromium.org>
Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
Cr-Commit-Position: refs/heads/main@{#80504}
parent 8a83325c
...@@ -2470,7 +2470,7 @@ void LiftoffAssembler::emit_s128_relaxed_laneselect(LiftoffRegister dst, ...@@ -2470,7 +2470,7 @@ void LiftoffAssembler::emit_s128_relaxed_laneselect(LiftoffRegister dst,
LiftoffRegister src1, LiftoffRegister src1,
LiftoffRegister src2, LiftoffRegister src2,
LiftoffRegister mask) { LiftoffRegister mask) {
bailout(kSimd, "emit_s128_relaxed_laneselect"); emit_s128_select(dst, src1, src2, mask);
} }
void LiftoffAssembler::emit_f64x2_splat(LiftoffRegister dst, void LiftoffAssembler::emit_f64x2_splat(LiftoffRegister dst,
......
...@@ -1785,7 +1785,7 @@ void LiftoffAssembler::emit_s128_relaxed_laneselect(LiftoffRegister dst, ...@@ -1785,7 +1785,7 @@ void LiftoffAssembler::emit_s128_relaxed_laneselect(LiftoffRegister dst,
LiftoffRegister src1, LiftoffRegister src1,
LiftoffRegister src2, LiftoffRegister src2,
LiftoffRegister mask) { LiftoffRegister mask) {
bailout(kSimd, "emit_s128_relaxed_laneselect"); emit_s128_select(dst, src1, src2, mask);
} }
void LiftoffAssembler::emit_f64x2_splat(LiftoffRegister dst, void LiftoffAssembler::emit_f64x2_splat(LiftoffRegister dst,
......
...@@ -3484,7 +3484,8 @@ class LiftoffCompiler { ...@@ -3484,7 +3484,8 @@ class LiftoffCompiler {
LiftoffRegister mask = pinned.set(__ PopToRegister(pinned)); LiftoffRegister mask = pinned.set(__ PopToRegister(pinned));
LiftoffRegister src2 = pinned.set(__ PopToRegister(pinned)); LiftoffRegister src2 = pinned.set(__ PopToRegister(pinned));
LiftoffRegister src1 = pinned.set(__ PopToRegister(pinned)); LiftoffRegister src1 = pinned.set(__ PopToRegister(pinned));
LiftoffRegister dst = __ GetUnusedRegister(RegClass::kFpReg, {}, pinned); LiftoffRegister dst =
__ GetUnusedRegister(reg_class_for(kS128), {}, pinned);
EmitTerOp<kS128, kS128>(&LiftoffAssembler::emit_s128_relaxed_laneselect, EmitTerOp<kS128, kS128>(&LiftoffAssembler::emit_s128_relaxed_laneselect,
dst, src1, src2, mask); dst, src1, src2, mask);
} }
......
...@@ -1193,10 +1193,6 @@ ...@@ -1193,10 +1193,6 @@
['arch != ia32 and arch != x64', { ['arch != ia32 and arch != x64', {
# TODO(12284): Implement relaxed SIMD in Liftoff on missing architectures. # TODO(12284): Implement relaxed SIMD in Liftoff on missing architectures.
'test-run-wasm-relaxed-simd/RunWasm_I8x16RelaxedLaneSelect_liftoff': [SKIP],
'test-run-wasm-relaxed-simd/RunWasm_I16x8RelaxedLaneSelect_liftoff': [SKIP],
'test-run-wasm-relaxed-simd/RunWasm_I32x4RelaxedLaneSelect_liftoff': [SKIP],
'test-run-wasm-relaxed-simd/RunWasm_I64x2RelaxedLaneSelect_liftoff': [SKIP],
'test-run-wasm-relaxed-simd/RunWasm_F32x4Qfma_liftoff': [SKIP], 'test-run-wasm-relaxed-simd/RunWasm_F32x4Qfma_liftoff': [SKIP],
'test-run-wasm-relaxed-simd/RunWasm_F32x4Qfms_liftoff': [SKIP], 'test-run-wasm-relaxed-simd/RunWasm_F32x4Qfms_liftoff': [SKIP],
'test-run-wasm-relaxed-simd/RunWasm_F64x2Qfma_liftoff': [SKIP], 'test-run-wasm-relaxed-simd/RunWasm_F64x2Qfma_liftoff': [SKIP],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment