Module util

Source
Expand description

Utilities used by other modules, including allocators, heap implementation, etc.

Re-exports§

pub use self::address::Address;
pub use self::address::ObjectReference;
pub use self::opaque_pointer::*;

Modules§

address
An abstract of memory address and object reference.
alloc
Allocators Various allocators implementation.
api_util
Helpers for making native APIs. This module contain helpers for the convenience of exposing the MMTk API to native (usually C/C++) programs.
constants
Constants used in MMTk
conversions
Calculation, conversion and rounding for memory related numbers.
copy
The copy allocators for a GC worker.
heap
Heap implementation, including page resource, mmapper, etc.
linear_scan
Linear scan through a heap range
malloc
Various malloc implementations (conditionally compiled by features) This module exposes a set of malloc API. They are currently implemented with the library malloc. This may change in the future, and will be replaced with a native MMTk implementation. We have two versions for each function:
memory
Wrapper functions for memory syscalls such as mmap, mprotect, etc.
metadata
Metadata (OnSide or InHeader) implementation. This is a generic module to work with metadata including side metadata and in-object metadata.
opaque_pointer
Opaque pointers used in MMTk, e.g. VMThread.
options
MMTk command line options.