Pack decoded ModR/M data into a single word - minor recompiler speedup.

This commit is contained in:
SarahW 2016-08-14 16:29:54 +01:00
commit 535604b760
34 changed files with 1263 additions and 1270 deletions

View file

@ -6,7 +6,7 @@ static int opPAND_a16(uint32_t fetchdat)
fetch_ea_16(fetchdat);
MMX_GETSRC();
MM[reg].q &= src.q;
MM[cpu_reg].q &= src.q;
return 0;
}
static int opPAND_a32(uint32_t fetchdat)
@ -17,7 +17,7 @@ static int opPAND_a32(uint32_t fetchdat)
fetch_ea_32(fetchdat);
MMX_GETSRC();
MM[reg].q &= src.q;
MM[cpu_reg].q &= src.q;
return 0;
}
@ -29,7 +29,7 @@ static int opPANDN_a16(uint32_t fetchdat)
fetch_ea_16(fetchdat);
MMX_GETSRC();
MM[reg].q = ~MM[reg].q & src.q;
MM[cpu_reg].q = ~MM[cpu_reg].q & src.q;
return 0;
}
static int opPANDN_a32(uint32_t fetchdat)
@ -40,7 +40,7 @@ static int opPANDN_a32(uint32_t fetchdat)
fetch_ea_32(fetchdat);
MMX_GETSRC();
MM[reg].q = ~MM[reg].q & src.q;
MM[cpu_reg].q = ~MM[cpu_reg].q & src.q;
return 0;
}
@ -52,7 +52,7 @@ static int opPOR_a16(uint32_t fetchdat)
fetch_ea_16(fetchdat);
MMX_GETSRC();
MM[reg].q |= src.q;
MM[cpu_reg].q |= src.q;
return 0;
}
static int opPOR_a32(uint32_t fetchdat)
@ -63,7 +63,7 @@ static int opPOR_a32(uint32_t fetchdat)
fetch_ea_32(fetchdat);
MMX_GETSRC();
MM[reg].q |= src.q;
MM[cpu_reg].q |= src.q;
return 0;
}
@ -75,7 +75,7 @@ static int opPXOR_a16(uint32_t fetchdat)
fetch_ea_16(fetchdat);
MMX_GETSRC();
MM[reg].q ^= src.q;
MM[cpu_reg].q ^= src.q;
return 0;
}
static int opPXOR_a32(uint32_t fetchdat)
@ -86,6 +86,6 @@ static int opPXOR_a32(uint32_t fetchdat)
fetch_ea_32(fetchdat);
MMX_GETSRC();
MM[reg].q ^= src.q;
MM[cpu_reg].q ^= src.q;
return 0;
}