VM?DL, VM?DM, VM?DN, VM?DH: keep multiply sources in single line

This commit is contained in:
unknown 2015-06-21 18:39:12 -04:00
parent 44d8f13f58
commit de2bd58c13
1 changed files with 8 additions and 24 deletions

View File

@ -547,9 +547,7 @@ void RSP_Vector_VMUDL (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
temp.UW = temp.UW = (uint32_t)RSP_Vect[RSPOpC.rd].UHW[el] * (uint32_t)RSP_Vect[RSPOpC.rt].UHW[del];
(uint32_t)RSP_Vect[RSPOpC.rd].UHW[el]
* (uint32_t)RSP_Vect[RSPOpC.rt].UHW[del];
RSP_ACCUM[el].W[1] = 0; RSP_ACCUM[el].W[1] = 0;
RSP_ACCUM[el].HW[1] = temp.HW[1]; RSP_ACCUM[el].HW[1] = temp.HW[1];
result.HW[el] = RSP_ACCUM[el].HW[1]; result.HW[el] = RSP_ACCUM[el].HW[1];
@ -565,9 +563,7 @@ void RSP_Vector_VMUDM (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
temp.UW = temp.UW = (uint32_t)((int32_t)RSP_Vect[RSPOpC.rd].HW[el]) * (uint32_t)((uint32_t)RSP_Vect[RSPOpC.rt].UHW[del]);
(uint32_t)(( int32_t)RSP_Vect[RSPOpC.rd].HW[el])
* (uint32_t)((uint32_t)RSP_Vect[RSPOpC.rt].UHW[del]);
if (temp.W < 0) { if (temp.W < 0) {
RSP_ACCUM[el].HW[3] = -1; RSP_ACCUM[el].HW[3] = -1;
} else { } else {
@ -588,9 +584,7 @@ void RSP_Vector_VMUDN (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
temp.UW = temp.UW = (uint32_t)((uint32_t)RSP_Vect[RSPOpC.rd].UHW[el]) * (uint32_t)(( int32_t)RSP_Vect[RSPOpC.rt].HW[del]);
(uint32_t)((uint32_t)RSP_Vect[RSPOpC.rd].UHW[el])
* (uint32_t)(( int32_t)RSP_Vect[RSPOpC.rt].HW[del]);
if (temp.W < 0) { if (temp.W < 0) {
RSP_ACCUM[el].HW[3] = -1; RSP_ACCUM[el].HW[3] = -1;
} else { } else {
@ -610,9 +604,7 @@ void RSP_Vector_VMUDH (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
RSP_ACCUM[el].W[1] = RSP_ACCUM[el].W[1] = (int32_t)RSP_Vect[RSPOpC.rd].HW[el] * (int32_t)RSP_Vect[RSPOpC.rt].HW[del];
(int32_t)RSP_Vect[RSPOpC.rd].HW[el]
* (int32_t)RSP_Vect[RSPOpC.rt].HW[del];
RSP_ACCUM[el].HW[1] = 0; RSP_ACCUM[el].HW[1] = 0;
if (RSP_ACCUM[el].HW[3] < 0) { if (RSP_ACCUM[el].HW[3] < 0) {
if (RSP_ACCUM[el].UHW[3] != 0xFFFF) { if (RSP_ACCUM[el].UHW[3] != 0xFFFF) {
@ -766,9 +758,7 @@ void RSP_Vector_VMADL (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
temp.UW = temp.UW = (uint32_t)RSP_Vect[RSPOpC.rd].UHW[el] * (uint32_t)RSP_Vect[RSPOpC.rt].UHW[del];
(uint32_t)RSP_Vect[RSPOpC.rd].UHW[el]
* (uint32_t)RSP_Vect[RSPOpC.rt].UHW[del];
temp2.UW = temp.UHW[1] + RSP_ACCUM[el].UHW[1]; temp2.UW = temp.UHW[1] + RSP_ACCUM[el].UHW[1];
RSP_ACCUM[el].HW[1] = temp2.HW[0]; RSP_ACCUM[el].HW[1] = temp2.HW[0];
temp2.UW = RSP_ACCUM[el].UHW[2] + temp2.UHW[1]; temp2.UW = RSP_ACCUM[el].UHW[2] + temp2.UHW[1];
@ -807,9 +797,7 @@ void RSP_Vector_VMADM (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
temp.UW = temp.UW = (uint32_t)((int32_t)RSP_Vect[RSPOpC.rd].HW[el]) * (uint32_t)((uint32_t)RSP_Vect[RSPOpC.rt].UHW[del]);
(uint32_t)(( int32_t)RSP_Vect[RSPOpC.rd].HW[el])
* (uint32_t)((uint32_t)RSP_Vect[RSPOpC.rt].UHW[del]);
temp2.UW = temp.UHW[0] + RSP_ACCUM[el].UHW[1]; temp2.UW = temp.UHW[0] + RSP_ACCUM[el].UHW[1];
RSP_ACCUM[el].HW[1] = temp2.HW[0]; RSP_ACCUM[el].HW[1] = temp2.HW[0];
temp2.UW = temp.UHW[1] + RSP_ACCUM[el].UHW[2] + temp2.UHW[1]; temp2.UW = temp.UHW[1] + RSP_ACCUM[el].UHW[2] + temp2.UHW[1];
@ -852,9 +840,7 @@ void RSP_Vector_VMADN (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
temp.UW = temp.UW = (uint32_t)((uint32_t)RSP_Vect[RSPOpC.rd].UHW[el]) * (uint32_t)( (int32_t)RSP_Vect[RSPOpC.rt].HW[del]);
(uint32_t)((uint32_t)RSP_Vect[RSPOpC.rd].UHW[el])
* (uint32_t)( (int32_t)RSP_Vect[RSPOpC.rt].HW[del]);
temp2.UW = temp.UHW[0] + RSP_ACCUM[el].UHW[1]; temp2.UW = temp.UHW[0] + RSP_ACCUM[el].UHW[1];
RSP_ACCUM[el].HW[1] = temp2.HW[0]; RSP_ACCUM[el].HW[1] = temp2.HW[0];
temp2.UW = temp.UHW[1] + RSP_ACCUM[el].UHW[2] + temp2.UHW[1]; temp2.UW = temp.UHW[1] + RSP_ACCUM[el].UHW[2] + temp2.UHW[1];
@ -895,9 +881,7 @@ void RSP_Vector_VMADH (void) {
for (el = 0; el < 8; el ++ ) { for (el = 0; el < 8; el ++ ) {
del = EleSpec[RSPOpC.rs].B[el]; del = EleSpec[RSPOpC.rs].B[el];
RSP_ACCUM[el].W[1] += RSP_ACCUM[el].W[1] += (int32_t)RSP_Vect[RSPOpC.rd].HW[el] * (int32_t)RSP_Vect[RSPOpC.rt].HW[del];
(int32_t)RSP_Vect[RSPOpC.rd].HW[el]
* (int32_t)RSP_Vect[RSPOpC.rt].HW[del];
if (RSP_ACCUM[el].HW[3] < 0) { if (RSP_ACCUM[el].HW[3] < 0) {
if (RSP_ACCUM[el].UHW[3] != 0xFFFF) { if (RSP_ACCUM[el].UHW[3] != 0xFFFF) {
result.HW[el] = (WORD)0x8000; result.HW[el] = (WORD)0x8000;