pub struct CacheTopologyB(/* private fields */);Expand description
The layout of EBX in Intel and AMD Cache Topology leaves.
Implementations§
Source§impl CacheTopologyB
impl CacheTopologyB
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 WAYS_SHIFT: usize = 22
pub const WAYS_SHIFT: usize = 22
Bit shift (i.e., the low bit) of ways.
Sourcepub const PHYSICAL_LINE_PARTITIONS_MASK: u32
pub const PHYSICAL_LINE_PARTITIONS_MASK: u32
Unshifted bitmask of physical_line_partitions.
Sourcepub const PHYSICAL_LINE_PARTITIONS_SHIFT: usize = 12
pub const PHYSICAL_LINE_PARTITIONS_SHIFT: usize = 12
Bit shift (i.e., the low bit) of physical_line_partitions.
Sourcepub const SYSTEM_COHERENCY_LINE_SIZE_MASK: u32
pub const SYSTEM_COHERENCY_LINE_SIZE_MASK: u32
Unshifted bitmask of system_coherency_line_size.
Sourcepub const SYSTEM_COHERENCY_LINE_SIZE_SHIFT: usize = 0
pub const SYSTEM_COHERENCY_LINE_SIZE_SHIFT: usize = 0
Bit shift (i.e., the low bit) of system_coherency_line_size.
Sourcepub const FIELDS: [FieldMetadata<u32>; 3]
pub const FIELDS: [FieldMetadata<u32>; 3]
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_ways(&mut self, value: u16) -> &mut Self
pub const fn set_ways(&mut self, value: u16) -> &mut Self
Sets the value of CacheTopologyB[31:22].
Sourcepub const fn physical_line_partitions(&self) -> u16
pub const fn physical_line_partitions(&self) -> u16
The value of CacheTopologyB[21:12].
Sourcepub const fn set_physical_line_partitions(&mut self, value: u16) -> &mut Self
pub const fn set_physical_line_partitions(&mut self, value: u16) -> &mut Self
Sets the value of CacheTopologyB[21:12].
Sourcepub const fn system_coherency_line_size(&self) -> u16
pub const fn system_coherency_line_size(&self) -> u16
The value of CacheTopologyB[11:0].
Sourcepub const fn set_system_coherency_line_size(&mut self, value: u16) -> &mut Self
pub const fn set_system_coherency_line_size(&mut self, value: u16) -> &mut Self
Sets the value of CacheTopologyB[11:0].
Trait Implementations§
Source§impl Binary for CacheTopologyB
impl Binary for CacheTopologyB
Source§impl Clone for CacheTopologyB
impl Clone for CacheTopologyB
Source§fn clone(&self) -> CacheTopologyB
fn clone(&self) -> CacheTopologyB
1.0.0 (const: unstable)§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for CacheTopologyB
Source§impl Debug for CacheTopologyB
impl Debug for CacheTopologyB
Source§impl Default for CacheTopologyB
impl Default for CacheTopologyB
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 CacheTopologyB
Source§impl From<CacheTopologyB> for u32
impl From<CacheTopologyB> for u32
Source§fn from(value: CacheTopologyB) -> Self
fn from(value: CacheTopologyB) -> Self
Source§impl From<u32> for CacheTopologyB
impl From<u32> for CacheTopologyB
Source§impl IntoIterator for CacheTopologyB
impl IntoIterator for CacheTopologyB
Source§impl<'a> IntoIterator for &'a CacheTopologyB
impl<'a> IntoIterator for &'a CacheTopologyB
Source§impl LowerHex for CacheTopologyB
impl LowerHex for CacheTopologyB
Source§impl Octal for CacheTopologyB
impl Octal for CacheTopologyB
Source§impl PartialEq for CacheTopologyB
impl PartialEq for CacheTopologyB
impl StructuralPartialEq for CacheTopologyB
Auto Trait Implementations§
impl Freeze for CacheTopologyB
impl RefUnwindSafe for CacheTopologyB
impl Send for CacheTopologyB
impl Sync for CacheTopologyB
impl Unpin for CacheTopologyB
impl UnsafeUnpin for CacheTopologyB
impl UnwindSafe for CacheTopologyB
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)