• Pierre Langlois's avatar
    [heap] Relax accessing markbits in ranges. · b152bb75
    Pierre Langlois authored
    When calling the `bitmap(chunk)` method of the various *MarkingState accessors
    we would receive a raw `Bitmap` pointer which does not tell you if accesses to
    markbits should be made atomically or not. As a result, we would default to
    doing atomic operation when in fact it may not be necessary.
    
    Here we're introducing a templated `ConcurrentBitmap` class that wraps
    operations done on the markbits and allows them to be made non-atomic.
    
    Additionaly, some of the `Bitmap` methods were only used to verify the heap and
    in the tests so they do not need atomic implementations. Using them in a
    concurrent context should now fail to link to make sure they're not mis-used in
    the future.
    
    Change-Id: Ifb55f8522c8bf0c87d65da9227864ee428d21bbd
    Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel
    Reviewed-on: https://chromium-review.googlesource.com/c/1482916Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Commit-Queue: Pierre Langlois <pierre.langlois@arm.com>
    Cr-Commit-Position: refs/heads/master@{#59836}
    b152bb75
Name
Last commit
Last update
..
heap-tester.h Loading commit data...
heap-utils.cc Loading commit data...
heap-utils.h Loading commit data...
test-alloc.cc Loading commit data...
test-array-buffer-tracker.cc Loading commit data...
test-compaction.cc Loading commit data...
test-concurrent-marking.cc Loading commit data...
test-embedder-tracing.cc Loading commit data...
test-external-string-tracker.cc Loading commit data...
test-heap.cc Loading commit data...
test-incremental-marking.cc Loading commit data...
test-invalidated-slots.cc Loading commit data...
test-lab.cc Loading commit data...
test-mark-compact.cc Loading commit data...
test-page-promotion.cc Loading commit data...
test-spaces.cc Loading commit data...
test-unmapper.cc Loading commit data...
test-weak-references.cc Loading commit data...