Reference updating in a sliding compaction garbage collector may involve
maintaining, for each logical region of the heap to be compacted, values
that represent the range of addresses referenced by individual regions of
the heap. For example, a highest-referenced address (HRA) represents the
maximum address referenced by any object references in the respective
region. Similarly, a lowest-reference address (LRA) represents the
minimum address referenced by a region. When updating references during
compaction, if the HRA and/or LRA for a particular region indicate that
all references within the region point to addresses within a region of
memory that will not be relocated during compaction, such as a dense
prefix, the references with the particular region need not be updated.
Maintaining HRAs and/or LRAs for region of heap memory may simplify
determining whether or not references within individual regions require
updating.