summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2021-12-05 23:52:21 +0100
committer hap <happppp@users.noreply.github.com>2021-12-05 23:52:36 +0100
commit5618893d2a02f9baab3015e35019d85462e9c524 (patch)
treeb7f0bb7f5978a539aa1ec565e261fd327f3ba58c
parentf38cb2676c36cb872ef0c9b56664d3f535eea56c (diff)
sparc: fix LDSTUBA not working
-rw-r--r--src/devices/cpu/sparc/sparc.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/devices/cpu/sparc/sparc.cpp b/src/devices/cpu/sparc/sparc.cpp
index 2c594a74bb3..c4d4ce69565 100644
--- a/src/devices/cpu/sparc/sparc.cpp
+++ b/src/devices/cpu/sparc/sparc.cpp
@@ -2460,6 +2460,7 @@ inline void sparc_base_device::execute_ldd(uint32_t op)
m_mem_address_not_aligned = 1;
m_stashed_icount = m_icount;
m_icount = 0;
+ return;
}
const uint32_t data = read_word(m_data_space, address);
@@ -3296,7 +3297,6 @@ void sparc_base_device::execute_ldstub(uint32_t op)
{
address = RS1REG + RS2REG;
addr_space = ASI;
- return;
}
}
@@ -4643,8 +4643,8 @@ inline void sparc_base_device::execute_step()
if (m_fp_exception_pending)
{
m_fp_exception_pending = false;
- m_fp_exception = 1;
m_trap = 1;
+ m_fp_exception = 1;
m_stashed_icount = m_icount;
m_icount = 0;
return;