diff options
-rw-r--r-- | include/llvm/ADT/APFloat.h | 1 | ||||
-rw-r--r-- | lib/Support/APFloat.cpp | 31 |
2 files changed, 15 insertions, 17 deletions
diff --git a/include/llvm/ADT/APFloat.h b/include/llvm/ADT/APFloat.h index efd19d2c56..d62b5c20c6 100644 --- a/include/llvm/ADT/APFloat.h +++ b/include/llvm/ADT/APFloat.h @@ -268,7 +268,6 @@ namespace llvm { bool roundAwayFromZero(roundingMode, lostFraction, unsigned int) const; opStatus convertFromUnsignedInteger(integerPart *, unsigned int, roundingMode); - lostFraction combineLostFractions(lostFraction, lostFraction); opStatus convertFromHexadecimalString(const char *, roundingMode); char *convertNormalToHexString(char *, unsigned int, bool, roundingMode) const; diff --git a/lib/Support/APFloat.cpp b/lib/Support/APFloat.cpp index ac2e5f2c27..2037210e05 100644 --- a/lib/Support/APFloat.cpp +++ b/lib/Support/APFloat.cpp @@ -222,6 +222,20 @@ namespace { return lost_fraction; } + /* Combine the effect of two lost fractions. */ + lostFraction + combineLostFractions(lostFraction moreSignificant, + lostFraction lessSignificant) + { + if(lessSignificant != lfExactlyZero) { + if(moreSignificant == lfExactlyZero) + moreSignificant = lfLessThanHalf; + else if(moreSignificant == lfExactlyHalf) + moreSignificant = lfMoreThanHalf; + } + + return moreSignificant; + } /* Zero at the end to avoid modular arithmetic when adding one; used when rounding up during hexadecimal output. */ @@ -429,21 +443,6 @@ APFloat::significandParts() return &significand.part; } -/* Combine the effect of two lost fractions. */ -lostFraction -APFloat::combineLostFractions(lostFraction moreSignificant, - lostFraction lessSignificant) -{ - if(lessSignificant != lfExactlyZero) { - if(moreSignificant == lfExactlyZero) - moreSignificant = lfLessThanHalf; - else if(moreSignificant == lfExactlyHalf) - moreSignificant = lfMoreThanHalf; - } - - return moreSignificant; -} - void APFloat::zeroSignificand() { @@ -1614,7 +1613,7 @@ APFloat::convertFromHexadecimalString(const char *p, partsCount = partCount(); bitPos = partsCount * integerPartWidth; - /* Skip leading zeroes and any(hexa)decimal point. */ + /* Skip leading zeroes and any (hexa)decimal point. */ p = skipLeadingZeroesAndAnyDot(p, &dot); firstSignificantDigit = p; |