/seL4-test-master/tools/riscv-pk/softfloat/ |
H A D | extF80_roundToInt.c | 52 uint_fast64_t sigZ; local 70 sigZ = 0; 84 sigZ = uiZ.v0; 87 sigZ = UINT64_C( 0x8000000000000000 ); 89 sigZ = sigA; 114 sigZ = 0; 118 sigZ = UINT64_C( 0x8000000000000000 ); 126 sigZ = sigA; 128 sigZ += lastBitMask>>1; 130 sigZ [all...] |
H A D | s_addExtF80M.c | 59 uint64_t sigZ, sigB; local 105 sigZ = aSPtr->signif; 122 sigZ -= sigB; 125 --sigZ; 128 if ( ! (sigZ & UINT64_C( 0x8000000000000000 )) ) { 129 if ( sigZ & UINT64_C( 0x4000000000000000 ) ) { 131 sigZ = sigZ<<1 | sigZExtra>>31; 138 sigZ += sigB; 139 if ( sigZ [all...] |
H A D | extF80M_roundToInt.c | 75 uint64_t sigZ, lastBitMask, roundBitsMask; local 92 sigZ = 0; 119 sigZ = 0; 123 sigZ = UINT64_C( 0x8000000000000000 ); 134 sigZ = UINT64_C( 0x8000000000000000 ); 136 sigZ = sigA; 146 sigZ = sigA; 148 sigZ += lastBitMask>>1; 150 sigZ += lastBitMask>>1; 151 if ( !(sigZ [all...] |
H A D | f32_sqrt.c | 53 uint_fast32_t sigZ, shiftedSigZ; local 93 sigZ = 96 if ( expA ) sigZ >>= 1; 99 sigZ += 2; 100 if ( (sigZ & 0x3F) < 2 ) { 101 shiftedSigZ = sigZ>>2; 103 sigZ &= ~3; 105 sigZ |= 1; 107 if ( negRem ) --sigZ; 110 return softfloat_roundPackToF32( 0, expZ, sigZ ); [all...] |
H A D | s_mulAddF128.c | 70 struct uint128 sigZ; local 141 sigZ.v64 = sig256Z[indexWord( 4, 3 )]; 142 sigZ.v0 = sig256Z[indexWord( 4, 2 )]; 144 if ( ! (sigZ.v64 & UINT64_C( 0x0100000000000000 )) ) { 151 goto sigZ; 167 sigZ = 168 softfloat_shiftRightJam128( sigZ.v64, sigZ.v0, shiftDist ); 177 sig256Z[indexWord( 4, 1 )] = (sigZ.v0<<63) | x128.v64; 179 sigZ [all...] |
H A D | ui32_to_extF80M.c | 57 uint64_t sigZ; local 62 sigZ = 0; 66 sigZ = (uint64_t) (a<<shiftDist)<<32; 69 zSPtr->signif = sigZ;
|
H A D | ui64_to_extF80M.c | 57 uint64_t sigZ; local 62 sigZ = 0; 66 sigZ = a<<shiftDist; 69 zSPtr->signif = sigZ;
|
H A D | f32_div.c | 61 uint_fast32_t sigZ; local 63 uint_fast32_t sigZ; local 126 sigZ = sig64A / sigB; 127 if ( ! (sigZ & 0x3F) ) sigZ |= ((uint_fast64_t) sigB * sigZ != sig64A); 136 sigZ = ((uint_fast64_t) sigA * softfloat_approxRecip32_1( sigB ))>>32; 139 sigZ += 2; 140 if ( (sigZ & 0x3F) < 2 ) { 141 sigZ [all...] |
H A D | f16_sqrt.c | 60 uint_fast16_t recipSqrt16, sigZ, shiftedSigZ; local 110 sigZ = ((uint_fast32_t) (sigA<<5) * recipSqrt16)>>16; 111 if ( expA ) sigZ >>= 1; 114 ++sigZ; 115 if ( ! (sigZ & 7) ) { 116 shiftedSigZ = sigZ>>1; 118 sigZ &= ~1; 120 sigZ |= 1; 122 if ( negRem ) --sigZ; 125 return softfloat_roundPackToF16( 0, expZ, sigZ ); [all...] |
H A D | s_addMagsF32.c | 53 uint_fast32_t sigZ; local 79 sigZ = 0x01000000 + sigA + sigB; 80 if ( ! (sigZ & 1) && (expZ < 0xFE) ) { 81 uiZ = packToF32UI( signZ, expZ, sigZ>>1 ); 84 sigZ <<= 6; 110 sigZ = 0x20000000 + sigA + sigB; 111 if ( sigZ < 0x40000000 ) { 113 sigZ <<= 1; 116 return softfloat_roundPackToF32( signZ, expZ, sigZ );
|
H A D | s_mulAddF64.c | 64 uint_fast64_t sigZ; local 131 sigZ = sig128Z.v64<<1 | (sig128Z.v0 != 0); 159 sigZ = (sigC + sig128Z.v64) | (sig128Z.v0 != 0); 164 sigZ = sig128Z.v64 | (sig128Z.v0 != 0); 166 if ( sigZ < UINT64_C( 0x4000000000000000 ) ) { 168 sigZ <<= 1; 198 sigZ = softfloat_shortShiftRightJam64( sig128Z.v64, -shiftDist ); 203 sigZ = sig128Z.v64; 205 sigZ |= (sig128Z.v0 != 0); 208 return softfloat_roundPackToF64( signZ, expZ, sigZ ); 264 uint64_t sigZ; local [all...] |
H A D | f16_div.c | 64 uint_fast16_t sigZ; local 68 uint_fast16_t sigZ, rem; local 130 sigZ = sig32A / sigB; 131 if ( ! (sigZ & 7) ) sigZ |= ((uint_fast32_t) sigB * sigZ != sig32A); 144 sigZ = ((uint_fast32_t) sigA * r0)>>16; 145 rem = (sigA<<10) - sigZ * sigB; 146 sigZ += (rem * (uint_fast32_t) r0)>>26; 149 ++sigZ; [all...] |
H A D | i32_to_extF80M.c | 57 uint64_t sigZ; local 64 sigZ = 0; 70 sigZ = (uint64_t) (absA<<shiftDist)<<32; 73 zSPtr->signif = sigZ;
|
H A D | i64_to_extF80M.c | 57 uint64_t sigZ; local 64 sigZ = 0; 70 sigZ = absA<<shiftDist; 73 zSPtr->signif = sigZ;
|
H A D | s_addMagsF16.c | 54 uint_fast16_t sigZ; local 84 sigZ = 0x0800 + sigA + sigB; 85 if ( ! (sigZ & 1) && (expZ < 0x1E) ) { 86 sigZ >>= 1; 89 sigZ <<= 3; 134 sigZ = sig32Z>>16; 136 sigZ |= 1; 138 if ( ! (sigZ & 0xF) && (expZ < 0x1E) ) { 139 sigZ >>= 4; 144 return softfloat_roundPackToF16( signZ, expZ, sigZ ); [all...] |
H A D | f64_sqrt.c | 56 uint_fast64_t sigZ, shiftedSigZ; local 109 sigZ = ((uint_fast64_t) sig32Z<<32 | 1<<5) + ((uint_fast64_t) q<<3); 112 if ( (sigZ & 0x1FF) < 0x22 ) { 113 sigZ &= ~(uint_fast64_t) 0x3F; 114 shiftedSigZ = sigZ>>6; 117 --sigZ; 119 if ( rem ) sigZ |= 1; 122 return softfloat_roundPackToF64( 0, expZ, sigZ );
|
H A D | s_addMagsF64.c | 53 uint_fast64_t sigZ; local 78 sigZ = UINT64_C( 0x0020000000000000 ) + sigA + sigB; 79 sigZ <<= 9; 112 sigZ = UINT64_C( 0x2000000000000000 ) + sigA + sigB; 113 if ( sigZ < UINT64_C( 0x4000000000000000 ) ) { 115 sigZ <<= 1; 118 return softfloat_roundPackToF64( signZ, expZ, sigZ );
|
H A D | s_addMagsExtF80.c | 59 uint_fast64_t uiZ0, sigZ, sigZExtra; local 84 sigZ = sigA + sigB; 87 normExpSig = softfloat_normSubnormalExtF80Sig( sigZ ); 89 sigZ = normExpSig.sig; 131 sigZ = sigA + sigB; 132 if ( sigZ & UINT64_C( 0x8000000000000000 ) ) goto roundAndPack; 136 sig64Extra = softfloat_shortShiftRightJam64Extra( sigZ, sigZExtra, 1 ); 137 sigZ = sig64Extra.v | UINT64_C( 0x8000000000000000 ); 143 signZ, expZ, sigZ, sigZExtra, extF80_roundingPrecision );
|
H A D | s_addMagsF128.c | 57 struct uint128 uiZ, sigZ; local 77 sigZ = softfloat_add128( sigA.v64, sigA.v0, sigB.v64, sigB.v0 ); 79 uiZ.v64 = packToF128UI64( signZ, 0, sigZ.v64 ); 80 uiZ.v0 = sigZ.v0; 84 sigZ.v64 |= UINT64_C( 0x0002000000000000 ); 128 sigZ = 136 if ( sigZ.v64 < UINT64_C( 0x0002000000000000 ) ) goto roundAndPack; 141 sigZ.v64, sigZ.v0, sigZExtra, 1 ); 142 sigZ [all...] |
H A D | s_subMagsF16.c | 55 uint_fast16_t sigZ, sigX, sigY; local 97 sigZ = sigDiff<<shiftDist; 141 sigZ = sig32Z>>16; 143 sigZ |= 1; 145 if ( ! (sigZ & 0xF) && ((unsigned int) expZ < 0x1E) ) { 146 sigZ >>= 4; 150 return softfloat_roundPackToF16( signZ, expZ, sigZ ); 181 uiZ = packToF16UI( signZ, expZ, sigZ );
|
H A D | f64_div.c | 62 uint_fast64_t sigZ; local 130 sigZ = ((uint_fast64_t) sig32Z<<32) + ((uint_fast64_t) q<<4); 133 if ( (sigZ & 0x1FF) < 4<<4 ) { 135 sigZ &= ~(uint_fast64_t) 0x7F; 141 sigZ -= 1<<7; 143 if ( rem ) sigZ |= 1; 146 return softfloat_roundPackToF64( signZ, expZ, sigZ );
|
H A D | f64_mul.c | 65 uint_fast64_t sigZ, uiZ; local 114 sigZ = sig128Z.v64 | (sig128Z.v0 != 0); 117 sigZ = 119 if ( sig128Z[indexWord( 4, 1 )] || sig128Z[indexWord( 4, 0 )] ) sigZ |= 1; 121 if ( sigZ < UINT64_C( 0x4000000000000000 ) ) { 123 sigZ <<= 1; 125 return softfloat_roundPackToF64( signZ, expZ, sigZ );
|
H A D | f32_mul.c | 60 uint_fast32_t sigZ, uiZ; local 107 sigZ = softfloat_shortShiftRightJam64( (uint_fast64_t) sigA * sigB, 32 ); 108 if ( sigZ < 0x40000000 ) { 110 sigZ <<= 1; 112 return softfloat_roundPackToF32( signZ, expZ, sigZ );
|
H A D | extF80_sqrt.c | 59 uint_fast64_t q, x64, sigZ; local 120 sigZ = x64 + (q<<3); 126 term = softfloat_mul64ByShifted32To128( x64 + sigZ, q ); 130 sigZ -= 1<<3; 135 x64 = sigZ; 136 sigZ = (sigZ<<1) + (q>>25); 149 if ( ! sigZExtra ) --sigZ; 157 0, expZ, sigZ, sigZExtra, extF80_roundingPrecision );
|
H A D | s_mulAddF16.c | 64 uint_fast16_t sigZ; local 130 sigZ = sigProd>>15 | ((sigProd & 0x7FFF) != 0); 146 sigZ = sigC + softfloat_shiftRightJam32( sigProd, 16 - expDiff ); 153 sigZ = sig32Z>>16 | ((sig32Z & 0xFFFF) != 0 ); 155 if ( sigZ < 0x4000 ) { 157 sigZ <<= 1; 183 sigZ = 187 sigZ = (uint_fast16_t) sig32Z<<shiftDist; 191 return softfloat_roundPackToF16( signZ, expZ, sigZ );
|