Lines Matching refs:precision

65     unsigned int precision;  member
74 precision <= S.precision; in isRepresentableBy()
212 return semantics.precision; in semanticsPrecision()
778 unsigned bitsToPreserve = semantics->precision - 1; in makeNaN()
786 unsigned QNaNBit = semantics->precision - 2; in makeNaN()
837 semantics->precision - 1) == 0); in isDenormal()
852 const unsigned PartCount = partCountForBits(semantics->precision); in isSignificandAllOnes()
859 PartCount*integerPartWidth - semantics->precision + 1; in isSignificandAllOnes()
874 const unsigned PartCount = partCountForBits(semantics->precision); in isSignificandAllZeros()
882 PartCount*integerPartWidth - semantics->precision + 1; in isSignificandAllZeros()
930 exponent = ourSemantics.precision - 1; in IEEEFloat()
957 return partCountForBits(semantics->precision + 1); in partCount()
1019 unsigned int partsCount, newPartsCount, precision; in multiplySignificand() local
1028 precision = semantics->precision; in multiplySignificand()
1032 newPartsCount = partCountForBits(precision * 2 + 1); in multiplySignificand()
1072 extendedPrecision = 2 * precision + 1; in multiplySignificand()
1082 extendedSemantics.precision = extendedPrecision; in multiplySignificand()
1120 exponent -= precision + 1; in multiplySignificand()
1129 if (omsb > precision) { in multiplySignificand()
1133 bits = omsb - precision; in multiplySignificand()
1182 unsigned int precision = semantics->precision; in divideSignificand() local
1185 bit = precision - APInt::tcMSB(divisor, partsCount) - 1; in divideSignificand()
1192 bit = precision - APInt::tcMSB(dividend, partsCount) - 1; in divideSignificand()
1208 for (bit = precision; bit; bit -= 1) { in divideSignificand()
1255 assert(bits < semantics->precision); in shiftSignificandLeft()
1324 semantics->precision); in handleOverflow()
1387 exponentChange = omsb - semantics->precision; in normalize()
1446 if (omsb == (unsigned) semantics->precision + 1) { in normalize()
1464 if (omsb == semantics->precision) in normalize()
1468 assert(omsb < semantics->precision); in normalize()
1918 extendedSemantics.precision += 2; in remainder()
2197 newPartCount = partCountForBits(toSemantics.precision + 1); in convert()
2199 shift = toSemantics.precision - fromSemantics.precision; in convert()
2220 int exponentChange = omsb - fromSemantics.precision; in convert()
2275 APInt::tcSetBit(significandParts(), semantics->precision - 1); in convert()
2336 truncatedBits = semantics->precision -1U - exponent; in convertToSignExtendedInteger()
2346 if (bits < semantics->precision) { in convertToSignExtendedInteger()
2348 truncatedBits = semantics->precision - bits; in convertToSignExtendedInteger()
2352 APInt::tcExtract(parts.data(), dstPartsCount, src, semantics->precision, in convertToSignExtendedInteger()
2355 bits - semantics->precision); in convertToSignExtendedInteger()
2452 unsigned int omsb, precision, dstCount; in convertFromUnsignedParts() local
2460 precision = semantics->precision; in convertFromUnsignedParts()
2464 if (precision <= omsb) { in convertFromUnsignedParts()
2467 omsb - precision); in convertFromUnsignedParts()
2468 APInt::tcExtract(dst, dstCount, src, precision, omsb - precision); in convertFromUnsignedParts()
2470 exponent = precision - 1; in convertFromUnsignedParts()
2618 expAdjustment += semantics->precision; in convertFromHexadecimalString()
2643 parts = partCountForBits(semantics->precision + 11); in roundSignificandWithExponent()
2652 calcSemantics.precision = parts * integerPartWidth - 1; in roundSignificandWithExponent()
2653 excessPrecision = calcSemantics.precision - semantics->precision; in roundSignificandWithExponent()
2681 if (excessPrecision > calcSemantics.precision) in roundSignificandWithExponent()
2682 excessPrecision = calcSemantics.precision; in roundSignificandWithExponent()
2691 (decSig.significandParts(), calcSemantics.precision - 1) == 1); in roundSignificandWithExponent()
2701 calcSemantics.precision - excessPrecision, in roundSignificandWithExponent()
2706 exponent = (decSig.exponent + semantics->precision in roundSignificandWithExponent()
2707 - (calcSemantics.precision - excessPrecision)); in roundSignificandWithExponent()
2765 8651 * (semantics->minExponent - (int) semantics->precision)) { in convertFromDecimalString()
3028 valueBits = semantics->precision + 3; in convertNormalToHexString()
3115 Arg.semantics->precision); in hash_value()
3119 Arg.semantics->precision, Arg.exponent, in hash_value()
3649 PartCount*integerPartWidth - semantics->precision; in makeLargest()
3678 significandParts()[partCountForBits(semantics->precision) - 1] |= in makeSmallestNormalized()
3679 (((integerPart)1) << ((semantics->precision - 1) % integerPartWidth)); in makeSmallestNormalized()
3814 int exp = exponent - ((int) semantics->precision - 1); in toString()
3815 APInt significand(semantics->precision, in toString()
3817 partCountForBits(semantics->precision))); in toString()
3829 FormatPrecision = 2 + semantics->precision * 59 / 196; in toString()
3842 significand = significand.zext(semantics->precision + exp); in toString()
3857 unsigned precision = semantics->precision + (137 * texp + 136) / 59; in toString() local
3861 significand = significand.zext(precision); in toString()
3862 APInt five_to_the_i(precision, 5); in toString()
3877 unsigned precision = significand.getBitWidth(); in toString() local
3878 APInt ten(precision, 10); in toString()
3879 APInt digit(precision, 0); in toString()
4001 if (significandLSB() != semantics->precision - 1) in getExactInverse()
4015 reciprocal.significandLSB() == reciprocal.semantics->precision - 1); in getExactInverse()
4029 return !APInt::tcExtractBit(significandParts(), semantics->precision - 2); in isSignaling()
4116 APInt::tcSetBit(Parts, semantics->precision - 1); in next()
4133 APInt::tcSetBit(Parts, semantics->precision - 1); in next()
4180 APInt::tcSetBit(significandParts(), semantics->precision - 2); in makeQuiet()
4194 int SignificandBits = Arg.getSemantics().precision - 1; in ilogb()
4211 int SignificandBits = X.getSemantics().precision - 1; in scalbn()