- 31 Oct, 2018 3 commits
-
-
Jakob Kummerow authored
and reland "[ubsan] More Object** replacements" This reverts commit 162d4e6d. Reason for revert: Not the culprit, test failed before. Original change's description: > Revert "[ubsan] Replace Object** in GlobalHandles" > > This reverts commit 93927279. > > Reason for revert: Speculative revert, seems the most probable cause of > https://bugs.chromium.org/p/v8/issues/detail?id=8396 > > Revert "[ubsan] More Object** replacements" > > This reverts commit 5cce694d. > > Speculative revert. > > NOTRY=true > > Bug: v8:8396 > Change-Id: I9c2866a9db707cd03e4cf90822acde20813cebf0 > Reviewed-on: https://chromium-review.googlesource.com/c/1309761 > Commit-Queue: Maya Lekova <mslekova@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57174} TBR=yangguo@chromium.org,mstarzinger@chromium.org,mslekova@chromium.org Bug: v8:8396 Change-Id: I64fc80804b4ec324cef80ac528d08b724963f7f7 Reviewed-on: https://chromium-review.googlesource.com/c/1311813Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57194}
-
Maya Lekova authored
This reverts commit 93927279. Reason for revert: Speculative revert, seems the most probable cause of https://bugs.chromium.org/p/v8/issues/detail?id=8396 Revert "[ubsan] More Object** replacements" This reverts commit 5cce694d. Speculative revert. NOTRY=true Bug: v8:8396 Change-Id: I9c2866a9db707cd03e4cf90822acde20813cebf0 Reviewed-on: https://chromium-review.googlesource.com/c/1309761 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57174}
-
Jakob Kummerow authored
as part of the continuing quest to get rid of Object*/Object** entirely. Since it fits nicely, this CL as a bonus includes the planned change to make Handle::location() return an Address*, in the process dropping the temporarily needed duplicate Handle::location_as_address_ptr(). Bug: v8:3770 Change-Id: I87480289ce2a62ea1ae503e73d179256b7108c5c Reviewed-on: https://chromium-review.googlesource.com/c/1298389Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57153}
-
- 30 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
This is a reland of bf3d7b9a Original change's description: > [wasm] Store compile errors in CompilationState > > We are currently storing compilation errors in the individual > compilation units and pass it to the ErrorThrower during finishing. > This CL changes that to store errors on the CompilationState directly. > From there, it is propagated to the ErrorThrower in the compilation > state callback. > This removes more work from the finisher task and slims down the > WasmCompilationUnits. > > R=mstarzinger@chromium.org > > Bug: v8:8343, v8:7921 > Change-Id: Id332add43d4219d2a30fee653ed4e53a9b2698d9 > Reviewed-on: https://chromium-review.googlesource.com/c/1303720 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57091} Bug: v8:8343, v8:7921 Change-Id: Iaa5c89d224cb2bcfca2d12eba305413a9ad95618 Reviewed-on: https://chromium-review.googlesource.com/c/1304547 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57126}
-
- 29 Oct, 2018 2 commits
-
-
Maya Lekova authored
This reverts commit bf3d7b9a. Reason for revert: Breaks TSAN build, see https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64%20TSAN/23248 Original change's description: > [wasm] Store compile errors in CompilationState > > We are currently storing compilation errors in the individual > compilation units and pass it to the ErrorThrower during finishing. > This CL changes that to store errors on the CompilationState directly. > From there, it is propagated to the ErrorThrower in the compilation > state callback. > This removes more work from the finisher task and slims down the > WasmCompilationUnits. > > R=mstarzinger@chromium.org > > Bug: v8:8343, v8:7921 > Change-Id: Id332add43d4219d2a30fee653ed4e53a9b2698d9 > Reviewed-on: https://chromium-review.googlesource.com/c/1303720 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57091} TBR=mstarzinger@chromium.org,clemensh@chromium.org Change-Id: Id32c7337494a4749485adbcfcaae7b2331afea66 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8343, v8:7921 Reviewed-on: https://chromium-review.googlesource.com/c/1304544Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#57094}
-
Clemens Hammacher authored
We are currently storing compilation errors in the individual compilation units and pass it to the ErrorThrower during finishing. This CL changes that to store errors on the CompilationState directly. From there, it is propagated to the ErrorThrower in the compilation state callback. This removes more work from the finisher task and slims down the WasmCompilationUnits. R=mstarzinger@chromium.org Bug: v8:8343, v8:7921 Change-Id: Id332add43d4219d2a30fee653ed4e53a9b2698d9 Reviewed-on: https://chromium-review.googlesource.com/c/1303720Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#57091}
-
- 23 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
Instead, create it when needed and pass it down to the actual compilation. This saves memory by making the WasmCompilationUnit smaller and will eventually allow us to implement the trap handler fallback correctly by using an updated ModuleEnv in background compilation and tier up. R=mstarzinger@chromium.org Bug: v8:5277, v8:8343 Change-Id: I0dc3a37fb88e54eb4822dc99d58ff024f4b2a367 Reviewed-on: https://chromium-review.googlesource.com/c/1293953 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56896}
-
- 25 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
First step towards GC of wasm code: Introduce a link to all Isolates that use a WasmEngine. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: Ib7f4495e7c7e5cc9ad58293518c65738f23d664c Reviewed-on: https://chromium-review.googlesource.com/1240335 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56204}
-
- 18 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
The WasmMemoryTracker keeps track of reserved memory in order to avoid running out of virtual address space. So far, we were only tracking reservations for wasm memory, and not for code. This CL changes that to also include code reservations. Drive-by: Some cleanup around the allocation of the WasmCodeManager. R=titzer@chromium.org Bug: chromium:883639 Change-Id: I0c2586a742022ae00752132e048346d54e2a1a7c Reviewed-on: https://chromium-review.googlesource.com/1230134Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56001}
-
- 17 Sep, 2018 1 commit
-
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: If115a71b1c57eecdec7c57d3613a4f0bd90f2e66 Reviewed-on: https://chromium-review.googlesource.com/1226791Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55944}
-
- 23 Aug, 2018 3 commits
-
-
Ben L. Titzer authored
This is a reland of b10a967f Original change's description: > [wasm] Add feature counter for threads and shared memory > > This adds a feature counter for WASM shared memory (i.e. the presence > of the "shared" bit in a WASM module's memory section) and the usage > of WASM threads opcodes (i.e. wake/wait and atomics). > > This CL also plumbs the WasmFeatures through the compilation pipeline > to detect features as functions are being compiled. > > R=ahaas@chromium.org, ulan@chromium.org > BUG=chromium:868844 > > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I854f932d3adb16e4fd87196fe2a193950295b856 > Reviewed-on: https://chromium-review.googlesource.com/1186329 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Ben Titzer <titzer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55337} Bug: chromium:868844 Change-Id: Iac3a38d80fa71aadd7147704669a8fd671ecfae8 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1186343 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55363}
-
Maya Lekova authored
This reverts commit b10a967f. Reason for revert: Breaks a TSAN bot - https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64%20TSAN/22122 Original change's description: > [wasm] Add feature counter for threads and shared memory > > This adds a feature counter for WASM shared memory (i.e. the presence > of the "shared" bit in a WASM module's memory section) and the usage > of WASM threads opcodes (i.e. wake/wait and atomics). > > This CL also plumbs the WasmFeatures through the compilation pipeline > to detect features as functions are being compiled. > > R=ahaas@chromium.org, ulan@chromium.org > BUG=chromium:868844 > > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I854f932d3adb16e4fd87196fe2a193950295b856 > Reviewed-on: https://chromium-review.googlesource.com/1186329 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Ben Titzer <titzer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55337} TBR=ulan@chromium.org,titzer@chromium.org,ahaas@chromium.org Change-Id: Id011b6707b3359598621b315b87171644132b0ab No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:868844 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1186421Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#55340}
-
Ben L. Titzer authored
This adds a feature counter for WASM shared memory (i.e. the presence of the "shared" bit in a WASM module's memory section) and the usage of WASM threads opcodes (i.e. wake/wait and atomics). This CL also plumbs the WasmFeatures through the compilation pipeline to detect features as functions are being compiled. R=ahaas@chromium.org, ulan@chromium.org BUG=chromium:868844 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I854f932d3adb16e4fd87196fe2a193950295b856 Reviewed-on: https://chromium-review.googlesource.com/1186329Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55337}
-
- 21 Aug, 2018 1 commit
-
-
Ben L. Titzer authored
R=mstarzinger@chromium.org Change-Id: Iacdff28dd1383d77d7708de4ee22d9f2a77d872a Reviewed-on: https://chromium-review.googlesource.com/1183440 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55284}
-
- 09 Aug, 2018 1 commit
-
-
Ben L. Titzer authored
This CL introduces a set of configuration options implemented as a struct of booleans that together comprise the set of enabled or detected features. The configuration options replace command-line flags that were checked deep in the implementation. As such, it is necessary to plumb them through multiple levels of abstraction. R=ahaas@chromium.org CC=mstarzinger@chromium.org BUG=chromium:868844 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I1b82f5826e4fd263f68e8cafcd923bac5818a637 Reviewed-on: https://chromium-review.googlesource.com/1163670Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55018}
-
- 02 Aug, 2018 1 commit
-
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I3453dbc7aa8be25730672a11b818d7fff01a987b Reviewed-on: https://chromium-review.googlesource.com/1156695Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54868}
-
- 31 Jul, 2018 2 commits
-
-
Michael Starzinger authored
R=ahaas@chromium.org TEST=cctest/test-wasm-shared-engine BUG=v8:7424 Change-Id: Idad7bcfe2734df7395c62ec56fb737e180035c76 Reviewed-on: https://chromium-review.googlesource.com/1152918 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54808}
-
Michael Starzinger authored
This avoids serializing and deserializing the sharable part of a module when it is transferred via {TransferrableModule}, which is possible when all Isolates run off the same engine via the --wasm-shared-engine flag. This adds a new --wasm-shared-code flag to enable this feature. R=ahaas@chromium.org BUG=v8:7424 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I099d581d7ccc4d058a4646f545a011745fd84eb4 Reviewed-on: https://chromium-review.googlesource.com/1142144 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54806}
-
- 30 Jul, 2018 1 commit
-
-
Michael Starzinger authored
R=ahaas@chromium.org TEST=cctest/test-wasm-shared-engine Change-Id: I1f1b643089206805bc88e8898db6bf94093291b5 Reviewed-on: https://chromium-review.googlesource.com/1154916Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54789}
-
- 26 Jul, 2018 2 commits
-
-
Michael Starzinger authored
R=titzer@chromium.org TEST=cctest/test-wasm-shared-engine/SharedEngineRunThreadedExecution Change-Id: I01fbb13408020145c9d6bd6bbb66ca5136922bd2 Reviewed-on: https://chromium-review.googlesource.com/1151629Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54733}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=cctest/test-wasm-shared-engine BUG=v8:7424 Change-Id: I32510f33fb88c2f1a79864e6033d3aa53ad9fe48 Reviewed-on: https://chromium-review.googlesource.com/1150149 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54727}
-
- 09 Jul, 2018 1 commit
-
-
Michael Starzinger authored
This adds an {AccountingAllocator} to the {WasmEngine}, separate from the allocator used per Isolate. It is in preparation of being able to share engines across multiple Isolates. For now we just add up the stats from both allocators until a public API for the engine becomes available. R=ahaas@chromium.org TEST=cctest/test-wasm-shared-engine/SharedEngineRunImported BUG=v8:7424 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ia915a1ae4aa7ebed27073b7b6bd067e31717a6ea Reviewed-on: https://chromium-review.googlesource.com/1127788 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54316}
-
- 05 Jul, 2018 4 commits
-
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I4fb79b1b694c89f348dba71dae0ad68e82b614dc Reviewed-on: https://chromium-review.googlesource.com/1127051 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54267}
-
Michael Starzinger authored
This introduces a second factory method for allocating new module objects that are based on existing native modules which are potentially shared between multiple Isolates. R=clemensh@chromium.org TEST=cctest/test-wasm-shared-engine BUG=v8:7424 Change-Id: I8c74d821542d443a8ad2352cb77b84b445e21acb Reviewed-on: https://chromium-review.googlesource.com/1126931 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54261}
-
Michael Starzinger authored
R=sigurds@chromium.org Change-Id: I1af61feff81f21792d66af7d9b12fc59ea94aacd No-Try: true No-Tree-Checks: true Change-Id: I1af61feff81f21792d66af7d9b12fc59ea94aacd Reviewed-on: https://chromium-review.googlesource.com/1126933 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#54249}
-
Michael Starzinger authored
This is a first set of test cases for sharing an {WasmEngine} and the contained {WasmCode} between multiple Isolates. Currently this can only be done using internal API methods on the Isolate, an external API that is usable by embedders does not exist yet. R=clemensh@chromium.org TEST=cctest/test-wasm-shared-engine BUG=v8:7424 Change-Id: I35541a76b5aceec4519e3a46e6a9ef4d01cad22b Reviewed-on: https://chromium-review.googlesource.com/1126382Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54248}
-