rebase master update

This commit is contained in:
Blaise Tine
2021-07-30 21:03:14 -07:00
parent 79fd92a1b4
commit bb1ceffadd
86 changed files with 6111 additions and 132 deletions

View File

@@ -555,20 +555,18 @@ void Warp::execute(const Instr &instr, Pipeline *pipeline) {
// FSGNJ.S, FSGNJN.S, FSGNJX.S
case 0x10: {
bool fsign1 = rsdata[0] & 0x80000000;
bool fsign1 = (rsdata[0] >> 31);
uint32_t fdata1 = rsdata[0] & 0x7FFFFFFF;
bool fsign2 = rsdata[1] & 0x80000000;
bool fsign2 = (rsdata[1] >> 31);
switch (func3) {
case 0: // FSGNJ.S
rddata = (fsign2 << 31) | fdata1;
break;
case 1: // FSGNJN.S
fsign2 = !fsign2;
rddata = (fsign2 << 31) | fdata1;
rddata = (!fsign2 << 31) | fdata1;
break;
case 2: { // FSGNJX.S
bool sign = fsign1 ^ fsign2;
rddata = (sign << 31) | fdata1;
rddata = ((fsign1 ^ fsign2) << 31) | fdata1;
} break;
}
} break;