Module mmtk::util::linear_scan

source ·
Expand description

Linear scan through a heap range

Structs§

  • Default object size as ObjectModel::get_current_size()
  • Iterate over an address range, and find each object by VO bit. ATOMIC_LOAD_VO_BIT can be set to false if it is known that loading VO bit non-atomically is correct (e.g. a single thread is scanning this address range, and it is the only thread that accesses VO bit).
  • An iterator for contiguous regions.

Traits§

  • Describe object size for linear scan. Different policies may have different object sizes (e.g. extra metadata, etc)
  • Region represents a memory region with a properly aligned address as its start and a fixed size for the region. Region provides a set of utility methods, along with a RegionIterator that linearly scans at the step of a region.