diff --git a/fpu/softfloat.c b/fpu/softfloat.c index a1c658eef7..50fce01c3a 100644 --- a/fpu/softfloat.c +++ b/fpu/softfloat.c @@ -6443,10 +6443,10 @@ uint32 float32_to_uint32_round_to_zero( float32 a STATUS_PARAM ) return res; } -uint16 float32_to_uint16_round_to_zero( float32 a STATUS_PARAM ) +uint_fast16_t float32_to_uint16_round_to_zero(float32 a STATUS_PARAM) { int64_t v; - uint16 res; + uint_fast16_t res; v = float32_to_int64_round_to_zero(a STATUS_VAR); if (v < 0) { @@ -6497,10 +6497,10 @@ uint32 float64_to_uint32_round_to_zero( float64 a STATUS_PARAM ) return res; } -uint16 float64_to_uint16_round_to_zero( float64 a STATUS_PARAM ) +uint_fast16_t float64_to_uint16_round_to_zero(float64 a STATUS_PARAM) { int64_t v; - uint16 res; + uint_fast16_t res; v = float64_to_int64_round_to_zero(a STATUS_VAR); if (v < 0) { diff --git a/fpu/softfloat.h b/fpu/softfloat.h index 2ce4110c07..75246c4cb0 100644 --- a/fpu/softfloat.h +++ b/fpu/softfloat.h @@ -44,6 +44,7 @@ these four paragraphs for those parts of this code that are retained. #include #include "config-host.h" +#include "osdep.h" /*---------------------------------------------------------------------------- | Each of the following `typedef's defines the most convenient type that holds @@ -57,7 +58,6 @@ typedef uint8_t flag; typedef uint8_t uint8; typedef int8_t int8; #ifndef _AIX -typedef int uint16; typedef int int16; #endif typedef unsigned int uint32; @@ -263,7 +263,7 @@ extern const float16 float16_default_nan; | Software IEC/IEEE single-precision conversion routines. *----------------------------------------------------------------------------*/ int16 float32_to_int16_round_to_zero( float32 STATUS_PARAM ); -uint16 float32_to_uint16_round_to_zero( float32 STATUS_PARAM ); +uint_fast16_t float32_to_uint16_round_to_zero(float32 STATUS_PARAM); int32 float32_to_int32( float32 STATUS_PARAM ); int32 float32_to_int32_round_to_zero( float32 STATUS_PARAM ); uint32 float32_to_uint32( float32 STATUS_PARAM ); @@ -367,7 +367,7 @@ extern const float32 float32_default_nan; | Software IEC/IEEE double-precision conversion routines. *----------------------------------------------------------------------------*/ int16 float64_to_int16_round_to_zero( float64 STATUS_PARAM ); -uint16 float64_to_uint16_round_to_zero( float64 STATUS_PARAM ); +uint_fast16_t float64_to_uint16_round_to_zero(float64 STATUS_PARAM); int32 float64_to_int32( float64 STATUS_PARAM ); int32 float64_to_int32_round_to_zero( float64 STATUS_PARAM ); uint32 float64_to_uint32( float64 STATUS_PARAM );