[x64] Fix AVX512 optimization path for vadduws

This commit is contained in:
Herman S.
2025-10-25 16:09:21 +09:00
parent 70c1092195
commit b3a131698c

View File

@@ -671,11 +671,11 @@ struct VECTOR_ADD
if (saturate) { if (saturate) {
if (is_unsigned) { if (is_unsigned) {
if (e.IsFeatureEnabled(kX64EmitAVX512Ortho)) { if (e.IsFeatureEnabled(kX64EmitAVX512Ortho)) {
e.vpaddd(dest, src1, src2); e.vpaddd(e.xmm1, src1, src2);
Opmask saturate = e.k1; Opmask no_overflow = e.k1;
// _mm_cmplt_epu32_mask e.vpcmpud(no_overflow, e.xmm1, src1, 0x5);
e.vpcmpud(saturate, dest, src1, 0x1); e.vpcmpeqd(dest, dest, dest);
e.vpternlogd(dest | saturate, dest, dest, 0xFF); e.vmovdqa32(dest | no_overflow, e.xmm1);
return; return;
} }