From: Aleksandar Markovic <aleksandar.marko...@imgtec.com> Mips platform represents the most complex case among QEMU-supported platforms in reference to certain aspects of floating-point arithmetics. This is mostly a consequence of the fact that Mips platform, for many reasons, evolved considerably over time related to floating-point arithmetics standards (significantly more than other platforms). It has been difficult for emulators like QEMU to support such variety of configurations.
This patch set provides solution to this problem, and furnishes accurate emulation of floating-point arithmetics for all Mips cases. Aleksandar Markovic (2): softfloat: Enable run-time-configurable meaning of signaling NaN bit target-mips: Implement IEEE 754-2008 functionality for R6 and MSA instructions fpu/softfloat-specialize.h | 546 +++++++++++++++++++++--------------------- fpu/softfloat.c | 170 +++++++------ include/fpu/softfloat.h | 49 ++-- target-alpha/cpu.c | 2 + target-arm/cpu.c | 2 + target-arm/helper-a64.c | 14 +- target-arm/helper.c | 40 ++-- target-i386/cpu.c | 4 + target-m68k/cpu.c | 2 + target-m68k/helper.c | 6 +- target-microblaze/cpu.c | 2 + target-microblaze/op_helper.c | 6 +- target-mips/helper.h | 14 +- target-mips/msa_helper.c | 144 +++++++---- target-mips/op_helper.c | 527 +++++++++++++++++++++++++++++++++------- target-mips/translate.c | 20 +- target-mips/translate_init.c | 24 +- target-openrisc/cpu.c | 2 + target-ppc/fpu_helper.c | 120 +++++----- target-ppc/translate_init.c | 2 + target-s390x/cpu.c | 1 + target-s390x/fpu_helper.c | 28 ++- target-s390x/helper.h | 6 +- target-s390x/translate.c | 6 +- target-sh4/cpu.c | 1 + target-sparc/cpu.c | 1 + target-tricore/helper.c | 1 + target-unicore32/cpu.c | 1 + target-xtensa/cpu.c | 3 + 29 files changed, 1119 insertions(+), 625 deletions(-) -- 1.9.1