qemu-e2k/target/s390x
David Hildenbrand b5e8532902 s390x/tcg: fixup TEST PROTECTION
CC == 2 can only happen due to a protection exception, not if memory is
not available (PGM_ADDRESSING). So all PGM_ADDRESSING exceptions have to
be forwarded to the guest.

Since the initial definition of TEST PROTECTION, we now read globals
(e.g. PSW mask), so we have to correctly mark the instruction
(otherwise, e.g. booting fedora 27 fails).

Also, the architecture explicitly specifies which exceptions are
forwarded to the guest, this makes the code a little nicer.

Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20180112125452.8569-1-david@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
2018-01-22 11:04:52 +01:00
..
arch_dump.c
cc_helper.c s390x/tcg: use s390_program_interrupt() in SACF 2017-12-14 17:56:54 +01:00
cpu_features_def.h
cpu_features.c s390x/cpumodel: fix max STFL(E) bit number 2017-10-06 10:53:02 +02:00
cpu_features.h
cpu_models.c s390x: change the QEMU cpu model to a stripped down z12 2017-12-14 17:56:54 +01:00
cpu_models.h s390x: change the QEMU cpu model to a stripped down z12 2017-12-14 17:56:54 +01:00
cpu-qom.h target/s390x: change CPU type name to "s390x-cpu" 2017-10-30 08:56:28 +01:00
cpu.c tcg: Avoid setting tcg_initialize if !CONFIG_TCG 2017-10-26 17:47:36 +01:00
cpu.h s390x/tcg: fixup TEST PROTECTION 2018-01-22 11:04:52 +01:00
crypto_helper.c s390x/tcg: introduce and use s390_program_interrupt() 2017-12-14 17:56:54 +01:00
diag.c s390x/diag: pass the retaddr into handle_diag_308() 2017-12-14 17:56:54 +01:00
excp_helper.c s390x/tcg: fix and cleanup mcck injection 2017-12-14 17:56:54 +01:00
fpu_helper.c s390x/tcg: get rid of runtime_exception() 2017-12-14 17:56:54 +01:00
gdbstub.c
gen-features.c s390x: change the QEMU cpu model to a stripped down z12 2017-12-14 17:56:54 +01:00
helper.c target/s390x: nuke DPRINTF in helper.c 2017-12-14 17:56:54 +01:00
helper.h s390x/tcg: fixup TEST PROTECTION 2018-01-22 11:04:52 +01:00
insn-data.def s390x/tcg: implement extract-CPU-time facility 2017-12-14 17:56:54 +01:00
insn-format.def
int_helper.c s390x/tcg: get rid of runtime_exception() 2017-12-14 17:56:54 +01:00
internal.h s390x/tcg: fix and cleanup mcck injection 2017-12-14 17:56:54 +01:00
interrupt.c s390x/tcg: drop program_interrupt() 2017-12-14 17:56:54 +01:00
ioinst.c s390x: handle exceptions during s390_cpu_virt_mem_rw() correctly (TCG) 2017-12-14 17:56:54 +01:00
kvm_s390x.h s390x/kvm: factor out SIGP code into sigp.c 2017-10-20 13:32:10 +02:00
kvm-stub.c s390x/kvm: factor out SIGP code into sigp.c 2017-10-20 13:32:10 +02:00
kvm.c maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
machine.c s390x/kvm: use cpu model for gscb on compat machines 2017-10-30 09:03:45 +01:00
Makefile.objs s390x/kvm: factor out SIGP code into sigp.c 2017-10-20 13:32:10 +02:00
mem_helper.c s390x/tcg: fixup TEST PROTECTION 2018-01-22 11:04:52 +01:00
misc_helper.c s390x/tcg: implement extract-CPU-time facility 2017-12-14 17:56:54 +01:00
mmu_helper.c s390x/tcg: don't exit the cpu loop in s390_cpu_virt_mem_rw() 2017-12-14 17:56:54 +01:00
sigp.c target/s390x: special handling when starting a CPU with WAIT PSW 2017-10-20 13:32:10 +02:00
trace-events s390x/kvm: factor out SIGP code into sigp.c 2017-10-20 13:32:10 +02:00
translate.c s390x/tcg: implement TEST PROTECTION 2018-01-22 11:04:52 +01:00