pub struct Ia32FeatureControl(/* private fields */);Expand description
IA32_FEATURE_CONTROL MSR (0x3A) layout.
Implementations§
Source§impl Ia32FeatureControl
impl Ia32FeatureControl
Sourcepub const fn locked(&self) -> bool
pub const fn locked(&self) -> bool
Lock bit. Once set, further writes to IA32_FEATURE_CONTROL are ignored until the next reset.
Bits: 0..1
Sourcepub const fn with_locked_checked(self, value: bool) -> Result<Self, ()>
pub const fn with_locked_checked(self, value: bool) -> Result<Self, ()>
Lock bit. Once set, further writes to IA32_FEATURE_CONTROL are ignored until the next reset.
Bits: 0..1
Sourcepub const fn with_locked(self, value: bool) -> Self
pub const fn with_locked(self, value: bool) -> Self
Lock bit. Once set, further writes to IA32_FEATURE_CONTROL are ignored until the next reset.
Bits: 0..1
Sourcepub const fn set_locked(&mut self, value: bool)
pub const fn set_locked(&mut self, value: bool)
Lock bit. Once set, further writes to IA32_FEATURE_CONTROL are ignored until the next reset.
Bits: 0..1
Sourcepub const fn set_locked_checked(&mut self, value: bool) -> Result<(), ()>
pub const fn set_locked_checked(&mut self, value: bool) -> Result<(), ()>
Lock bit. Once set, further writes to IA32_FEATURE_CONTROL are ignored until the next reset.
Bits: 0..1
Sourcepub const fn vmx_enabled_inside_smx(&self) -> bool
pub const fn vmx_enabled_inside_smx(&self) -> bool
Enable VMX inside SMX operation.
Bits: 1..2
Sourcepub const fn with_vmx_enabled_inside_smx_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_vmx_enabled_inside_smx_checked( self, value: bool, ) -> Result<Self, ()>
Enable VMX inside SMX operation.
Bits: 1..2
Sourcepub const fn with_vmx_enabled_inside_smx(self, value: bool) -> Self
pub const fn with_vmx_enabled_inside_smx(self, value: bool) -> Self
Enable VMX inside SMX operation.
Bits: 1..2
Sourcepub const fn set_vmx_enabled_inside_smx(&mut self, value: bool)
pub const fn set_vmx_enabled_inside_smx(&mut self, value: bool)
Enable VMX inside SMX operation.
Bits: 1..2
Sourcepub const fn set_vmx_enabled_inside_smx_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_vmx_enabled_inside_smx_checked( &mut self, value: bool, ) -> Result<(), ()>
Enable VMX inside SMX operation.
Bits: 1..2
Sourcepub const fn vmx_enabled_outside_smx(&self) -> bool
pub const fn vmx_enabled_outside_smx(&self) -> bool
Enable VMX outside SMX operation.
Bits: 2..3
Sourcepub const fn with_vmx_enabled_outside_smx_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_vmx_enabled_outside_smx_checked( self, value: bool, ) -> Result<Self, ()>
Enable VMX outside SMX operation.
Bits: 2..3
Sourcepub const fn with_vmx_enabled_outside_smx(self, value: bool) -> Self
pub const fn with_vmx_enabled_outside_smx(self, value: bool) -> Self
Enable VMX outside SMX operation.
Bits: 2..3
Sourcepub const fn set_vmx_enabled_outside_smx(&mut self, value: bool)
pub const fn set_vmx_enabled_outside_smx(&mut self, value: bool)
Enable VMX outside SMX operation.
Bits: 2..3
Sourcepub const fn set_vmx_enabled_outside_smx_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_vmx_enabled_outside_smx_checked( &mut self, value: bool, ) -> Result<(), ()>
Enable VMX outside SMX operation.
Bits: 2..3
Sourcepub const fn senter_local_enables(&self) -> u8
pub const fn senter_local_enables(&self) -> u8
SENTER local function enables (bits 8..14).
Bits: 8..15
Sourcepub const fn with_senter_local_enables_checked(
self,
value: u8,
) -> Result<Self, ()>
pub const fn with_senter_local_enables_checked( self, value: u8, ) -> Result<Self, ()>
SENTER local function enables (bits 8..14).
Bits: 8..15
Sourcepub const fn with_senter_local_enables(self, value: u8) -> Self
pub const fn with_senter_local_enables(self, value: u8) -> Self
SENTER local function enables (bits 8..14).
Bits: 8..15
Sourcepub const fn set_senter_local_enables(&mut self, value: u8)
pub const fn set_senter_local_enables(&mut self, value: u8)
SENTER local function enables (bits 8..14).
Bits: 8..15
Sourcepub const fn set_senter_local_enables_checked(
&mut self,
value: u8,
) -> Result<(), ()>
pub const fn set_senter_local_enables_checked( &mut self, value: u8, ) -> Result<(), ()>
SENTER local function enables (bits 8..14).
Bits: 8..15
Sourcepub const fn senter_global_enable(&self) -> bool
pub const fn senter_global_enable(&self) -> bool
SENTER global enable.
Bits: 15..16
Sourcepub const fn with_senter_global_enable_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_senter_global_enable_checked( self, value: bool, ) -> Result<Self, ()>
SENTER global enable.
Bits: 15..16
Sourcepub const fn with_senter_global_enable(self, value: bool) -> Self
pub const fn with_senter_global_enable(self, value: bool) -> Self
SENTER global enable.
Bits: 15..16
Sourcepub const fn set_senter_global_enable(&mut self, value: bool)
pub const fn set_senter_global_enable(&mut self, value: bool)
SENTER global enable.
Bits: 15..16
Sourcepub const fn set_senter_global_enable_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_senter_global_enable_checked( &mut self, value: bool, ) -> Result<(), ()>
SENTER global enable.
Bits: 15..16
Sourcepub const fn sgx_launch_control_enable(&self) -> bool
pub const fn sgx_launch_control_enable(&self) -> bool
SGX launch control enable.
Bits: 17..18
Sourcepub const fn with_sgx_launch_control_enable_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_sgx_launch_control_enable_checked( self, value: bool, ) -> Result<Self, ()>
SGX launch control enable.
Bits: 17..18
Sourcepub const fn with_sgx_launch_control_enable(self, value: bool) -> Self
pub const fn with_sgx_launch_control_enable(self, value: bool) -> Self
SGX launch control enable.
Bits: 17..18
Sourcepub const fn set_sgx_launch_control_enable(&mut self, value: bool)
pub const fn set_sgx_launch_control_enable(&mut self, value: bool)
SGX launch control enable.
Bits: 17..18
Sourcepub const fn set_sgx_launch_control_enable_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_sgx_launch_control_enable_checked( &mut self, value: bool, ) -> Result<(), ()>
SGX launch control enable.
Bits: 17..18
Sourcepub const fn sgx_global_enable(&self) -> bool
pub const fn sgx_global_enable(&self) -> bool
SGX global enable.
Bits: 18..19
Sourcepub const fn with_sgx_global_enable_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_sgx_global_enable_checked( self, value: bool, ) -> Result<Self, ()>
SGX global enable.
Bits: 18..19
Sourcepub const fn with_sgx_global_enable(self, value: bool) -> Self
pub const fn with_sgx_global_enable(self, value: bool) -> Self
SGX global enable.
Bits: 18..19
Sourcepub const fn set_sgx_global_enable(&mut self, value: bool)
pub const fn set_sgx_global_enable(&mut self, value: bool)
SGX global enable.
Bits: 18..19
Sourcepub const fn set_sgx_global_enable_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_sgx_global_enable_checked( &mut self, value: bool, ) -> Result<(), ()>
SGX global enable.
Bits: 18..19
Sourcepub const fn with_lmce_on_checked(self, value: bool) -> Result<Self, ()>
pub const fn with_lmce_on_checked(self, value: bool) -> Result<Self, ()>
LMCE (Local Machine Check Exception) on.
Bits: 20..21
Sourcepub const fn with_lmce_on(self, value: bool) -> Self
pub const fn with_lmce_on(self, value: bool) -> Self
LMCE (Local Machine Check Exception) on.
Bits: 20..21
Sourcepub const fn set_lmce_on(&mut self, value: bool)
pub const fn set_lmce_on(&mut self, value: bool)
LMCE (Local Machine Check Exception) on.
Bits: 20..21
Trait Implementations§
Source§impl Clone for Ia32FeatureControl
impl Clone for Ia32FeatureControl
Source§fn clone(&self) -> Ia32FeatureControl
fn clone(&self) -> Ia32FeatureControl
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more