LLVM
10.0.0svn
|
#include "llvm/ADT/APFloat.h"
Static Public Member Functions | |
static APFloat | getZero (const fltSemantics &Sem, bool Negative=false) |
Factory for Positive and Negative Zero. More... | |
static APFloat | getInf (const fltSemantics &Sem, bool Negative=false) |
Factory for Positive and Negative Infinity. More... | |
static APFloat | getNaN (const fltSemantics &Sem, bool Negative=false, uint64_t payload=0) |
Factory for NaN values. More... | |
static APFloat | getQNaN (const fltSemantics &Sem, bool Negative=false, const APInt *payload=nullptr) |
Factory for QNaN values. More... | |
static APFloat | getSNaN (const fltSemantics &Sem, bool Negative=false, const APInt *payload=nullptr) |
Factory for SNaN values. More... | |
static APFloat | getLargest (const fltSemantics &Sem, bool Negative=false) |
Returns the largest finite number in the given semantics. More... | |
static APFloat | getSmallest (const fltSemantics &Sem, bool Negative=false) |
Returns the smallest (by magnitude) finite number in the given semantics. More... | |
static APFloat | getSmallestNormalized (const fltSemantics &Sem, bool Negative=false) |
Returns the smallest (by magnitude) normalized finite number in the given semantics. More... | |
static APFloat | getAllOnesValue (unsigned BitWidth, bool isIEEE=false) |
Returns a float which is bitcasted from an all one value int. More... | |
static APFloat | copySign (APFloat Value, const APFloat &Sign) |
A static helper to produce a copy of an APFloat value with its sign copied from some other APFloat. More... | |
![]() | |
static unsigned int | semanticsPrecision (const fltSemantics &) |
static ExponentType | semanticsMinExponent (const fltSemantics &) |
static ExponentType | semanticsMaxExponent (const fltSemantics &) |
static unsigned int | semanticsSizeInBits (const fltSemantics &) |
static unsigned | getSizeInBits (const fltSemantics &Sem) |
Returns the size of the floating point number (in bits) in the given semantics. More... | |
static const llvm::fltSemantics & | EnumToSemantics (Semantics S) |
static Semantics | SemanticsToEnum (const llvm::fltSemantics &Sem) |
static const fltSemantics & | IEEEhalf () LLVM_READNONE |
static const fltSemantics & | IEEEsingle () LLVM_READNONE |
static const fltSemantics & | IEEEdouble () LLVM_READNONE |
static const fltSemantics & | IEEEquad () LLVM_READNONE |
static const fltSemantics & | PPCDoubleDouble () LLVM_READNONE |
static const fltSemantics & | x87DoubleExtended () LLVM_READNONE |
static const fltSemantics & | Bogus () LLVM_READNONE |
A Pseudo fltsemantic used to construct APFloats that cannot conflict with anything real. More... | |
Public Attributes | |
friend | IEEEFloat |
friend | DoubleAPFloat |
Friends | |
hash_code | hash_value (const APFloat &Arg) |
See friend declarations above. More... | |
int | ilogb (const APFloat &Arg) |
APFloat | scalbn (APFloat X, int Exp, roundingMode RM) |
APFloat | frexp (const APFloat &X, int &Exp, roundingMode RM) |
Additional Inherited Members | |
![]() | |
enum | cmpResult { cmpLessThan, cmpEqual, cmpGreaterThan, cmpUnordered } |
IEEE-754R 5.11: Floating Point Comparison Relations. More... | |
enum | roundingMode { rmNearestTiesToEven, rmTowardPositive, rmTowardNegative, rmTowardZero, rmNearestTiesToAway } |
IEEE-754R 4.3: Rounding-direction attributes. More... | |
enum | opStatus { opOK = 0x00, opInvalidOp = 0x01, opDivByZero = 0x02, opOverflow = 0x04, opUnderflow = 0x08, opInexact = 0x10 } |
IEEE-754R 7: Default exception handling. More... | |
enum | fltCategory { fcInfinity, fcNaN, fcNormal, fcZero } |
Category of internally-represented number. More... | |
enum | uninitializedTag { uninitialized } |
Convenience enum used to construct an uninitialized APFloat. More... | |
enum | IlogbErrorKinds { IEK_Zero = INT_MIN + 1, IEK_NaN = INT_MIN, IEK_Inf = INT_MAX } |
Enumeration of ilogb error results. More... | |
typedef APInt::WordType | integerPart |
typedef signed short | ExponentType |
A signed type to represent a floating point numbers unbiased exponent. More... | |
enum | Semantics { S_IEEEhalf, S_IEEEsingle, S_IEEEdouble, S_x87DoubleExtended, S_IEEEquad, S_PPCDoubleDouble } |
![]() | |
static const unsigned | integerPartWidth = APInt::APINT_BITS_PER_WORD |
|
inline |
Definition at line 851 of file APFloat.h.
References llvm::lltok::APFloat.
llvm::APFloat::APFloat | ( | const fltSemantics & | Semantics, |
StringRef | S | ||
) |
Definition at line 4478 of file APFloat.cpp.
References convertFromString(), and llvm::APFloatBase::rmNearestTiesToEven.
|
inline |
|
inline |
|
inline |
|
inlineexplicit |
Definition at line 859 of file APFloat.h.
References llvm::lltok::APFloat.
|
default |
|
default |
|
inline |
Definition at line 956 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::ConstantFoldBinaryInstruction(), createPowWithIntegerExponent(), llvm::SelectionDAG::foldConstantFPMath(), llvm::ExecutionEngine::getConstantValue(), llvm::detail::DoubleAPFloat::multiply(), operator+(), and llvm::detail::DoubleAPFloat::operator=().
|
inline |
Definition at line 1109 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::DwarfUnit::addConstantFPValue(), llvm::SparcTargetLowering::bitcastConstantFPToInt(), llvm::canConstantFoldCallTo(), CC_MipsO32_FP64(), changeFCMPPredToAArch64CC(), llvm::FunctionComparator::cmpAPFloats(), llvm::detail::DoubleAPFloat::convertFromAPInt(), llvm::detail::DoubleAPFloat::convertFromSignExtendedInteger(), llvm::detail::DoubleAPFloat::convertFromString(), llvm::detail::DoubleAPFloat::convertFromZeroExtendedInteger(), convertIntToDoubleImm(), llvm::detail::DoubleAPFloat::divide(), llvm::DwarfDebug::emitDebugLocValue(), emitGlobalConstantFP(), llvm::R600TargetLowering::EmitInstrWithCustomInserter(), llvm::detail::DoubleAPFloat::fusedMultiplyAdd(), llvm::ExecutionEngine::getConstantValue(), llvm::getConstantVRegValWithLookThrough(), llvm::detail::DoubleAPFloat::getExactInverse(), llvm::AArch64_AM::getFP16Imm(), llvm::ARM_AM::getFP16Imm(), llvm::AArch64_AM::getFP32Imm(), llvm::ARM_AM::getFP32Imm(), llvm::AArch64_AM::getFP64Imm(), llvm::ARM_AM::getFP64Imm(), GetFPLibCall(), getFPTrueImmVal(), getImplicitScaleFactor(), llvm::SelectionDAG::getNode(), getOpenCLAlignment(), GetPromotionOpcode(), getRegNum(), getSplatConstantFP(), llvm::HexagonLowerToMC(), llvm::SITargetLowering::isCanonicalized(), llvm::AArch64TargetLowering::isFPImmLegal(), llvm::ARMLegalizerInfo::legalizeCustom(), llvm::HexagonTargetLowering::LowerBITCAST(), llvm::detail::DoubleAPFloat::mod(), llvm::detail::DoubleAPFloat::next(), parseHexOcta(), llvm::R600TargetLowering::PerformDAGCombine(), llvm::NVPTXFloatMCExpr::printImpl(), Profile(), llvm::detail::DoubleAPFloat::remainder(), llvm::detail::DoubleAPFloat::roundToIntegral(), ShrinkLoadReplaceStoreWithStore(), llvm::SystemZVectorConstantInfo::SystemZVectorConstantInfo(), toString(), and WriteConstantInternal().
Definition at line 1127 of file APFloat.h.
References getSemantics(), and llvm_unreachable.
Referenced by llvm::DenseMapAPFloatKeyInfo::isEqual(), llvm::X86TargetLowering::isFPImmLegal(), isInv2Pi(), and toString().
|
inline |
Definition at line 1065 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and changeSign().
Referenced by changeSign(), EmitAddTreeOfValues(), FoldIntToFPToInt(), llvm::TargetLowering::getNegatedExpression(), llvm::SelectionDAG::getNode(), getRegNum(), INITIALIZE_PASS(), matchSVEPredicateVectorRegName(), llvm::detail::DoubleAPFloat::multiply(), llvm::neg(), llvm::detail::DoubleAPFloat::operator=(), parseHexOcta(), and llvm::X86TargetLowering::X86TargetLowering().
|
inline |
Definition at line 1066 of file APFloat.h.
Referenced by llvm::abs(), llvm::canConstantFoldCallTo(), llvm::SelectionDAG::getNode(), LowerFCOPYSIGN(), and llvm::InstCombiner::visitFCmpInst().
Definition at line 1117 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::ConstantFoldCompareInstruction(), createPowWithIntegerExponent(), EmitAddTreeOfValues(), fmed3AMDGCN(), llvm::MDNode::getMostGenericFPMath(), getSplatConstantFP(), llvm::isMathLibCallNoop(), mapBinOpcode(), matchFastFloatClamp(), llvm::maximum(), llvm::maxnum(), llvm::minimum(), llvm::minnum(), SimplifyFCmpInst(), and llvm::InstCombiner::visitFCmpInst().
APFloat::opStatus llvm::APFloat::convert | ( | const fltSemantics & | ToSemantics, |
roundingMode | RM, | ||
bool * | losesInfo | ||
) |
Definition at line 4483 of file APFloat.cpp.
References assert(), llvm::detail::IEEEFloat::convert(), getSemantics(), llvm_unreachable, llvm::APFloatBase::opOK, and llvm::MipsISD::Ret.
Referenced by llvm::canConstantFoldCallTo(), llvm::ConstantFoldCastInstruction(), llvm::createAMDGPUPrintfRuntimeBinding(), createPowWithIntegerExponent(), emitDebugValueComment(), fitsInFPType(), llvm::SelectionDAG::foldConstantFPMath(), FunctionNumber(), llvm::ConstantFP::get(), llvm::getAPFloatFromSize(), llvm::SelectionDAG::getConstantFP(), getIntToFPVal(), llvm::SelectionDAG::getNode(), getOpenCLAlignment(), llvm::ConstantFP::isExactlyValue(), isExactlyValue(), llvm::ConstantFP::isValueValidForType(), LLVMConstRealGetDouble(), llvm::ARMAsmPrinter::lowerOperand(), lowerUINT_TO_FP_vec(), llvm::NVPTXFloatMCExpr::printImpl(), valueHasFloatPrecision(), llvm::InstCombiner::visitFCmpInst(), llvm::LegalizerHelper::widenScalar(), WriteConstantInternal(), and llvm::X86TargetLowering::X86TargetLowering().
|
inline |
Definition at line 1092 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::ConstantFoldCastInstruction(), llvm::detail::DoubleAPFloat::convertFromAPInt(), llvm::ExecutionEngine::getConstantValue(), and llvm::SelectionDAG::getNode().
|
inline |
Definition at line 1096 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::detail::DoubleAPFloat::convertFromSignExtendedInteger().
APFloat::opStatus llvm::APFloat::convertFromString | ( | StringRef | Str, |
roundingMode | RM | ||
) |
Definition at line 4466 of file APFloat.cpp.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::detail::DoubleAPFloat::convertFromString().
Referenced by APFloat(), llvm::detail::DoubleAPFloat::convertFromString(), llvm::StringRef::getAsDouble(), getRegNum(), matchSVEPredicateVectorRegName(), and parseHexOcta().
|
inline |
Definition at line 1102 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::detail::DoubleAPFloat::convertFromZeroExtendedInteger().
|
inline |
Definition at line 1112 of file APFloat.h.
Referenced by llvm::canConstantFoldCallTo(), createPowWithIntegerExponent(), emitDebugValueComment(), llvm::StringRef::getAsDouble(), getIntToFPVal(), LLVMConstRealGetDouble(), llvm::log2(), llvm::WebAssemblyMCInstLower::lower(), llvm::ARMAsmPrinter::lowerOperand(), and WriteConstantInternal().
|
inline |
Definition at line 1113 of file APFloat.h.
References llvm::operator==().
Referenced by llvm::canConstantFoldCallTo(), emitDebugValueComment(), llvm::FPMathOperator::getFPAccuracy(), getIntToFPVal(), LLVMConstRealGetDouble(), llvm::log2(), llvm::WebAssemblyMCInstLower::lower(), llvm::R600TargetLowering::PerformDAGCombine(), and WriteConstantInternal().
|
inline |
Definition at line 1152 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by toString().
|
inline |
Definition at line 1084 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::canConstantFoldCallTo(), llvm::ConstantFoldCastInstruction(), convertToInteger(), ConvertToSInt(), createPowWithIntegerExponent(), llvm::BuildVectorSDNode::getConstantFPSplatPow2ToLog2Int(), llvm::ExecutionEngine::getConstantValue(), getIntToFPVal(), llvm::SelectionDAG::getNode(), llvm::FastISel::getRegForValue(), and tryBitfieldInsertOpFromOr().
APFloat::opStatus llvm::APFloat::convertToInteger | ( | APSInt & | Result, |
roundingMode | RM, | ||
bool * | IsExact | ||
) | const |
Definition at line 4548 of file APFloat.cpp.
References convertToInteger(), llvm::APInt::getBitWidth(), llvm::APInt::getNumWords(), llvm::APSInt::isSigned(), and llvm::sys::fs::status().
Definition at line 1070 of file APFloat.h.
References isNegative().
Referenced by llvm::canConstantFoldCallTo(), copySign(), and llvm::SelectionDAG::foldConstantFPMath().
A static helper to produce a copy of an APFloat value with its sign copied from some other APFloat.
Definition at line 1077 of file APFloat.h.
References copySign(), and llvm::NVPTX::PTXCvtMode::RM.
|
inline |
Definition at line 983 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::ConstantFoldBinaryInstruction(), llvm::detail::DoubleAPFloat::divide(), llvm::SelectionDAG::foldConstantFPMath(), llvm::ExecutionEngine::getConstantValue(), and operator/().
LLVM_DUMP_METHOD void llvm::APFloat::dump | ( | ) | const |
Definition at line 4537 of file APFloat.cpp.
References llvm::dbgs(), and print().
Referenced by llvm::AArch64TargetLowering::isFPImmLegal().
|
inline |
Definition at line 1010 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::canConstantFoldCallTo(), llvm::detail::DoubleAPFloat::fusedMultiplyAdd(), llvm::SelectionDAG::getNode(), and llvm::detail::DoubleAPFloat::multiply().
Returns a float which is bitcasted from an all one value int.
BitWidth | - Select float type |
isIEEE | - If 128 bit number, select between PPC and IEEE |
Definition at line 4508 of file APFloat.cpp.
References assert(), llvm::APInt::getAllOnesValue(), and llvm_unreachable.
Referenced by llvm::Constant::getAllOnesValue(), and lowerShuffleAsBitMask().
|
inline |
Definition at line 1191 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, Arg, and llvm::hash_value().
Referenced by llvm::detail::DoubleAPFloat::getExactInverse().
|
inlinestatic |
Factory for Positive and Negative Infinity.
Negative | True iff the number should be negative. |
Definition at line 879 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::ConstantFP::getInfinity(), and parseHexOcta().
|
inlinestatic |
Returns the largest finite number in the given semantics.
Negative | - True iff the number should be negative |
Definition at line 919 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::fuzzerop::makeConstantsWithType(), and parseTexFail().
|
inlinestatic |
Factory for NaN values.
Negative | - True iff the NaN generated should be negative. |
payload | - The unspecified fill bits for creating the NaN, 0 by default. The value is truncated as necessary. |
Definition at line 890 of file APFloat.h.
Referenced by llvm::SelectionDAG::foldConstantFPMath(), llvm::ConstantFP::getNaN(), and parseHexOcta().
|
inlinestatic |
Factory for QNaN values.
Definition at line 901 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::ConstantFP::getQNaN(), llvm::SITargetLowering::isCanonicalized(), toString(), and vectorEltWillFoldAway().
|
inline |
Definition at line 1170 of file APFloat.h.
Referenced by add(), bitwiseIsEqual(), llvm::MachineIRBuilder::buildFConstant(), llvm::FunctionComparator::cmpAPFloats(), compare(), convert(), createPowWithIntegerExponent(), divide(), llvm::frexp(), FunctionNumber(), fusedMultiplyAdd(), llvm::ConstantFP::get(), llvm::ConstantFP::getInfinity(), getIntToFPVal(), getParentPad(), llvm::hash_value(), llvm::SITargetLowering::isCanonicalized(), llvm::ConstantFP::isExactlyValue(), llvm::isMathLibCallNoop(), llvm::ConstantFP::isValueValidForType(), mod(), multiply(), llvm::AMDGPUTargetLowering::performRcpCombine(), remainder(), llvm::scalbn(), subtract(), llvm::SystemZVectorConstantInfo::SystemZVectorConstantInfo(), toString(), and WriteConstantInternal().
|
inlinestatic |
Returns the smallest (by magnitude) finite number in the given semantics.
Might be denormalized, which implies a relative loss of precision.
Negative | - True iff the number should be negative |
Definition at line 929 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::fuzzerop::makeConstantsWithType().
|
inlinestatic |
Returns the smallest (by magnitude) normalized finite number in the given semantics.
Negative | - True iff the number should be negative |
Definition at line 939 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by INITIALIZE_PASS(), and llvm::InstCombiner::visitFCmpInst().
|
inlinestatic |
Factory for SNaN values.
Definition at line 909 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::ConstantFP::getSNaN().
|
inlinestatic |
Factory for Positive and Negative Zero.
Negative | True iff the number should be negative. |
Definition at line 870 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::ExecutionEngine::getConstantValue(), llvm::ConstantFP::getNegativeZero(), llvm::Constant::getNullValue(), llvm::fuzzerop::makeConstantsWithType(), and llvm::X86TargetLowering::X86TargetLowering().
|
inline |
Definition at line 1163 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isDenormal().
Referenced by llvm::SITargetLowering::isCanonicalized(), and isDenormal().
|
inline |
We don't rely on operator== working on double values, as it returns true for things that are clearly not equal, like -0.0 and 0.0.
As such, this method can be used to do an exact bit-for-bit comparison of two floating point values.
We leave the version with the double argument here because it's just so convenient to write "2.0" and the like. Without this function we'd have to duplicate its logic everywhere it's called.
Definition at line 1145 of file APFloat.h.
References convert(), and llvm::APFloatBase::rmNearestTiesToEven.
Referenced by CanCombineFCOPYSIGN_EXTEND_ROUND(), changeFCMPPredToAArch64CC(), getSqrtCall(), llvm::ConstantFPSDNode::isExactlyValue(), and llvm::SelectionDAG::simplifyFPBinop().
|
inline |
Definition at line 1167 of file APFloat.h.
Referenced by mapBinOpcode(), matchFastFloatClamp(), llvm::detail::DoubleAPFloat::multiply(), and llvm::detail::DoubleAPFloat::operator=().
|
inline |
Definition at line 1172 of file APFloat.h.
References isZero().
Referenced by getParentPad(), and llvm::detail::DoubleAPFloat::multiply().
|
inline |
Definition at line 1159 of file APFloat.h.
References llvm::APFloatBase::fcInfinity.
Referenced by llvm::ConstantFP::isInfinity(), llvm::isMathLibCallNoop(), llvm::detail::DoubleAPFloat::operator=(), simplifyBinaryIntrinsic(), SimplifyFCmpInst(), and WriteConstantInternal().
|
inline |
Definition at line 1177 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isInteger().
Referenced by createPowWithIntegerExponent(), getIntToFPVal(), and isInteger().
|
inline |
Definition at line 1176 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isLargest().
Referenced by isLargest().
|
inline |
Definition at line 1160 of file APFloat.h.
References llvm::APFloatBase::fcNaN.
Referenced by llvm::SITargetLowering::isCanonicalized(), llvm::isMathLibCallNoop(), llvm::ConstantFP::isNaN(), llvm::PatternMatch::is_nan::isValue(), llvm::maximum(), llvm::maxnum(), llvm::minimum(), llvm::minnum(), SimplifyFCmpInst(), toString(), and WriteConstantInternal().
|
inline |
Definition at line 1162 of file APFloat.h.
Referenced by CanCombineFCOPYSIGN_EXTEND_ROUND(), copySign(), createPowWithIntegerExponent(), foldFCmpReciprocalAndZero(), getIntToFPVal(), getNegatibleInsts(), getParentPad(), getSqrtCall(), llvm::isMathLibCallNoop(), llvm::ConstantFP::isNegative(), mapBinOpcode(), llvm::maximum(), llvm::minimum(), simplifyBinaryIntrinsic(), and SimplifyFCmpInst().
|
inline |
Definition at line 1174 of file APFloat.h.
References isZero().
Referenced by llvm::SystemZTargetLowering::isFPImmLegal(), llvm::PatternMatch::is_neg_zero_fp::isValue(), SimplifyFCmpInst(), and llvm::SelectionDAG::simplifyFPBinop().
|
inline |
|
inline |
Definition at line 1166 of file APFloat.h.
Referenced by factorizeFAddFSub(), and getIntToFPVal().
|
inline |
Definition at line 1173 of file APFloat.h.
References isZero().
Referenced by llvm::AArch64TargetLowering::isFPImmLegal(), llvm::PPCTargetLowering::isFPImmLegal(), llvm::PatternMatch::is_pos_zero_fp::isValue(), matchSVEPredicateVectorRegName(), and llvm::SelectionDAG::simplifyFPBinop().
|
inline |
Definition at line 1164 of file APFloat.h.
Referenced by llvm::SITargetLowering::isCanonicalized().
|
inline |
Definition at line 1175 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isSmallest().
Referenced by isSmallest().
|
inline |
Definition at line 1158 of file APFloat.h.
References llvm::APFloatBase::fcZero.
Referenced by foldFCmpReciprocalAndZero(), llvm::SystemZTargetLowering::isFPImmLegal(), llvm::isMathLibCallNoop(), llvm::PatternMatch::is_any_zero_fp::isValue(), llvm::ConstantFP::isZero(), mapBinOpcode(), llvm::maximum(), llvm::minimum(), and llvm::InstCombiner::visitFCmpInst().
Definition at line 1001 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::canConstantFoldCallTo(), llvm::ConstantFoldBinaryInstruction(), llvm::SelectionDAG::foldConstantFPMath(), llvm::ExecutionEngine::getConstantValue(), and llvm::detail::DoubleAPFloat::mod().
|
inline |
Definition at line 974 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::ConstantFoldBinaryInstruction(), llvm::SelectionDAG::foldConstantFPMath(), llvm::ExecutionEngine::getConstantValue(), llvm::detail::DoubleAPFloat::multiply(), and operator*().
|
inline |
Definition at line 865 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and needsCleanup().
Referenced by needsCleanup().
Definition at line 1029 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::detail::DoubleAPFloat::next().
Multiply two APFloats, rounding ties to the nearest even.
No error checking.
Definition at line 1051 of file APFloat.h.
References multiply(), and llvm::APFloatBase::rmNearestTiesToEven.
Add two APFloats, rounding ties to the nearest even.
No error checking.
Definition at line 1035 of file APFloat.h.
References add(), and llvm::APFloatBase::rmNearestTiesToEven.
Subtract two APFloats, rounding ties to the nearest even.
No error checking.
Definition at line 1043 of file APFloat.h.
References llvm::APFloatBase::rmNearestTiesToEven, and subtract().
Divide the first APFloat by the second, rounding ties to the nearest even.
No error checking.
Definition at line 1059 of file APFloat.h.
References divide(), and llvm::APFloatBase::rmNearestTiesToEven.
void llvm::APFloat::print | ( | raw_ostream & | OS | ) | const |
void llvm::APFloat::Profile | ( | FoldingSetNodeID & | NID | ) | const |
Used to insert APFloat objects, or objects that contain APFloat objects, into FoldingSets.
Definition at line 4540 of file APFloat.cpp.
References llvm::FoldingSetNodeID::Add(), and bitcastToAPInt().
Definition at line 992 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::detail::DoubleAPFloat::remainder().
|
inline |
Definition at line 1023 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::canConstantFoldCallTo(), llvm::SelectionDAG::getNode(), mapBinOpcode(), and llvm::detail::DoubleAPFloat::roundToIntegral().
|
inline |
Definition at line 965 of file APFloat.h.
References assert(), getSemantics(), and llvm_unreachable.
Referenced by llvm::ConstantFoldBinaryInstruction(), llvm::SelectionDAG::foldConstantFPMath(), llvm::ExecutionEngine::getConstantValue(), llvm::detail::DoubleAPFloat::multiply(), operator-(), and llvm::detail::DoubleAPFloat::operator=().
|
inline |
Definition at line 1182 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, llvm::dump(), print(), and llvm::toString().
Referenced by emitGlobalConstantFP(), print(), printConstant(), toStringAPFloat(), and WriteConstantInternal().
|
friend |
See friend declarations above.
These additional declarations are required in order to compile LLVM with IBM xlC compiler.
Definition at line 4470 of file APFloat.cpp.
|
friend |
friend llvm::APFloat::DoubleAPFloat |
friend llvm::APFloat::IEEEFloat |