pub struct NewFileEntry {
pub flags: i32,
pub key: u32,
pub value: u32,
pub osversion_unused: u32,
pub hwcap: u64,
}Expand description
A single library entry in the new cache format with hardware capabilities.
§Fields
flags- Library type flags (same as old format)key- Offset into string table for library namevalue- Offset into string table for library pathosversion_unused- Unused field (always 0)hwcap- Hardware capability mask indicating required processor features
§Hardware Capabilities
The hwcap field encodes processor features required by the library:
- Bits 0-51: Various CPU features (SSE, AVX, etc.)
- Bits 52-61: ISA level (x86-64-v2, x86-64-v3, etc.)
- Bit 62: Extension flag
- Bit 63: Reserved
§Example
let entry = NewFileEntry {
flags: 1,
key: 0,
value: 20,
osversion_unused: 0,
hwcap: 0x1000000000000000, // Some capability set
};
// Check for extension flag
let has_extension = entry.hwcap & (1u64 << 62) != 0;
// Extract ISA level
let isa_level = (entry.hwcap >> 52) & 0x3ff;Fields§
§flags: i32§key: u32§value: u32§osversion_unused: u32§hwcap: u64Trait Implementations§
Source§impl Clone for NewFileEntry
impl Clone for NewFileEntry
Source§fn clone(&self) -> NewFileEntry
fn clone(&self) -> NewFileEntry
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for NewFileEntry
impl Debug for NewFileEntry
Source§impl PartialEq for NewFileEntry
impl PartialEq for NewFileEntry
impl StructuralPartialEq for NewFileEntry
Auto Trait Implementations§
impl Freeze for NewFileEntry
impl RefUnwindSafe for NewFileEntry
impl Send for NewFileEntry
impl Sync for NewFileEntry
impl Unpin for NewFileEntry
impl UnwindSafe for NewFileEntry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more