]> git.ipfire.org Git - thirdparty/qemu.git/commit
target/i386: Use correct type for get_float_exception_flags() values
authorPeter Maydell <peter.maydell@linaro.org>
Mon, 19 May 2025 14:51:12 +0000 (15:51 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 6 Jun 2025 12:32:55 +0000 (14:32 +0200)
commit397ef415cad11c91318b512ecfaa27679ea7e351
tree8e168fab3780527a41388b4096197e788005e760
parentbc40e4fe6263f2c939ac8455033bfec18c9b3a0a
target/i386: Use correct type for get_float_exception_flags() values

The softfloat get_float_exception_flags() function returns 'int', but
in various places in target/i386 we incorrectly store the returned
value into a uint8_t.  This currently has no ill effects because i386
doesn't care about any of the float_flag enum values above 0x40.
However, we want to start using float_flag_input_denormal_used, which
is 0x4000.

Switch to using 'int' so that we can handle all the possible valid
float_flag_* values. This includes changing the return type of
save_exception_flags() and the argument to merge_exception_flags().

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250519145114.2786534-3-peter.maydell@linaro.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
target/i386/ops_sse.h
target/i386/tcg/fpu_helper.c