PowerPC: Get rid of the 'cr' field which was obsoleted by the new 'cr_fast'
This commit is contained in:
parent
010ca048df
commit
3a76c0c8f5
|
@ -39,21 +39,21 @@ BreakPoints breakpoints;
|
||||||
MemChecks memchecks;
|
MemChecks memchecks;
|
||||||
PPCDebugInterface debug_interface;
|
PPCDebugInterface debug_interface;
|
||||||
|
|
||||||
void CompactCR()
|
u32 CompactCR()
|
||||||
{
|
{
|
||||||
u32 new_cr = ppcState.cr_fast[0] << 28;
|
u32 new_cr = ppcState.cr_fast[0] << 28;
|
||||||
for (int i = 1; i < 8; i++)
|
for (int i = 1; i < 8; i++)
|
||||||
{
|
{
|
||||||
new_cr |= ppcState.cr_fast[i] << (28 - i * 4);
|
new_cr |= ppcState.cr_fast[i] << (28 - i * 4);
|
||||||
}
|
}
|
||||||
ppcState.cr = new_cr;
|
return new_cr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ExpandCR()
|
void ExpandCR(u32 cr)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < 8; i++)
|
for (int i = 0; i < 8; i++)
|
||||||
{
|
{
|
||||||
ppcState.cr_fast[i] = (ppcState.cr >> (28 - i * 4)) & 0xF;
|
ppcState.cr_fast[i] = (cr >> (28 - i * 4)) & 0xF;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -95,7 +95,6 @@ void ResetRegisters()
|
||||||
ppcState.spr[SPR_ECID_M] = 0x1840c00d;
|
ppcState.spr[SPR_ECID_M] = 0x1840c00d;
|
||||||
ppcState.spr[SPR_ECID_L] = 0x82bb08e8;
|
ppcState.spr[SPR_ECID_L] = 0x82bb08e8;
|
||||||
|
|
||||||
ppcState.cr = 0;
|
|
||||||
ppcState.fpscr = 0;
|
ppcState.fpscr = 0;
|
||||||
ppcState.pc = 0;
|
ppcState.pc = 0;
|
||||||
ppcState.npc = 0;
|
ppcState.npc = 0;
|
||||||
|
|
|
@ -39,7 +39,6 @@ struct GC_ALIGNED64(PowerPCState)
|
||||||
u32 pc; // program counter
|
u32 pc; // program counter
|
||||||
u32 npc;
|
u32 npc;
|
||||||
|
|
||||||
u32 cr; // flags
|
|
||||||
u8 cr_fast[8]; // Possibly reorder to 0, 2, 4, 8, 1, 3, 5, 7 so that we can make Compact and Expand super fast?
|
u8 cr_fast[8]; // Possibly reorder to 0, 2, 4, 8, 1, 3, 5, 7 so that we can make Compact and Expand super fast?
|
||||||
|
|
||||||
u32 msr; // machine specific register
|
u32 msr; // machine specific register
|
||||||
|
@ -101,8 +100,8 @@ void Stop();
|
||||||
CPUState GetState();
|
CPUState GetState();
|
||||||
volatile CPUState *GetStatePtr(); // this oddity is here instead of an extern declaration to easily be able to find all direct accesses throughout the code.
|
volatile CPUState *GetStatePtr(); // this oddity is here instead of an extern declaration to easily be able to find all direct accesses throughout the code.
|
||||||
|
|
||||||
void CompactCR();
|
u32 CompactCR();
|
||||||
void ExpandCR();
|
void ExpandCR(u32 cr);
|
||||||
|
|
||||||
void OnIdle(u32 _uThreadAddr);
|
void OnIdle(u32 _uThreadAddr);
|
||||||
void OnIdleIL();
|
void OnIdleIL();
|
||||||
|
@ -171,13 +170,11 @@ inline void SetCRBit(int bit, int value) {
|
||||||
|
|
||||||
// SetCR and GetCR are fairly slow. Should be avoided if possible.
|
// SetCR and GetCR are fairly slow. Should be avoided if possible.
|
||||||
inline void SetCR(u32 new_cr) {
|
inline void SetCR(u32 new_cr) {
|
||||||
PowerPC::ppcState.cr = new_cr;
|
PowerPC::ExpandCR(new_cr);
|
||||||
PowerPC::ExpandCR();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
inline u32 GetCR() {
|
inline u32 GetCR() {
|
||||||
PowerPC::CompactCR();
|
return PowerPC::CompactCR();
|
||||||
return PowerPC::ppcState.cr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// SetCarry/GetCarry may speed up soon.
|
// SetCarry/GetCarry may speed up soon.
|
||||||
|
|
Loading…
Reference in New Issue