Enum cranelift_codegen_shared::condcodes::FloatCC [−][src]
pub enum FloatCC { Ordered, Unordered, Equal, NotEqual, OrderedNotEqual, UnorderedOrEqual, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual, UnorderedOrLessThan, UnorderedOrLessThanOrEqual, UnorderedOrGreaterThan, UnorderedOrGreaterThanOrEqual, }
Condition code for comparing floating point numbers.
This condition code is used by the fcmp
instruction to compare floating point values. Two
IEEE floating point values relate in exactly one of four ways:
UN
- unordered when either value is NaN.EQ
- equal numerical value.LT
-x
is less thany
.GT
-x
is greater thany
.
Note that 0.0
and -0.0
relate as EQ
because they both represent the number 0.
The condition codes described here are used to produce a single boolean value from the
comparison. The 14 condition codes here cover every possible combination of the relation above
except the impossible !UN & !EQ & !LT & !GT
and the always true UN | EQ | LT | GT
.
Variants
EQ | LT | GT
UN
EQ
The C ‘!=’ operator is the inverse of ‘==’: NotEqual
.
UN | LT | GT
LT | GT
UN | EQ
LT
LT | EQ
GT
GT | EQ
UN | LT
UN | LT | EQ
UN | GT
UN | GT | EQ
Trait Implementations
impl Clone for FloatCC
[src][+]
impl CondCode for FloatCC
[src][+]
impl Copy for FloatCC
[src]
impl Debug for FloatCC
[src][+]
impl Display for FloatCC
[src][+]
impl Eq for FloatCC
[src]
impl FromStr for FloatCC
[src][+]
impl Hash for FloatCC
[src][+]
impl PartialEq<FloatCC> for FloatCC
[src][+]
impl StructuralEq for FloatCC
[src]
impl StructuralPartialEq for FloatCC
[src]
Auto Trait Implementations
impl RefUnwindSafe for FloatCC
impl Send for FloatCC
impl Sync for FloatCC
impl Unpin for FloatCC
impl UnwindSafe for FloatCC
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T> ToString for T where
T: Display + ?Sized,
[src][+]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,