Statistics
| Branch: | Revision:

root / fpu @ efdef95f

Name Size
softfloat-macros.h 24.2 kB
softfloat-native.c 11.1 kB
softfloat-native.h 13.2 kB
softfloat-specialize.h 27.1 kB
softfloat.c 215.3 kB
softfloat.h 24.3 kB

Latest revisions

# Date Author Comment
bb98fe42 03/21/2011 10:46 pm Andreas Färber

softfloat: Drop [s]bits{8, 16, 32, 64} types in favor of [u]int{8, 16, 32, 64}_t

They are defined with the same semantics as the POSIX types,
so prefer those for consistency. Suggested by Peter Maydell.

Cc: Peter Maydell <>
Cc: Aurelien Jarno <>...

87b8cc3c 03/21/2011 10:46 pm Andreas Färber

softfloat: Resolve type mismatches between declaration and implementation

The original SoftFloat 2.0b library avoided the use of custom integer types
in its public headers. This requires the definitions of int{8,16,32,64} to
match the assumptions in the declarations. This breaks on BeOS R5 and Haiku/x86,...

8d725fac 03/21/2011 10:46 pm Andreas Färber

softfloat: Prepend QEMU-style header with derivation notice

The SoftFloat license requires "prominent notice that the work
is derivative". Having added features like improved 16-bit support
for arm already, add such a notice to the sources.

softfloat-native.[ch] are not under the SoftFloat license...

8559666d 02/24/2011 09:53 am Christophe Lyon

softfloat: move all default NaN definitions to softfloat.h.

These special values are needed to implement some helper functions,
which return/use these values in some cases.

Signed-off-by: Christophe Lyon <>
Reviewed-by: Peter Maydell <>...

c30fe7df 02/24/2011 09:53 am Christophe Lyon

softfloat: add _set_sign(), _infinity and _half for 32 and 64 bits floats.

These constants and utility function are needed to implement some
helpers. Defining constants avoids the need to re-compute them at
runtime.

Signed-off-by: Christophe Lyon <>...

d5138cf4 02/10/2011 09:16 pm Peter Maydell

softfloat: Fix compilation failures with USE_SOFTFLOAT_STRUCT_TYPES

Make softfloat compile with USE_SOFTFLOAT_STRUCT_TYPES defined, by
adding and using new macros const_float16(), const_float32() and
const_float64() so you can use array initializers in an array of...

f591e1be 02/10/2011 07:28 pm Peter Maydell

softfloat: Correctly handle NaNs in float16_to_float32()

Correctly handle NaNs in float16_to_float32(), by defining and
using a float16ToCommonNaN() function, as we do with the other formats.

Signed-off-by: Peter Maydell <>
Signed-off-by: Aurelien Jarno <>

600e30d2 02/10/2011 07:28 pm Peter Maydell

softfloat: Fix single-to-half precision float conversions

Fix various bugs in the single-to-half-precision conversion code: * input NaNs not correctly converted in IEEE mode
(fixed by defining and using a commonNaNToFloat16()) * wrong values returned when converting NaN/Inf into non-IEEE...

bcd4d9af 02/10/2011 07:28 pm Christophe Lyon

softfloat: Honour default_nan_mode for float-to-float conversions

Honour the default_nan_mode flag when doing conversions between
different floating point formats, as well as when returning a NaN from
a two-operand floating point function. This corrects the behaviour...

bb4d4bb3 02/10/2011 07:28 pm Peter Maydell

softfloat: Add float16 type and float16 NaN handling functions

Add a float16 type to softfloat, rather than using bits16 directly.
Also add the missing functions float16_is_quiet_nan(),
float16_is_signaling_nan() and float16_maybe_silence_nan(),
which are needed for the float16 conversion routines....

View revisions

Also available in: Atom