unicorn/qemu
Peter Maydell 61377ce01c target/arm: Implement FPST_STD_F16 fpstatus
Architecturally, Neon FP16 operations use the "standard FPSCR" like
all other Neon operations. However, this is defined in the Arm ARM
pseudocode as "a fixed value, except that FZ16 (and AHP) follow the
FPSCR bits". In QEMU, the softfloat float_status doesn't include
separate flush-to-zero for FP16 operations, so we must keep separate
fp_status for "Neon non-FP16" and "Neon fp16" operations, in the
same way we do already for the non-Neon "fp_status" vs "fp_status_f16".

Add the extra float_status field to the CPU state structure,
ensure it is correctly initialized and updated on FPSCR writes,
and make fpstatus_ptr(FPST_STD_F16) return a pointer to it.

Backports commit aaae563bc73de0598bbc09a102e68f27fafe704a
2021-02-26 12:00:25 -05:00
..
accel target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
crypto
default-configs
docs
fpu
hw
include target/i386: floatx80: avoid compound literals in static initializers 2021-02-25 23:38:54 -05:00
qapi
qobject
qom
scripts
target target/arm: Implement FPST_STD_F16 fpstatus 2021-02-26 12:00:25 -05:00
tcg target/arm/translate.c: Delete/amend incorrect comments 2021-02-26 11:23:52 -05:00
util
aarch64.h target/arm: Fix temp double-free in sve ldr/str 2021-02-25 23:10:37 -05:00
aarch64eb.h target/arm: Fix temp double-free in sve ldr/str 2021-02-25 23:10:37 -05:00
accel.c
arm.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
armeb.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
CODING_STYLE.rst
configure
COPYING
COPYING.LIB
cpus.c
exec.c
gen_all_header.sh arm64eb: add support for ARM64 big endian. 2017-04-24 23:30:01 +08:00
glib_compat.c
header_gen.py target/riscv: vector single-width integer multiply instructions 2021-02-26 10:46:26 -05:00
ioport.c
LICENSE
m68k.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
Makefile
Makefile.objs
Makefile.target
memory.c
memory_ldst.inc.c
memory_mapping.c
mips.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
mips64.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
mips64el.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
mipsel.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
powerpc.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
qemu-timer.c
riscv32.h target/riscv: vector single-width integer multiply instructions 2021-02-26 10:46:26 -05:00
riscv64.h target/riscv: vector single-width integer multiply instructions 2021-02-26 10:46:26 -05:00
rules.mak
sparc.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
sparc64.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00
unicorn_common.h
VERSION Open 5.2 development tree 2021-02-25 23:52:17 -05:00
vl.c
vl.h
x86_64.h target/arm: Add sve infrastructure for page lookup 2021-02-25 20:28:23 -05:00