diff options
author | 2021-12-06 01:31:02 +0100 | |
---|---|---|
committer | 2021-12-06 01:31:24 +0100 | |
commit | 0cd40f3acfbfd4679347e43e9ad5c7731bb7124f (patch) | |
tree | f4a80b1a811888bf3a039d814a0e97888598bd50 | |
parent | a402cdbafbe111a980e7b31a3813ae9c634f1731 (diff) |
sparc: check pending interrupt after RETT
-rw-r--r-- | src/devices/cpu/sparc/sparc.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/devices/cpu/sparc/sparc.cpp b/src/devices/cpu/sparc/sparc.cpp index 1babc38128c..48ad8c98816 100644 --- a/src/devices/cpu/sparc/sparc.cpp +++ b/src/devices/cpu/sparc/sparc.cpp @@ -1841,6 +1841,12 @@ void sparc_base_device::execute_rett(uint32_t op) } update_gpr_pointers(); + + if (m_et && (m_bp_irl == 15 || m_bp_irl > m_pil) && m_interrupt_level == 0) + { + m_trap = 1; + m_interrupt_level = m_bp_irl; + } } |