forked from ShuriZma/suyu
commit
0ff414f561
|
@ -3564,17 +3564,13 @@ static int InterpreterTranslate(ARMul_State* cpu, int& bb_start, u32 addr) {
|
||||||
unsigned int inst, inst_size = 4;
|
unsigned int inst, inst_size = 4;
|
||||||
int idx;
|
int idx;
|
||||||
int ret = NON_BRANCH;
|
int ret = NON_BRANCH;
|
||||||
int thumb = 0;
|
|
||||||
int size = 0; // instruction size of basic block
|
int size = 0; // instruction size of basic block
|
||||||
bb_start = top;
|
bb_start = top;
|
||||||
|
|
||||||
if (cpu->TFlag)
|
|
||||||
thumb = THUMB;
|
|
||||||
|
|
||||||
u32 phys_addr = addr;
|
u32 phys_addr = addr;
|
||||||
u32 pc_start = cpu->Reg[15];
|
u32 pc_start = cpu->Reg[15];
|
||||||
|
|
||||||
while(ret == NON_BRANCH) {
|
while (ret == NON_BRANCH) {
|
||||||
inst = Memory::Read32(phys_addr & 0xFFFFFFFC);
|
inst = Memory::Read32(phys_addr & 0xFFFFFFFC);
|
||||||
|
|
||||||
size++;
|
size++;
|
||||||
|
@ -3890,7 +3886,6 @@ unsigned InterpreterMainLoop(ARMul_State* cpu) {
|
||||||
|
|
||||||
#define CurrentModeHasSPSR (cpu->Mode != SYSTEM32MODE) && (cpu->Mode != USER32MODE)
|
#define CurrentModeHasSPSR (cpu->Mode != SYSTEM32MODE) && (cpu->Mode != USER32MODE)
|
||||||
#define PC (cpu->Reg[15])
|
#define PC (cpu->Reg[15])
|
||||||
#define CHECK_EXT_INT if (!cpu->NirqSig && !(cpu->Cpsr & 0x80)) goto END;
|
|
||||||
|
|
||||||
// GCC and Clang have a C++ extension to support a lookup table of labels. Otherwise, fallback
|
// GCC and Clang have a C++ extension to support a lookup table of labels. Otherwise, fallback
|
||||||
// to a clunky switch statement.
|
// to a clunky switch statement.
|
||||||
|
|
Loading…
Reference in New Issue