LLVM
15.0.0git
|
#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 (const fltSemantics &Semantics) |
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 & | BFloat () 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 | 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 int32_t | ExponentType |
A signed type to represent a floating point numbers unbiased exponent. More... | |
using | roundingMode = llvm::RoundingMode |
IEEE-754R 4.3: Rounding-direction attributes. More... | |
enum | Semantics { S_IEEEhalf, S_BFloat, S_IEEEsingle, S_IEEEdouble, S_x87DoubleExtended, S_IEEEquad, S_PPCDoubleDouble, S_MaxSemantics = S_PPCDoubleDouble } |
![]() | |
static constexpr unsigned | integerPartWidth = APInt::APINT_BITS_PER_WORD |
static constexpr roundingMode | rmNearestTiesToEven |
static constexpr roundingMode | rmTowardPositive = RoundingMode::TowardPositive |
static constexpr roundingMode | rmTowardNegative = RoundingMode::TowardNegative |
static constexpr roundingMode | rmTowardZero = RoundingMode::TowardZero |
static constexpr roundingMode | rmNearestTiesToAway |
|
inline |
llvm::APFloat::APFloat | ( | const fltSemantics & | Semantics, |
StringRef | S | ||
) |
Definition at line 4836 of file APFloat.cpp.
References assert(), llvm::consumeError(), convertFromString(), llvm::APFloatBase::rmNearestTiesToEven, and S.
|
inline |
|
delete |
|
inline |
|
inline |
|
default |
|
default |
|
inline |
Definition at line 970 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, RHS, and llvm::AArch64::RM.
Referenced by llvm::ConstantFoldBinaryInstruction(), llvm::ExecutionEngine::getConstantValue(), and llvm::detail::DoubleAPFloat::multiply().
|
inline |
Definition at line 1130 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::DwarfExpression::addConstantFP(), llvm::DwarfUnit::addConstantFPValue(), applyFConstantToConstant(), llvm::FunctionComparator::cmpAPFloats(), llvm::detail::DoubleAPFloat::convertFromAPInt(), llvm::detail::DoubleAPFloat::convertFromSignExtendedInteger(), llvm::detail::DoubleAPFloat::convertFromString(), llvm::detail::DoubleAPFloat::convertFromZeroExtendedInteger(), convertIntToDoubleImm(), llvm::convertToNonDenormSingle(), llvm::detail::DoubleAPFloat::divide(), emitGlobalConstantFP(), llvm::TargetLowering::expandIS_FPCLASS(), llvm::detail::DoubleAPFloat::fusedMultiplyAdd(), llvm::ExecutionEngine::getConstantValue(), llvm::detail::DoubleAPFloat::getExactInverse(), llvm::AArch64_AM::getFP16Imm(), llvm::ARM_AM::getFP16Imm(), llvm::ARM_AM::getFP32FP16Imm(), llvm::AArch64_AM::getFP32Imm(), llvm::ARM_AM::getFP32Imm(), llvm::AArch64_AM::getFP64Imm(), llvm::ARM_AM::getFP64Imm(), llvm::SelectionDAG::getNode(), llvm::HexagonLowerToMC(), llvm::CombinerHelper::matchCombineUnmergeConstant(), llvm::detail::DoubleAPFloat::mod(), llvm::detail::DoubleAPFloat::next(), PerformVMOVrhCombine(), llvm::NVPTXFloatMCExpr::printImpl(), Profile(), llvm::detail::DoubleAPFloat::remainder(), llvm::detail::DoubleAPFloat::roundToIntegral(), llvm::stableHashValue(), and WriteConstantInternal().
Definition at line 1180 of file APFloat.h.
References getSemantics(), llvm_unreachable, and RHS.
Referenced by llvm::ConstantFP::isExactlyValue(), isExactlyValue(), and isInv2Pi().
|
inline |
Definition at line 1086 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and changeSign().
Referenced by changeSign(), clearSign(), constantFoldFpUnary(), copySign(), llvm::PPCInstrInfo::finalizeInsInstrs(), llvm::TargetLowering::getNegatedExpression(), llvm::SelectionDAG::getNeutralElement(), llvm::SelectionDAG::getNode(), and llvm::X86TargetLowering::X86TargetLowering().
|
inline |
Definition at line 1087 of file APFloat.h.
References changeSign(), and isNegative().
Referenced by constantFoldFpUnary(), llvm::SelectionDAG::getNode(), LowerFCOPYSIGN(), and llvm::InstCombinerImpl::visitFCmpInst().
Definition at line 1170 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, and RHS.
Referenced by fmed3AMDGCN(), operator!=(), operator<(), operator<=(), operator==(), operator>(), and operator>=().
APFloat::opStatus llvm::APFloat::convert | ( | const fltSemantics & | ToSemantics, |
roundingMode | RM, | ||
bool * | losesInfo | ||
) |
Definition at line 4843 of file APFloat.cpp.
References assert(), llvm::detail::IEEEFloat::convert(), getSemantics(), llvm_unreachable, move, llvm::APFloatBase::opOK, llvm::MipsISD::Ret, llvm::AArch64::RM, llvm::semPPCDoubleDouble, and llvm::semPPCDoubleDoubleLegacy.
Referenced by canSafelyConvertTo16Bit(), llvm::checkConvertToNonDenormSingle(), llvm::ConstantFoldCastInstruction(), constantFoldFpUnary(), convertToDouble(), llvm::APFixedPoint::convertToFloat(), convertToFloat(), llvm::convertToNonDenormSingle(), emitDebugValueComment(), llvm::ConstantFP::get(), llvm::getAPFloatFromSize(), llvm::SelectionDAG::getConstantFP(), llvm::APFixedPoint::getFromFloatValue(), llvm::SelectionDAG::getNode(), llvm::GCNTTIImpl::instCombineIntrinsic(), llvm::ConstantFP::isExactlyValue(), isExactlyValue(), llvm::ConstantFP::isValueValidForType(), llvm::ConstantFPSDNode::isValueValidForType(), LLVMConstRealGetDouble(), lowerFROUND(), LowerFROUND(), llvm::ARMAsmPrinter::lowerOperand(), llvm::NVPTXFloatMCExpr::printImpl(), llvm::InstCombinerImpl::visitFCmpInst(), llvm::LegalizerHelper::widenScalar(), WriteConstantInternal(), and llvm::X86TargetLowering::X86TargetLowering().
|
inline |
Definition at line 1113 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::AArch64::RM.
Referenced by llvm::ConstantFoldCastInstruction(), llvm::ConstantFoldIntToFloat(), llvm::detail::DoubleAPFloat::convertFromAPInt(), llvm::APFixedPoint::convertToFloat(), llvm::ExecutionEngine::getConstantValue(), llvm::SelectionDAG::getNode(), llvm::LegalizerHelper::lowerFPTOUI(), lowerFROUND(), and lowerFTRUNC_FCEIL_FFLOOR().
|
inline |
Definition at line 1117 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::AArch64::RM.
Referenced by llvm::detail::DoubleAPFloat::convertFromSignExtendedInteger().
Expected< APFloat::opStatus > llvm::APFloat::convertFromString | ( | StringRef | Str, |
roundingMode | RM | ||
) |
Definition at line 4823 of file APFloat.cpp.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::AArch64::RM.
Referenced by APFloat(), and llvm::detail::DoubleAPFloat::convertFromString().
|
inline |
Definition at line 1123 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::AArch64::RM.
Referenced by llvm::detail::DoubleAPFloat::convertFromZeroExtendedInteger().
double llvm::APFloat::convertToDouble | ( | ) | const |
Converts this APFloat to host double value.
Definition at line 4902 of file APFloat.cpp.
References assert(), convert(), llvm::detail::IEEEFloat::convertToDouble(), getSemantics(), llvm::APFloatBase::opInexact, llvm::APFloatBase::rmNearestTiesToEven, and llvm::semIEEEdouble.
Referenced by constantFoldFpUnary(), emitDebugValueComment(), LLVMConstRealGetDouble(), llvm::ARMAsmPrinter::lowerOperand(), and WriteConstantInternal().
float llvm::APFloat::convertToFloat | ( | ) | const |
Converts this APFloat to host float value.
Definition at line 4915 of file APFloat.cpp.
References assert(), convert(), llvm::detail::IEEEFloat::convertToFloat(), getSemantics(), llvm::APFloatBase::opInexact, llvm::APFloatBase::rmNearestTiesToEven, and llvm::semIEEEsingle.
Referenced by llvm::FPMathOperator::getFPAccuracy(), and llvm::SPIRVMCInstLower::lower().
|
inline |
Definition at line 1205 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::AArch64::RM.
APFloat::opStatus llvm::APFloat::convertToInteger | ( | APSInt & | Result, |
roundingMode | RM, | ||
bool * | IsExact | ||
) | const |
Definition at line 4890 of file APFloat.cpp.
References llvm::BitmaskEnumDetail::bitWidth(), convertToInteger(), result, and llvm::sys::fs::status().
|
inline |
Definition at line 1105 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::AArch64::RM.
Referenced by llvm::ConstantFoldCastInstruction(), convertToInteger(), ConvertToSInt(), llvm::BuildVectorSDNode::getConstantFPSplatPow2ToLog2Int(), llvm::ExecutionEngine::getConstantValue(), llvm::APFixedPoint::getFromFloatValue(), and llvm::SelectionDAG::getNode().
Definition at line 1091 of file APFloat.h.
References changeSign(), isNegative(), and RHS.
|
inline |
Definition at line 997 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, RHS, and llvm::AArch64::RM.
Referenced by llvm::ConstantFoldBinaryInstruction(), llvm::detail::DoubleAPFloat::divide(), llvm::ExecutionEngine::getConstantValue(), and llvm::GCNTTIImpl::instCombineIntrinsic().
LLVM_DUMP_METHOD void llvm::APFloat::dump | ( | ) | const |
Definition at line 4879 of file APFloat.cpp.
References llvm::dbgs(), and print().
|
inline |
Definition at line 1024 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, and llvm::AArch64::RM.
Referenced by llvm::detail::DoubleAPFloat::fusedMultiplyAdd(), llvm::SelectionDAG::getNode(), and llvm::detail::DoubleAPFloat::multiply().
|
static |
Returns a float which is bitcasted from an all one value int.
Semantics | - type float semantics |
Definition at line 4868 of file APFloat.cpp.
References llvm::APInt::getAllOnes().
Referenced by llvm::Constant::getAllOnesValue(), and lowerShuffleAsBitMask().
|
inline |
Definition at line 1222 of file APFloat.h.
References llvm::detail::IEEEFloat::getCategory().
Referenced by isInfinity(), isNaN(), and isZero().
|
inline |
Definition at line 1245 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by llvm::detail::DoubleAPFloat::getExactInverse().
|
inlinestatic |
Factory for Positive and Negative Infinity.
Negative | True iff the number should be negative. |
Definition at line 894 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::TargetLowering::expandIS_FPCLASS(), llvm::ConstantFP::getInfinity(), and llvm::SelectionDAG::getNeutralElement().
|
inlinestatic |
Returns the largest finite number in the given semantics.
Negative | - True iff the number should be negative |
Definition at line 934 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::TargetLowering::expandIS_FPCLASS(), llvm::InstCombinerImpl::foldFCmpIntToFPConst(), llvm::SelectionDAG::getNeutralElement(), llvm::isKnownNeverInfinity(), llvm::AMDGPULegalizerInfo::legalizeRsqClampIntrinsic(), and llvm::fuzzerop::makeConstantsWithType().
|
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 905 of file APFloat.h.
References getQNaN().
Referenced by llvm::SelectionDAG::foldConstantFPMath(), and llvm::ConstantFP::getNaN().
|
inlinestatic |
Factory for QNaN values.
Definition at line 916 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by getNaN(), llvm::SelectionDAG::getNeutralElement(), llvm::ConstantFP::getQNaN(), llvm::GCNTTIImpl::instCombineIntrinsic(), and toString().
|
inline |
Definition at line 1223 of file APFloat.h.
Referenced by add(), bitwiseIsEqual(), llvm::MachineIRBuilder::buildFConstant(), llvm::FunctionComparator::cmpAPFloats(), compare(), convert(), convertToDouble(), convertToFloat(), divide(), fusedMultiplyAdd(), llvm::ConstantFP::get(), llvm::GCNTTIImpl::instCombineIntrinsic(), llvm::ConstantFP::isExactlyValue(), isExactlyValue(), isIEEE(), llvm::ConstantFP::isValueValidForType(), mod(), multiply(), llvm::AMDGPUTargetLowering::performRcpCombine(), remainder(), subtract(), llvm::SystemZVectorConstantInfo::SystemZVectorConstantInfo(), 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 944 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 954 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::TargetLowering::getSqrtInputTest(), and llvm::InstCombinerImpl::visitFCmpInst().
|
inlinestatic |
Factory for SNaN values.
Definition at line 924 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by llvm::ConstantFP::getSNaN(), and WriteConstantInternal().
|
inlinestatic |
Factory for Positive and Negative Zero.
Negative | True iff the number should be negative. |
Definition at line 885 of file APFloat.h.
References llvm::APFloatBase::uninitialized.
Referenced by cannotBeOrderedLessThanZeroImpl(), fixFuncEntryCount(), llvm::FlushFPConstant(), llvm::ExecutionEngine::getConstantValue(), llvm::Constant::getNullValue(), llvm::ConstantFP::getZero(), llvm::Type::isIEEE(), llvm::fuzzerop::makeConstantsWithType(), llvm::pdb::Variant::toAPFloat(), and llvm::X86TargetLowering::X86TargetLowering().
|
inline |
Definition at line 1216 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isDenormal().
Referenced by llvm::checkConvertToNonDenormSingle(), llvm::convertToNonDenormSingle(), llvm::FlushFPConstant(), llvm::GCNTTIImpl::instCombineIntrinsic(), llvm::SITargetLowering::isCanonicalized(), isDenormal(), and isNormal().
|
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 1198 of file APFloat.h.
References bitwiseIsEqual(), convert(), getSemantics(), and llvm::APFloatBase::rmNearestTiesToEven.
Referenced by AMDGPURegBankCombinerHelper::matchFPMinMaxToClamp(), and llvm::SelectionDAG::simplifyFPBinop().
|
inline |
Definition at line 1220 of file APFloat.h.
References isInfinity(), and isNaN().
Referenced by isFiniteNonZero(), matchFastFloatClamp(), and llvm::detail::DoubleAPFloat::multiply().
|
inline |
Definition at line 1225 of file APFloat.h.
References isFinite(), and isZero().
Referenced by isNormal().
|
inline |
Definition at line 1231 of file APFloat.h.
References getSemantics().
Referenced by llvm::Type::isIEEE().
|
inline |
Definition at line 1212 of file APFloat.h.
References llvm::APFloatBase::fcInfinity, and getCategory().
Referenced by llvm::GCNTTIImpl::instCombineIntrinsic(), isFinite(), llvm::ConstantFP::isInfinity(), llvm::isMathLibCallNoop(), llvm::SelectionDAG::simplifyFPBinop(), and WriteConstantInternal().
|
inline |
Definition at line 1230 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isInteger().
Referenced by isInteger().
|
inline |
Definition at line 1229 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isLargest().
Referenced by isLargest().
|
inline |
Definition at line 1213 of file APFloat.h.
References llvm::APFloatBase::fcNaN, and getCategory().
Referenced by llvm::GCNTTIImpl::instCombineIntrinsic(), isFinite(), llvm::isMathLibCallNoop(), llvm::ConstantFP::isNaN(), llvm::CombinerHelper::matchCombineFMinMaxNaN(), llvm::SelectionDAG::simplifyFPBinop(), and WriteConstantInternal().
|
inline |
Definition at line 1215 of file APFloat.h.
References llvm::detail::IEEEFloat::isNegative().
Referenced by clearSign(), copySign(), llvm::FlushFPConstant(), llvm::GCNTTIImpl::instCombineIntrinsic(), isConstantCostlierToNegate(), llvm::ConstantFP::isNegative(), isNegZero(), isPosZero(), and WriteConstantInternal().
|
inline |
Definition at line 1227 of file APFloat.h.
References isNegative(), and isZero().
Referenced by llvm::SelectionDAG::simplifyFPBinop().
|
inline |
|
inline |
Definition at line 1219 of file APFloat.h.
References isDenormal(), and isFiniteNonZero().
Referenced by llvm::GCNTTIImpl::instCombineIntrinsic().
|
inline |
Definition at line 1226 of file APFloat.h.
References isNegative(), and isZero().
Referenced by llvm::SelectionDAG::simplifyFPBinop().
|
inline |
Definition at line 1217 of file APFloat.h.
References llvm::detail::IEEEFloat::isSignaling().
Referenced by llvm::GCNTTIImpl::instCombineIntrinsic(), llvm::SITargetLowering::isCanonicalized(), and WriteConstantInternal().
|
inline |
Definition at line 1228 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and isSmallest().
Referenced by isSmallest().
|
inline |
Definition at line 1211 of file APFloat.h.
References llvm::APFloatBase::fcZero, and getCategory().
Referenced by llvm::GCNTTIImpl::instCombineIntrinsic(), isConstantCostlierToNegate(), isFiniteNonZero(), llvm::isMathLibCallNoop(), isNegZero(), isNonZero(), isPosZero(), llvm::ConstantFP::isZero(), llvm::SelectionDAG::simplifyFPBinop(), and llvm::InstCombinerImpl::visitFCmpInst().
Definition at line 1015 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, and RHS.
Referenced by llvm::ConstantFoldBinaryInstruction(), llvm::ExecutionEngine::getConstantValue(), and llvm::detail::DoubleAPFloat::mod().
|
inline |
Definition at line 988 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, RHS, and llvm::AArch64::RM.
Referenced by llvm::ConstantFoldBinaryInstruction(), llvm::APFixedPoint::convertToFloat(), llvm::ExecutionEngine::getConstantValue(), llvm::APFixedPoint::getFromFloatValue(), and llvm::detail::DoubleAPFloat::multiply().
|
inline |
Definition at line 880 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and needsCleanup().
Referenced by needsCleanup().
|
inline |
Definition at line 1043 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by lowerFROUND(), LowerFROUND(), and llvm::detail::DoubleAPFloat::next().
Definition at line 1150 of file APFloat.h.
References llvm::APFloatBase::cmpEqual, compare(), and RHS.
Multiply two APFloats, rounding ties to the nearest even.
No error checking.
Definition at line 1072 of file APFloat.h.
References RHS, and llvm::APFloatBase::rmNearestTiesToEven.
Add two APFloats, rounding ties to the nearest even.
No error checking.
Definition at line 1056 of file APFloat.h.
References RHS, and llvm::APFloatBase::rmNearestTiesToEven.
|
inline |
Subtract two APFloats, rounding ties to the nearest even.
No error checking.
Definition at line 1064 of file APFloat.h.
References RHS, and llvm::APFloatBase::rmNearestTiesToEven.
Divide the first APFloat by the second, rounding ties to the nearest even.
No error checking.
Definition at line 1080 of file APFloat.h.
References RHS, and llvm::APFloatBase::rmNearestTiesToEven.
Definition at line 1152 of file APFloat.h.
References llvm::APFloatBase::cmpLessThan, compare(), and RHS.
Definition at line 1160 of file APFloat.h.
References llvm::APFloatBase::cmpEqual, llvm::APFloatBase::cmpLessThan, compare(), and RHS.
Definition at line 1148 of file APFloat.h.
References llvm::APFloatBase::cmpEqual, compare(), and RHS.
Definition at line 1156 of file APFloat.h.
References llvm::APFloatBase::cmpGreaterThan, compare(), and RHS.
Definition at line 1165 of file APFloat.h.
References llvm::APFloatBase::cmpEqual, llvm::APFloatBase::cmpGreaterThan, compare(), and RHS.
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 4882 of file APFloat.cpp.
References llvm::FoldingSetNodeID::Add(), and bitcastToAPInt().
Definition at line 1006 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, and RHS.
Referenced by llvm::detail::DoubleAPFloat::remainder().
|
inline |
Definition at line 1037 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS, and llvm::AArch64::RM.
Referenced by llvm::InstCombinerImpl::foldFCmpIntToFPConst(), llvm::APFixedPoint::getFromFloatValue(), llvm::SelectionDAG::getNode(), and llvm::detail::DoubleAPFloat::roundToIntegral().
|
inline |
Definition at line 979 of file APFloat.h.
References assert(), getSemantics(), llvm_unreachable, RHS, and llvm::AArch64::RM.
Referenced by llvm::ConstantFoldBinaryInstruction(), and llvm::ExecutionEngine::getConstantValue().
|
inline |
Definition at line 1236 of file APFloat.h.
References APFLOAT_DISPATCH_ON_SEMANTICS.
Referenced by emitGlobalConstantFP(), print(), printConstant(), and WriteConstantInternal().
|
friend |
See friend declarations above.
These additional declarations are required in order to compile LLVM with IBM xlC compiler.
Definition at line 4828 of file APFloat.cpp.
|
friend |
friend llvm::APFloat::DoubleAPFloat |
friend llvm::APFloat::IEEEFloat |