mirror of https://github.com/PCSX2/pcsx2.git
Fixed my stupid mistakes in the previous commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@741 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
03a6406ff0
commit
68ec2f25a8
|
@ -1083,17 +1083,11 @@ void recPSUBSB( void )
|
||||||
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBSB_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBSB_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||||
SSSE3_PSIGNB_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
||||||
SSE2_PADDSB_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
}
|
SSE2_PSUBSB_XMM_to_XMM(EEREC_D, t0reg);
|
||||||
else {
|
_freeXMMreg(t0reg);
|
||||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBSB_XMM_to_XMM(EEREC_D, t0reg);
|
|
||||||
_freeXMMreg(t0reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
@ -1125,17 +1119,11 @@ void recPSUBSH( void )
|
||||||
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBSW_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBSW_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||||
SSSE3_PSIGNW_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
||||||
SSE2_PADDSW_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
}
|
SSE2_PSUBSW_XMM_to_XMM(EEREC_D, t0reg);
|
||||||
else {
|
_freeXMMreg(t0reg);
|
||||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBSW_XMM_to_XMM(EEREC_D, t0reg);
|
|
||||||
_freeXMMreg(t0reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
@ -1184,15 +1172,9 @@ CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
// normal subtraction
|
// normal subtraction
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBD_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBD_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
SSEX_MOVDQA_XMM_to_XMM(t2reg, EEREC_T);
|
||||||
SSSE3_PSIGND_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
SSE2_PADDD_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSE2_PSUBD_XMM_to_XMM(EEREC_D, t2reg);
|
||||||
}
|
|
||||||
else {
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t2reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBD_XMM_to_XMM(EEREC_D, t2reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
@ -1346,17 +1328,11 @@ void recPSUBB( void )
|
||||||
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBB_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBB_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||||
SSSE3_PSIGNB_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
||||||
SSE2_PADDB_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
}
|
SSE2_PSUBB_XMM_to_XMM(EEREC_D, t0reg);
|
||||||
else {
|
_freeXMMreg(t0reg);
|
||||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBB_XMM_to_XMM(EEREC_D, t0reg);
|
|
||||||
_freeXMMreg(t0reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
@ -1388,17 +1364,11 @@ void recPSUBH( void )
|
||||||
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBW_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBW_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||||
SSSE3_PSIGNW_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
||||||
SSE2_PADDW_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
}
|
SSE2_PSUBW_XMM_to_XMM(EEREC_D, t0reg);
|
||||||
else {
|
_freeXMMreg(t0reg);
|
||||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBW_XMM_to_XMM(EEREC_D, t0reg);
|
|
||||||
_freeXMMreg(t0reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
@ -1430,17 +1400,11 @@ void recPSUBW( void )
|
||||||
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBD_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBD_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||||
SSSE3_PSIGND_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
||||||
SSE2_PADDD_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
}
|
SSE2_PSUBD_XMM_to_XMM(EEREC_D, t0reg);
|
||||||
else {
|
_freeXMMreg(t0reg);
|
||||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBD_XMM_to_XMM(EEREC_D, t0reg);
|
|
||||||
_freeXMMreg(t0reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
@ -1860,17 +1824,11 @@ void recPSUBUB()
|
||||||
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBUSB_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBUSB_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||||
SSSE3_PSIGNB_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
||||||
SSE2_PADDUSB_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
}
|
SSE2_PSUBUSB_XMM_to_XMM(EEREC_D, t0reg);
|
||||||
else {
|
_freeXMMreg(t0reg);
|
||||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBUSB_XMM_to_XMM(EEREC_D, t0reg);
|
|
||||||
_freeXMMreg(t0reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
@ -1889,17 +1847,11 @@ void recPSUBUH()
|
||||||
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
CPU_SSE2_XMMCACHE_START(XMMINFO_READS|XMMINFO_READT|XMMINFO_WRITED)
|
||||||
if( EEREC_D == EEREC_S ) SSE2_PSUBUSW_XMM_to_XMM(EEREC_D, EEREC_T);
|
if( EEREC_D == EEREC_S ) SSE2_PSUBUSW_XMM_to_XMM(EEREC_D, EEREC_T);
|
||||||
else if( EEREC_D == EEREC_T ) {
|
else if( EEREC_D == EEREC_T ) {
|
||||||
if ( cpucaps.hasSupplementalStreamingSIMD3Extensions ) {
|
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||||
SSSE3_PSIGNW_XMM_to_XMM(EEREC_D, EEREC_D);
|
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
||||||
SSE2_PADDUSW_XMM_to_XMM(EEREC_D, EEREC_S); // -Rt + Rs
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
}
|
SSE2_PSUBUSW_XMM_to_XMM(EEREC_D, t0reg);
|
||||||
else {
|
_freeXMMreg(t0reg);
|
||||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(t0reg, EEREC_T);
|
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
|
||||||
SSE2_PSUBUSW_XMM_to_XMM(EEREC_D, t0reg);
|
|
||||||
_freeXMMreg(t0reg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
SSEX_MOVDQA_XMM_to_XMM(EEREC_D, EEREC_S);
|
||||||
|
|
Loading…
Reference in New Issue