v8/src/wasm
Ulan Degenbaev 8fdb23873b Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership""
This reverts commit 5611f70b3d.

Reason for revert: flaky tests: v8:9588, v8:9587

Original change's description:
> "Reland x4 [arraybuffer] Rearchitect backing store ownership"
> 
> This is a reland of bc33f5aeba
> 
> Contributed by titzer@chromium.org
> 
> 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.
> 
> TBR=yangguo@chromium.org
> 
> BUG=v8:9380,v8:9221,chromium:986318
> 
> Change-Id: If671a4a9ca0476e8f084efae46e0d2bf99ed99ef
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1731005
> Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
> Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#63041}

TBR=ulan@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,clemensh@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: v8:9380, v8:9221, chromium:986318
Change-Id: Ic7381239f4e90d0c437b7e47a5ac6e8bce60f882
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1736747
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63081}
2019-08-05 15:33:47 +00:00
..
baseline [arm64][liftoff] Fix LiftoffAssembler::LoadTaggedPointerFromInstance 2019-08-02 10:25:58 +00:00
c-api.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
c-api.h
compilation-environment.h
decoder.h [base] Move v8memory.h to base/memory.h 2019-06-21 11:44:18 +00:00
DEPS
function-body-decoder-impl.h [wasm-simd] SIMD shifts should use register instead of immediates 2019-07-30 19:51:55 +00:00
function-body-decoder.cc [wasm] Fix printing of wasm prefixed opcode 2019-07-15 03:22:11 +00:00
function-body-decoder.h [wasm] Remove non-const arguments from decoder 2019-07-08 12:18:58 +00:00
function-compiler.cc Reland "[wasm] Compile JS to WASM wrappers asynchronously" 2019-07-30 12:28:39 +00:00
function-compiler.h Reland "[wasm] Compile JS to WASM wrappers asynchronously" 2019-07-30 12:28:39 +00:00
graph-builder-interface.cc [wasm-simd] SIMD shifts should use register instead of immediates 2019-07-30 19:51:55 +00:00
graph-builder-interface.h
jump-table-assembler.cc [mips][wasm] Split jump table and lazy compile table 2019-07-17 09:31:09 +00:00
jump-table-assembler.h [wasm] Refactor generation of stub table 2019-07-17 11:39:11 +00:00
leb-helper.h
local-decl-encoder.cc
local-decl-encoder.h
memory-tracing.cc [base] Move v8memory.h to base/memory.h 2019-06-21 11:44:18 +00:00
memory-tracing.h
module-compiler.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
module-compiler.h Reland "[wasm] Simplify module creation" 2019-07-30 20:43:55 +00:00
module-decoder.cc [asm.js] Propagate language mode to exported functions. 2019-07-19 11:47:48 +00:00
module-decoder.h [wasm] Remove non-const arguments from decoder 2019-07-08 12:18:58 +00:00
module-instantiate.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
module-instantiate.h
object-access.h
OWNERS
signature-map.cc
signature-map.h
streaming-decoder.cc
streaming-decoder.h
value-type.h [wasm] Rename "except_ref" to "exnref" throughout the code. 2019-07-15 15:09:28 +00:00
wasm-arguments.h [wasm-c-api] Faster C-to-Wasm entry 2019-06-27 13:39:48 +00:00
wasm-code-manager.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-code-manager.h Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-constants.h [wasm] Rename "except_ref" to "exnref" throughout the code. 2019-07-15 15:09:28 +00:00
wasm-debug.cc [wasm-c-api] Faster C-to-Wasm entry 2019-06-27 13:39:48 +00:00
wasm-engine.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-engine.h Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-external-refs.cc [wasm][ia32] Fix i64tof32 conversion on Windows 2019-07-30 12:30:09 +00:00
wasm-external-refs.h
wasm-feature-flags.h
wasm-features.cc
wasm-features.h
wasm-import-wrapper-cache.cc
wasm-import-wrapper-cache.h
wasm-interpreter.cc [wasm-simd] Implement F64x2 min max for x64 2019-08-02 15:44:10 +00:00
wasm-interpreter.h
wasm-js.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-js.h
wasm-limits.h
wasm-linkage.h
wasm-memory.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-memory.h Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-module-builder.cc [cleanup] Unify exports handling in WasmModuleBuilder 2019-07-11 15:50:30 +00:00
wasm-module-builder.h [cleanup] Unify exports handling in WasmModuleBuilder 2019-07-11 15:50:30 +00:00
wasm-module.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-module.h [asm.js] Propagate language mode to exported functions. 2019-07-19 11:47:48 +00:00
wasm-objects-inl.h [wasm] Access "CEntryStub" from the root set. 2019-07-24 10:04:05 +00:00
wasm-objects.cc Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-objects.h Revert ""Reland x4 [arraybuffer] Rearchitect backing store ownership"" 2019-08-05 15:33:47 +00:00
wasm-opcodes.cc [wasm-simd] Implement F64x2 min max for x64 2019-08-02 15:44:10 +00:00
wasm-opcodes.h [wasm-simd] Implement F64x2 min max for x64 2019-08-02 15:44:10 +00:00
wasm-result.cc [wasm] Remove non-const arguments from decoder 2019-07-08 12:18:58 +00:00
wasm-result.h
wasm-serialization.cc Reland "[wasm] Simplify module creation" 2019-07-30 20:43:55 +00:00
wasm-serialization.h
wasm-text.cc [wasm-simd] SIMD shifts should use register instead of immediates 2019-07-30 19:51:55 +00:00
wasm-text.h [wasm] Add unittest for PrintWasmText 2019-06-08 12:39:07 +00:00
wasm-tier.h
wasm-value.h [wasm simd] Implement F64x2ExtractLane F64x2ReplaceLane for x64 2019-07-16 02:42:09 +00:00