The PSW in the old PSW has to point at the next instruction, as specification exceptions are defined to be "suppressing or completed", but not nullified.
Signed-off-by: David Hildenbrand <[email protected]> --- target/s390x/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/s390x/helper.c b/target/s390x/helper.c index a8d20c5..42a2465 100644 --- a/target/s390x/helper.c +++ b/target/s390x/helper.c @@ -737,6 +737,6 @@ void s390x_cpu_do_unaligned_access(CPUState *cs, vaddr addr, if (retaddr) { cpu_restore_state(cs, retaddr); } - program_interrupt(env, PGM_SPECIFICATION, ILEN_LATER); + program_interrupt(env, PGM_SPECIFICATION, ILEN_LATER_INC); } #endif /* CONFIG_USER_ONLY */ -- 2.9.3
