[x64] Fix AVX2 optimization path for VECTOR_SHL_V128

Ensure the optimized path matches the fallback behavior
This commit is contained in:
Herman S.
2025-10-26 00:01:37 +09:00
parent 3a1967e932
commit 6263fb6dec
+6 -6
View File
@@ -949,9 +949,9 @@ struct VECTOR_SHL_V128
e.vpshufb(e.xmm2, e.xmm2, e.GetXmmConstPtr(XMMIntsToBytes));
e.vpshufb(e.xmm3, e.xmm3, e.GetXmmConstPtr(XMMIntsToBytes));
e.vpunpckldq(e.xmm0, e.xmm0, e.xmm1);
e.vpunpckldq(e.xmm2, e.xmm2, e.xmm3);
e.vpunpcklqdq(i.dest, e.xmm0, e.xmm2);
e.vpunpckldq(e.xmm0, e.xmm0, e.xmm2);
e.vpunpckldq(e.xmm1, e.xmm1, e.xmm3);
e.vpunpcklqdq(i.dest, e.xmm0, e.xmm1);
return;
} else {
vec128_t constmask = i.src2.constant();
@@ -999,9 +999,9 @@ struct VECTOR_SHL_V128
e.vpshufb(e.xmm2, e.xmm2, e.GetXmmConstPtr(XMMIntsToBytes));
e.vpshufb(e.xmm3, e.xmm3, e.GetXmmConstPtr(XMMIntsToBytes));
e.vpunpckldq(e.xmm0, e.xmm0, e.xmm1);
e.vpunpckldq(e.xmm2, e.xmm2, e.xmm3);
e.vpunpcklqdq(i.dest, e.xmm0, e.xmm2);
e.vpunpckldq(e.xmm0, e.xmm0, e.xmm2);
e.vpunpckldq(e.xmm1, e.xmm1, e.xmm3);
e.vpunpcklqdq(i.dest, e.xmm0, e.xmm1);
return;
}