mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-12 17:32:19 +00:00
Remove getIEEEFloatParts and getIEEEDoubleParts. They are not needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85358 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
aa123224c4
commit
c5a75523ef
@ -277,13 +277,6 @@ namespace llvm {
|
||||
/* Return an arbitrary integer value usable for hashing. */
|
||||
uint32_t getHashValue() const;
|
||||
|
||||
/// getIEEEFloatParts / getIEEEDoubleParts - Return exponent, significant,
|
||||
/// and sign bit of an IEEE float / IEEE double value.
|
||||
void getIEEEFloatParts(bool &Sign, uint32_t &Exp,
|
||||
uint32_t &Significant) const;
|
||||
void getIEEEDoubleParts(bool &Sign, uint64_t &Exp,
|
||||
uint64_t &Significant) const;
|
||||
|
||||
private:
|
||||
|
||||
/* Trivial queries. */
|
||||
|
@ -2632,56 +2632,6 @@ APFloat::getHashValue() const
|
||||
}
|
||||
}
|
||||
|
||||
void APFloat::getIEEEFloatParts(bool &Sign, uint32_t &Exp,
|
||||
uint32_t &Significand) const {
|
||||
assert(semantics == (const llvm::fltSemantics*)&IEEEsingle &&
|
||||
"Float semantics are not IEEEsingle");
|
||||
assert(partCount()==1);
|
||||
|
||||
if (category == fcNormal) {
|
||||
Exp = exponent+127; // bias
|
||||
Significand = (uint32_t)*significandParts();
|
||||
if (Exp == 1 && !(Significand & 0x800000))
|
||||
Exp = 0; // denormal
|
||||
} else if (category==fcZero) {
|
||||
Exp = 0;
|
||||
Significand = 0;
|
||||
} else if (category==fcInfinity) {
|
||||
Exp = 0xff;
|
||||
Significand = 0;
|
||||
} else {
|
||||
assert(category == fcNaN && "Unknown category!");
|
||||
Exp = 0xff;
|
||||
Significand = (uint32_t)*significandParts();
|
||||
}
|
||||
Sign = sign;
|
||||
}
|
||||
|
||||
void APFloat::getIEEEDoubleParts(bool &Sign, uint64_t &Exp,
|
||||
uint64_t &Significand) const {
|
||||
assert(semantics == (const llvm::fltSemantics*)&IEEEdouble &&
|
||||
"Float semantics are not IEEEdouble");
|
||||
assert(partCount()==1);
|
||||
|
||||
if (category == fcNormal) {
|
||||
Exp = exponent+1023; // bias
|
||||
Significand = *significandParts();
|
||||
if (Exp == 1 && !(Significand & 0x10000000000000LL))
|
||||
Exp = 0; // denormal
|
||||
} else if (category==fcZero) {
|
||||
Exp = 0;
|
||||
Significand = 0;
|
||||
} else if (category==fcInfinity) {
|
||||
Exp = 0x7ff;
|
||||
Significand = 0;
|
||||
} else {
|
||||
assert(category == fcNaN && "Unknown category!");
|
||||
Exp = 0x7ff;
|
||||
Significand = *significandParts();
|
||||
}
|
||||
Sign = sign;
|
||||
}
|
||||
|
||||
// Conversion from APFloat to/from host float/double. It may eventually be
|
||||
// possible to eliminate these and have everybody deal with APFloats, but that
|
||||
// will take a while. This approach will not easily extend to long double.
|
||||
|
Loading…
x
Reference in New Issue
Block a user