From ae90ebe3be9bd4835b238f8bdcade8025a80f404 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 14 Oct 2009 06:13:51 -0500 Subject: [PATCH] vm: faster write barrier for non-optimized code --- vm/vm.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vm/vm.hpp b/vm/vm.hpp index ae8e882b6b..b6a3e30af3 100755 --- a/vm/vm.hpp +++ b/vm/vm.hpp @@ -227,8 +227,8 @@ struct factor_vm pointer from an older generation to a younger one */ inline void write_barrier(cell *slot_ptr) { - data->cards[addr_to_card((cell)slot_ptr - data->start)] = card_mark_mask; - data->decks[addr_to_deck((cell)slot_ptr - data->start)] = card_mark_mask; + *(char *)(cards_offset + ((cell)slot_ptr >> card_bits)) = card_mark_mask; + *(char *)(decks_offset + ((cell)slot_ptr >> deck_bits)) = card_mark_mask; } // gc