[][src]Enum x86_64_xsave::RoundingControl

#[repr(u8)]
pub enum RoundingControl { RoundToNearest, RoundDownTowardNegativeInfinity, RoundUpTowardPositiveInfinity, RoundTowardZero, }

In the Intel 64 and IA-32 architectures, the rounding mode is controlled by a 2-bit rounding-control (RC) field.

Although these two RC fields perform the same function, they control rounding for different execution environments within the processor. The RC field in the x87 FPU control register controls rounding for computations performed with the x87 FPU instructions; the RC field in the MXCSR register controls rounding for SIMD floating-point computations performed with the SSE/SSE2 instructions.

Variants

RoundToNearest

Round to nearest (even).

Rounded result is the closest to the infinitely precise result.

If two values are equally close, the result is the even value (that is, the one with the least-significant bit of zero). Default.

RoundDownTowardNegativeInfinity

Round down (toward −∞).

Rounded result is closest to but no greater than the infinitely precise result.

RoundUpTowardPositiveInfinity

Round up (toward +∞)

Rounded result is closest to but no less than the infinitely precise result.

RoundTowardZero

Round toward zero (Truncate).

Rounded result is closest to but no greater in absolute value than the infinitely precise result.

Trait Implementations

impl PartialOrd<RoundingControl> for RoundingControl[src]

#[must_use]
fn lt(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests less than (for self and other) and is used by the < operator. Read more

#[must_use]
fn le(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

#[must_use]
fn gt(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests greater than (for self and other) and is used by the > operator. Read more

#[must_use]
fn ge(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Copy for RoundingControl[src]

impl PartialEq<RoundingControl> for RoundingControl[src]

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests for !=.

impl Clone for RoundingControl[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Ord for RoundingControl[src]

fn max(self, other: Self) -> Self
1.21.0
[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self
1.21.0
[src]

Compares and returns the minimum of two values. Read more

impl Eq for RoundingControl[src]

impl Debug for RoundingControl[src]

impl Hash for RoundingControl[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]