-
Notifications
You must be signed in to change notification settings - Fork 78
Open
Labels
A-metaArea: Meta issues for the repositoryArea: Meta issues for the repositoryP-normalPriority: Normal.Priority: Normal.
Description
A previous attempt to address many of the following problems was unsuccessful. #680
We should do the following one by one in separate PRs.
- Renaming alloc bit to VO bit. Rename "alloc bit" to "valid-object bit" (VO bit), the second attempt. #791
- Add an API for explicitly clearing the VO bit. Add an API to clear the valid-object bit (a.k.a. alloc-bit) #648
- Remove the
is_mmtk_objectfeature. It should be enabled as long as VO bit is available. - Refactor
vo_bit.rs- Clean up the API, and only use
ObjectReference(notAddress) to access the VO bit. This emphasises that VO bits are set at object references' raw addresses. - Use
fetch_andandfetch_orfor atomic setting/clearing of bits.
- Clean up the API, and only use
- MarkCompactSpace shall use local bits. It should use space-local allocation bits to identify objects.
- MallocSpace shall use local alloc bits. Its semantics is different from VO bit. Even after the VO bit is cleared, malloc MarkSweep still needs the alloc bit to identify objects allocated by
malloc, and callfreeon them.
Metadata
Metadata
Assignees
Labels
A-metaArea: Meta issues for the repositoryArea: Meta issues for the repositoryP-normalPriority: Normal.Priority: Normal.