diff options
| author | Markus Wick <degasus@users.noreply.github.com> | 2021-03-24 08:46:51 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-24 08:46:51 +0100 |
| commit | e2b5026652a85eee2b9d4e4a40698ef51902da6a (patch) | |
| tree | b7a74315b56b2859f5f1f06c9c8d0fe26bfe5cc0 /Source/Core | |
| parent | 85aee64cd86c4862283a38827a001d91ed6a6980 (diff) | |
| parent | 3bd920638d0fd10d7b024ee3280b5d720505c7cb (diff) | |
Merge pull request #9605 from JosJuice/jitarm64-pc-stp-2
JitArm64: Use STP for pc/npc, part 2
Diffstat (limited to 'Source/Core')
| -rw-r--r-- | Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp b/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp index 4bf6e627e8..3b426a6214 100644 --- a/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp +++ b/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp @@ -153,8 +153,9 @@ void JitArm64::GenerateAsm() SetJumpTarget(bail); do_timing = GetCodePtr(); // Write the current PC out to PPCSTATE - STR(IndexType::Unsigned, DISPATCHER_PC, PPC_REG, PPCSTATE_OFF(pc)); - STR(IndexType::Unsigned, DISPATCHER_PC, PPC_REG, PPCSTATE_OFF(npc)); + static_assert(PPCSTATE_OFF(pc) <= 252); + static_assert(PPCSTATE_OFF(pc) + 4 == PPCSTATE_OFF(npc)); + STP(IndexType::Signed, DISPATCHER_PC, DISPATCHER_PC, PPC_REG, PPCSTATE_OFF(pc)); // Check the state pointer to see if we are exiting // Gets checked on at the end of every slice |
