[][src]Struct x86_64_xsave::fxsave::domain::X87FloatingPointUnitStatusWord

#[repr(transparent)]
pub struct X87FloatingPointUnitStatusWord(_);

See Figure 8-6 in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1, for the layout of the x87 FPU Control Word.

Methods

impl X87FloatingPointUnitStatusWord[src]

pub fn save_after_raising_any_pending_unmasked_floating_point_exceptions(
) -> Self
[src]

Reads the control word after raising any pending unmasked floating point exceptions.

Uses the non-AX register form of the FSTSW instruction (ie always writes to memory); see https://github.com/HJLebbink/asm-dude/wiki/FSTSW_FNSTSW.

pub fn save() -> Self[src]

Reads the control word.

Uses the non-AX register form of the FNSTSW instruction (ie always writes to memory); see https://github.com/HJLebbink/asm-dude/wiki/FSTSW_FNSTSW.

pub fn exception_flag_invalid_operation(self) -> bool[src]

Invalid Operation exception flag, IE.

One of the 6 exception flags that can be controlled by the status word.

When set (true), the corresponding x87 FPU floating-point exception occurred.

pub fn exception_flag_denormalized_operand(self) -> bool[src]

Denormalized Operand exception flag, DE.

One of the 6 exception flags that can be controlled by the status word.

When set (true), the corresponding x87 FPU floating-point exception occurred.

pub fn exception_flag_zero_divide(self) -> bool[src]

Zero Divide exception flag, ZE.

One of the 6 exception flags that can be controlled by the status word.

When set (true), the corresponding x87 FPU floating-point exception occurred.

pub fn exception_flag_overflow(self) -> bool[src]

Overflow exception flag, OE.

One of the 6 exception flags that can be controlled by the status word.

When set (true), the corresponding x87 FPU floating-point exception occurred.

pub fn exception_flag_underflow(self) -> bool[src]

Underflow exception flag, UE.

One of the 6 exception flags that can be controlled by the status word.

When set (true), the corresponding x87 FPU floating-point exception occurred.

pub fn exception_flag_precision(self) -> bool[src]

Precision exception flag, EE.

One of the 6 exception flags that can be controlled by the status word.

When set (true), the corresponding x87 FPU floating-point exception occurred.

pub fn stack_fault(self) -> bool[src]

Stack Fault exception flag, SF.

The stack fault flag indicates that stack overflow or stack underflow has occurred with data in the x87 FPU data register stack. The x87 FPU explicitly sets the SF flag when it detects a stack overflow or underflow condition, but it does not explicitly clear the flag when it detects an invalid-arithmetic-operand condition. When this flag is set, the condition code flag C1 indicates the nature of the fault: overflow (C1 = 1) and underflow (C1 = 0).

The SF flag is a “sticky” flag, meaning that after it is set, the processor does not clear it until it is explicitly instructed to do so (for example, by an FINIT/FNINIT, FCLEX/FNCLEX, or FSAVE/FNSAVE instruction).

pub fn exception_summary_status(self) -> bool[src]

Exception Summary Status, ES.

When set (true), a x87 FPU floating-point exception occurred.

pub fn condition_code_c0(self) -> bool[src]

Condition Code C0.

See Table 8-1 (Condition Code Interpretation) in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1.

pub fn condition_code_c1(self) -> bool[src]

Condition Code C1.

See Table 8-1 (Condition Code Interpretation) in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1.

pub fn condition_code_c2(self) -> bool[src]

Condition Code C2.

See Table 8-1 (Condition Code Interpretation) in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1.

pub fn condition_code_c3(self) -> bool[src]

Condition Code C3.

See Table 8-1 (Condition Code Interpretation) in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 1.

pub fn top(self) -> u8[src]

Top of Stack Pointer, TOP.

A pointer to the x87 FPU data register that is currently at the top of the x87 FPU register stack.

This pointer is a binary value from 0 to 7 (A 3-bit (u3) value).

pub fn fpu_busy(self) -> bool[src]

FPU Busy, B, or B-bit.

This is for 8087 compatibility only. It reflects the contents of the ES (self.exception_summary_status()) flag.

Trait Implementations

impl Clone for X87FloatingPointUnitStatusWord[src]

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

Performs copy-assignment from source. Read more

impl PartialEq<X87FloatingPointUnitStatusWord> for X87FloatingPointUnitStatusWord[src]

impl PartialOrd<X87FloatingPointUnitStatusWord> for X87FloatingPointUnitStatusWord[src]

impl Eq for X87FloatingPointUnitStatusWord[src]

impl Ord for X87FloatingPointUnitStatusWord[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 Copy for X87FloatingPointUnitStatusWord[src]

impl Default for X87FloatingPointUnitStatusWord[src]

impl Debug for X87FloatingPointUnitStatusWord[src]

impl Hash for X87FloatingPointUnitStatusWord[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> From for T[src]

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, 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> Any for T where
    T: 'static + ?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.