- 22 Jan, 2019 1 commit
-
-
Peter Marshall authored
Everything was including log.h through heap-inl.h, so remove that include by moving the one user into heap.cc, and then fix all the include errors. This reduces the log.h include ball from ~550 to ~100. Change-Id: I6d09bc2f365b48645fcfdc695a68ea12539a745d Reviewed-on: https://chromium-review.googlesource.com/c/1424198 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58981}
-
- 15 Jan, 2019 1 commit
-
-
Clemens Hammacher authored
We often use ResultBase or VoidResult to store or pass wasm errors (errors with locations). This CL extracts a WasmError class which can store an error (can also be empty), and Result<T> which stores an error or a T (exactly one of them). R=titzer@chromium.org Bug: v8:8689 Change-Id: I3f5203559984a0ae8757e0130a9184957fa28df5 Reviewed-on: https://chromium-review.googlesource.com/c/1409365 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#58827}
-
- 14 Jan, 2019 1 commit
-
-
Ben L. Titzer authored
This refactoring CL moves all instantiation logic in its own file, separating it from the module compiler. R=ahaas@chromium.org Change-Id: I5a721c7357022dd7bf32f776b2ab0153f7dd68fc Reviewed-on: https://chromium-review.googlesource.com/c/1409429 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58797}
-
- 08 Jan, 2019 2 commits
-
-
Michael Achenbach authored
This reverts commit ac2fb66b. Reason for revert: Flakily crashes on several bots: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Win32/18524 https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Win64%20-%20msvc/6824 https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64%20-%20internal%20snapshot/19766 Original change's description: > [wasm] Remove finisher task > > This removes the finisher task and instead finishes compilation units > from the background. > It also changes ownership of the AsyncCompileJob to be shared among all > tasks that still operate on it. The AsyncCompileJob dies when the last > reference dies. > > R=ahaas@chromium.org > CC=mstarzinger@chromium.org > > Bug: v8:7921, v8:8423 > Change-Id: Id09378327dfc146459ef41bc97176a8716756ae4 > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel > Reviewed-on: https://chromium-review.googlesource.com/c/1335553 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58630} TBR=ahaas@chromium.org,clemensh@chromium.org Change-Id: I6b332b66adaec8f713fb31f4c8517cae7ebb4645 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7921, v8:8423 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel Reviewed-on: https://chromium-review.googlesource.com/c/1400420Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#58634}
-
Clemens Hammacher authored
This removes the finisher task and instead finishes compilation units from the background. It also changes ownership of the AsyncCompileJob to be shared among all tasks that still operate on it. The AsyncCompileJob dies when the last reference dies. R=ahaas@chromium.org CC=mstarzinger@chromium.org Bug: v8:7921, v8:8423 Change-Id: Id09378327dfc146459ef41bc97176a8716756ae4 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel Reviewed-on: https://chromium-review.googlesource.com/c/1335553Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58630}
-
- 03 Jan, 2019 1 commit
-
-
Clemens Hammacher authored
We currently trigger a GC when creating a module while the remaining uncommitted code space is below 32MB. For bigger modules, this is not enough. Instead, make this limit relative: Trigger GC if we fall below 50% of the available code space, and re-adjust this limit after each GC to avoid repeated GCs that do not free anything. R=ahaas@chromium.org Bug: v8:8624 Change-Id: I7abfad3b57663d528a26d29232ad6bc2dc63cef4 Reviewed-on: https://chromium-review.googlesource.com/c/1391753Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58527}
-
- 02 Jan, 2019 1 commit
-
-
Clemens Hammacher authored
Introduce a LeakyObject template and use that to implement static lazily initialized objects that never get destructed. This was done in a hand-crafted and complex way before via LazyInstance and LazyStaticInstance. R=tebbi@chromium.org Bug: v8:8600, v8:8562 Change-Id: Id160996753b2cb1baf0f4b2cec9e1727f1d01512 Reviewed-on: https://chromium-review.googlesource.com/c/1388539 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#58494}
-
- 26 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
Tbr: ahaas@chromium.org,leszeks@chromium.org,verwaest@chromium.org Bug: v8:3770 Change-Id: Ia6530fbb70dac05e9972283781c3550d8b50e1eb Reviewed-on: https://chromium-review.googlesource.com/c/1390116 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Alexei Filippov <alph@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58470}
-
- 12 Dec, 2018 1 commit
-
-
Clemens Hammacher authored
Compilation failures are already stored in the {CompilationState}. We never use the information which individual compilation unit failed. Hence remove that getter, and only check for failure of the overall compilation. R=ahaas@chromium.org Bug: v8:7921, v8:8343 Change-Id: Ibf90be233c9ff576ec8a3413ba5abefe2fdb645e Reviewed-on: https://chromium-review.googlesource.com/c/1373783Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58195}
-
- 11 Dec, 2018 2 commits
-
-
Clemens Hammacher authored
This was done via {managed_native_module()->get()}. Add a simple getter for that. R=ahaas@chromium.org Bug: v8:8562 Change-Id: I8e461a8e16b618abdb772098fad3a6b721d54902 Reviewed-on: https://chromium-review.googlesource.com/c/1371564Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58156}
-
Clemens Hammacher authored
The class declaration regexp in cpplint did not catch classes decorated by V8_EXPORT, V8_EXPORT_PRIVATE or any other decorator containing digits. This will be fixed in https://github.com/google/styleguide/pull/422. This CL already prepares the code base by fixing all errors that will be found after that change. Some follow-up changes were needed to fix implicit conversion that are not taken any more now. R=mstarzinger@chromium.org Bug: v8:8562 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I03713bd04dbc3f54b89a6c857a93463139aa5efd Reviewed-on: https://chromium-review.googlesource.com/c/1367751Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58143}
-
- 10 Dec, 2018 1 commit
-
-
Andreas Haas authored
CompileJsToWasmWrappers only needs a WasmModule, so we should not pass in a NativeModule. R=clemensh@chromium.org Bug: v8:8562 Change-Id: Ic38f1bee2eab3a06921c27f56fd175b51688ad5f Reviewed-on: https://chromium-review.googlesource.com/c/1367748Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58120}
-
- 21 Nov, 2018 1 commit
-
-
Ross McIlroy authored
Moves allocation of the WasmModuleObject for asm.js code out of SyncCompileTranslatedAsmJS since that is called when we are compiling the native context independent SharedFunctionInfo and the WasmModuleObject requires a native context. Instead save the members required to create the object in the AsmWasmData and create it during module instantiation. Note: since the Wasm module is an implementation detail for asm_wasm code and isn't exposed, this doeesn't have semantic change for asm.js code. As part of this change, the AsmWasmData is changed from a FixedArray to a dedicated struct. Some logic is also moved from module-compiler to wasm-engine to make the seperation between Wasm SyncCompile and AsmJS SyncCompile more clear. BUG=chromium:900535,v8:8395 Change-Id: Ia48469c095b0688f210aa86e7430c9ab4ea4b26b Reviewed-on: https://chromium-review.googlesource.com/c/1345509 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57704}
-
- 14 Nov, 2018 1 commit
-
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: Idb11b07df72f2d9d1c606d04af701cb4e9853664 Reviewed-on: https://chromium-review.googlesource.com/c/1335549Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57494}
-
- 12 Nov, 2018 1 commit
-
-
Clemens Hammacher authored
1) For the code space estimate, exclude everything except code. 2) Add some static code size per function. 3) Add some static code size per module. 4) Include signature zone memory. R=mstarzinger@chromium.org Change-Id: Ifa9ac347edf98c2e63ab3201a64ac2e0a3de28e5 Reviewed-on: https://chromium-review.googlesource.com/c/1118263Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#57436}
-
- 30 Oct, 2018 2 commits
-
-
Clemens Hammacher authored
For memory limit checks, we should use the minimum of the --wasm-max-mem-pages flag and kV8MaxWasmMemoryPages. The former is a limit set by the user, the latter is the maximum we can handle internally. R=titzer@chromium.org Bug: chromium:898677 Change-Id: I3c549f4e90dd016b5d07475d9353f30134f76dcc Reviewed-on: https://chromium-review.googlesource.com/c/1305274 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#57127}
-
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 3 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}
-
Clemens Hammacher authored
See discussion after this CL: https://crrev.com/c/1297960 We want to avoid the link from NativeModule to WasmEngine to enforce encapsulation. If someone needs access to the WasmEngine, we should give them a direct pointer. R=titzer@chromium.org Bug: v8:8217 Change-Id: I5bb6f4bf9b56c43085786d7092151d51bd0ff3ca Reviewed-on: https://chromium-review.googlesource.com/c/1304433Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#57076}
-
- 25 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
The {CompilationState} currently stores the {WasmEngine}, while the {NativeModule} only stores the {WasmCodeManager}. From a high-level view, this does not make much sense. The {NativeModule} belongs to exactly one {WasmEngine}, so that link should be stored there. We can then get to the {WasmCodeManager} from the {WasmEngine}. This change requires a refactoring of the {WasmCodeManagerTest} which created {WasmCodeManager}s independent of the {Isolate} and the {WasmEngine}. This is not supported any more. Note that in production, each {WasmEngine} owns exactly one {WasmCodeManager} and one {WasmMemoryTracker}, so testing that a {WasmMemoryTracker} can be shared by several {WasmCodeManager}s didn't make sense in the first place. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: I582e698be35f97dbd38bf6e12eb7f8ee4fc1f0f2 Reviewed-on: https://chromium-review.googlesource.com/c/1297960 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56992}
-
- 24 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
For implementing wasm GC we need to revisit all places where we hold WasmCode*. This CL reduces these places. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: I869e3c1817a3b9a24ab6aa281c0688bdf890dd33 Reviewed-on: https://chromium-review.googlesource.com/c/1297951Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56942}
-
- 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}
-
- 19 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
Previously, this was just a field on the WasmResult, which is not allowed according to the style guide. A special r-value accessor for the value is needed for the cases where the contained type is not copyable, e.g. unique_ptr. R=titzer@chromium.org Bug: v8:8238 Change-Id: Ia3c14c4c62c3c2e07f1dc4594f1bc9d1da88f91e Reviewed-on: https://chromium-review.googlesource.com/c/1290974 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56823}
-
- 12 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
LockGuard is mostly used with Mutex. Since both are defined outside the internal namespace, we often have to write {base::LockGuard<base::Mutex>}. This CL shortens this to {base::MutexGuard} across the code base R=mlippautz@chromium.org Bug: v8:8238 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I020d5933b73aafb98c4b72e3bb2dfd07c979ba73 Reviewed-on: https://chromium-review.googlesource.com/c/1278796Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56612}
-
- 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}
-
- 13 Sep, 2018 1 commit
-
-
Aseem Garg authored
This CL enables source maps support for wasm. Devtools should be able to pick up source_mapping_url parsed here and load the corresponding source maps. R=kozyatinskiy@chromium.org,clemensh@chromium.org,titzer@chromium.org,yangguo@chromium.org BUG=v8:8081 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I1db0ff597d229e7db8d383fe9ee081c7fa4e7648 Reviewed-on: https://chromium-review.googlesource.com/1185973 Commit-Queue: Aseem Garg <aseemgarg@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55878}
-
- 07 Sep, 2018 2 commits
-
-
Florian Sattler authored
Bug: v8:8015 Change-Id: If6017a85683efcc847dab8034fdd82ac51106317 Reviewed-on: https://chromium-review.googlesource.com/1213182Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55721}
-
Florian Sattler authored
Bug: v8:8015 Change-Id: I4e4892f49de69b8c6c3347de024708997825cb44 Reviewed-on: https://chromium-review.googlesource.com/1209848Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55704}
-
- 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}
-
- 17 Aug, 2018 1 commit
-
-
Michael Starzinger authored
This makes sure that a tier-up from Ignition to TurboFan (or any other code publishing) preserves redirections to the Interpreter. Currently an interpreted function never switches back to compiled. R=titzer@chromium.org TEST=mjsunit/wasm/interpreter-mixed BUG=v8:7921,v8:8018 Change-Id: Ifca479953509708c998c11cc00b481c232678e00 Reviewed-on: https://chromium-review.googlesource.com/1179661 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55195}
-
- 14 Aug, 2018 1 commit
-
-
Andreas Haas authored
The problem was that in AsyncCompileJob::FinishModule we allocate a handle, but when this function is called from streaming compilation, then there was no HandleScope around AsyncCompileJob::FinishModule. This issue was fixed in another CL, https://crrev.com/c/1172357. This CL is just a rebase of the original CL. Original change's description: > [wasm] Implement the new API for WebAssembly.instantiateStreaming > This is the second V8 CL to refactor WebAssembly.instantiateStreaming to > make it spec compliant again. The design doc where the whole change is > discussed is available in the tracking bug. The tracking bug also > references prototype implementations of the whole change, which includes > the changes in this CL. R=starzinger@chromium.org Bug: chromium:860637 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ib0cb25488654d2b325b4f529d33b76b846c64436 Reviewed-on: https://chromium-review.googlesource.com/1172429Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55106}
-
- 13 Aug, 2018 1 commit
-
-
Clemens Hammacher authored
After https://crrev.com/c/1172285, abortion and deletion of an {AsyncCompileJob} is the same. Hence, remove the {AbortCompileJobsOnIsolate} method and replace all uses by {DeleteCompileJobsOnIsolate}. R=ahaas@chromium.org CC=mstarzinger@chromium.org Bug: chromium:869420 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I053dc47395a257066bbca55069d53445dc28eeb9 Reviewed-on: https://chromium-review.googlesource.com/1172288Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55092}
-
- 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}
-
- 07 Aug, 2018 1 commit
-
-
Andreas Haas authored
For async instantiation of WebAssembly code we had the assumption that a pending exceptions (an exception which comes from execution JS code) and an ErrorThrower error cannot occur at the same time. This assumption turned out to be wrong. With this CL we handle this case by prefering pending_exceptions over ErrorThrower errors. In addition I extended the tests for failing instantiation to also exercise async instantiation, and I added a regression test. R=clemensh@chromium.org Bug: chromium:870646 Change-Id: I4cb54ff8642ad4ea193b20f79905c9f6508c2b2e Reviewed-on: https://chromium-review.googlesource.com/1163511Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54940}
-
- 02 Aug, 2018 1 commit
-
-
Andreas Haas authored
This reverts commit b556c9ea. Reason for revert: Flakes in layout tests: https://crbug.com/870187 Original change's description: > [wasm] Implement the new API for WebAssembly.instantiateStreaming > > This is the second V8 CL to refactor WebAssembly.instantiateStreaming to > make it spec compliant again. The design doc where the whole change is > discussed is available in the tracking bug. The tracking bug also > references prototype implementations of the whole change, which includes > the changes in this CL. > > R=mstarzinger@chromium.org > > Bug: chromium:860637 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I776c0f24959ab5663727d3dfee0248a9b0642a42 > Reviewed-on: https://chromium-review.googlesource.com/1143187 > Commit-Queue: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54834} TBR=mstarzinger@chromium.org,ahaas@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:860637 Change-Id: Icbf2603143068a49c61de162aa7185a753703e5d Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1160261Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54872}
-