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.