- 24 Apr, 2019 1 commit
-
-
Michael Starzinger authored
R=titzer@chromium.org TEST=mjsunit/regress/regress-9165 BUG=v8:9165 Change-Id: If6d7d56bf164a85675590e69bf9857c11fc1b218 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1578463Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60969}
-
- 09 Apr, 2019 1 commit
-
-
Michael Starzinger authored
This adds support for handling reference types when loading/storing globals. Support for imported mutable globals is still missing and will be done in a follow-up change. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-global-interpreter BUG=v8:8091,v8:7581 Change-Id: I0d14919b1ce7f49c4a0541e3d6a99ee203cfb311 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1558086 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60695}
-
- 08 Apr, 2019 1 commit
-
-
Michael Starzinger authored
This adds preliminary support for references types as argument or return values to functions that are redirected to the interpreter. The current interpreter entry stub remains unchanged, using one buffer area that is hidden from the GC. The corresponding {Runtime_WasmRunInterpreter} now correctly boxes/un-boxes reference types into handles. This switch to a handlified representation happens before any method that potentially triggers a GC is called. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-anyref-interpreter BUG=v8:8091,v8:7581 Change-Id: I41c766ed5ac877042d5964e72f3fd7df390c4e98 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1557147 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60684}
-
- 25 Mar, 2019 1 commit
-
-
Andreas Haas authored
R=mstarzinger@chromium.org Bug: v8:8834 Change-Id: If6bbd60e3d65abf78bb10911254e7fe24932831e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1538118Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60426}
-
- 19 Mar, 2019 1 commit
-
-
Michael Starzinger authored
This adds basic support and tests for having global variables of type "except_ref" that are default initialized to "null". The functionality is part of the exception handling proposal and solely enabled by the corresponding feature flag. R=ahaas@chromium.org TEST=mjsunit/wasm/exceptions-global BUG=v8:8091 Change-Id: I581bc942fbe6688a5c58790a842fb024de22d924 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528439 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60317}
-
- 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}
-
- 23 Jan, 2019 1 commit
-
-
Andreas Haas authored
For the reference types anyref, anyfunc, and nullref, there exist sub-typing rules. The spec says A reference type reftype1 matches a reference type reftype2 if and only if: * Either both reftype1 and reftype2 are the same. * Or reftype1 is nullref. * Or reftype2 is anyref. This CL introduces the type nullref for ref-null, and implements the sub-typing rules in the function-body-decoder. Note that because of the sub-typing check validation performance may regresses. In that case we can optimize the sub-typing check. R=titzer@chromium.org, clemensh@chromium.org Bug: v8:7581 Change-Id: I55bab72a109f3374da3770d141b0fc8067aad8b2 Reviewed-on: https://chromium-review.googlesource.com/c/1430061 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#59043}
-
- 17 Jan, 2019 1 commit
-
-
Andreas Haas authored
Implementation of anyfunc parameters. Different to anyref parameters we have to do a validation in the js-to-wasm wrapper: Only exported wasm functions are allowed. I implemented this check in a runtime function. R=titzer@chromium.org Bug: v8:7581 Change-Id: I6145782fb8578124ddc21b50133c82235d666f19 Reviewed-on: https://chromium-review.googlesource.com/c/1417470Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58885}
-
- 15 Jan, 2019 1 commit
-
-
Michael Starzinger authored
This switches the experimental exception handling implementation to the new proposal where 'catch' blocks behave in a catch-all fashion and a new 'br_on_exn' operation is used to check for a certain exception type and extract the exception values on a match. R=clemensh@chromium.org TEST=unittests/FunctionBodyDecoderTest,mjsunit/wasm/exceptions BUG=v8:8091 Change-Id: Ib12ba28b3aa2a7d831312a83abcb00bf56d0adc3 Reviewed-on: https://chromium-review.googlesource.com/c/1409431 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58832}
-
- 12 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
We were re-definining the FunctionSig typedef in several places. This CL moves it to value-type.h, since it's a signature over ValueType. R=titzer@chromium.org Bug: v8:8238 Change-Id: Id5e8a55c7e0f98d61235e32a5e6cd12e04d26947 Reviewed-on: https://chromium-review.googlesource.com/c/1278387 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56597}
-
- 30 Aug, 2018 1 commit
-
-
Michael Starzinger authored
This adds experimental support for an 'except_ref' value type for caught exceptions as per the exception handling proposal. In the current for it is only allowed to have such types in the stack or in a local, support for having it as part of any signature was left out. The default value for a local of type 'except_ref' is the 'ref_null' value for now. Since this value cannot escape a wasm function, the concrete value is not actually observable. R=ahaas@chromium.org TEST=unittests/LocalDeclDecoderTest.ExceptRef,mjsunit/wasm/exceptions BUG=v8:8091 Change-Id: I7bd65274327a833262f8749cbe0e24e737f6e0c1 Reviewed-on: https://chromium-review.googlesource.com/1196510Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55526}
-
- 12 Jul, 2018 1 commit
-
-
Clemens Hammacher authored
An unordered_map typically provides better performance. Instead of a compare function, we now need a hash function and equality defined on {Signature<T>}. R=mstarzinger@chromium.org Bug: chromium:862123 Change-Id: Iba71030f91949d7453740c884de1d8a4f921c618 Reviewed-on: https://chromium-review.googlesource.com/1131182 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54404}
-
- 09 Jul, 2018 1 commit
-
-
Andreas Haas authored
With this CL we now also support the decoding of the AnyFunc type. I will add the type more deeply in subsequent CLs. R=titzer@chromium.org Bug: v8:7581 Change-Id: I9f30706a442462f915adfd8f720eb65168b80bb8 Reviewed-on: https://chromium-review.googlesource.com/1014111 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#54318}
-
- 07 May, 2018 1 commit
-
-
Andreas Haas authored
R=clemensh@chromium.org CC=titzer@chromium.org Change-Id: I4951bf7ffc8baf51225e7bef60349186811b9f76 Reviewed-on: https://chromium-review.googlesource.com/1024037 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53020}
-
- 24 Apr, 2018 1 commit
-
-
Andreas Haas authored
This CL splits the definition of ValueType and its helper functions into its own header file. R=clemensh@chromium.org Bug: v8:7570 Change-Id: I3aa776edb45839d7d38836e131df45732c685310 Reviewed-on: https://chromium-review.googlesource.com/1021810 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52758}
-