• Dan Elphick's avatar
    [heap] Mark RO_SPACE as read-only after deserialization · 40f1aaf3
    Dan Elphick authored
    Adds MarkAsReadOnly and MarkAsReadWrite to ReadOnlySpace. The latter
    is only usable with ReadOnlySpace::WritableScope to avoid the space
    being left writable). MarkAsReadOnly updates the high water mark and
    makes several previously mutating methods into no-ops.
    
    Moves some writes to immutable objects out of the bootstrapper to
    setup-heap-internal so they don't write to a read-only page.
    
    Also avoid writing hashes to strings that already have the value set as
    that invariably means writing to the "0" and "1" constant strings in
    RO_SPACE.
    
    Before serialization, it makes RO_SPACE writable again so that any
    padding can be cleared before writing it.
    
    Bug: v8:7464
    Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
    Change-Id: I22edc20dba7dde8943991a8fcaf87244af4490a3
    Reviewed-on: https://chromium-review.googlesource.com/1014128
    Commit-Queue: Dan Elphick <delphick@chromium.org>
    Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
    Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#52943}
    40f1aaf3
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
fuzzer Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mkgrokdump Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
test262 Loading commit data...
unittests Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...