qemu-e2k/target/ppc
Víctor Colombo c348e09fb0 target/ppc: Fix xvcmp* clearing FI bit
Vector instructions in general are not supposed to change the FI bit.
However, xvcmp* instructions are calling gen_helper_float_check_status,
which is leading to a cleared FI flag where it should be kept
unchanged.
As helper_float_check_status only affects inexact, overflow and
underflow, and the xvcmp* instructions don't change these flags, this
issue can be fixed by removing the call to helper_float_check_status.
By doing this, the FI bit in FPSCR will be preserved as expected.

Fixes: 00084a25ad ("target/ppc: introduce separate VSX_CMP macro for xvcmp* instructions")
Signed-off-by: Víctor Colombo <victor.colombo@eldorado.org.br>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20221005121551.27957-1-victor.colombo@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
2022-10-17 16:15:09 -03:00
..
translate target/ppc: Fix xvcmp* clearing FI bit 2022-10-17 16:15:09 -03:00
arch_dump.c dump: Replace opaque DumpState pointer with a typed one 2022-10-06 19:30:43 +04:00
compat.c
cpu_init.c hw/core: Add CPUClass.get_pc 2022-10-04 12:13:12 -07:00
cpu-models.c
cpu-models.h
cpu-param.h
cpu-qom.h target/ppc: Fix host PVR matching for KVM 2022-08-30 16:20:29 -03:00
cpu.c target/ppc: Bugfix FP when OE/UE are set 2022-08-31 14:08:05 -03:00
cpu.h dump: Replace opaque DumpState pointer with a typed one 2022-10-06 19:30:43 +04:00
dfp_helper.c target/ppc: Set result to QNaN for DENBCD when VXCVI occurs 2022-09-20 10:54:06 -03:00
excp_helper.c target/ppc: restore powerpc_excp_booke doorbell interrupts 2022-10-17 16:15:09 -03:00
fpu_helper.c target/ppc: Clear fpstatus flags on helpers missing it 2022-09-20 10:54:06 -03:00
gdbstub.c
helper_regs.c
helper_regs.h
helper.h target/ppc: Merge fsqrt and fsqrts helpers 2022-09-20 10:54:06 -03:00
insn32.decode target/ppc: Move fsqrts to decodetree 2022-09-20 10:54:06 -03:00
insn64.decode
int_helper.c target/ppc: Set OV32 when OV is set 2022-09-20 10:54:06 -03:00
internal.h target/ppc: Implement new wait variants 2022-07-28 13:30:41 -03:00
Kconfig
kvm_ppc.h
kvm-stub.c
kvm.c kvm: allow target-specific accelerator properties 2022-10-10 09:23:16 +02:00
machine.c target/ppc: Fix host PVR matching for KVM 2022-08-30 16:20:29 -03:00
mem_helper.c
meson.build
misc_helper.c
mmu_common.c
mmu_helper.c target/ppc: Implement ISA 3.00 tlbie[l] 2022-07-18 13:59:43 -03:00
mmu-book3s-v3.c ppc: Check partition and process table alignment 2022-07-18 13:59:43 -03:00
mmu-book3s-v3.h target/ppc: Implement ISA 3.00 tlbie[l] 2022-07-18 13:59:43 -03:00
mmu-books.h
mmu-hash32.c
mmu-hash32.h
mmu-hash64.c target/ppc: Implement slbiag 2022-07-18 13:59:43 -03:00
mmu-hash64.h
mmu-radix64.c target/ppc: Check page dir/table base alignment 2022-07-18 13:59:43 -03:00
mmu-radix64.h
monitor.c target/ppc: check tb_env != 0 before printing TBU/TBL/DECR 2022-07-18 13:59:43 -03:00
power8-pmu-regs.c.inc
power8-pmu.c
power8-pmu.h
spr_common.h
tcg-stub.c
timebase_helper.c
trace-events
trace.h
translate.c target/ppc: Zero second doubleword of VSR registers for FPR insns 2022-09-20 10:54:06 -03:00
user_only_helper.c