• Clemens Hammacher's avatar
    Revert "Reland "[arraybuffer] Rearchitect backing store ownership"" · 6e0473f3
    Clemens Hammacher authored
    This reverts commit bc33f5ae.
    
    Reason for revert: Still failing (OOM on win32): https://ci.chromium.org/p/v8/builders/ci/V8%20Win32/22210
    
    Original change's description:
    > Reland "[arraybuffer] Rearchitect backing store ownership"
    > 
    > This is a reland of 31cd5d83
    > 
    > Original change's description:
    > > [arraybuffer] Rearchitect backing store ownership
    > > 
    > > This CL completely rearchitects the ownership of array buffer backing stores,
    > > consolidating ownership into a {BackingStore} C++ object that is tracked
    > > throughout V8 using unique_ptr and shared_ptr where appropriate.
    > > 
    > > Overall, lifetime management is simpler and more explicit. The numerous
    > > ways that array buffers were initialized have been streamlined to one
    > > Attach() method on JSArrayBuffer. The array buffer tracker in the
    > > GC implementation now manages std::shared_ptr<BackingStore> pointers,
    > > and the construction and destruction of the BackingStore object itself
    > > handles the underlying page or embedder-allocated memory.
    > > 
    > > The embedder API remains unchanged for now. We use the
    > > v8::ArrayBuffer::Contents struct to hide an additional shared_ptr to
    > > keep the backing store alive properly, even in the case of aliases
    > > from live heap objects. Thus the embedder has a lower chance of making
    > > a mistake. Long-term, we should move the embedder to a model where they
    > > manage backing stores using shared_ptr to an opaque backing store object.
    > > 
    > > R=mlippautz@chromium.org
    > > BUG=v8:9380,v8:9221
    > > 
    > > Change-Id: I48fae5ac85dcf6172a83f252439e77e7c1a16ccd
    > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584323
    > > Commit-Queue: Ben Titzer <titzer@chromium.org>
    > > Reviewed-by: Ben Titzer <titzer@chromium.org>
    > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
    > > Reviewed-by: Yang Guo <yangguo@chromium.org>
    > > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
    > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
    > > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    > > Cr-Commit-Position: refs/heads/master@{#62572}
    > 
    > Bug: v8:9380, v8:9221
    > Change-Id: If3f72967a8ebeb067c0edcfc16ed631e36829dbc
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1691906
    > Commit-Queue: Ben Titzer <titzer@chromium.org>
    > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
    > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
    > Reviewed-by: Yang Guo <yangguo@chromium.org>
    > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#62809}
    
    TBR=ulan@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,titzer@chromium.org,gdeepti@chromium.org,mlippautz@chromium.org
    
    Change-Id: Iea755df9aaa1e95d284135bd0a6681b1340b6832
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: v8:9380, v8:9221
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708487Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#62811}
    6e0473f3
Name
Last commit
Last update
..
arm Loading commit data...
arm64 Loading commit data...
ia32 Loading commit data...
mips Loading commit data...
mips64 Loading commit data...
ppc Loading commit data...
s390 Loading commit data...
x64 Loading commit data...
OWNERS Loading commit data...
arguments-inl.h Loading commit data...
arguments.cc Loading commit data...
arguments.h Loading commit data...
execution.cc Loading commit data...
execution.h Loading commit data...
frame-constants.h Loading commit data...
frames-inl.h Loading commit data...
frames.cc Loading commit data...
frames.h Loading commit data...
futex-emulation.cc Loading commit data...
futex-emulation.h Loading commit data...
interrupts-scope.cc Loading commit data...
interrupts-scope.h Loading commit data...
isolate-data.h Loading commit data...
isolate-inl.h Loading commit data...
isolate-utils-inl.h Loading commit data...
isolate-utils.h Loading commit data...
isolate.cc Loading commit data...
isolate.h Loading commit data...
messages.cc Loading commit data...
messages.h Loading commit data...
microtask-queue.cc Loading commit data...
microtask-queue.h Loading commit data...
runtime-profiler.cc Loading commit data...
runtime-profiler.h Loading commit data...
simulator-base.cc Loading commit data...
simulator-base.h Loading commit data...
simulator.h Loading commit data...
stack-guard.cc Loading commit data...
stack-guard.h Loading commit data...
thread-id.cc Loading commit data...
thread-id.h Loading commit data...
thread-local-top.cc Loading commit data...
thread-local-top.h Loading commit data...
v8threads.cc Loading commit data...
v8threads.h Loading commit data...
vm-state-inl.h Loading commit data...
vm-state.h Loading commit data...