41#include "specialize.h"
55 struct exp32_sig128 normExpSig;
56 struct uint128 sig128;
64 sign = signF128UI64( uiA64 );
65 exp = expF128UI64( uiA64 );
66 frac64 = fracF128UI64( uiA64 );
70 if ( exp == 0x7FFF ) {
71 if ( frac64 | frac0 ) {
78 uiZ0 =
UINT64_C( 0x8000000000000000 );
85 if ( ! (frac64 | frac0) ) {
92 frac64 = normExpSig.sig.v64;
93 frac0 = normExpSig.sig.v0;
99 frac64 |
UINT64_C( 0x0001000000000000 ), frac0, 15 );
104 uZ.s.signExp = uiZ64;
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
void softfloat_f128UIToCommonNaN(uint_fast64_t uiA64, uint_fast64_t uiA0, struct commonNaN *zPtr)
#define softfloat_commonNaNToExtF80UI
extFloat80_t f128_to_extF80(float128_t a)
#define packToExtF80UI64(sign, exp)
struct exp32_sig128 softfloat_normSubnormalF128Sig(uint_fast64_t sig64, uint_fast64_t sig0)
extFloat80_t softfloat_roundPackToExtF80(bool sign, int_fast32_t exp, uint_fast64_t sig, uint_fast64_t sigExtra, uint_fast8_t roundingPrecision)
struct uint128 softfloat_shortShiftLeft128(uint64_t a64, uint64_t a0, uint_fast8_t dist)