Home
last modified time | relevance | path

Searched refs:shiftCount (Results 1 – 25 of 87) sorted by relevance

1234

/optee_os/lib/libutils/isoc/arch/arm/softfloat/source/
A DextF80M_to_ui64_r_minMag.c61 int32_t shiftCount; in extF80M_to_ui64_r_minMag() local
74 shiftCount = 0x403E - exp; in extF80M_to_ui64_r_minMag()
75 if ( 64 <= shiftCount ) { in extF80M_to_ui64_r_minMag()
80 if ( shiftCount < 0 ) { in extF80M_to_ui64_r_minMag()
81 if ( sign || (shiftCount <= -63) ) goto invalid; in extF80M_to_ui64_r_minMag()
82 shiftCount = -shiftCount; in extF80M_to_ui64_r_minMag()
83 z = sig<<shiftCount; in extF80M_to_ui64_r_minMag()
84 if ( z>>shiftCount != sig ) goto invalid; in extF80M_to_ui64_r_minMag()
87 if ( shiftCount ) z >>= shiftCount; in extF80M_to_ui64_r_minMag()
89 if ( exact && shiftCount && (z<<shiftCount != sig) ) { in extF80M_to_ui64_r_minMag()
A DextF80M_to_i64_r_minMag.c61 int32_t shiftCount; in extF80M_to_i64_r_minMag() local
76 shiftCount = 0x403E - exp; in extF80M_to_i64_r_minMag()
77 if ( 64 <= shiftCount ) { in extF80M_to_i64_r_minMag()
82 if ( shiftCount < 0 ) { in extF80M_to_i64_r_minMag()
83 if ( shiftCount <= -63 ) goto invalid; in extF80M_to_i64_r_minMag()
84 shiftCount = -shiftCount; in extF80M_to_i64_r_minMag()
85 absZ = sig<<shiftCount; in extF80M_to_i64_r_minMag()
86 if ( absZ>>shiftCount != sig ) goto invalid; in extF80M_to_i64_r_minMag()
89 if ( shiftCount ) absZ >>= shiftCount; in extF80M_to_i64_r_minMag()
90 if ( exact && shiftCount ) { in extF80M_to_i64_r_minMag()
[all …]
A Dui64_to_f32.c45 int_fast8_t shiftCount; in ui64_to_f32() local
49 shiftCount = softfloat_countLeadingZeros64( a ) - 40; in ui64_to_f32()
50 if ( 0 <= shiftCount ) { in ui64_to_f32()
53 0, 0x95 - shiftCount, (uint_fast32_t) a<<shiftCount ) in ui64_to_f32()
57 shiftCount += 7; in ui64_to_f32()
59 (shiftCount < 0) ? softfloat_shortShiftRightJam64( a, -shiftCount ) in ui64_to_f32()
60 : (uint_fast32_t) a<<shiftCount; in ui64_to_f32()
61 return softfloat_roundPackToF32( 0, 0x9C - shiftCount, sig ); in ui64_to_f32()
A Ds_normSubnormalF128Sig.c45 int_fast8_t shiftCount; in softfloat_normSubnormalF128Sig() local
49 shiftCount = softfloat_countLeadingZeros64( sig0 ) - 15; in softfloat_normSubnormalF128Sig()
50 z.exp = -63 - shiftCount; in softfloat_normSubnormalF128Sig()
51 if ( shiftCount < 0 ) { in softfloat_normSubnormalF128Sig()
52 z.sig.v64 = sig0>>-shiftCount; in softfloat_normSubnormalF128Sig()
53 z.sig.v0 = sig0<<(shiftCount & 63); in softfloat_normSubnormalF128Sig()
55 z.sig.v64 = sig0<<shiftCount; in softfloat_normSubnormalF128Sig()
59 shiftCount = softfloat_countLeadingZeros64( sig64 ) - 15; in softfloat_normSubnormalF128Sig()
60 z.exp = 1 - shiftCount; in softfloat_normSubnormalF128Sig()
61 z.sig = softfloat_shortShiftLeft128( sig64, sig0, shiftCount ); in softfloat_normSubnormalF128Sig()
A Di64_to_f32.c48 int_fast8_t shiftCount; in i64_to_f32() local
54 shiftCount = softfloat_countLeadingZeros64( absA ) - 40; in i64_to_f32()
55 if ( 0 <= shiftCount ) { in i64_to_f32()
58 sign, 0x95 - shiftCount, (uint_fast32_t) absA<<shiftCount ) in i64_to_f32()
62 shiftCount += 7; in i64_to_f32()
64 (shiftCount < 0) in i64_to_f32()
65 ? softfloat_shortShiftRightJam64( absA, -shiftCount ) in i64_to_f32()
66 : (uint_fast32_t) absA<<shiftCount; in i64_to_f32()
67 return softfloat_roundPackToF32( sign, 0x9C - shiftCount, sig ); in i64_to_f32()
A Ds_normSubnormalF128SigM.c45 int_fast16_t shiftCount; in softfloat_normSubnormalF128SigM() local
49 shiftCount = 0; in softfloat_normSubnormalF128SigM()
53 shiftCount += 32; in softfloat_normSubnormalF128SigM()
54 if ( 128 <= shiftCount ) return 1; in softfloat_normSubnormalF128SigM()
57 shiftCount += softfloat_countLeadingZeros32( wordSig ) - 15; in softfloat_normSubnormalF128SigM()
58 if ( shiftCount ) softfloat_shiftLeft128M( sigPtr, shiftCount, sigPtr ); in softfloat_normSubnormalF128SigM()
59 return 1 - shiftCount; in softfloat_normSubnormalF128SigM()
A DextF80M_to_ui32_r_minMag.c61 int32_t shiftCount; in extF80M_to_ui32_r_minMag() local
75 shiftCount = 0x403E - exp; in extF80M_to_ui32_r_minMag()
76 if ( 64 <= shiftCount ) { in extF80M_to_ui32_r_minMag()
81 if ( shiftCount < 0 ) { in extF80M_to_ui32_r_minMag()
82 if ( sign || sig>>32 || (shiftCount <= -31) ) goto invalid; in extF80M_to_ui32_r_minMag()
83 shiftedSig = (uint64_t) (uint32_t) sig<<-shiftCount; in extF80M_to_ui32_r_minMag()
88 if ( shiftCount ) shiftedSig >>= shiftCount; in extF80M_to_ui32_r_minMag()
92 if ( exact && shiftCount && ((uint64_t) z<<shiftCount != sig) ) { in extF80M_to_ui32_r_minMag()
A Df32_to_ui64_r_minMag.c50 int_fast16_t shiftCount; in f32_to_ui64_r_minMag() local
57 shiftCount = 0xBE - exp; in f32_to_ui64_r_minMag()
58 if ( 64 <= shiftCount ) { in f32_to_ui64_r_minMag()
64 if ( signF32UI( uiA ) || (shiftCount < 0) ) goto invalid; in f32_to_ui64_r_minMag()
67 z = sig64>>shiftCount; in f32_to_ui64_r_minMag()
68 shiftCount = 40 - shiftCount; in f32_to_ui64_r_minMag()
69 if ( exact && (shiftCount < 0) && (uint32_t) (sig<<(shiftCount & 31)) ) { in f32_to_ui64_r_minMag()
A Df64_to_ui64.c51 int_fast16_t shiftCount; in f64_to_ui64() local
64 shiftCount = 0x433 - exp; in f64_to_ui64()
66 if ( shiftCount <= 0 ) { in f64_to_ui64()
67 if ( shiftCount < -11 ) { in f64_to_ui64()
71 sigExtra.v = sig<<-shiftCount; in f64_to_ui64()
74 sigExtra = softfloat_shiftRightJam64Extra( sig, 0, shiftCount ); in f64_to_ui64()
81 if ( shiftCount <= 0 ) { in f64_to_ui64()
82 if ( shiftCount < -11 ) { in f64_to_ui64()
86 sig <<= -shiftCount; in f64_to_ui64()
92 softfloat_shiftRightJam96M( extSig, shiftCount, extSig ); in f64_to_ui64()
A Df32_to_i64_r_minMag.c50 int_fast16_t shiftCount; in f32_to_i64_r_minMag() local
59 shiftCount = 0xBE - exp; in f32_to_i64_r_minMag()
60 if ( 64 <= shiftCount ) { in f32_to_i64_r_minMag()
67 if ( shiftCount <= 0 ) { in f32_to_i64_r_minMag()
78 absZ = sig64>>shiftCount; in f32_to_i64_r_minMag()
79 shiftCount = 40 - shiftCount; in f32_to_i64_r_minMag()
80 if ( exact && (shiftCount < 0) && (uint32_t) (sig<<(shiftCount & 31)) ) { in f32_to_i64_r_minMag()
A Df64_to_i64.c51 int_fast16_t shiftCount; in f64_to_i64() local
64 shiftCount = 0x433 - exp; in f64_to_i64()
66 if ( shiftCount <= 0 ) { in f64_to_i64()
67 if ( shiftCount < -11 ) { in f64_to_i64()
76 sigExtra.v = sig<<-shiftCount; in f64_to_i64()
79 sigExtra = softfloat_shiftRightJam64Extra( sig, 0, shiftCount ); in f64_to_i64()
86 if ( shiftCount <= 0 ) { in f64_to_i64()
87 if ( shiftCount < -11 ) { in f64_to_i64()
96 sig <<= -shiftCount; in f64_to_i64()
102 softfloat_shiftRightJam96M( extSig, shiftCount, extSig ); in f64_to_i64()
A DextF80M_to_i32_r_minMag.c61 int32_t shiftCount; in extF80M_to_i32_r_minMag() local
77 shiftCount = 0x403E - exp; in extF80M_to_i32_r_minMag()
78 if ( 64 <= shiftCount ) { in extF80M_to_i32_r_minMag()
83 if ( shiftCount < 0 ) { in extF80M_to_i32_r_minMag()
84 if ( sig>>32 || (shiftCount <= -31) ) goto invalid; in extF80M_to_i32_r_minMag()
85 shiftedSig = (uint64_t) (uint32_t) sig<<-shiftCount; in extF80M_to_i32_r_minMag()
90 if ( shiftCount ) shiftedSig >>= shiftCount; in extF80M_to_i32_r_minMag()
93 if ( exact && shiftCount ) { in extF80M_to_i32_r_minMag()
94 raiseInexact = ((uint64_t) absZ<<shiftCount != sig); in extF80M_to_i32_r_minMag()
A Ds_normRoundPackMToExtF80M.c52 int_fast16_t shiftCount; in softfloat_normRoundPackMToExtF80M() local
55 shiftCount = 0; in softfloat_normRoundPackMToExtF80M()
58 shiftCount = 32; in softfloat_normRoundPackMToExtF80M()
61 shiftCount = 64; in softfloat_normRoundPackMToExtF80M()
70 shiftCount += softfloat_countLeadingZeros32( wordSig ); in softfloat_normRoundPackMToExtF80M()
71 if ( shiftCount ) { in softfloat_normRoundPackMToExtF80M()
72 exp -= shiftCount; in softfloat_normRoundPackMToExtF80M()
73 softfloat_shiftLeft96M( extSigPtr, shiftCount, extSigPtr ); in softfloat_normRoundPackMToExtF80M()
A Ds_normRoundPackMToF128M.c48 int_fast16_t shiftCount; in softfloat_normRoundPackMToF128M() local
52 shiftCount = 0; in softfloat_normRoundPackMToF128M()
56 shiftCount += 32; in softfloat_normRoundPackMToF128M()
57 if ( 160 <= shiftCount ) { in softfloat_normRoundPackMToF128M()
66 shiftCount += softfloat_countLeadingZeros32( wordSig ) - 15; in softfloat_normRoundPackMToF128M()
67 if ( shiftCount ) { in softfloat_normRoundPackMToF128M()
68 exp -= shiftCount; in softfloat_normRoundPackMToF128M()
69 softfloat_shiftLeft160M( extSigPtr, shiftCount, extSigPtr ); in softfloat_normRoundPackMToF128M()
A Ds_mulAddF128.c144 shiftCount = 0; in softfloat_mulAddF128()
147 shiftCount = -1; in softfloat_mulAddF128()
151 shiftCount += 8; in softfloat_mulAddF128()
167 if ( shiftCount ) { in softfloat_mulAddF128()
173 if ( ! shiftCount ) { in softfloat_mulAddF128()
201 shiftCount = 8; in softfloat_mulAddF128()
214 shiftCount = 9; in softfloat_mulAddF128()
293 expZ += 7 - shiftCount; in softfloat_mulAddF128()
294 shiftCount = 15 - shiftCount; in softfloat_mulAddF128()
296 if ( shiftCount ) { in softfloat_mulAddF128()
[all …]
A Df128_to_ui64_r_minMag.c48 int_fast32_t exp, shiftCount; in f128_to_ui64_r_minMag() local
57 shiftCount = 0x402F - exp; in f128_to_ui64_r_minMag()
58 if ( shiftCount < 0 ) { in f128_to_ui64_r_minMag()
59 if ( signF128UI64( uiA64 ) || (shiftCount < -15) ) goto invalid; in f128_to_ui64_r_minMag()
62 negShiftCount = -shiftCount; in f128_to_ui64_r_minMag()
63 z = sig64<<negShiftCount | sig0>>(shiftCount & 63); in f128_to_ui64_r_minMag()
70 if ( 49 <= shiftCount ) { in f128_to_ui64_r_minMag()
78 z = sig64>>shiftCount; in f128_to_ui64_r_minMag()
79 if ( exact && (sig0 || (z<<shiftCount != sig64)) ) { in f128_to_ui64_r_minMag()
A Df64_to_ui64_r_minMag.c50 int_fast16_t shiftCount; in f64_to_ui64_r_minMag() local
57 shiftCount = 0x433 - exp; in f64_to_ui64_r_minMag()
58 if ( 53 <= shiftCount ) { in f64_to_ui64_r_minMag()
65 if ( shiftCount <= 0 ) { in f64_to_ui64_r_minMag()
66 if ( shiftCount < -11 ) goto invalid; in f64_to_ui64_r_minMag()
67 z = (sig | UINT64_C( 0x0010000000000000 ))<<-shiftCount; in f64_to_ui64_r_minMag()
70 z = sig>>shiftCount; in f64_to_ui64_r_minMag()
71 if ( exact && (uint64_t) (sig<<(-shiftCount & 63)) ) { in f64_to_ui64_r_minMag()
A Df32_to_ui64.c53 int_fast16_t shiftCount; in f32_to_ui64() local
62 shiftCount = 0xBE - exp; in f32_to_ui64()
63 if ( shiftCount < 0 ) { in f32_to_ui64()
70 if ( shiftCount ) { in f32_to_ui64()
71 sig64Extra = softfloat_shiftRightJam64Extra( sig64, 0, shiftCount ); in f32_to_ui64()
89 int_fast16_t shiftCount; in f32_to_ui64() local
97 shiftCount = 0xBE - exp; in f32_to_ui64()
98 if ( shiftCount < 0 ) { in f32_to_ui64()
106 if ( shiftCount ) softfloat_shiftRightJam96M( extSig, shiftCount, extSig ); in f32_to_ui64()
A Df128_to_i64_r_minMag.c51 int_fast32_t shiftCount; in f128_to_i64_r_minMag() local
62 shiftCount = 0x402F - exp; in f128_to_i64_r_minMag()
63 if ( shiftCount < 0 ) { in f128_to_i64_r_minMag()
64 if ( shiftCount < -14 ) { in f128_to_i64_r_minMag()
81 negShiftCount = -shiftCount; in f128_to_i64_r_minMag()
82 absZ = sig64<<negShiftCount | sig0>>(shiftCount & 63); in f128_to_i64_r_minMag()
87 if ( 49 <= shiftCount ) { in f128_to_i64_r_minMag()
94 absZ = sig64>>shiftCount; in f128_to_i64_r_minMag()
95 if ( exact && (sig0 || (absZ<<shiftCount != sig64)) ) { in f128_to_i64_r_minMag()
A Df64_to_i64_r_minMag.c51 int_fast16_t shiftCount; in f64_to_i64_r_minMag() local
59 shiftCount = 0x433 - exp; in f64_to_i64_r_minMag()
60 if ( shiftCount <= 0 ) { in f64_to_i64_r_minMag()
61 if ( shiftCount < -10 ) { in f64_to_i64_r_minMag()
71 absZ = sig<<-shiftCount; in f64_to_i64_r_minMag()
73 if ( 53 <= shiftCount ) { in f64_to_i64_r_minMag()
80 absZ = sig>>shiftCount; in f64_to_i64_r_minMag()
81 if ( exact && (absZ<<shiftCount != sig) ) { in f64_to_i64_r_minMag()
A Dui64_to_f128M.c57 uint_fast8_t shiftCount; in ui64_to_f128M() local
66 shiftCount = softfloat_countLeadingZeros64( a ) + 17; in ui64_to_f128M()
67 if ( shiftCount < 32 ) { in ui64_to_f128M()
72 softfloat_shortShiftLeft96M( ptr, shiftCount, ptr ); in ui64_to_f128M()
75 0, 0x404E - shiftCount, ptr[indexWordHi( 3 )] ); in ui64_to_f128M()
78 a <<= shiftCount - 32; in ui64_to_f128M()
79 uiZ96 = packToF128UI96( 0, 0x404E - shiftCount, a>>32 ); in ui64_to_f128M()
A Ds_normRoundPackToF32.c46 int_fast8_t shiftCount; in softfloat_normRoundPackToF32() local
49 shiftCount = softfloat_countLeadingZeros32( sig ) - 1; in softfloat_normRoundPackToF32()
50 exp -= shiftCount; in softfloat_normRoundPackToF32()
51 if ( (7 <= shiftCount) && ((uint16_t) exp < 0xFD) ) { in softfloat_normRoundPackToF32()
52 uZ.ui = packToF32UI( sign, sig ? exp : 0, sig<<(shiftCount - 7) ); in softfloat_normRoundPackToF32()
55 return softfloat_roundPackToF32( sign, exp, sig<<shiftCount ); in softfloat_normRoundPackToF32()
A Ds_normRoundPackToF64.c46 int_fast8_t shiftCount; in softfloat_normRoundPackToF64() local
49 shiftCount = softfloat_countLeadingZeros64( sig ) - 1; in softfloat_normRoundPackToF64()
50 exp -= shiftCount; in softfloat_normRoundPackToF64()
51 if ( (10 <= shiftCount) && ((uint16_t) exp < 0x7FD) ) { in softfloat_normRoundPackToF64()
52 uZ.ui = packToF64UI( sign, sig ? exp : 0, sig<<(shiftCount - 10) ); in softfloat_normRoundPackToF64()
55 return softfloat_roundPackToF64( sign, exp, sig<<shiftCount ); in softfloat_normRoundPackToF64()
A Df128_to_i32_r_minMag.c50 int_fast32_t shiftCount; in f128_to_i32_r_minMag() local
59 shiftCount = 0x402F - exp; in f128_to_i32_r_minMag()
60 if ( 49 <= shiftCount ) { in f128_to_i32_r_minMag()
67 if ( shiftCount < 18 ) { in f128_to_i32_r_minMag()
69 sign && (shiftCount == 17) in f128_to_i32_r_minMag()
82 absZ = sig64>>shiftCount; in f128_to_i32_r_minMag()
84 exact && ((uint_fast64_t) (uint_fast32_t) absZ<<shiftCount != sig64) in f128_to_i32_r_minMag()
A Ds_normRoundPackToF128.c47 int_fast8_t shiftCount; in softfloat_normRoundPackToF128() local
58 shiftCount = softfloat_countLeadingZeros64( sig64 ) - 15; in softfloat_normRoundPackToF128()
59 exp -= shiftCount; in softfloat_normRoundPackToF128()
60 if ( 0 <= shiftCount ) { in softfloat_normRoundPackToF128()
61 if ( shiftCount ) { in softfloat_normRoundPackToF128()
62 sig128 = softfloat_shortShiftLeft128( sig64, sig0, shiftCount ); in softfloat_normRoundPackToF128()
75 sig64, sig0, 0, -shiftCount ); in softfloat_normRoundPackToF128()

Completed in 23 milliseconds

1234