[JIT] Kill a couple instructions in VECTOR_CONVERT_F2I

This commit is contained in:
DrChat 2018-03-02 11:41:04 -06:00
parent 04d20e33a5
commit 131fcd1320
1 changed files with 3 additions and 5 deletions

View File

@ -1610,12 +1610,10 @@ struct VECTOR_CONVERT_F2I
// scale any values >= (unsigned)INT_MIN back to [0, ...]
e.vsubps(e.xmm2, e.xmm0, e.GetXmmConstPtr(XMMPosIntMinPS));
e.vandps(e.xmm2, e.xmm1, e.xmm2); // 0 if < (unsigned)INT_MIN
e.vandnps(e.xmm0, e.xmm1, e.xmm0); // 0 if >= (unsigned)INT_MIN
e.vblendvps(e.xmm0, e.xmm0, e.xmm2, e.xmm1);
// xmm0 = [0, INT_MAX]
// this may still contain values > INT_MAX (if src has vals > UINT_MAX)
e.vorps(e.xmm0, e.xmm0, e.xmm2);
e.vcvttps2dq(i.dest, e.xmm0);
// xmm0 = mask of values that need saturation