LLVM  16.0.0git
Classes | Namespaces | Macros | Enumerations | Functions
APFloat.h File Reference
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/FloatingPointMode.h"
#include "llvm/Support/ErrorHandling.h"
#include <memory>
Include dependency graph for APFloat.h:

Go to the source code of this file.


class  llvm::Expected< T >
 Tagged union holding either a T or a Error. More...
class  llvm::SmallVectorImpl< T >
 This class consists of common code factored out of the SmallVector class to reduce code duplication based on the SmallVector 'N' template parameter. More...
struct  llvm::APFloatBase
 A self-contained host- and target-independent arbitrary-precision floating-point software implementation. More...
class  llvm::detail::IEEEFloat
class  llvm::detail::DoubleAPFloat
class  llvm::APFloat


 This is an optimization pass for GlobalISel generic memory operations.




enum  llvm::lostFraction { llvm::lfExactlyZero, llvm::lfLessThanHalf, llvm::lfExactlyHalf, llvm::lfMoreThanHalf }
 Enum that represents what fraction of the LSB truncated bits of an fp number represent. More...


hash_code llvm::detail::hash_value (const IEEEFloat &Arg)
int llvm::detail::ilogb (const IEEEFloat &Arg)
IEEEFloat llvm::detail::scalbn (IEEEFloat X, int Exp, IEEEFloat::roundingMode)
IEEEFloat llvm::detail::frexp (const IEEEFloat &Val, int &Exp, IEEEFloat::roundingMode RM)
hash_code llvm::detail::hash_value (const DoubleAPFloat &Arg)
hash_code llvm::hash_value (const APFloat &Arg)
 See friend declarations above. More...
APFloat llvm::scalbn (APFloat X, int Exp, APFloat::roundingMode RM)
APFloat llvm::frexp (const APFloat &X, int &Exp, APFloat::roundingMode RM)
 Equivalent of C standard library function. More...
APFloat llvm::abs (APFloat X)
 Returns the absolute value of the argument. More...
APFloat llvm::neg (APFloat X)
 Returns the negated value of the argument. More...
LLVM_READONLY APFloat llvm::minnum (const APFloat &A, const APFloat &B)
 Implements IEEE minNum semantics. More...
LLVM_READONLY APFloat llvm::maxnum (const APFloat &A, const APFloat &B)
 Implements IEEE maxNum semantics. More...
LLVM_READONLY APFloat llvm::minimum (const APFloat &A, const APFloat &B)
 Implements IEEE 754-2018 minimum semantics. More...
LLVM_READONLY APFloat llvm::maximum (const APFloat &A, const APFloat &B)
 Implements IEEE 754-2018 maximum semantics. More...

Detailed Description

This file declares a class to represent arbitrary precision floating point values and provide a variety of arithmetic operations on them.

Definition in file APFloat.h.

Macro Definition Documentation


do { \
if (usesLayout<IEEEFloat>(getSemantics())) \
if (usesLayout<DoubleAPFloat>(getSemantics())) \
return U.Double.METHOD_CALL; \
llvm_unreachable("Unexpected semantics"); \
} while (false)

Definition at line 24 of file APFloat.h.