summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Ted Green <tedgreen99@users.noreply.github.com>2019-04-11 13:59:48 -0600
committer Ted Green <tedgreen99@users.noreply.github.com>2019-04-11 13:59:48 -0600
commite923b26d00ee92a95843b78c4232b84ad8a33e8f (patch)
treed10df119d568e7f44da789b3d61f5c65176490b2 /src
parentdb3712af7c2e7a74abbc91049e015601256bb8c2 (diff)
(nw) MIPS3: Don't adjust EPC to pc-4 when not backing up
Diffstat (limited to 'src')
-rw-r--r--src/devices/cpu/mips/mips3.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/devices/cpu/mips/mips3.cpp b/src/devices/cpu/mips/mips3.cpp
index c9a94f36e1f..c940105d8e3 100644
--- a/src/devices/cpu/mips/mips3.cpp
+++ b/src/devices/cpu/mips/mips3.cpp
@@ -19,7 +19,6 @@
#define ENABLE_OVERFLOWS (0)
#define ENABLE_EE_ELF_LOADER (0)
#define ENABLE_EE_DECI2 (0)
-#define DELAY_SLOT_EXCEPTION_HACK (0)
/***************************************************************************
HELPER MACROS
@@ -315,12 +314,8 @@ void mips3_device::generate_exception(int exception, int backup)
/* check if exception within another exception */
if (!(SR & SR_EXL))
{
- /* if we were in a branch delay slot, adjust */
-#if DELAY_SLOT_EXCEPTION_HACK
- if (((m_nextpc != ~0) || (m_delayslot)) && (m_ppc == m_core->pc - 4))
-#else
- if ((m_nextpc != ~0) || (m_delayslot))
-#endif
+ /* if we were in a branch delay slot and we are backing up, adjust */
+ if (((m_nextpc != ~0) || (m_delayslot)) && backup)
{
m_delayslot = false;
m_nextpc = ~0;