Tracks which floating‐point classes a value may belong to.
Synopsis
Declared in <llvm/Support/KnownFPClass.h>
struct KnownFPClass;
Enums
Name |
Description |
Kind of IEEE min/max intrinsic without depending on IR. |
Member Functions
Name |
Description |
|
Constructors |
Return true if it's know this can never be a negative value or a logical 0. |
|
Return true if the value is NaN or never ordered greater than ‐0.0. |
|
Return true if it's known this can never be a positive value or a logical 0. |
|
Return true if we can prove that the analyzed floating‐point value is either NaN or never less than ‐0.0. |
|
Copy the sign of |
|
Replace this with the absolute value, forcing a non‐negative sign. |
|
Negate this value in place, flipping known classes and the sign bit. |
|
Return the intersection of this and |
|
Return true if every possible class is covered by |
|
Return true if it's known this must always be a nan. |
|
Return true if it's known this can never be one of the mask entries. |
|
Return true if it's known this can never be an infinity or nan |
|
Return true if it's known this can never be an infinity. |
|
Return true if it's known this can never be interpreted as a negative zero. |
|
Return true if it's known this can never be interpreted as a positive zero. |
|
Return true if it's known this can never be interpreted as a zero. |
|
Return true if it's known this can never be a nan. |
|
Return true if it's known this can never be ‐infinity. |
|
Return true if it's known this can never be a negative subnormal |
|
Return true if it's known this can never be a negative zero. This means a literal ‐0 and does not include denormal inputs implicitly treated as ‐0. |
|
Return true if it's known this can never be +infinity. |
|
Return true if it's known this can never be a positive subnormal |
|
Return true if it's known this can never be a literal positive zero. |
|
Return true if it's known this can never be a subnormal |
|
Return true if it's known this can never be a zero. This means a literal [+‐]0, and does not include denormal inputs implicitly treated as [+‐]0. |
|
Return true if nothing is known about the class or sign bit. |
|
Rule out the floating‐point classes in |
|
Merge |
|
Report known classes for a potentially canonicalizing operation on |
|
Propagate knowledge from a source that could be a denormal or zero. |
|
|
|
|
|
Propagate sign knowledge for operations whose result sign is the xor of the operand signs. |
|
Reset all known‐class and sign information to unknown. |
|
Return true if the sign bit must be 0, ignoring the sign of nans. |
|
Assume the sign bit is one. |
|
Assume the sign bit is zero. |
|
Report known bits for a float with provided semantics. |
|
Return the union of this and |
|
Return true if this and |
Static Member Functions
Name |
Description |
Report known values for acos. |
|
Report known values for asin. |
|
Report known values for atan. |
|
Report known values for atan2. |
|
Report known values for a bitcast into a float with provided semantics. |
|
Apply the canonicalize intrinsic to this value. |
|
Return |
|
Report known values for cos. |
|
Report known values for cosh. |
|
Report known values for exp, exp2 and exp10. |
|
Return the absolute value of |
|
Report known values for fadd. |
|
Report known values for fadd x, x. |
|
Report known values for fdiv. |
|
Report known values for fdiv x, x. |
|
Report known values for fma. |
|
Report known values for fma of a squared value plus an addend. |
|
|
|
Return the floating‐point negation of |
|
Propagate known class for fpext. |
|
Propagate known class for fptrunc. |
|
Report known values for frem. |
|
Report known values for frem x, x. |
|
Propagate known class for mantissa component of frexp. |
|
Report known values for fsub. |
|
|
|
Propagate known class for log/log2/log10. |
|
Report known classes for a min/max‐like operation on |
|
Propagate known class for pow. |
|
Propagate known class for powi. |
|
Propagate known class for rounding intrinsics. |
|
Report known values for sin. |
|
Report known values for sinh. |
|
Propagate known class for sqrt. |
|
Report known values for squaring a floating‐point value. |
|
Report known values for tan. |
|
Report known values for tanh. |
Data Members
Name |
Description |
Floating‐point classes the value could be one of. |
|
std::nullopt if the sign bit is unknown, true if the sign bit is definitely set or false if the sign bit is definitely unset. |
Static Data Members
Name |
Description |
Mask of classes that are ordered greater than zero. |
|
Mask of classes that are ordered less than zero. |
Non-Member Functions
Name |
Description |
Adjust |
|
Wrapper to account for known fast math flags at the use instruction. |
|
Determine known floating‐point classes for |
|
Wrapper to account for known fast math flags at the use instruction. |
|
Determine which floating‐point classes are valid for |
|
Determine known floating‐point classes for |
|
Return the union of known‐class information from |
|
Return the union of known‐class information from |
Created with MrDocs