qemu/target/s390x
Ilya Leoshkevich a16eec9fb2 target/s390x: Fix LAALG not updating cc_src
LAALG uses op_laa() and wout_addu64(). The latter expects cc_src to be
set, but the former does not do it. This can lead to assertion failures
if something sets cc_src to neither 0 nor 1 before.

Fix by introducing op_laa_addu64(), which sets cc_src, and using it for
LAALG.

Fixes: 4dba4d6fef ("target/s390x: Use atomic operations for LOAD AND OP")
Cc: qemu-stable@nongnu.org
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20231106093605.1349201-4-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
(cherry picked from commit bea402482a8c94389638cbd3d7fe3963fb317f4c)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2023-11-19 21:15:06 +03:00
..
kvm kvm: Introduce kvm_arch_get_default_type hook 2023-08-24 18:43:47 +03:00
tcg target/s390x: Fix LAALG not updating cc_src 2023-11-19 21:15:06 +03:00
arch_dump.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
cpu-dump.c target/s390x: Fix shifting 32-bit values for more than 31 bits 2022-01-17 08:36:33 +01:00
cpu-param.h target/s390x: Remove NB_MMU_MODES define 2023-03-13 06:44:37 -07:00
cpu-qom.h target: Introduce and use OBJECT_DECLARE_CPU_TYPE() macro 2022-03-06 22:23:09 +01:00
cpu-sysemu.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
cpu.c hw/core: Use a callback for target specific query-cpus-fast information 2023-05-16 09:14:18 +02:00
cpu.h target: Widen pc/cs_base in cpu_get_tb_cpu_state 2023-06-26 17:32:59 +02:00
cpu_features.c s390x: spelling fixes 2023-07-25 17:13:45 +03:00
cpu_features.h
cpu_features_def.h
cpu_features_def.h.inc s390x/cpumodel: add stfl197 processor-activity-instrumentation extension 1 2022-08-25 21:59:04 +02:00
cpu_models.c s390x: spelling fixes 2023-07-25 17:13:45 +03:00
cpu_models.h s390x/tcg: Fix CPU address returned by STIDP 2023-06-05 20:48:34 +02:00
cpu_models_sysemu.c qapi machine: Elide redundant has_FOO in generated C 2022-12-14 20:04:47 +01:00
cpu_models_user.c
diag.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
gdbstub.c s390x/gdb: Split s390-virt.xml 2023-04-28 08:05:37 +02:00
gen-features.c target/s390x: support PRNO_TRNG instruction 2022-09-26 17:23:11 +02:00
helper.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
helper.h target/s390x: Fix LRA overwriting the top 32 bits on DAT error 2023-07-10 15:34:24 +02:00
interrupt.c
ioinst.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
Kconfig
machine.c
meson.build meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
mmu_helper.c target/s390x: Fix LRA when DAT is off 2023-07-10 15:34:24 +02:00
s390x-internal.h target/s390x: Fix float_comp_to_cc() prototype 2023-03-24 11:46:08 +01:00
sigp.c s390x: sigp: Reorder the SIGP STOP code 2022-01-18 15:00:57 +01:00
trace-events
trace.h