| Class | Description | 
|---|---|
| BaseGenericFreeList | This is a very simple, generic malloc-free allocator. | 
| Constants | MMTk follows the pattern set by Jikes RVM for defining sizes of
 primitive types thus:
 
 static final int LOG_BYTES_IN_INT = 2;
 static final int BYTES_IN_INT = 1<<LOG_BYTES_IN_INT;
 static final int LOG_BITS_IN_INT = LOG_BITS_IN_BYTE + LOG_BYTES_IN_INT;
 static final int BITS_IN_INT = 1<<LOG_BITS_IN_INT;
  | 
| Conversions | |
| CycleDetector | |
| DoublyLinkedList | FIXME This class must be re-written as it makes the assumption that
 the implementation language (Java) and the language being
 implemented are the same. | 
| ForwardingWord | This class provides generic support for object forwarding, which is specific
 to a few policies that support copying. | 
| GenericFreeList | This is a very simple, generic malloc-free allocator. | 
| HeaderByte | This class provides generic support for operations over the GC byte
 within each object's header word. | 
| Log | Error and trace logging. | 
| Memory | This class implements basic memory copying, setting and clearing
 operations. | 
| SimpleHashtable | This class implements a simple hashtable. | 
| TraceGenerator | Class that supports scanning Objects and Arrays for references
 during tracing, handling those references, and computing death times | 
| TracingConstants | The constants needed when storing events and then generating the trace. | 
| Treadmill | FIXME The DoublyLinkedList class, upon which this depends, must be
 re-written as it makes the assumption that the implementation
 language (Java) and the language being implemented are the same. |