Home
last modified time | relevance | path

Searched refs:exp (Results 1 – 25 of 116) sorted by relevance

12345

/optee_os/lib/libutils/isoc/arch/arm/softfloat/source/
A Ds_roundPackToExtF80.c47 int_fast32_t exp, in softfloat_roundPackToExtF80() argument
82 if ( exp <= 0 ) { in softfloat_roundPackToExtF80()
86 || (exp < 0) in softfloat_roundPackToExtF80()
106 (0x7FFE < exp) in softfloat_roundPackToExtF80()
115 ++exp; in softfloat_roundPackToExtF80()
123 if ( ! sig ) exp = 0; in softfloat_roundPackToExtF80()
134 if ( exp <= 0 ) { in softfloat_roundPackToExtF80()
138 || (exp < 0) in softfloat_roundPackToExtF80()
159 exp = 0; in softfloat_roundPackToExtF80()
171 (0x7FFE < exp) in softfloat_roundPackToExtF80()
[all …]
A Ds_roundPackMToExtF80M.c47 int32_t exp, in softfloat_roundPackMToExtF80M() argument
91 if ( exp <= 0 ) { in softfloat_roundPackMToExtF80M()
95 || (exp < 0) in softfloat_roundPackMToExtF80M()
113 (0x7FFE < exp) in softfloat_roundPackMToExtF80M()
124 ++exp; in softfloat_roundPackMToExtF80M()
149 if ( exp <= 0 ) { in softfloat_roundPackMToExtF80M()
153 || (exp < 0) in softfloat_roundPackMToExtF80M()
172 exp = 0; in softfloat_roundPackMToExtF80M()
186 (0x7FFE < exp) in softfloat_roundPackMToExtF80M()
200 exp = 0x7FFF; in softfloat_roundPackMToExtF80M()
[all …]
A Ds_shiftNormSigF128M.c47 int32_t exp; in softfloat_shiftNormSigF128M() local
51 exp = expF128UI96( wordSig ); in softfloat_shiftNormSigF128M()
52 if ( exp ) { in softfloat_shiftNormSigF128M()
58 exp = 16; in softfloat_shiftNormSigF128M()
61 exp = -16; in softfloat_shiftNormSigF128M()
64 exp = -48; in softfloat_shiftNormSigF128M()
69 exp = -80; in softfloat_shiftNormSigF128M()
73 exp -= softfloat_countLeadingZeros32( wordSig ); in softfloat_shiftNormSigF128M()
74 softfloat_shiftLeft128M( wPtr, 1 - exp + shiftCount, sigPtr ); in softfloat_shiftNormSigF128M()
76 return exp; in softfloat_shiftNormSigF128M()
A DextF80M_to_f128M.c62 int32_t exp; in extF80M_to_f128M() local
75 exp = expExtF80UI64( uiA64 ); in extF80M_to_f128M()
80 if ( exp == 0x7FFF ) { in extF80M_to_f128M()
91 if ( exp ) --exp; in extF80M_to_f128M()
97 exp += softfloat_normExtF80SigM( &sig ); in extF80M_to_f128M()
104 if ( exp < 0 ) { in extF80M_to_f128M()
108 -exp, in extF80M_to_f128M()
111 exp = 0; in extF80M_to_f128M()
114 zWPtr[indexWordHi( 4 )] = packToF128UI96( sign, exp, sig>>32 ); in extF80M_to_f128M()
A DextF80_roundToInt.c50 int_fast32_t exp; in extF80_roundToInt() local
64 exp = expExtF80UI64( uiA64 ); in extF80_roundToInt()
68 if ( ! (sigA & UINT64_C( 0x8000000000000000 )) && (exp != 0x7FFF) ) { in extF80_roundToInt()
75 exp += normExpSig.exp; in extF80_roundToInt()
80 if ( 0x403E <= exp ) { in extF80_roundToInt()
81 if ( exp == 0x7FFF ) { in extF80_roundToInt()
92 uiZ64 = signUI64 | exp; in extF80_roundToInt()
95 if ( exp <= 0x3FFE ) { in extF80_roundToInt()
101 if ( exp == 0x3FFE ) goto mag1; in extF80_roundToInt()
120 uiZ64 = signUI64 | exp; in extF80_roundToInt()
[all …]
A DextF80M_roundToInt.c73 int32_t exp; in extF80M_roundToInt() local
86 exp = expExtF80UI64( uiA64 ); in extF80M_roundToInt()
90 if ( ! (sigA & UINT64_C( 0x8000000000000000 )) && (exp != 0x7FFF) ) { in extF80M_roundToInt()
96 exp += softfloat_normExtF80SigM( &sigA ); in extF80M_roundToInt()
100 if ( exp <= 0x3FFE ) { in extF80M_roundToInt()
106 if ( exp == 0x3FFE ) goto mag1; in extF80M_roundToInt()
125 if ( 0x403E <= exp ) { in extF80M_roundToInt()
126 if ( exp == 0x7FFF ) { in extF80M_roundToInt()
135 uiZ64 = signUI64 | exp; in extF80M_roundToInt()
140 uiZ64 = signUI64 | exp; in extF80M_roundToInt()
[all …]
A Df128_to_f32.c50 int_fast32_t exp; in f128_to_f32() local
60 exp = expF128UI64( uiA64 ); in f128_to_f32()
62 if ( exp == 0x7FFF ) { in f128_to_f32()
72 if ( ! (exp | sig32) ) { in f128_to_f32()
76 exp -= 0x3F81; in f128_to_f32()
78 if ( exp < -0x1000 ) exp = -0x1000; in f128_to_f32()
80 return softfloat_roundPackToF32( sign, exp, sig32 | 0x40000000 ); in f128_to_f32()
A DextF80M_to_f32.c61 int32_t exp; in extF80M_to_f32() local
72 exp = expExtF80UI64( uiA64 ); in extF80M_to_f32()
76 if ( exp == 0x7FFF ) { in extF80M_to_f32()
92 exp += softfloat_normExtF80SigM( &sig ); in extF80M_to_f32()
97 exp -= 0x3F81; in extF80M_to_f32()
99 if ( exp < -0x1000 ) exp = -0x1000; in extF80M_to_f32()
101 return softfloat_roundPackToF32( sign, exp, sig32 | 0x40000000 ); in extF80M_to_f32()
A DextF80M_to_f64.c61 int32_t exp; in extF80M_to_f64() local
72 exp = expExtF80UI64( uiA64 ); in extF80M_to_f64()
76 if ( exp == 0x7FFF ) { in extF80M_to_f64()
92 exp += softfloat_normExtF80SigM( &sig ); in extF80M_to_f64()
97 exp -= 0x3C01; in extF80M_to_f64()
99 if ( exp < -0x1000 ) exp = -0x1000; in extF80M_to_f64()
103 sign, exp, sig | UINT64_C( 0x4000000000000000 ) ); in extF80M_to_f64()
A DextF80_to_f32.c51 int_fast32_t exp; in extF80_to_f32() local
61 exp = expExtF80UI64( uiA64 ); in extF80_to_f32()
63 if ( exp == 0x7FFF ) { in extF80_to_f32()
73 if ( ! (exp | sig32) ) { in extF80_to_f32()
77 exp -= 0x3F81; in extF80_to_f32()
79 if ( exp < -0x1000 ) exp = -0x1000; in extF80_to_f32()
81 return softfloat_roundPackToF32( sign, exp, sig32 ); in extF80_to_f32()
A DextF80_to_f64.c51 int_fast32_t exp; in extF80_to_f64() local
61 exp = expExtF80UI64( uiA64 ); in extF80_to_f64()
63 if ( ! (exp | sig) ) { in extF80_to_f64()
67 if ( exp == 0x7FFF ) { in extF80_to_f64()
77 exp -= 0x3C01; in extF80_to_f64()
79 if ( exp < -0x1000 ) exp = -0x1000; in extF80_to_f64()
81 return softfloat_roundPackToF64( sign, exp, sig ); in extF80_to_f64()
A Ds_roundPackToF128.c47 int_fast32_t exp, in softfloat_roundPackToF128() argument
69 if ( 0x7FFD <= (uint32_t) exp ) { in softfloat_roundPackToF128()
70 if ( exp < 0 ) { in softfloat_roundPackToF128()
74 || (exp < -1) in softfloat_roundPackToF128()
83 softfloat_shiftRightJam128Extra( sig64, sig0, sigExtra, -exp ); in softfloat_roundPackToF128()
87 exp = 0; in softfloat_roundPackToF128()
102 (0x7FFD < exp) in softfloat_roundPackToF128()
103 || ((exp == 0x7FFD) in softfloat_roundPackToF128()
141 if ( ! (sig64 | sig0) ) exp = 0; in softfloat_roundPackToF128()
143 uiZ64 = packToF128UI64( sign, exp, sig64 ); in softfloat_roundPackToF128()
A Ds_roundPackToF32.c45 softfloat_roundPackToF32( bool sign, int_fast16_t exp, uint_fast32_t sig ) in softfloat_roundPackToF32() argument
65 if ( 0xFD <= (uint16_t) exp ) { in softfloat_roundPackToF32()
66 if ( exp < 0 ) { in softfloat_roundPackToF32()
70 || (exp < -1) in softfloat_roundPackToF32()
72 sig = softfloat_shiftRightJam32( sig, -exp ); in softfloat_roundPackToF32()
73 exp = 0; in softfloat_roundPackToF32()
78 } else if ( (0xFD < exp) || (0x80000000 <= sig + roundIncrement) ) { in softfloat_roundPackToF32()
88 uiZ = packToF32UI( sign, sig ? exp : 0, sig ); in softfloat_roundPackToF32()
A Df128M_to_f32.c61 int32_t exp; in f128M_to_f32() local
70 exp = expF128UI96( uiA96 ); in f128M_to_f32()
74 if ( exp == 0x7FFF ) { in f128M_to_f32()
84 if ( ! (exp | sig32) ) { in f128M_to_f32()
88 exp -= 0x3F81; in f128M_to_f32()
90 if ( exp < -0x1000 ) exp = -0x1000; in f128M_to_f32()
92 return softfloat_roundPackToF32( sign, exp, sig32 | 0x40000000 ); in f128M_to_f32()
A Ds_roundPackToF64.c45 softfloat_roundPackToF64( bool sign, int_fast16_t exp, uint_fast64_t sig ) in softfloat_roundPackToF64() argument
65 if ( 0x7FD <= (uint16_t) exp ) { in softfloat_roundPackToF64()
66 if ( exp < 0 ) { in softfloat_roundPackToF64()
70 || (exp < -1) in softfloat_roundPackToF64()
72 sig = softfloat_shiftRightJam64( sig, -exp ); in softfloat_roundPackToF64()
73 exp = 0; in softfloat_roundPackToF64()
79 (0x7FD < exp) in softfloat_roundPackToF64()
91 uiZ = packToF64UI( sign, sig ? exp : 0, sig ); in softfloat_roundPackToF64()
A Df128M_to_f64.c61 int32_t exp; in f128M_to_f64() local
71 exp = expF128UI96( uiA96 ); in f128M_to_f64()
73 if ( exp == 0x7FFF ) { in f128M_to_f64()
85 if ( ! exp && ! sig64 ) { in f128M_to_f64()
89 exp -= 0x3C01; in f128M_to_f64()
91 if ( exp < -0x1000 ) exp = -0x1000; in f128M_to_f64()
95 sign, exp, sig64 | UINT64_C( 0x4000000000000000 ) ); in f128M_to_f64()
A Df128_to_f64.c50 int_fast32_t exp; in f128_to_f64() local
61 exp = expF128UI64( uiA64 ); in f128_to_f64()
64 if ( exp == 0x7FFF ) { in f128_to_f64()
75 if ( ! (exp | sig64) ) { in f128_to_f64()
79 exp -= 0x3C01; in f128_to_f64()
81 if ( exp < -0x1000 ) exp = -0x1000; in f128_to_f64()
85 sign, exp, sig64 | UINT64_C( 0x4000000000000000 ) ); in f128_to_f64()
A Ds_roundPackMToF128M.c46 bool sign, int32_t exp, uint32_t *extSigPtr, uint32_t *zWPtr ) in softfloat_roundPackMToF128M() argument
66 if ( 0x7FFD <= (uint32_t) exp ) { in softfloat_roundPackMToF128M()
67 if ( exp < 0 ) { in softfloat_roundPackMToF128M()
71 || (exp < -1) in softfloat_roundPackMToF128M()
76 softfloat_shiftRightJam160M( extSigPtr, -exp, extSigPtr ); in softfloat_roundPackMToF128M()
77 exp = 0; in softfloat_roundPackMToF128M()
93 (0x7FFD < exp) in softfloat_roundPackMToF128M()
94 || ((exp == 0x7FFD) && doIncrement in softfloat_roundPackMToF128M()
155 if ( ! uj ) exp = 0; in softfloat_roundPackMToF128M()
157 zWPtr[indexWordHi( 4 )] = packToF128UI96( sign, exp, ui ); in softfloat_roundPackMToF128M()
A Df32_to_f64.c50 int_fast16_t exp; in f32_to_f64() local
60 exp = expF32UI( uiA ); in f32_to_f64()
62 if ( exp == 0xFF ) { in f32_to_f64()
71 if ( ! exp ) { in f32_to_f64()
77 exp = normExpSig.exp - 1; in f32_to_f64()
80 uiZ = packToF64UI( sign, exp + 0x380, (uint_fast64_t) sig<<29 ); in f32_to_f64()
A Df128_roundToInt.c50 int_fast32_t exp; in f128_roundToInt() local
61 exp = expF128UI64( uiA64 ); in f128_roundToInt()
64 if ( 0x402F <= exp ) { in f128_roundToInt()
67 if ( 0x406F <= exp ) { in f128_roundToInt()
68 if ( (exp == 0x7FFF) && (fracF128UI64( uiA64 ) | uiA0) ) { in f128_roundToInt()
76 lastBitMask = (uint_fast64_t) 2<<(0x406E - exp); in f128_roundToInt()
82 if ( exp == 0x402F ) { in f128_roundToInt()
109 if ( exp < 0x3FFF ) { in f128_roundToInt()
120 if ( exp == 0x3FFE ) uiZ.v64 |= packToF128UI64( 0, 0x3FFF, 0 ); in f128_roundToInt()
135 lastBitMask = (uint_fast64_t) 1<<(0x402F - exp); in f128_roundToInt()
A Df32_to_f128.c50 int_fast16_t exp; in f32_to_f128() local
60 exp = expF32UI( uiA ); in f32_to_f128()
62 if ( exp == 0xFF ) { in f32_to_f128()
72 if ( ! exp ) { in f32_to_f128()
79 exp = normExpSig.exp - 1; in f32_to_f128()
82 uiZ.v64 = packToF128UI64( sign, exp + 0x3F80, (uint_fast64_t) sig<<25 ); in f32_to_f128()
A Df32_to_ui64.c51 int_fast16_t exp; in f32_to_ui64() local
60 exp = expF32UI( uiA ); in f32_to_ui64()
62 shiftCount = 0xBE - exp; in f32_to_ui64()
67 if ( exp ) sig |= 0x00800000; in f32_to_ui64()
87 int_fast16_t exp; in f32_to_ui64() local
95 exp = expF32UI( uiA ); in f32_to_ui64()
97 shiftCount = 0xBE - exp; in f32_to_ui64()
102 if ( exp ) sig |= 0x00800000; in f32_to_ui64()
A Df64_to_extF80M.c62 int_fast16_t exp; in f64_to_extF80M() local
73 exp = expF64UI( uiA ); in f64_to_extF80M()
75 if ( exp == 0x7FF ) { in f64_to_extF80M()
85 if ( ! exp ) { in f64_to_extF80M()
92 exp = normExpSig.exp; in f64_to_extF80M()
95 uiZ64 = packToExtF80UI64( sign, exp + 0x3C00 ); in f64_to_extF80M()
A Df64_to_f128.c50 int_fast16_t exp; in f64_to_f128() local
61 exp = expF64UI( uiA ); in f64_to_f128()
63 if ( exp == 0x7FF ) { in f64_to_f128()
73 if ( ! exp ) { in f64_to_f128()
80 exp = normExpSig.exp - 1; in f64_to_f128()
84 uiZ.v64 = packToF128UI64( sign, exp + 0x3C00, sig128.v64 ); in f64_to_f128()
/optee_os/lib/libutils/isoc/arch/arm/softfloat/source/include/
A Dinternals.h89 #define packToF32UI( sign, exp, sig ) (((uint32_t) (sign)<<31) + ((uint32_t) (exp)<<23) + (sig)) argument
93 struct exp16_sig32 { int_fast16_t exp; uint_fast32_t sig; }; member
110 #define packToF64UI( sign, exp, sig ) ((uint64_t) (((uint_fast64_t) (sign)<<63) + ((uint_fast64_t) … argument
114 struct exp16_sig64 { int_fast16_t exp; uint_fast64_t sig; }; member
130 #define packToExtF80UI64( sign, exp ) ((uint_fast16_t) (sign)<<15 | (exp)) argument
139 struct exp32_sig64 { int_fast32_t exp; uint64_t sig; }; member
161 #define packToF128UI64( sign, exp, sig64 ) (((uint_fast64_t) (sign)<<63) + ((uint_fast64_t) (exp)<<… argument
165 struct exp32_sig128 { int_fast32_t exp; struct uint128 sig; }; member
232 #define packToF128UI96( sign, exp, sig96 ) (((uint32_t) (sign)<<31) + ((uint32_t) (exp)<<16) + (sig… argument

Completed in 20 milliseconds

12345