Commit 237a0982 authored by Ng Zhi An's avatar Ng Zhi An Committed by Commit Bot

[wasm-simd][x64] Add AVX codegen for some s128 ops

Bug: v8:9561
Change-Id: I733df8856ad8266a637794a9401118937e6bf006
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2069401Reviewed-by: 's avatarDeepti Gandluri <gdeepti@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#66545}
parent 24110ef0
...@@ -3539,27 +3539,27 @@ CodeGenerator::CodeGenResult CodeGenerator::AssembleArchInstruction( ...@@ -3539,27 +3539,27 @@ CodeGenerator::CodeGenResult CodeGenerator::AssembleArchInstruction(
break; break;
} }
case kX64S128And: { case kX64S128And: {
__ pand(i.OutputSimd128Register(), i.InputSimd128Register(1)); __ Pand(i.OutputSimd128Register(), i.InputSimd128Register(1));
break; break;
} }
case kX64S128Or: { case kX64S128Or: {
__ por(i.OutputSimd128Register(), i.InputSimd128Register(1)); __ Por(i.OutputSimd128Register(), i.InputSimd128Register(1));
break; break;
} }
case kX64S128Xor: { case kX64S128Xor: {
__ pxor(i.OutputSimd128Register(), i.InputSimd128Register(1)); __ Pxor(i.OutputSimd128Register(), i.InputSimd128Register(1));
break; break;
} }
case kX64S128Not: { case kX64S128Not: {
XMMRegister dst = i.OutputSimd128Register(); XMMRegister dst = i.OutputSimd128Register();
XMMRegister src = i.InputSimd128Register(0); XMMRegister src = i.InputSimd128Register(0);
if (dst == src) { if (dst == src) {
__ movaps(kScratchDoubleReg, dst); __ Movaps(kScratchDoubleReg, dst);
__ pcmpeqd(dst, dst); __ Pcmpeqd(dst, dst);
__ pxor(dst, kScratchDoubleReg); __ Pxor(dst, kScratchDoubleReg);
} else { } else {
__ pcmpeqd(dst, dst); __ Pcmpeqd(dst, dst);
__ pxor(dst, src); __ Pxor(dst, src);
} }
break; break;
......
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