APFloat cleanup: Remove now unused fields "sign2" and "exponent2".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166952 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Ulrich Weigand 2012-10-29 18:17:42 +00:00
parent 69c9c8c4cf
commit fce241d76f
2 changed files with 9 additions and 28 deletions

View File

@ -455,13 +455,6 @@ namespace llvm {
/* The sign bit of this number. */ /* The sign bit of this number. */
unsigned int sign: 1; unsigned int sign: 1;
/* For PPCDoubleDouble, we have a second exponent and sign (the second
significand is appended to the first one, although it would be wrong to
regard these as a single number for arithmetic purposes). These fields
are not meaningful for any other type. */
exponent_t exponent2 : 11;
unsigned int sign2: 1;
}; };
} /* namespace llvm */ } /* namespace llvm */

View File

@ -621,8 +621,6 @@ APFloat::assign(const APFloat &rhs)
sign = rhs.sign; sign = rhs.sign;
category = rhs.category; category = rhs.category;
exponent = rhs.exponent; exponent = rhs.exponent;
sign2 = rhs.sign2;
exponent2 = rhs.exponent2;
if (category == fcNormal || category == fcNaN) if (category == fcNormal || category == fcNaN)
copySignificand(rhs); copySignificand(rhs);
} }
@ -716,16 +714,10 @@ APFloat::bitwiseIsEqual(const APFloat &rhs) const {
category != rhs.category || category != rhs.category ||
sign != rhs.sign) sign != rhs.sign)
return false; return false;
if (semantics==(const llvm::fltSemantics*)&PPCDoubleDouble &&
sign2 != rhs.sign2)
return false;
if (category==fcZero || category==fcInfinity) if (category==fcZero || category==fcInfinity)
return true; return true;
else if (category==fcNormal && exponent!=rhs.exponent) else if (category==fcNormal && exponent!=rhs.exponent)
return false; return false;
else if (semantics==(const llvm::fltSemantics*)&PPCDoubleDouble &&
exponent2!=rhs.exponent2)
return false;
else { else {
int i= partCount(); int i= partCount();
const integerPart* p=significandParts(); const integerPart* p=significandParts();
@ -738,8 +730,7 @@ APFloat::bitwiseIsEqual(const APFloat &rhs) const {
} }
} }
APFloat::APFloat(const fltSemantics &ourSemantics, integerPart value) APFloat::APFloat(const fltSemantics &ourSemantics, integerPart value) {
: exponent2(0), sign2(0) {
assertArithmeticOK(ourSemantics); assertArithmeticOK(ourSemantics);
initialize(&ourSemantics); initialize(&ourSemantics);
sign = 0; sign = 0;
@ -749,23 +740,21 @@ APFloat::APFloat(const fltSemantics &ourSemantics, integerPart value)
normalize(rmNearestTiesToEven, lfExactlyZero); normalize(rmNearestTiesToEven, lfExactlyZero);
} }
APFloat::APFloat(const fltSemantics &ourSemantics) : exponent2(0), sign2(0) { APFloat::APFloat(const fltSemantics &ourSemantics) {
assertArithmeticOK(ourSemantics); assertArithmeticOK(ourSemantics);
initialize(&ourSemantics); initialize(&ourSemantics);
category = fcZero; category = fcZero;
sign = false; sign = false;
} }
APFloat::APFloat(const fltSemantics &ourSemantics, uninitializedTag tag) APFloat::APFloat(const fltSemantics &ourSemantics, uninitializedTag tag) {
: exponent2(0), sign2(0) {
assertArithmeticOK(ourSemantics); assertArithmeticOK(ourSemantics);
// Allocates storage if necessary but does not initialize it. // Allocates storage if necessary but does not initialize it.
initialize(&ourSemantics); initialize(&ourSemantics);
} }
APFloat::APFloat(const fltSemantics &ourSemantics, APFloat::APFloat(const fltSemantics &ourSemantics,
fltCategory ourCategory, bool negative) fltCategory ourCategory, bool negative) {
: exponent2(0), sign2(0) {
assertArithmeticOK(ourSemantics); assertArithmeticOK(ourSemantics);
initialize(&ourSemantics); initialize(&ourSemantics);
category = ourCategory; category = ourCategory;
@ -776,14 +765,13 @@ APFloat::APFloat(const fltSemantics &ourSemantics,
makeNaN(); makeNaN();
} }
APFloat::APFloat(const fltSemantics &ourSemantics, StringRef text) APFloat::APFloat(const fltSemantics &ourSemantics, StringRef text) {
: exponent2(0), sign2(0) {
assertArithmeticOK(ourSemantics); assertArithmeticOK(ourSemantics);
initialize(&ourSemantics); initialize(&ourSemantics);
convertFromString(text, rmNearestTiesToEven); convertFromString(text, rmNearestTiesToEven);
} }
APFloat::APFloat(const APFloat &rhs) : exponent2(0), sign2(0) { APFloat::APFloat(const APFloat &rhs) {
initialize(rhs.semantics); initialize(rhs.semantics);
assign(rhs); assign(rhs);
} }
@ -3300,15 +3288,15 @@ APFloat APFloat::getSmallestNormalized(const fltSemantics &Sem, bool Negative) {
return Val; return Val;
} }
APFloat::APFloat(const APInt& api, bool isIEEE) : exponent2(0), sign2(0) { APFloat::APFloat(const APInt& api, bool isIEEE) {
initFromAPInt(api, isIEEE); initFromAPInt(api, isIEEE);
} }
APFloat::APFloat(float f) : exponent2(0), sign2(0) { APFloat::APFloat(float f) {
initFromAPInt(APInt::floatToBits(f)); initFromAPInt(APInt::floatToBits(f));
} }
APFloat::APFloat(double d) : exponent2(0), sign2(0) { APFloat::APFloat(double d) {
initFromAPInt(APInt::doubleToBits(d)); initFromAPInt(APInt::doubleToBits(d));
} }