|
clang 22.0.0git
|
If a Floating is constructed from Memory, it DOES NOT OWN THAT MEMORY. More...
#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/AST/ByteCode/Floating.h"
Public Member Functions | |
| Floating ()=default | |
| Floating (llvm::APFloatBase::Semantics Semantics) | |
| Floating (const APFloat &F) | |
| Floating (uint64_t *Memory, llvm::APFloatBase::Semantics Semantics) | |
| APFloat | getAPFloat () const |
| bool | operator< (Floating RHS) const |
| bool | operator> (Floating RHS) const |
| bool | operator<= (Floating RHS) const |
| bool | operator>= (Floating RHS) const |
| APFloat::opStatus | convertToInteger (APSInt &Result) const |
| void | toSemantics (const llvm::fltSemantics *Sem, llvm::RoundingMode RM, Floating *Result) const |
| APSInt | toAPSInt (unsigned NumBits=0) const |
| APValue | toAPValue (const ASTContext &) const |
| void | print (llvm::raw_ostream &OS) const |
| std::string | toDiagnosticString (const ASTContext &Ctx) const |
| unsigned | bitWidth () const |
| unsigned | numWords () const |
| bool | singleWord () const |
| const llvm::fltSemantics & | getSemantics () const |
| void | copy (const APFloat &F) |
| void | take (uint64_t *NewMemory) |
| bool | isSigned () const |
| bool | isNegative () const |
| bool | isZero () const |
| bool | isNonZero () const |
| bool | isMin () const |
| bool | isMinusOne () const |
| bool | isNan () const |
| bool | isSignaling () const |
| bool | isInf () const |
| bool | isFinite () const |
| bool | isNormal () const |
| bool | isDenormal () const |
| llvm::FPClassTest | classify () const |
| APFloat::fltCategory | getCategory () const |
| ComparisonCategoryResult | compare (const Floating &RHS) const |
| void | bitcastToMemory (std::byte *Buff) const |
| size_t | bytesToSerialize () const |
| void | serialize (std::byte *Buff) const |
Static Public Member Functions | |
| static bool | singleWord (const llvm::fltSemantics &Sem) |
| static APFloat::opStatus | fromIntegral (APSInt Val, const llvm::fltSemantics &Sem, llvm::RoundingMode RM, Floating *Result) |
| static void | bitcastFromMemory (const std::byte *Buff, const llvm::fltSemantics &Sem, Floating *Result) |
| static llvm::APFloatBase::Semantics | deserializeSemantics (const std::byte *Buff) |
| static void | deserialize (const std::byte *Buff, Floating *Result) |
| static APFloat::opStatus | add (const Floating &A, const Floating &B, llvm::RoundingMode RM, Floating *R) |
| static APFloat::opStatus | increment (const Floating &A, llvm::RoundingMode RM, Floating *R) |
| static APFloat::opStatus | sub (const Floating &A, const Floating &B, llvm::RoundingMode RM, Floating *R) |
| static APFloat::opStatus | decrement (const Floating &A, llvm::RoundingMode RM, Floating *R) |
| static APFloat::opStatus | mul (const Floating &A, const Floating &B, llvm::RoundingMode RM, Floating *R) |
| static APFloat::opStatus | div (const Floating &A, const Floating &B, llvm::RoundingMode RM, Floating *R) |
| static bool | neg (const Floating &A, Floating *R) |
If a Floating is constructed from Memory, it DOES NOT OWN THAT MEMORY.
It will NOT copy the memory (unless, of course, copy() is called) and it won't alllocate anything. The allocation should happen via InterpState or Program.
Definition at line 35 of file Floating.h.
|
default |
Referenced by add(), bitcastFromMemory(), compare(), decrement(), deserialize(), div(), fromIntegral(), increment(), mul(), neg(), operator<(), operator<=(), operator>(), operator>=(), sub(), and toSemantics().
|
inline |
Definition at line 54 of file Floating.h.
References Val.
|
inline |
Definition at line 56 of file Floating.h.
References copy().
|
inline |
Definition at line 61 of file Floating.h.
References Memory.
|
inlinestatic |
Definition at line 236 of file Floating.h.
References copy(), and Floating().
Referenced by clang::interp::Addf().
|
inlinestatic |
Definition at line 182 of file Floating.h.
References Floating(), and clang::Result.
Referenced by clang::interp::BitCastPrim().
|
inline |
Definition at line 191 of file Floating.h.
References bitWidth().
Referenced by clang::interp::readPointerToBuffer().
|
inline |
Definition at line 103 of file Floating.h.
References getSemantics().
Referenced by bitcastToMemory(), and numWords().
|
inline |
Definition at line 197 of file Floating.h.
References numWords().
|
inline |
Definition at line 154 of file Floating.h.
Referenced by clang::interp::interp__builtin_isfpclass().
|
inline |
Definition at line 157 of file Floating.h.
References clang::Equal, Floating(), clang::Greater, clang::Less, and clang::Unordered.
Referenced by clang::interp::interp_floating_comparison().
|
inline |
Definition at line 71 of file Floating.h.
References clang::Result.
Referenced by clang::interp::CastFloatingIntegral(), clang::interp::CastFloatingIntegralAP(), and clang::interp::CastFloatingIntegralAPS().
|
inline |
Definition at line 123 of file Floating.h.
References Memory, numWords(), singleWord(), and Val.
Referenced by clang::interp::abs(), add(), decrement(), div(), clang::interp::Divc(), Floating(), increment(), mul(), clang::interp::Mulc(), neg(), and sub().
|
inlinestatic |
Definition at line 266 of file Floating.h.
References copy(), Floating(), and getSemantics().
Referenced by clang::interp::IncDecFloatHelper().
|
inlinestatic |
Definition at line 216 of file Floating.h.
References ALLOCATE_ALL, Floating(), and clang::Result.
Referenced by printArg< Floating >(), and clang::interp::ReadArg< Floating >().
|
inlinestatic |
Definition at line 212 of file Floating.h.
Referenced by printArg< Floating >(), and clang::interp::ReadArg< Floating >().
|
inlinestatic |
Definition at line 287 of file Floating.h.
References copy(), and Floating().
Referenced by clang::interp::Divf().
|
inlinestatic |
Definition at line 172 of file Floating.h.
References Floating(), clang::Result, and Val.
Referenced by clang::interp::CastIntegralFloating().
|
inline |
Definition at line 64 of file Floating.h.
Referenced by clang::interp::CastFloatingIntegral(), clang::interp::CastFloatingIntegralAP(), clang::interp::CastFloatingIntegralAPS(), clang::interp::ConstFloat(), clang::interp::interp__builtin_copysign(), clang::interp::interp__builtin_elementwise_triop_fp(), clang::interp::interp__builtin_fmax(), clang::interp::interp__builtin_fmin(), clang::interp::interp__builtin_isinf(), clang::interp::readPointerToBuffer(), and clang::interp::Pointer::toRValue().
|
inline |
Definition at line 155 of file Floating.h.
Referenced by clang::interp::interp__builtin_fpclassify().
|
inline |
Definition at line 119 of file Floating.h.
Referenced by bitWidth(), clang::interp::ConstFloat(), decrement(), and increment().
|
inlinestatic |
Definition at line 246 of file Floating.h.
References copy(), Floating(), and getSemantics().
Referenced by clang::interp::IncDecFloatHelper().
|
inline |
Definition at line 153 of file Floating.h.
Referenced by clang::interp::interp__builtin_fpclassify(), and clang::interp::interp__builtin_issubnormal().
|
inline |
Definition at line 151 of file Floating.h.
Referenced by clang::interp::CastFloatingIntegralAP(), clang::interp::CastFloatingIntegralAPS(), and clang::interp::interp__builtin_isfinite().
|
inline |
Definition at line 150 of file Floating.h.
|
inline |
Definition at line 146 of file Floating.h.
|
inline |
Definition at line 147 of file Floating.h.
|
inline |
Definition at line 148 of file Floating.h.
Referenced by clang::interp::interp__builtin_isnan().
|
inline |
Definition at line 143 of file Floating.h.
Referenced by clang::interp::interp__builtin_signbit().
|
inline |
Definition at line 145 of file Floating.h.
Referenced by clang::interp::CastFloatingIntegral().
|
inline |
Definition at line 152 of file Floating.h.
Referenced by clang::interp::interp__builtin_isnormal().
|
inline |
Definition at line 149 of file Floating.h.
Referenced by clang::interp::interp__builtin_issignaling().
|
inline |
Definition at line 142 of file Floating.h.
|
inline |
Definition at line 144 of file Floating.h.
Referenced by clang::interp::interp__builtin_iszero().
|
inlinestatic |
Definition at line 276 of file Floating.h.
References copy(), and Floating().
Referenced by clang::interp::Mulf().
Definition at line 297 of file Floating.h.
References copy(), and Floating().
|
inline |
Definition at line 106 of file Floating.h.
References bitWidth().
Referenced by bytesToSerialize(), copy(), serialize(), singleWord(), and take().
Definition at line 66 of file Floating.h.
References Floating().
Definition at line 68 of file Floating.h.
References Floating().
Definition at line 67 of file Floating.h.
References Floating().
Definition at line 69 of file Floating.h.
References Floating().
|
inline |
Definition at line 90 of file Floating.h.
Referenced by clang::interp::operator<<(), and toDiagnosticString().
|
inline |
Definition at line 201 of file Floating.h.
References Memory, numWords(), singleWord(), and Val.
|
inline |
Definition at line 107 of file Floating.h.
References numWords().
Referenced by clang::interp::InterpState::allocFloat(), copy(), serialize(), and take().
|
inlinestatic |
Definition at line 113 of file Floating.h.
|
inlinestatic |
Definition at line 256 of file Floating.h.
References copy(), and Floating().
Referenced by clang::interp::Subf().
|
inline |
Definition at line 133 of file Floating.h.
References Memory, numWords(), and singleWord().
Definition at line 86 of file Floating.h.
|
inline |
Definition at line 89 of file Floating.h.
References clang::APValue.
|
inline |
Definition at line 96 of file Floating.h.
References print().
|
inline |
Definition at line 77 of file Floating.h.
References clang::Copy, Floating(), and clang::Result.
Referenced by clang::interp::CastFP().
| uint64_t* clang::interp::Floating::Memory |
Definition at line 39 of file Floating.h.
Referenced by copy(), Floating(), serialize(), and take().
| uint64_t clang::interp::Floating::Val = 0 |
Definition at line 38 of file Floating.h.
Referenced by copy(), Floating(), fromIntegral(), and serialize().