5 #include "primitives.h"
9 float32_t
i64_to_f32( int_fast64_t a
)
18 absA
= sign
? - (uint_fast64_t) a
: a
;
19 shiftCount
= softfloat_countLeadingZeros64( absA
) - 40;
20 if ( 0 <= shiftCount
) {
23 sign
, 0x95 - shiftCount
, (uint_fast32_t) absA
<<shiftCount
)
30 ? softfloat_shortShift64RightJam( absA
, - shiftCount
)
31 : (uint_fast32_t) absA
<<shiftCount
;
32 return softfloat_roundPackToF32( sign
, 0x9C - shiftCount
, sig
);