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§
- An abstract of memory address and object reference.
- Allocators Various allocators implementation.
- Helpers for making native APIs. This module contain helpers for the convenience of exposing the MMTk API to native (usually C/C++) programs.
- Constants used in MMTk
- Calculation, conversion and rounding for memory related numbers.
- The copy allocators for a GC worker.
- Heap implementation, including page resource, mmapper, etc.
- Linear scan through a heap range
- 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:
- Wrapper functions for memory syscalls such as mmap, mprotect, etc.
- Metadata (OnSide or InHeader) implementation. This is a generic module to work with metadata including side metadata and in-object metadata.
- Opaque pointers used in MMTk, e.g. VMThread.
- MMTk command line options.