Fix some issues relating to SSE floating-point emulation. The first patch fixes a problem with the handling of the FTZ bit that was found through the testcase written for the second patch. Rather than writing a separate standalone test for that bug, it seemed sufficient for the testcase in the second patch to cover both patches.
The style checker will produce its usual inapplicable warnings about use of "volatile" in the testcase and about C99 hex float constants. Joseph Myers (2): target/i386: set SSE FTZ in correct floating-point state target/i386: fix IEEE SSE floating-point exception raising target/i386/cpu.h | 1 + target/i386/fpu_helper.c | 35 +- target/i386/gdbstub.c | 1 + target/i386/helper.c | 1 + target/i386/helper.h | 1 + target/i386/ops_sse.h | 28 +- target/i386/translate.c | 1 + tests/tcg/i386/Makefile.target | 4 + tests/tcg/i386/test-i386-sse-exceptions.c | 813 ++++++++++++++++++++++ 9 files changed, 872 insertions(+), 13 deletions(-) create mode 100644 tests/tcg/i386/test-i386-sse-exceptions.c -- 2.17.1 -- Joseph S. Myers jos...@codesourcery.com