reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

include/llvm/ADT/APFloat.h
  370   const fltSemantics &getSemantics() const { return *semantics; }
lib/Support/APFloat.cpp
  695   semantics = ourSemantics;
  707   assert(semantics == rhs.semantics);
  707   assert(semantics == rhs.semantics);
  742     unsigned bitsToPreserve = semantics->precision - 1;
  750   unsigned QNaNBit = semantics->precision - 2;
  769   if (semantics == &semX87DoubleExtended)
  775     if (semantics != rhs.semantics) {
  775     if (semantics != rhs.semantics) {
  777       initialize(rhs.semantics);
  788   semantics = rhs.semantics;
  788   semantics = rhs.semantics;
  794   rhs.semantics = &semBogus;
  799   return isFiniteNonZero() && (exponent == semantics->minExponent) &&
  801                               semantics->precision - 1) == 0);
  808   return isFiniteNonZero() && exponent == semantics->minExponent &&
  823     PartCount*integerPartWidth - semantics->precision + 1;
  845     PartCount*integerPartWidth - semantics->precision + 1;
  859   return isFiniteNonZero() && exponent == semantics->maxExponent
  874   if (semantics != rhs.semantics ||
  874   if (semantics != rhs.semantics ||
  910   initialize(rhs.semantics);
  921   return partCountForBits(semantics->precision + 1);
  956   assert(semantics == rhs.semantics);
  956   assert(semantics == rhs.semantics);
  970   assert(semantics == rhs.semantics);
  970   assert(semantics == rhs.semantics);
  990   assert(semantics == rhs.semantics);
  990   assert(semantics == rhs.semantics);
  992   precision = semantics->precision;
 1030     const fltSemantics *savedSemantics = semantics;
 1045     extendedSemantics = *semantics;
 1052     semantics = &extendedSemantics;
 1072     semantics = savedSemantics;
 1117   assert(semantics == rhs.semantics);
 1117   assert(semantics == rhs.semantics);
 1139   unsigned int precision = semantics->precision;
 1212   assert(bits < semantics->precision);
 1228   assert(semantics == rhs.semantics);
 1228   assert(semantics == rhs.semantics);
 1262   exponent = semantics->maxExponent;
 1264                                    semantics->precision);
 1324     exponentChange = omsb - semantics->precision;
 1328     if (exponent + exponentChange > semantics->maxExponent)
 1333     if (exponent + exponentChange < semantics->minExponent)
 1334       exponentChange = semantics->minExponent - exponent;
 1377       exponent = semantics->minExponent;
 1383     if (omsb == (unsigned) semantics->precision + 1) {
 1387       if (exponent == semantics->maxExponent) {
 1401   if (omsb == semantics->precision)
 1405   assert(omsb < semantics->precision);
 1852   if (isFiniteNonZero() && exponent+1 >= (int)semanticsPrecision(*semantics))
 1861   APInt IntegerConstant(NextPowerOf2(semanticsPrecision(*semantics)), 1);
 1862   IntegerConstant <<= semanticsPrecision(*semantics)-1;
 1863   IEEEFloat MagicConstant(*semantics);
 1892   assert(semantics == rhs.semantics);
 1892   assert(semantics == rhs.semantics);
 1973   const fltSemantics &fromSemantics = *semantics;
 2031   semantics = &toSemantics;
 2046     if (!X86SpecialNan && semantics == &semX87DoubleExtended)
 2047       APInt::tcSetBit(significandParts(), semantics->precision - 1);
 2104     truncatedBits = semantics->precision -1U - exponent;
 2114     if (bits < semantics->precision) {
 2116       truncatedBits = semantics->precision - bits;
 2120       APInt::tcExtract(parts.data(), dstPartsCount, src, semantics->precision,
 2123                          bits - semantics->precision);
 2228   precision = semantics->precision;
 2375     expAdjustment += semantics->precision;
 2397   parts = partCountForBits(semantics->precision + 11);
 2407     excessPrecision = calcSemantics.precision - semantics->precision;
 2432       if (decSig.exponent < semantics->minExponent) {
 2433         excessPrecision += (semantics->minExponent - decSig.exponent);
 2460       exponent = (decSig.exponent + semantics->precision
 2518                8651 * (semantics->minExponent - (int) semantics->precision)) {
 2518                8651 * (semantics->minExponent - (int) semantics->precision)) {
 2526              >= 12655 * semantics->maxExponent) {
 2729   valueBits = semantics->precision + 3;
 2816                         Arg.semantics->precision);
 2820                       Arg.semantics->precision, Arg.exponent,
 2836   assert(semantics == (const llvm::fltSemantics*)&semX87DoubleExtended);
 2866   assert(semantics == (const llvm::fltSemantics *)&semPPCDoubleDoubleLegacy);
 2879   fltSemantics extendedSemantics = *semantics;
 2915   assert(semantics == (const llvm::fltSemantics*)&semIEEEquad);
 2949   assert(semantics == (const llvm::fltSemantics*)&semIEEEdouble);
 2977   assert(semantics == (const llvm::fltSemantics*)&semIEEEsingle);
 3004   assert(semantics == (const llvm::fltSemantics*)&semIEEEhalf);
 3035   if (semantics == (const llvm::fltSemantics*)&semIEEEhalf)
 3038   if (semantics == (const llvm::fltSemantics*)&semIEEEsingle)
 3041   if (semantics == (const llvm::fltSemantics*)&semIEEEdouble)
 3044   if (semantics == (const llvm::fltSemantics*)&semIEEEquad)
 3047   if (semantics == (const llvm::fltSemantics *)&semPPCDoubleDoubleLegacy)
 3050   assert(semantics == (const llvm::fltSemantics*)&semX87DoubleExtended &&
 3056   assert(semantics == (const llvm::fltSemantics*)&semIEEEsingle &&
 3063   assert(semantics == (const llvm::fltSemantics*)&semIEEEdouble &&
 3295   exponent = semantics->maxExponent;
 3305     PartCount*integerPartWidth - semantics->precision;
 3320   exponent = semantics->minExponent;
 3333   exponent = semantics->minExponent;
 3334   significandParts()[partCountForBits(semantics->precision) - 1] |=
 3335       (((integerPart)1) << ((semantics->precision - 1) % integerPartWidth));
 3470   int exp = exponent - ((int) semantics->precision - 1);
 3471   APInt significand(semantics->precision,
 3473                                  partCountForBits(semantics->precision)));
 3485     FormatPrecision = 2 + semantics->precision * 59 / 196;
 3498     significand = significand.zext(semantics->precision + exp);
 3513     unsigned precision = semantics->precision + (137 * texp + 136) / 59;
 3657   if (significandLSB() != semantics->precision - 1)
 3661   IEEEFloat reciprocal(*semantics, 1ULL);
 3671          reciprocal.significandLSB() == reciprocal.semantics->precision - 1);
 3674     *inv = APFloat(reciprocal, *semantics);
 3685   return !APInt::tcExtractBit(significandParts(), semantics->precision - 2);
 3736       exponent = semantics->maxExponent + 1;
 3750         exponent != semantics->minExponent && isSignificandAllZeros();
 3772         APInt::tcSetBit(Parts, semantics->precision - 1);
 3789         APInt::tcSetBit(Parts, semantics->precision - 1);
 3790         assert(exponent != semantics->maxExponent &&
 3811   exponent = semantics->maxExponent + 1;
 3818   exponent = semantics->minExponent-1;
 3824   APInt::tcSetBit(significandParts(), semantics->precision - 2);