Module side_metadata

Module side_metadata 

Source
Expand description

This module provides an implementation of side table metadata.

Modulesยง

constants ๐Ÿ”’
global ๐Ÿ”’
helpers ๐Ÿ”’
ranges ๐Ÿ”’
Data types for visiting metadata ranges at different granularities.
sanity ๐Ÿ”’
side_metadata_tests ๐Ÿ”’
spec_defs ๐Ÿ”’

Structsยง

MetadataByteArrayRef
A byte array in side-metadata
SideMetadataSpec
This struct stores the specification of a side metadata bit-set. It is used as an input to the (inline) functions provided by the side metadata module.

Constantsยง

GLOBAL_SIDE_METADATA_BASE_ADDRESS
Global side metadata start address
GLOBAL_SIDE_METADATA_VM_BASE_ADDRESS
The base address for the global side metadata space available to VM bindings, to be used for the per-object metadata. VM bindings must use this to avoid overlap with core internal global side metadata.
GLOBAL_SIDE_METADATA_VM_BASE_OFFSET
The base offset for the global side metadata available to VM bindings.
LOCAL_SIDE_METADATA_VM_BASE_OFFSET
The base address for the local side metadata space available to VM bindings, to be used for the per-object metadata. VM bindings must use this to avoid overlap with core internal local side metadata.
VO_BIT_SIDE_METADATA_ADDR
Base address of VO bit, public to VM bindings which may need to use this.

Unionsยง

SideMetadataOffset
A union of Address or relative offset (usize) used to store offset for a side metadata spec. If a spec is contiguous side metadata, it uses address. Othrewise it uses usize.