qemu-e2k/target-arm
Peter Maydell cab565c412 target-arm: Signal InvalidOp for Neon GE and GT compares of QNaN
If the input to a Neon float comparison is a quiet NaN, the ARM ARM
specifies that we should raise InvalidOp if the comparison is GE or GT
but not for EQ. (Signaling NaNs raise InvalidOp regardless). This means
only EQ should use the _quiet version of the comparison function.

We implement this by cleaning up the comparison helpers to call the
appopriate versions of the softfloat simple comparison functions
(float32_le and friends) rather than the generic float32_compare functions.
This makes them simple enough that they are clearer opencoded rather
than macroised.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2011-05-23 22:39:36 +02:00
..
cpu.h target-arm: Privatize CPU_INTERRUPT_FIQ. 2011-05-08 16:55:23 +00:00
exec.h
helper.c target-arm: Use correct float status for Neon int-float conversions 2011-05-23 22:39:36 +02:00
helper.h target-arm: Use correct float status for Neon int-float conversions 2011-05-23 22:39:36 +02:00
iwmmxt_helper.c
machine.c
neon_helper.c target-arm: Signal InvalidOp for Neon GE and GT compares of QNaN 2011-05-23 22:39:36 +02:00
op_addsub.h
op_helper.c Remove unused function parameter from cpu_restore_state 2011-04-20 10:37:03 +02:00
translate.c target-arm: Use correct float status for Neon int-float conversions 2011-05-23 22:39:36 +02:00