- 21 Jun, 2019 1 commit
-
-
Sigurd Schneider authored
v8memory.h does not have V8 specific definitions, and having it in base makes it clear that every component may include the file. It also ensures that including it does not create spurious dependencies on v8_base. Change-Id: I565f63b25f33a9ada19d7b2ac5990863ab17f4a7 Bug: v8:9183, v8:8855 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1657923 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#62309}
-
- 08 Jun, 2019 1 commit
-
-
Ben Smith authored
PrintWasmText is used for disassembling wasm code in DevTools, but many instructions are not implemented. This test should make it easier to remember to implement this when adding new instructions. Change-Id: I6030a70113320f11a1ac0436bf0d220b5c41e6d1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1647475 Commit-Queue: Ben Smith <binji@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62063}
-
- 28 May, 2019 1 commit
-
-
Andreas Haas authored
The instruction is the same as the existing {select} instruction with type. Both inputs must be in a sub-type relationship with the type specified in the type instruction. R=clemensh@chromium.org Bug: v8:7581 Change-Id: Ibead6cd0253210828c8114336ea0942e6cbd6126 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1631413 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61886}
-
- 24 May, 2019 3 commits
-
-
Yang Guo authored
TBR=mvstanton@chromium.org,neis@chromium.org,ahaas@chromium.org Bug: v8:9247 Change-Id: I5433c863a54f3412d73df0d38aba3fdbcfac7ebe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627973 Commit-Queue: Yang Guo <yangguo@chromium.org> Auto-Submit: Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61830}
-
Andreas Haas authored
Deleting this comment addresses feedback of https://crrev.com/c/1627348. I changed the comment in gerrit but forgot to publish the change. NOTRY=true TBR=mstarzinger@chromium.org Change-Id: Ia76a1fa6dc6c593e559626c9bf9a564f3f09f777 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627986Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61824}
-
Andreas Haas authored
New spec changes allow anyref tables to be initialized with function references. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I59596e1e383408114b974fa10529ae15b8cf7a15 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627348Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61823}
-
- 23 May, 2019 3 commits
-
-
Yang Guo authored
NOPRESUBMIT=true TBR=mstarzinger@chromium.org Bug: v8:9247 Change-Id: I4cd6b79a1c2cba944f6f23caed59d4f1a4ee358b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624217 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61790}
-
Yang Guo authored
TBR=bmeurer@chromium.org,leszeks@chromium.org Bug: v8:9247 Change-Id: I8d14d0192ea8c705f8274e8e61a162531826edb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624220Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61769}
-
Yang Guo authored
Bug: v8:9247 Change-Id: I0023200c54fa6499ae4e2cf5e4c89407cc35f187 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624218Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61762}
-
- 22 May, 2019 1 commit
-
-
Yang Guo authored
Bug: v8:9247 Change-Id: I79e0553e8a0d6dac2aa16b94a6c0e05b6ccde4a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621934 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#61725}
-
- 21 May, 2019 1 commit
-
-
Yang Guo authored
Bug: v8:9247 TBR=bmeurer@chromium.org,neis@chromium.org NOPRESUBMIT=true Change-Id: Ia1e49d1aac09c4ff9e05d58fab9d08dd71198878 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621931Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61682}
-
- 14 May, 2019 1 commit
-
-
Andreas Haas authored
Bug: v8:7581 Change-Id: I7ec9a7dbfb57cd6b5d985a7dc664ca3c0965969c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1605726Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61480}
-
- 13 May, 2019 3 commits
-
-
Clemens Hammacher authored
{CommitPageSize()} can be smaller than {AllocatePageSize()} (on win64, it's 4kb vs 64kb), thus use the commit size where appropriate. R=titzer@chromium.org Change-Id: Ic9a009158d788aa0c53e15790ea089f01ade0d0a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1605940Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61450}
-
Clemens Hammacher authored
This factors out a {WasmCodeAllocator} which manages all code reservations and allocations for a {NativeModule}. This will allow for better testing of this component (which will be added in a separate CL). R=titzer@chromium.org Change-Id: I09727c30afc533e95569276147792d0e641b0507 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1605738 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#61445}
-
Andreas Haas authored
I did the implementation with a runtime function. I extracted some code from the implementation of table.get. By accident I formatted anyfunc.js. However, since it's an improvement, I don't want to undo it. I didn't change anything in the older tests though, I only added new tests at the end. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I31832ccc817e1e7989f486d6487108c14d21bbea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1602701 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61442}
-
- 09 May, 2019 1 commit
-
-
Paolo Severini authored
The original CL title was updated to reflect CL contents. The --win64-unwinding-info flag still exists but it is set by default. This is a reland of efd8c2d9 Original change's description: > Remove --win64-unwinding-info flag and always generate unwind info on Win/x64 > > The generation of unwind info to enable stack walking on Windows/x64 > (https://chromium-review.googlesource.com/c/v8/v8/+/1469329) was implemented > behind a temporary flag, in order to coordinate these changes with the > corresponding changes in Chromium. > > The required changes to Chromium > (https://chromium-review.googlesource.com/c/chromium/src/+/1474703) have also > been merged, so we can now remove the flag and enable the generation of stack > unwinding info by default on Windows/x64. > > Bug: v8:3598 > Change-Id: I88814aaeabecc007f5262227aa0681a1d16156d5 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1573138 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Paolo Severini <paolosev@microsoft.com> > Cr-Commit-Position: refs/heads/master@{#61020} Bug: v8:3598, chromium:958035 Change-Id: Ie53b39f3bb31567797a61e5110685284c266c1f9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599596 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#61368}
-
- 07 May, 2019 2 commits
-
-
Andreas Haas authored
The implementation is done with a runtime function. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I5f27b1fdc7cc2baf6919b4db3bf053a350b91a74 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1596738 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61274}
-
Jakob Gruber authored
This reverts commit efd8c2d9. Reason for revert: Performance regressions (chromium:958035) Original change's description: > Remove --win64-unwinding-info flag and always generate unwind info on Win/x64 > > The generation of unwind info to enable stack walking on Windows/x64 > (https://chromium-review.googlesource.com/c/v8/v8/+/1469329) was implemented > behind a temporary flag, in order to coordinate these changes with the > corresponding changes in Chromium. > > The required changes to Chromium > (https://chromium-review.googlesource.com/c/chromium/src/+/1474703) have also > been merged, so we can now remove the flag and enable the generation of stack > unwinding info by default on Windows/x64. > > Bug: v8:3598 > Change-Id: I88814aaeabecc007f5262227aa0681a1d16156d5 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1573138 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Paolo Severini <paolosev@microsoft.com> > Cr-Commit-Position: refs/heads/master@{#61020} TBR=ulan@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,paolosev@microsoft.com # Not skipping CQ checks because original CL landed > 1 day ago. Tbr: ulan@chromium.org,mstarzinger@chromium.org,paolosev@microsoft.com Bug: v8:3598, chromium:958035 Change-Id: Ia86a230ee83080ed8ace43e4641c8c1013043df4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598748 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61259}
-
- 03 May, 2019 2 commits
-
-
Andreas Haas authored
This CL adds decoding and code generation for the table.size instruction. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I0e689a993d25db72281ebba0854454be12f4d350 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593302 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61195}
-
Andreas Haas authored
This CL add decoding and code generation for the table.grow instruction. For code generation we just generate a runtime call. The implementation is quite straight-forward. However, I did several small cleanups along the way. I hope it's still acceptable. I could also split out some cleanups into separate CLs. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: Id885b7e70eb4f5bccfe779eb216f7cc9302ea3a5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593078 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61192}
-
- 29 Apr, 2019 1 commit
-
-
Clemens Hammacher authored
Our {Vector} template provides both {start} and {begin} methods. They return exactly the same value. Since the {begin} method is needed for iteration, and is also what standard containers provide, this CL switches all uses of the {start} method to use {begin} instead. Patchset 1 was auto-generated by using this clang AST matcher: callExpr( callee( cxxMethodDecl( hasName("start"), ofClass(hasName("v8::internal::Vector"))) ), argumentCountIs(0)) Patchset 2 was created by running clang-format. Patchset 3 then removes the now unused {Vector::start} method. R=jkummerow@chromium.org TBR=mstarzinger@chromium.org,yangguo@chromium.org,verwaest@chromium.org Bug: v8:9183 Change-Id: Id9f01c92870872556e2bb3f6d5667463b0e3e5c6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1587381Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61081}
-
- 25 Apr, 2019 1 commit
-
-
Paolo Severini authored
The generation of unwind info to enable stack walking on Windows/x64 (https://chromium-review.googlesource.com/c/v8/v8/+/1469329) was implemented behind a temporary flag, in order to coordinate these changes with the corresponding changes in Chromium. The required changes to Chromium (https://chromium-review.googlesource.com/c/chromium/src/+/1474703) have also been merged, so we can now remove the flag and enable the generation of stack unwinding info by default on Windows/x64. Bug: v8:3598 Change-Id: I88814aaeabecc007f5262227aa0681a1d16156d5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1573138Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Paolo Severini <paolosev@microsoft.com> Cr-Commit-Position: refs/heads/master@{#61020}
-
- 15 Apr, 2019 1 commit
-
-
Bill Ticehurst authored
Check if storage for thread_local variables has been allocated before attempting to access such variables, as exceptions may be raised in the thread before this initializion is complete, causing an infinite loop. Bug: v8:8966 Change-Id: Ifc6223b74999a55bfd0ed2d6ebf054bbffd7e809 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1507714 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60852}
-
- 09 Apr, 2019 1 commit
-
-
Clemens Hammacher authored
The {remaining_uncommitted_code_space} method is only used for testing. This CL removes it, and replaces all uses by {committed_code_space}. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: Icb50471da3564a5cd114b15836c8b346b932a108 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1559735 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60704}
-
- 05 Apr, 2019 1 commit
-
-
Frederik Gossen authored
Locks for compilation state callbacks and for the native module are again taken one after the other. As a consequence, publishing compiled Wasm code again happens in parallel. Compile times are now comparable to before lazy hints were enabled. Bug: chromium:949050 Change-Id: I45c52254d046de080938bd131fd3ed8116660bef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1552787 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60646}
-
- 03 Apr, 2019 3 commits
-
-
Frederik Gossen authored
Merged WasmCode::Tier into Execution Tier. Bug: v8:9003 Change-Id: I0ad439b8bc060f73e71d60ab9c93dd6bc18d05fe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547852 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60610}
-
Clemens Hammacher authored
Using the Isolate's allocator when creating the WasmModule can lead to use-after-free situations when the NativeModule is shared across Isolates. R=mstarzinger@chromium.org Bug: v8:9079 Change-Id: I5a564852179cc5b9d4cbad2a002d3b6e14b01968 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1550404Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60605}
-
Frederik Gossen authored
The tiers are now consistently referred to as baselin and top tier. Bug: v8:9003 Change-Id: I74ad1867aca63bee9eb83b7f0f9fbaf2b1523dcb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547667 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60591}
-
- 02 Apr, 2019 2 commits
-
-
Clemens Hammacher authored
This CL adds all the necessary {WasmCodeRefScope}s in the code base, or at least a good approximation. A follow-up CL will enable a check that a {WasmCodeRefScope} exists whenever a pointer to a {WasmCode} object is returned from the {NativeModule}. This should flush out any missing scopes. R=titzer@chromium.org Bug: v8:8217 Change-Id: I54c7eb39aeb1acde38273c399396e6b1390a4cb2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1533860 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60566}
-
Frederik Gossen authored
This is a reland of 09fa63a9 Original change's description: > [wasm-hints] Enabled Lazy Compilation by Hint > > Hints for lazy compilation are now taken into consideration. If the > custom hints section suggests lazy compilatin we do so unless the module > consists of a single function. > > Bug: v8:9003 > Change-Id: Ibdc400453cee20d4d5c814733887b38fb675b220 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535827 > Commit-Queue: Frederik Gossen <frgossen@google.com> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60557} Bug: v8:9003 No-Try: true Change-Id: I8d6f4518aa548c815fba4e6e62d2206129336cc6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547851 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60564}
-
- 01 Apr, 2019 2 commits
-
-
Frederik Gossen authored
This reverts commit 09fa63a9. Reason for revert: Falkes on https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20shared/29942 Original change's description: > [wasm-hints] Enabled Lazy Compilation by Hint > > Hints for lazy compilation are now taken into consideration. If the > custom hints section suggests lazy compilatin we do so unless the module > consists of a single function. > > Bug: v8:9003 > Change-Id: Ibdc400453cee20d4d5c814733887b38fb675b220 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535827 > Commit-Queue: Frederik Gossen <frgossen@google.com> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60557} TBR=mstarzinger@chromium.org,clemensh@chromium.org,frgossen@google.com Change-Id: I18dd424fe8cf05f220f7498bb1ebe4b9fce7d240 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9003 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547668Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60558}
-
Frederik Gossen authored
Hints for lazy compilation are now taken into consideration. If the custom hints section suggests lazy compilatin we do so unless the module consists of a single function. Bug: v8:9003 Change-Id: Ibdc400453cee20d4d5c814733887b38fb675b220 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535827 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60557}
-
- 29 Mar, 2019 1 commit
-
-
Clemens Hammacher authored
Even though both are allowed in the style guide, it recommends to use 'using', as its syntax is more consistent with the rest of C++. This CL turns all typedefs in wasm code to 'using' declarations. R=ahaas@chromium.org Bug: v8:8834 Change-Id: Ibdce88a5cc31e0785cbc1b34088bd39aa3ec84b3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545890Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60519}
-
- 21 Mar, 2019 1 commit
-
-
Andreas Haas authored
The reason for the revert was that Liftoff did not bail out on indirect calls to tables other than table 0. Whenever the Liftoff code got executed, the test would fail. Original message: With this CL it is possible to use any anyfunc table in call-indirect, not just the first table. The current implementation is based on runtime calls. This is just an initial implementation which should be replaced by a dispatch-table-based eventually. However, this implementation allows us to move forward with the anyref proposal implementation. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: Iedd56ee7acb281441bca32ffd3dc7157203ee1ac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532072 Commit-Queue: Andreas Haas <ahaas@chromium.org> Auto-Submit: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60382}
-
- 20 Mar, 2019 4 commits
-
-
Clemens Hammacher authored
This prepares a refactoring to add and publish compilation results in batches. For this, we need to separate the two phases, so that we can lock the module, allocate all the code space, release the lock, copy the code, lock the module, publish the code, and release the lock again. In particular, this CL does the following: 1) It removes the {AddOwnedCode} method. The functionality of creating the {WasmCode} and memcpy'ing the instruction into that is done in the other {Add*Code} methods. Adding to {owned_code_} is done in {PublishCode}. 2) {PublishInterpreterEntry} is now functionally equivalent to {PublishCode}, so it's removed. 3) After {AddCode}, the caller has to call {PublishCode}. In a follow-up CL, this will be called in batches (first {AddCode} them all, then {PublishCode} them all). 4) {AddCompiledCode} now assumes that the {WasmCompilationResult} succeeded. Otherwise, the caller should directly call {SetError} on the {CompilationState}. 5) {PublishCode} is now the chokepoint for installing code to the code table, the owned code vector, the jump table, and setting interpreter redirections. It replaces previous direct calls to {InstallCode} or explicitly adding to {owned_code_}. 6) Increasing the {generated_code_size_} counter is now done in {AllocateForCode}, which is the chokepoint for allocating space for generated code. This way, we will only increase this counter once once we allocate in batches. R=titzer@chromium.org Bug: v8:8916 Change-Id: I71e02e3a838f21797915cee3ebd373804fb12237 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530817 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60369}
-
Andreas Haas authored
This reverts commit 9d167f57. Reason for revert: There is a crash on https://ci.chromium.org/p/v8/builders/ci/V8%20Win32/20026 Original change's description: > [wasm][anyref] Add support of call-indirect for multiple tables > > With this CL it is possible to use any anyfunc table in call-indirect, > not just the first table. > > The current implementation is based on runtime calls. This is just an > initial implementation which should be replaced by a > dispatch-table-based eventually. However, this implementation allows > us to move forward with the anyref proposal implementation. > > R=mstarzinger@chromium.org > > Bug: v8:7581 > Change-Id: I57d09b18add7f525555bf7c949aef17a64b0e7c5 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530801 > Commit-Queue: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60360} TBR=mstarzinger@chromium.org,ahaas@chromium.org Change-Id: Iba4b84078aa070498be7e79212970b94595f5757 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7581 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532069Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60362}
-
Andreas Haas authored
With this CL it is possible to use any anyfunc table in call-indirect, not just the first table. The current implementation is based on runtime calls. This is just an initial implementation which should be replaced by a dispatch-table-based eventually. However, this implementation allows us to move forward with the anyref proposal implementation. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I57d09b18add7f525555bf7c949aef17a64b0e7c5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530801 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60360}
-
Frederik Gossen authored
This is just one small unit test for now. As we expect to adapt the encoding this is more of an exercise than exhaustive testing. Bug: v8:9003 Change-Id: I8f59043c3f7acbb6169254ec6d6ae13251d1054f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1526010 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60358}
-
- 18 Mar, 2019 1 commit
-
-
Andreas Haas authored
Anyfunc globals are very similar to anyref globals. This CL is mostly about extending the conditions which guard the anyref globals code. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: Ia92ac4560102cc3ed0060342f92758db28f415ca Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1526004Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60281}
-
- 13 Mar, 2019 1 commit
-
-
Clemens Hammacher authored
We need to ensure that the NativeModule stays alive while any {BackgroundCompileScope} exists, because during that time we hold shared ownership of the mutex in the {BackgroundCompileToken}. If the {NativeModule} dies during that period, we would need to get exclusive ownership of the mutex and deadlock. This change requires holding a {std::weak_ptr<NativeModule>} in the BackgroundCompileToken instead of a raw pointer, hence it can only be initialized after the NativeModule was created. This is done via a separate {InitCompilationState} method. R=ahaas@chromium.org Bug: v8:8979 Change-Id: Ia14bd272ea0bc47aec547024da6020608418c9d2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1518178 Auto-Submit: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60203}
-