Jit64: fselx - Optimize AVX packed
For the packed variant, we can skip the final MOVAPS and write the result directly into the destination register. Before: 66 0F 57 C0 xorpd xmm0,xmm0 66 41 0F C2 C1 06 cmpnlepd xmm0,xmm9 C4 C3 09 4B CC 00 vblendvpd xmm1,xmm14,xmm12,xmm0 44 0F 28 F1 movaps xmm14,xmm1 After: 66 0F 57 C0 xorpd xmm0,xmm0 66 41 0F C2 C1 06 cmpnlepd xmm0,xmm9 C4 43 09 4B F4 00 vblendvpd xmm14,xmm14,xmm12,xmm0
This commit is contained in:
parent
a52774ca63
commit
afb86a12ab
|
@ -449,6 +449,12 @@ void Jit64::fselx(UGeckoInstruction inst)
|
|||
MOVAPD(XMM1, Rc);
|
||||
}
|
||||
|
||||
if (packed)
|
||||
{
|
||||
VBLENDVPD(Rd, src1, Rb, XMM0);
|
||||
return;
|
||||
}
|
||||
|
||||
VBLENDVPD(XMM1, src1, Rb, XMM0);
|
||||
}
|
||||
else if (cpu_info.bSSE4_1)
|
||||
|
|
Loading…
Reference in New Issue