Lines Matching refs:semantics
579 semantics = ourSemantics; in initialize()
595 assert(semantics == rhs.semantics); in assign()
633 unsigned bitsToPreserve = semantics->precision - 1; in makeNaN()
641 unsigned QNaNBit = semantics->precision - 2; in makeNaN()
660 if (semantics == &APFloat::x87DoubleExtended) in makeNaN()
675 if (semantics != rhs.semantics) { in operator =()
677 initialize(rhs.semantics); in operator =()
689 semantics = rhs.semantics; in operator =()
695 rhs.semantics = &Bogus; in operator =()
701 return isFiniteNonZero() && (exponent == semantics->minExponent) && in isDenormal()
703 semantics->precision - 1) == 0); in isDenormal()
711 return isFiniteNonZero() && exponent == semantics->minExponent && in isSmallest()
726 PartCount*integerPartWidth - semantics->precision + 1; in isSignificandAllOnes()
748 PartCount*integerPartWidth - semantics->precision + 1; in isSignificandAllZeros()
763 return isFiniteNonZero() && exponent == semantics->maxExponent in isLargest()
771 if (semantics != rhs.semantics || in bitwiseIsEqual()
818 initialize(rhs.semantics); in APFloat()
822 APFloat::APFloat(APFloat &&rhs) : semantics(&Bogus) { in APFloat()
839 return partCountForBits(semantics->precision + 1); in partCount()
843 APFloat::semanticsPrecision(const fltSemantics &semantics) in semanticsPrecision() argument
845 return semantics.precision; in semanticsPrecision()
890 assert(semantics == rhs.semantics); in addSignificand()
905 assert(semantics == rhs.semantics); in subtractSignificand()
926 assert(semantics == rhs.semantics); in multiplySignificand()
928 precision = semantics->precision; in multiplySignificand()
966 const fltSemantics *savedSemantics = semantics; in multiplySignificand()
981 extendedSemantics = *semantics; in multiplySignificand()
988 semantics = &extendedSemantics; in multiplySignificand()
1008 semantics = savedSemantics; in multiplySignificand()
1054 assert(semantics == rhs.semantics); in divideSignificand()
1076 unsigned int precision = semantics->precision; in divideSignificand()
1157 assert(bits < semantics->precision); in shiftSignificandLeft()
1174 assert(semantics == rhs.semantics); in compareAbsoluteValue()
1210 exponent = semantics->maxExponent; in handleOverflow()
1212 semantics->precision); in handleOverflow()
1276 exponentChange = omsb - semantics->precision; in normalize()
1280 if (exponent + exponentChange > semantics->maxExponent) in normalize()
1285 if (exponent + exponentChange < semantics->minExponent) in normalize()
1286 exponentChange = semantics->minExponent - exponent; in normalize()
1329 exponent = semantics->minExponent; in normalize()
1335 if (omsb == (unsigned) semantics->precision + 1) { in normalize()
1339 if (exponent == semantics->maxExponent) { in normalize()
1353 if (omsb == semantics->precision) in normalize()
1357 assert(omsb < semantics->precision); in normalize()
1852 if (isFiniteNonZero() && exponent+1 >= (int)semanticsPrecision(*semantics)) in roundToIntegral()
1861 APInt IntegerConstant(NextPowerOf2(semanticsPrecision(*semantics)), 1); in roundToIntegral()
1862 IntegerConstant <<= semanticsPrecision(*semantics)-1; in roundToIntegral()
1863 APFloat MagicConstant(*semantics); in roundToIntegral()
1894 assert(semantics == rhs.semantics); in compare()
1976 const fltSemantics &fromSemantics = *semantics; in convert()
2034 semantics = &toSemantics; in convert()
2049 if (!X86SpecialNan && semantics == &APFloat::x87DoubleExtended) in convert()
2050 APInt::tcSetBit(significandParts(), semantics->precision - 1); in convert()
2109 truncatedBits = semantics->precision -1U - exponent; in convertToSignExtendedInteger()
2119 if (bits < semantics->precision) { in convertToSignExtendedInteger()
2121 truncatedBits = semantics->precision - bits; in convertToSignExtendedInteger()
2125 APInt::tcExtract(parts, dstPartsCount, src, semantics->precision, 0); in convertToSignExtendedInteger()
2126 APInt::tcShiftLeft(parts, dstPartsCount, bits - semantics->precision); in convertToSignExtendedInteger()
2250 precision = semantics->precision; in convertFromUnsignedParts()
2403 expAdjustment += semantics->precision; in convertFromHexadecimalString()
2426 parts = partCountForBits(semantics->precision + 11); in roundSignificandWithExponent()
2436 excessPrecision = calcSemantics.precision - semantics->precision; in roundSignificandWithExponent()
2460 if (decSig.exponent < semantics->minExponent) { in roundSignificandWithExponent()
2461 excessPrecision += (semantics->minExponent - decSig.exponent); in roundSignificandWithExponent()
2488 exponent = (decSig.exponent + semantics->precision in roundSignificandWithExponent()
2547 8651 * (semantics->minExponent - (int) semantics->precision)) { in convertFromDecimalString()
2555 >= 12655 * semantics->maxExponent) { in convertFromDecimalString()
2763 valueBits = semantics->precision + 3; in convertNormalToHexString()
2850 Arg.semantics->precision); in hash_value()
2854 Arg.semantics->precision, Arg.exponent, in hash_value()
2872 assert(semantics == (const llvm::fltSemantics*)&x87DoubleExtended); in convertF80LongDoubleAPFloatToAPInt()
2904 assert(semantics == (const llvm::fltSemantics*)&PPCDoubleDouble); in convertPPCDoubleDoubleAPFloatToAPInt()
2917 fltSemantics extendedSemantics = *semantics; in convertPPCDoubleDoubleAPFloatToAPInt()
2955 assert(semantics == (const llvm::fltSemantics*)&IEEEquad); in convertQuadrupleAPFloatToAPInt()
2991 assert(semantics == (const llvm::fltSemantics*)&IEEEdouble); in convertDoubleAPFloatToAPInt()
3021 assert(semantics == (const llvm::fltSemantics*)&IEEEsingle); in convertFloatAPFloatToAPInt()
3050 assert(semantics == (const llvm::fltSemantics*)&IEEEhalf); in convertHalfAPFloatToAPInt()
3083 if (semantics == (const llvm::fltSemantics*)&IEEEhalf) in bitcastToAPInt()
3086 if (semantics == (const llvm::fltSemantics*)&IEEEsingle) in bitcastToAPInt()
3089 if (semantics == (const llvm::fltSemantics*)&IEEEdouble) in bitcastToAPInt()
3092 if (semantics == (const llvm::fltSemantics*)&IEEEquad) in bitcastToAPInt()
3095 if (semantics == (const llvm::fltSemantics*)&PPCDoubleDouble) in bitcastToAPInt()
3098 assert(semantics == (const llvm::fltSemantics*)&x87DoubleExtended && in bitcastToAPInt()
3106 assert(semantics == (const llvm::fltSemantics*)&IEEEsingle && in convertToFloat()
3115 assert(semantics == (const llvm::fltSemantics*)&IEEEdouble && in convertToDouble()
3380 exponent = semantics->maxExponent; in makeLargest()
3390 PartCount*integerPartWidth - semantics->precision; in makeLargest()
3405 exponent = semantics->minExponent; in makeSmallest()
3574 int exp = exponent - ((int) semantics->precision - 1); in toString()
3575 APInt significand(semantics->precision, in toString()
3577 partCountForBits(semantics->precision))); in toString()
3589 FormatPrecision = 2 + semantics->precision * 59 / 196; in toString()
3602 significand = significand.zext(semantics->precision + exp); in toString()
3617 unsigned precision = semantics->precision + (137 * texp + 136) / 59; in toString()
3754 if (significandLSB() != semantics->precision - 1) in getExactInverse()
3758 APFloat reciprocal(*semantics, 1ULL); in getExactInverse()
3768 reciprocal.significandLSB() == reciprocal.semantics->precision - 1); in getExactInverse()
3782 return !APInt::tcExtractBit(significandParts(), semantics->precision - 2); in isSignaling()
3833 exponent = semantics->maxExponent + 1; in next()
3847 exponent != semantics->minExponent && isSignificandAllZeros(); in next()
3869 APInt::tcSetBit(Parts, semantics->precision - 1); in next()
3886 APInt::tcSetBit(Parts, semantics->precision - 1); in next()
3887 assert(exponent != semantics->maxExponent && in next()
3909 exponent = semantics->maxExponent + 1; in makeInf()
3917 exponent = semantics->minExponent-1; in makeZero()