wingo pushed a commit to branch wip-whippet
in repository guile.

commit b4ea55b9c436a320b19ef8ce5c034fe7e6b0e08c
Author: Andy Wingo <wi...@igalia.com>
AuthorDate: Fri Oct 4 13:51:27 2024 +0200

    Don't clear log bits when marking
    
    This happens in a post-pass.
---
 src/nofl-space.h | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/src/nofl-space.h b/src/nofl-space.h
index 817c10461..a6e2b2b13 100644
--- a/src/nofl-space.h
+++ b/src/nofl-space.h
@@ -1408,11 +1408,8 @@ nofl_space_should_evacuate(struct nofl_space *space, 
uint8_t metadata_byte,
 
 static inline int
 nofl_space_set_mark(struct nofl_space *space, uint8_t *metadata, uint8_t byte) 
{
-  // Clear logged bits when we mark: after marking, there will be no
-  // young objects.
   uint8_t mask = NOFL_METADATA_BYTE_YOUNG | NOFL_METADATA_BYTE_MARK_0
-    | NOFL_METADATA_BYTE_MARK_1 | NOFL_METADATA_BYTE_MARK_2
-    | NOFL_METADATA_BYTE_LOGGED_0 | NOFL_METADATA_BYTE_LOGGED_1;
+    | NOFL_METADATA_BYTE_MARK_1 | NOFL_METADATA_BYTE_MARK_2;
   atomic_store_explicit(metadata,
                         (byte & ~mask) | space->marked_mask,
                         memory_order_relaxed);

Reply via email to