Home | History | Annotate | Download | only in ADT

Lines Matching refs:APFloat

1 //== llvm/Support/APFloat.h - Arbitrary Precision Floating Point -*- C++ -*-==//
125 class APFloat {
182 APFloat(const fltSemantics &); // Default construct to 0.0
183 APFloat(const fltSemantics &, StringRef);
184 APFloat(const fltSemantics &, integerPart);
185 APFloat(const fltSemantics &, fltCategory, bool negative);
186 APFloat(const fltSemantics &, uninitializedTag);
187 APFloat(const fltSemantics &, const APInt &);
188 explicit APFloat(double d);
189 explicit APFloat(float f);
190 APFloat(const APFloat &);
191 ~APFloat();
194 static APFloat getZero(const fltSemantics &Sem, bool Negative = false) {
195 return APFloat(Sem, fcZero, Negative);
197 static APFloat getInf(const fltSemantics &Sem, bool Negative = false) {
198 return APFloat(Sem, fcInfinity, Negative);
206 static APFloat getNaN(const fltSemantics &Sem, bool Negative = false,
217 static APFloat getQNaN(const fltSemantics &Sem,
224 static APFloat getSNaN(const fltSemantics &Sem,
234 static APFloat getLargest(const fltSemantics &Sem, bool Negative = false);
241 static APFloat getSmallest(const fltSemantics &Sem, bool Negative = false);
247 static APFloat getSmallestNormalized(const fltSemantics &Sem,
255 static APFloat getAllOnesValue(unsigned BitWidth, bool isIEEE = false);
257 /// Profile - Used to insert APFloat objects, or objects that contain
258 /// APFloat objects, into FoldingSets.
265 static APFloat ReadVal(Deserializer& D);
268 opStatus add(const APFloat &, roundingMode);
269 opStatus subtract(const APFloat &, roundingMode);
270 opStatus multiply(const APFloat &, roundingMode);
271 opStatus divide(const APFloat &, roundingMode);
273 opStatus remainder(const APFloat &);
275 opStatus mod(const APFloat &, roundingMode);
276 opStatus fusedMultiplyAdd(const APFloat &, const APFloat &, roundingMode);
282 void copySign(const APFloat &);
303 bool operator==(const APFloat &) const LLVM_DELETED_FUNCTION;
307 cmpResult compare(const APFloat &) const;
310 bool bitwiseIsEqual(const APFloat &) const;
332 APFloat& operator=(const APFloat &);
334 /// \brief Overload to compute a hash code for an APFloat value.
343 friend hash_code hash_value(const APFloat &Arg);
371 bool getExactInverse(APFloat *inv) const;
381 integerPart addSignificand(const APFloat &);
382 integerPart subtractSignificand(const APFloat &, integerPart);
383 lostFraction addOrSubtractSignificand(const APFloat &, bool subtract);
384 lostFraction multiplySignificand(const APFloat &, const APFloat *);
385 lostFraction divideSignificand(const APFloat &);
395 opStatus addOrSubtractSpecials(const APFloat &, bool subtract);
396 APFloat &);
397 opStatus multiplySpecials(const APFloat &);
398 opStatus modSpecials(const APFloat &);
401 static APFloat makeNaN(const fltSemantics &Sem, bool SNaN, bool Negative,
405 opStatus addOrSubtract(const APFloat &, roundingMode, bool subtract);
406 cmpResult compareAbsoluteValue(const APFloat &) const;
434 void assign(const APFloat &);
435 void copySignificand(const APFloat &);
463 hash_code hash_value(const APFloat &Arg);