pub struct ExtendedFeatureFlagsB(/* private fields */);Expand description
The layout of EBX in EXTENDED_FEATURES_B.
Implementations§
Source§impl ExtendedFeatureFlagsB
impl ExtendedFeatureFlagsB
Sourcepub const RSVD1_MASK: u32
pub const RSVD1_MASK: u32
Mask of all reserved-as-1 bits.
Sourcepub const RSVD0_MASK: u32
pub const RSVD0_MASK: u32
Mask of all reserved-as-0 bits.
Sourcepub const DEFAULT: u32
pub const DEFAULT: u32
The default value of the layout, combining all field defaults and reserved-as values.
Sourcepub const AVX512VL_MASK: u32
pub const AVX512VL_MASK: u32
Unshifted bitmask of avx512vl.
Sourcepub const AVX512VL_SHIFT: usize = 31
pub const AVX512VL_SHIFT: usize = 31
Bit shift (i.e., the low bit) of avx512vl.
Sourcepub const AVX512BW_MASK: u32
pub const AVX512BW_MASK: u32
Unshifted bitmask of avx512bw.
Sourcepub const AVX512BW_SHIFT: usize = 30
pub const AVX512BW_SHIFT: usize = 30
Bit shift (i.e., the low bit) of avx512bw.
Sourcepub const AVX512CD_MASK: u32
pub const AVX512CD_MASK: u32
Unshifted bitmask of avx512cd.
Sourcepub const AVX512CD_SHIFT: usize = 28
pub const AVX512CD_SHIFT: usize = 28
Bit shift (i.e., the low bit) of avx512cd.
Sourcepub const AVX512ER_MASK: u32
pub const AVX512ER_MASK: u32
Unshifted bitmask of avx512er.
Sourcepub const AVX512ER_SHIFT: usize = 27
pub const AVX512ER_SHIFT: usize = 27
Bit shift (i.e., the low bit) of avx512er.
Sourcepub const AVX512PF_MASK: u32
pub const AVX512PF_MASK: u32
Unshifted bitmask of avx512pf.
Sourcepub const AVX512PF_SHIFT: usize = 26
pub const AVX512PF_SHIFT: usize = 26
Bit shift (i.e., the low bit) of avx512pf.
Sourcepub const INTEL_PT_MASK: u32
pub const INTEL_PT_MASK: u32
Unshifted bitmask of intel_pt.
Sourcepub const INTEL_PT_SHIFT: usize = 25
pub const INTEL_PT_SHIFT: usize = 25
Bit shift (i.e., the low bit) of intel_pt.
Sourcepub const CLWB_SHIFT: usize = 24
pub const CLWB_SHIFT: usize = 24
Bit shift (i.e., the low bit) of clwb.
Sourcepub const CLFLUSHOPT_MASK: u32
pub const CLFLUSHOPT_MASK: u32
Unshifted bitmask of clflushopt.
Sourcepub const CLFLUSHOPT_SHIFT: usize = 23
pub const CLFLUSHOPT_SHIFT: usize = 23
Bit shift (i.e., the low bit) of clflushopt.
Sourcepub const AVX512_IFMA_MASK: u32
pub const AVX512_IFMA_MASK: u32
Unshifted bitmask of avx512_ifma.
Sourcepub const AVX512_IFMA_SHIFT: usize = 21
pub const AVX512_IFMA_SHIFT: usize = 21
Bit shift (i.e., the low bit) of avx512_ifma.
Sourcepub const SMAP_SHIFT: usize = 20
pub const SMAP_SHIFT: usize = 20
Bit shift (i.e., the low bit) of smap.
Sourcepub const RDSEED_MASK: u32
pub const RDSEED_MASK: u32
Unshifted bitmask of rdseed.
Sourcepub const RDSEED_SHIFT: usize = 18
pub const RDSEED_SHIFT: usize = 18
Bit shift (i.e., the low bit) of rdseed.
Sourcepub const AVX512DQ_MASK: u32
pub const AVX512DQ_MASK: u32
Unshifted bitmask of avx512dq.
Sourcepub const AVX512DQ_SHIFT: usize = 17
pub const AVX512DQ_SHIFT: usize = 17
Bit shift (i.e., the low bit) of avx512dq.
Sourcepub const AVX512F_MASK: u32
pub const AVX512F_MASK: u32
Unshifted bitmask of avx512f.
Sourcepub const AVX512F_SHIFT: usize = 16
pub const AVX512F_SHIFT: usize = 16
Bit shift (i.e., the low bit) of avx512f.
Sourcepub const RDT_A_MASK: u32
pub const RDT_A_MASK: u32
Unshifted bitmask of rdt_a.
Sourcepub const RDT_A_SHIFT: usize = 15
pub const RDT_A_SHIFT: usize = 15
Bit shift (i.e., the low bit) of rdt_a.
Sourcepub const FPU_CS_DS_DEPRECATED_MASK: u32
pub const FPU_CS_DS_DEPRECATED_MASK: u32
Unshifted bitmask of fpu_cs_ds_deprecated.
Sourcepub const FPU_CS_DS_DEPRECATED_SHIFT: usize = 13
pub const FPU_CS_DS_DEPRECATED_SHIFT: usize = 13
Bit shift (i.e., the low bit) of fpu_cs_ds_deprecated.
Sourcepub const RDT_M_MASK: u32
pub const RDT_M_MASK: u32
Unshifted bitmask of rdt_m.
Sourcepub const RDT_M_SHIFT: usize = 12
pub const RDT_M_SHIFT: usize = 12
Bit shift (i.e., the low bit) of rdt_m.
Sourcepub const INVPCID_MASK: u32
pub const INVPCID_MASK: u32
Unshifted bitmask of invpcid.
Sourcepub const INVPCID_SHIFT: usize = 10
pub const INVPCID_SHIFT: usize = 10
Bit shift (i.e., the low bit) of invpcid.
Sourcepub const ERMS_SHIFT: usize = 9
pub const ERMS_SHIFT: usize = 9
Bit shift (i.e., the low bit) of erms.
Sourcepub const BMI2_SHIFT: usize = 8
pub const BMI2_SHIFT: usize = 8
Bit shift (i.e., the low bit) of bmi2.
Sourcepub const SMEP_SHIFT: usize = 7
pub const SMEP_SHIFT: usize = 7
Bit shift (i.e., the low bit) of smep.
Sourcepub const FDP_EXCPTN_ONLY_X87_MASK: u32
pub const FDP_EXCPTN_ONLY_X87_MASK: u32
Unshifted bitmask of fdp_excptn_only_x87.
Sourcepub const FDP_EXCPTN_ONLY_X87_SHIFT: usize = 6
pub const FDP_EXCPTN_ONLY_X87_SHIFT: usize = 6
Bit shift (i.e., the low bit) of fdp_excptn_only_x87.
Sourcepub const AVX2_SHIFT: usize = 5
pub const AVX2_SHIFT: usize = 5
Bit shift (i.e., the low bit) of avx2.
Sourcepub const BMI1_SHIFT: usize = 3
pub const BMI1_SHIFT: usize = 3
Bit shift (i.e., the low bit) of bmi1.
Sourcepub const TSC_ADJUST_MASK: u32
pub const TSC_ADJUST_MASK: u32
Unshifted bitmask of tsc_adjust.
Sourcepub const TSC_ADJUST_SHIFT: usize = 1
pub const TSC_ADJUST_SHIFT: usize = 1
Bit shift (i.e., the low bit) of tsc_adjust.
Sourcepub const FSGSBASE_MASK: u32
pub const FSGSBASE_MASK: u32
Unshifted bitmask of fsgsbase.
Sourcepub const FSGSBASE_SHIFT: usize = 0
pub const FSGSBASE_SHIFT: usize = 0
Bit shift (i.e., the low bit) of fsgsbase.
Sourcepub const FIELDS: [FieldMetadata<u32>; 31]
pub const FIELDS: [FieldMetadata<u32>; 31]
Metadata of all named fields in the layout.
Sourcepub const fn new() -> Self
pub const fn new() -> Self
Creates a new instance with reserved-as-1 bits set and
all other bits zeroed (i.e., with a value of
Self::RSVD1_MASK).
pub const fn bits(self) -> u32
Sourcepub const fn set_avx512vl(&mut self, value: bool) -> &mut Self
pub const fn set_avx512vl(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB31.
Sourcepub const fn set_avx512bw(&mut self, value: bool) -> &mut Self
pub const fn set_avx512bw(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB30.
Sourcepub const fn set_sha(&mut self, value: bool) -> &mut Self
pub const fn set_sha(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB29.
Sourcepub const fn set_avx512cd(&mut self, value: bool) -> &mut Self
pub const fn set_avx512cd(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB28.
Sourcepub const fn set_avx512er(&mut self, value: bool) -> &mut Self
pub const fn set_avx512er(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB27.
Sourcepub const fn set_avx512pf(&mut self, value: bool) -> &mut Self
pub const fn set_avx512pf(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB26.
Sourcepub const fn set_intel_pt(&mut self, value: bool) -> &mut Self
pub const fn set_intel_pt(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB25.
Sourcepub const fn set_clwb(&mut self, value: bool) -> &mut Self
pub const fn set_clwb(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB24.
Sourcepub const fn clflushopt(&self) -> bool
pub const fn clflushopt(&self) -> bool
The value of ExtendedFeatureFlagsB23.
Sourcepub const fn set_clflushopt(&mut self, value: bool) -> &mut Self
pub const fn set_clflushopt(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB23.
Sourcepub const fn avx512_ifma(&self) -> bool
pub const fn avx512_ifma(&self) -> bool
The value of ExtendedFeatureFlagsB21.
Sourcepub const fn set_avx512_ifma(&mut self, value: bool) -> &mut Self
pub const fn set_avx512_ifma(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB21.
Sourcepub const fn set_smap(&mut self, value: bool) -> &mut Self
pub const fn set_smap(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB20.
Sourcepub const fn set_adx(&mut self, value: bool) -> &mut Self
pub const fn set_adx(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB19.
Sourcepub const fn set_rdseed(&mut self, value: bool) -> &mut Self
pub const fn set_rdseed(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB18.
Sourcepub const fn set_avx512dq(&mut self, value: bool) -> &mut Self
pub const fn set_avx512dq(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB17.
Sourcepub const fn set_avx512f(&mut self, value: bool) -> &mut Self
pub const fn set_avx512f(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB16.
Sourcepub const fn set_rdt_a(&mut self, value: bool) -> &mut Self
pub const fn set_rdt_a(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB15.
Sourcepub const fn set_mpx(&mut self, value: bool) -> &mut Self
pub const fn set_mpx(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB14.
Sourcepub const fn fpu_cs_ds_deprecated(&self) -> bool
pub const fn fpu_cs_ds_deprecated(&self) -> bool
The value of ExtendedFeatureFlagsB13.
Sourcepub const fn set_fpu_cs_ds_deprecated(&mut self, value: bool) -> &mut Self
pub const fn set_fpu_cs_ds_deprecated(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB13.
Sourcepub const fn set_rdt_m(&mut self, value: bool) -> &mut Self
pub const fn set_rdt_m(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB12.
Sourcepub const fn set_rtm(&mut self, value: bool) -> &mut Self
pub const fn set_rtm(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB11.
Sourcepub const fn set_invpcid(&mut self, value: bool) -> &mut Self
pub const fn set_invpcid(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB10.
Sourcepub const fn set_erms(&mut self, value: bool) -> &mut Self
pub const fn set_erms(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB9.
Sourcepub const fn set_bmi2(&mut self, value: bool) -> &mut Self
pub const fn set_bmi2(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB8.
Sourcepub const fn set_smep(&mut self, value: bool) -> &mut Self
pub const fn set_smep(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB7.
Sourcepub const fn fdp_excptn_only_x87(&self) -> bool
pub const fn fdp_excptn_only_x87(&self) -> bool
The value of ExtendedFeatureFlagsB6.
Sourcepub const fn set_fdp_excptn_only_x87(&mut self, value: bool) -> &mut Self
pub const fn set_fdp_excptn_only_x87(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB6.
Sourcepub const fn set_avx2(&mut self, value: bool) -> &mut Self
pub const fn set_avx2(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB5.
Sourcepub const fn set_hle(&mut self, value: bool) -> &mut Self
pub const fn set_hle(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB4.
Sourcepub const fn set_bmi1(&mut self, value: bool) -> &mut Self
pub const fn set_bmi1(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB3.
Sourcepub const fn set_sgx(&mut self, value: bool) -> &mut Self
pub const fn set_sgx(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB2.
Sourcepub const fn tsc_adjust(&self) -> bool
pub const fn tsc_adjust(&self) -> bool
The value of ExtendedFeatureFlagsB1.
Sourcepub const fn set_tsc_adjust(&mut self, value: bool) -> &mut Self
pub const fn set_tsc_adjust(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB1.
Sourcepub const fn set_fsgsbase(&mut self, value: bool) -> &mut Self
pub const fn set_fsgsbase(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedFeatureFlagsB0.
Trait Implementations§
Source§impl Binary for ExtendedFeatureFlagsB
impl Binary for ExtendedFeatureFlagsB
Source§impl Clone for ExtendedFeatureFlagsB
impl Clone for ExtendedFeatureFlagsB
Source§fn clone(&self) -> ExtendedFeatureFlagsB
fn clone(&self) -> ExtendedFeatureFlagsB
1.0.0 (const: unstable)§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ExtendedFeatureFlagsB
Source§impl Debug for ExtendedFeatureFlagsB
impl Debug for ExtendedFeatureFlagsB
Source§impl Default for ExtendedFeatureFlagsB
impl Default for ExtendedFeatureFlagsB
Source§fn default() -> Self
fn default() -> Self
Returns an instance with the default bits set (i.e,. with a
value of Self::DEFAULT.
impl Eq for ExtendedFeatureFlagsB
Source§impl From<ExtendedFeatureFlagsB> for u32
impl From<ExtendedFeatureFlagsB> for u32
Source§fn from(value: ExtendedFeatureFlagsB) -> Self
fn from(value: ExtendedFeatureFlagsB) -> Self
Source§impl From<u32> for ExtendedFeatureFlagsB
impl From<u32> for ExtendedFeatureFlagsB
Source§impl IntoIterator for ExtendedFeatureFlagsB
impl IntoIterator for ExtendedFeatureFlagsB
Source§impl<'a> IntoIterator for &'a ExtendedFeatureFlagsB
impl<'a> IntoIterator for &'a ExtendedFeatureFlagsB
Source§impl LowerHex for ExtendedFeatureFlagsB
impl LowerHex for ExtendedFeatureFlagsB
Source§impl Octal for ExtendedFeatureFlagsB
impl Octal for ExtendedFeatureFlagsB
Source§impl PartialEq for ExtendedFeatureFlagsB
impl PartialEq for ExtendedFeatureFlagsB
impl StructuralPartialEq for ExtendedFeatureFlagsB
Auto Trait Implementations§
impl Freeze for ExtendedFeatureFlagsB
impl RefUnwindSafe for ExtendedFeatureFlagsB
impl Send for ExtendedFeatureFlagsB
impl Sync for ExtendedFeatureFlagsB
impl Unpin for ExtendedFeatureFlagsB
impl UnsafeUnpin for ExtendedFeatureFlagsB
impl UnwindSafe for ExtendedFeatureFlagsB
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)