[][src]Struct x86_64_xsave::state_components::StateComponentSizing

pub struct StateComponentSizing {
    pub uncompacted_byte_offset: usize,
    pub size: usize,
    pub supported_in: SupportedIn,
    pub requires_alignment_if_compacted: bool,
}

This structure is not valid for state components 0 (x87 state) or 1 (SSE state).

Fields

uncompacted_byte_offset: usize

Byte offset from base address of XSaveArea if uncompacted.

size: usize

Size of state component in bytes; never zero if obtained via StateComponent.sizing(), SizingQueryableUserStateComponent.sizing(), SupervisorStateComponent.sizing() or StateComponentSizing::sizing().

supported_in: SupportedIn

Which register supports this state component?

requires_alignment_if_compacted: bool

If compacted, does this state component require alignment to 64 bytes?

  • If true, this extended state component is located on the next 64-byte boundary following the preceding state component.
  • If false, it is located immediately following the preceding state component.

Methods

impl StateComponentSizing[src]

pub fn sizing(bit: u8) -> Option<StateComponentSizing>[src]

Query size using CPUID of the state component for bit.

bit must be between 2 and 62 inclusive.

Trait Implementations

impl Clone for StateComponentSizing[src]

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

Performs copy-assignment from source. Read more

impl PartialEq<StateComponentSizing> for StateComponentSizing[src]

impl PartialOrd<StateComponentSizing> for StateComponentSizing[src]

impl Eq for StateComponentSizing[src]

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

impl Debug for StateComponentSizing[src]

impl Hash for StateComponentSizing[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.