mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-22 05:40:01 -06:00
Added the corresponding change from r9e649ce79850 to JITIL.
This commit is contained in:
@ -580,16 +580,13 @@ const u8* Jit64::DoJit(u32 em_address, PPCAnalyst::CodeBuffer *code_buf, JitBloc
|
|||||||
FixupBranch noExtException = J_CC(CC_Z);
|
FixupBranch noExtException = J_CC(CC_Z);
|
||||||
TEST(32, M((void *)&ProcessorInterface::m_InterruptCause), Imm32(ProcessorInterface::INT_CAUSE_CP));
|
TEST(32, M((void *)&ProcessorInterface::m_InterruptCause), Imm32(ProcessorInterface::INT_CAUSE_CP));
|
||||||
FixupBranch noCPInt = J_CC(CC_Z);
|
FixupBranch noCPInt = J_CC(CC_Z);
|
||||||
TEST(32, M((void *)&ProcessorInterface::m_InterruptCause),
|
TEST(32, M((void *)&ProcessorInterface::m_InterruptCause), Imm32(ProcessorInterface::INT_CAUSE_DSP));
|
||||||
Imm32(ProcessorInterface::INT_CAUSE_PE_TOKEN |
|
FixupBranch clearInt = J_CC(CC_NZ);
|
||||||
ProcessorInterface::INT_CAUSE_PE_FINISH |
|
|
||||||
ProcessorInterface::INT_CAUSE_DSP));
|
|
||||||
FixupBranch ClearInt = J_CC(CC_NZ);
|
|
||||||
|
|
||||||
MOV(32, M(&PC), Imm32(ops[i].address));
|
MOV(32, M(&PC), Imm32(ops[i].address));
|
||||||
WriteExceptionExit();
|
WriteExceptionExit();
|
||||||
|
|
||||||
SetJumpTarget(ClearInt);
|
SetJumpTarget(clearInt);
|
||||||
SetJumpTarget(noCPInt);
|
SetJumpTarget(noCPInt);
|
||||||
SetJumpTarget(noExtException);
|
SetJumpTarget(noExtException);
|
||||||
}
|
}
|
||||||
|
@ -1929,10 +1929,13 @@ static void DoWriteCode(IRBuilder* ibuild, JitIL* Jit, bool UseProfile, bool Mak
|
|||||||
FixupBranch noExtException = Jit->J_CC(CC_Z);
|
FixupBranch noExtException = Jit->J_CC(CC_Z);
|
||||||
Jit->TEST(32, M((void *)&ProcessorInterface::m_InterruptCause), Imm32(ProcessorInterface::INT_CAUSE_CP));
|
Jit->TEST(32, M((void *)&ProcessorInterface::m_InterruptCause), Imm32(ProcessorInterface::INT_CAUSE_CP));
|
||||||
FixupBranch noCPInt = Jit->J_CC(CC_Z);
|
FixupBranch noCPInt = Jit->J_CC(CC_Z);
|
||||||
|
Jit->TEST(32, M((void *)&ProcessorInterface::m_InterruptCause), Imm32(ProcessorInterface::INT_CAUSE_DSP));
|
||||||
|
FixupBranch clearInt = Jit->J_CC(CC_NZ);
|
||||||
|
|
||||||
Jit->MOV(32, M(&PC), Imm32(InstLoc));
|
Jit->MOV(32, M(&PC), Imm32(InstLoc));
|
||||||
Jit->WriteExceptionExit();
|
Jit->WriteExceptionExit();
|
||||||
|
|
||||||
|
Jit->SetJumpTarget(clearInt);
|
||||||
Jit->SetJumpTarget(noCPInt);
|
Jit->SetJumpTarget(noCPInt);
|
||||||
Jit->SetJumpTarget(noExtException);
|
Jit->SetJumpTarget(noExtException);
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user