- 25 Oct, 2018 1 commit
-
-
Michael Starzinger authored
This adds support for having reference type values (i.e. anyref) stored in an exception. It is the natural combination of the reference type proposal and the exception handling proposal. Note that this also introduces support for having write barriers in generated WasmCode, as this is the first time we are storing references within generated code. Such write barriers will be needed for other uses of reference types (e.g. mutable global) regardless. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-anyref BUG=v8:8341 Change-Id: I1211d4a850954622cb873eede0b4024fecc3dd8b Reviewed-on: https://chromium-review.googlesource.com/c/1296484 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@{#56995}
-
- 24 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
Because of ordering issues we didn't set the wire bytes on the {NativeModule} during {OnFinishedStream}. We then failed during instantiation when trying to read the import names from the wire bytes. This CL fixes this locally without much code churn. I plan to clean up the interaction between {AsyncCompileJob} and {AsyncStreamingProcessor} in a follow-up CL. R=ahaas@chromium.org Bug: chromium:898310 Change-Id: I06337a04ba380f87b803f325323208298d363f41 Reviewed-on: https://chromium-review.googlesource.com/c/1296467Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56938}
-
- 22 Oct, 2018 1 commit
-
-
Michael Starzinger authored
This adds an attribute field to the binary encoding of exception types in the exceptions and import section. Currently the attribute value is not used and expected to be zero, but it ensures the binary encoding is extensible for future changes. R=clemensh@chromium.org TEST=unittests/WasmModuleVerifyTest BUG=v8:8153 Change-Id: I6f0e10cb1b6515177d8200ebf1f4f0b122832868 Reviewed-on: https://chromium-review.googlesource.com/c/1291075 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56841}
-
- 19 Oct, 2018 2 commits
-
-
Stephan Herhut authored
This test is modelled after the atomics-stress test but supports 64 bit operands. Bug: v8:6532 Change-Id: I313b1ade74a58201b3fa097ba5b1515754a685db Reviewed-on: https://chromium-review.googlesource.com/c/1234414 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56812}
-
Stephan Herhut authored
This test runs random sequences of atomic wasm operations on multiple threads and tries to compute an equivalent sequential interleaving that would reproduce intermediate results. By its nature, this test might time out and is flaky. Bug: v8:6532 Change-Id: Iafdab4561cbf37a5c3fa9b8af9d0fbaaf5681608 Reviewed-on: https://chromium-review.googlesource.com/c/1195366 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56810}
-
- 18 Oct, 2018 1 commit
-
-
Ben Smith authored
This is a reland of a12203c6 Original change's description: > [wasm] Add a new wasm-js testsuite to run js-api tests > > These changes were necessary to run with the new style of jsapi tests > introduced in https://github.com/WebAssembly/spec/pull/883. > > Change-Id: I4629dd48d595ed97ed0607dec9e7d9808c706a7e > Reviewed-on: https://chromium-review.googlesource.com/c/1277724 > Commit-Queue: Ben Smith <binji@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Mathias Bynens <mathias@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56745} Change-Id: I25fcd95bfc1aee1d21da390359423e5dfed112a4 Reviewed-on: https://chromium-review.googlesource.com/c/1286952 Commit-Queue: Ben Smith <binji@chromium.org> Reviewed-by:
Ben Smith <binji@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#56791}
-
- 17 Oct, 2018 2 commits
-
-
Bill Budge authored
This reverts commit a12203c6. Reason for revert: Breaks isolate_tests https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20builder/36777 Original change's description: > [wasm] Add a new wasm-js testsuite to run js-api tests > > These changes were necessary to run with the new style of jsapi tests > introduced in https://github.com/WebAssembly/spec/pull/883. > > Change-Id: I4629dd48d595ed97ed0607dec9e7d9808c706a7e > Reviewed-on: https://chromium-review.googlesource.com/c/1277724 > Commit-Queue: Ben Smith <binji@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Mathias Bynens <mathias@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56745} TBR=binji@chromium.org,machenbach@chromium.org,yangguo@chromium.org,ahaas@chromium.org,clemensh@chromium.org,mathias@chromium.org Change-Id: I2edd0ca94cb5990322571879c81671fa835f3ecd No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/1286526Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#56746}
-
Ben Smith authored
These changes were necessary to run with the new style of jsapi tests introduced in https://github.com/WebAssembly/spec/pull/883. Change-Id: I4629dd48d595ed97ed0607dec9e7d9808c706a7e Reviewed-on: https://chromium-review.googlesource.com/c/1277724 Commit-Queue: Ben Smith <binji@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#56745}
-
- 15 Oct, 2018 3 commits
-
-
Michael Starzinger authored
This switches the encoding of the exceptions (in the exceptions as well as the import section) to use a signature index instead of a flat type vector encoding. Note that only signatures that have a void return type can be used for declaring exceptions. R=clemensh@chromium.org BUG=v8:8153 Change-Id: I481ccbce9ddf29becdf4ed7ceffe80d6145446e1 Reviewed-on: https://chromium-review.googlesource.com/c/1280323 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56654}
-
Adam Klein authored
Change-Id: I982f3615136c7a4ba18e4a6d2cc06a3e24e22f54 Reviewed-on: https://chromium-review.googlesource.com/c/1277722Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#56645}
-
Clemens Hammacher authored
For serialization we are using the code table to find the code of all functions. We want to serialize compiled code though, not interpreter entries (we currently fail a DCHECK there). This CL changes the logic to not update the code table with interpreter entries but instead keeps a separate bit set of interpreted functions. R=mstarzinger@chromium.org Bug: v8:8177, chromium:735509 Change-Id: I69c59f92712135ddef667b54114614fad94cc6fc Reviewed-on: https://chromium-review.googlesource.com/c/1278794Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56644}
-
- 11 Oct, 2018 2 commits
-
-
Michael Starzinger authored
R=titzer@chromium.org TEST=mjsunit/wasm/exceptions-rethrow,unittests/FunctionBodyDecoderTest BUG=v8:8091 Change-Id: If52be505fb9897af1bd59d17d1ab47b33b665be0 Reviewed-on: https://chromium-review.googlesource.com/c/1273050 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56563}
-
Michael Starzinger authored
This makes sure that catch blocks that are practically unreachable due to missing exceptional projections are handled properly. Note that this is independent of how reachability will be outlined in the final spec for exception handling. Currently we just assume that all catch blocks are spec-wise reachable. R=titzer@chromium.org TEST=mjsunit/wasm/exceptions-catchall BUG=v8:8091 Change-Id: I13607a59bd76be146df836e88105a2fbafedb760 Reviewed-on: https://chromium-review.googlesource.com/c/1273018Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56556}
-
- 10 Oct, 2018 2 commits
-
-
Ben Smith authored
Use naming similar to the spec: "table" instead of "function table", "element segment" instead of "function table init". Change-Id: Ib1b6cdfa566f8bd00017ccedf9440084204f10ff Reviewed-on: https://chromium-review.googlesource.com/c/1273612 Commit-Queue: Ben Smith <binji@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56545}
-
Ben L. Titzer authored
This CL refactors the implementation of WASM->JS import wrappers in order to make the wrapper code shareable. Instead of specializing to the import index, we use a tuple as the object ref in the both the import and indirect tables. The tuple allows the wrapper code to load both the calling instance and the target callable, rather than relying on code specialization. This requires some tricky codegen machinery, because WASM call descriptors expect an instance argument in a given register, yet the wrappers receive a tuple, the code generator must generate a prologue that loads the instance (and the callable), since it is not possible to express this at the graph level. R=mstarzinger@chromium.org CC=clemensh@chromium.org Change-Id: Id67e307f7f5089e776f5439a53b5aee4b76934b6 Reviewed-on: https://chromium-review.googlesource.com/c/1268237 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56520}
-
- 09 Oct, 2018 3 commits
-
-
Michael Starzinger authored
This fixes handling of two corner cases with catch-all blocks: 1) The catch-all blocks are conceptually outside the corresponding try. 2) Reachability of catch-all is determined by parent reachability. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-catchall BUG=v8:8091 Change-Id: Idfd8310bc232f3ce389763023c5a33f1ef90e0b5 Reviewed-on: https://chromium-review.googlesource.com/c/1270816Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56486}
-
Michael Starzinger authored
This adds support for multiple catch blocks being attached to a single try block. The implemented semantics are that type checks are performed in order from top to bottom. Note that multiple catch blocks of the same type are not prohibited and will be accepted, making the second such block essentially unreachable. The current proposal neither explicitly allows nor prohibits it. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions BUG=v8:8091 Change-Id: I31e7a07a7cffdd909a58342e00f05e52ed1a3182 Reviewed-on: https://chromium-review.googlesource.com/c/1270591Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56478}
-
Michael Starzinger authored
This adds support to wire control flow of catch-all expressions into an existing try-catch cascade. Note that multiple typed catch blocks are not yet supported, only one typed catch block followed by one catch-all block is supported. In case the explicit catch-all block is missing, we emulate the correct semantics by internally always emitting a catch-all containing a simple rethrow instruction. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-catchall BUG=v8:8091 Change-Id: I6b29a98c4f1a558fabe6012f4ba6c7b7d43529bb Reviewed-on: https://chromium-review.googlesource.com/c/1270585Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56476}
-
- 27 Sep, 2018 2 commits
-
-
Stephan Herhut authored
This adds a stress test for the I64 variants of the AtomicCompareExchange opcodes. Bug: v8:6532 Change-Id: Iaba4f31f944a71393e5c3222d364d214ff482b9e Reviewed-on: https://chromium-review.googlesource.com/1235913 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56261}
-
Deepti Gandluri authored
Change-Id: I1cf8d697b5a4408fb75332dc39be12c0a2ee0e5a Bug: v8:8202, v8:6532 Reviewed-on: https://chromium-review.googlesource.com/1240907 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56254}
-
- 20 Sep, 2018 1 commit
-
-
Sam Clegg authored
Previously we only supported strings and not filenames. This changes the default to filename and adds a new `type: string` which can be passed `options` to allow for strings to be passed in test code. See: https://developer.mozilla.org/en-US/docs/Web/API/Worker/Worker Bug: v8:8020 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ie8818885c5c5c071b6614852322cb45aeb01a647 Reviewed-on: https://chromium-review.googlesource.com/1185980 Commit-Queue: Sam Clegg <sbc@chromium.org> Reviewed-by:
Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#56056}
-
- 19 Sep, 2018 3 commits
-
-
Clemens Hammacher authored
This is a reland of 3bb5cb63 Original change's description: > [wasm] Introduce a soft limit on reserved memory > > Currently, wasm memory and wasm code use a shared limit for the total > size of reservations. This can cause wasm code reservations to fail > because wasm memories used all available reservation space. > This CL introduces a soft limit which is used when allocating wasm > memory with full guards. If this limit is reached and the respective > flag is set, we fall back to allocation without full guards and check > against the hard limit. Code reservations always check against the hard > limit. > > R=ahaas@chromium.org > > Bug: v8:8196 > Change-Id: I3fcbaeaa6f72c972d408d291af5d6b788d43151d > Reviewed-on: https://chromium-review.googlesource.com/1233614 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56028} Bug: v8:8196 Change-Id: If8baf429b02e23b344346f7335bc911b99ae5579 Reviewed-on: https://chromium-review.googlesource.com/1233756Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56044}
-
Leszek Swirski authored
This reverts commit 3bb5cb63. Reason for revert: Breaks Win64 bot https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Win64/26418 Original change's description: > [wasm] Introduce a soft limit on reserved memory > > Currently, wasm memory and wasm code use a shared limit for the total > size of reservations. This can cause wasm code reservations to fail > because wasm memories used all available reservation space. > This CL introduces a soft limit which is used when allocating wasm > memory with full guards. If this limit is reached and the respective > flag is set, we fall back to allocation without full guards and check > against the hard limit. Code reservations always check against the hard > limit. > > R=ahaas@chromium.org > > Bug: v8:8196 > Change-Id: I3fcbaeaa6f72c972d408d291af5d6b788d43151d > Reviewed-on: https://chromium-review.googlesource.com/1233614 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56028} TBR=ahaas@chromium.org,clemensh@chromium.org Change-Id: If645e738b4a5800eceabd993738ac2285f4a63bc No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8196 Reviewed-on: https://chromium-review.googlesource.com/1233834Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#56031}
-
Clemens Hammacher authored
Currently, wasm memory and wasm code use a shared limit for the total size of reservations. This can cause wasm code reservations to fail because wasm memories used all available reservation space. This CL introduces a soft limit which is used when allocating wasm memory with full guards. If this limit is reached and the respective flag is set, we fall back to allocation without full guards and check against the hard limit. Code reservations always check against the hard limit. R=ahaas@chromium.org Bug: v8:8196 Change-Id: I3fcbaeaa6f72c972d408d291af5d6b788d43151d Reviewed-on: https://chromium-review.googlesource.com/1233614Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56028}
-
- 17 Sep, 2018 4 commits
-
-
Michael Starzinger authored
This is a reland of a4105a43 Original change's description: > [wasm] Implement handling of exported/imported exceptions. > > This implements the proper semantics for matching exported/imported > exceptions by using the notion of an "exception tag" that is global to > the system. It can be used to match exceptions in one module against > exceptions declared and/or thrown in another module (or instance). > > R=clemensh@chromium.org > TEST=mjsunit/wasm/exceptions-shared > BUG=v8:8091 > > Change-Id: I37586d7be5d5e6169b3418dfbc415b26dd4750dd > Reviewed-on: https://chromium-review.googlesource.com/1226976 > Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55940} Bug: v8:8091 Change-Id: Ib85f099b26a8323a8a00299b5aaeb05aaff3c3c6 Reviewed-on: https://chromium-review.googlesource.com/1227975Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55959}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions BUG=v8:8091 Change-Id: I93227c29bb3591983f1901577afdf305637beb70 Reviewed-on: https://chromium-review.googlesource.com/1226803 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55954}
-
Leszek Swirski authored
This reverts commit a4105a43. Reason for revert: GC stress failures (https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Mac64%20GC%20Stress/3097) Original change's description: > [wasm] Implement handling of exported/imported exceptions. > > This implements the proper semantics for matching exported/imported > exceptions by using the notion of an "exception tag" that is global to > the system. It can be used to match exceptions in one module against > exceptions declared and/or thrown in another module (or instance). > > R=clemensh@chromium.org > TEST=mjsunit/wasm/exceptions-shared > BUG=v8:8091 > > Change-Id: I37586d7be5d5e6169b3418dfbc415b26dd4750dd > Reviewed-on: https://chromium-review.googlesource.com/1226976 > Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55940} TBR=mstarzinger@chromium.org,clemensh@chromium.org Change-Id: I5ef19ea3b67f470f2d7807810110d75415ba9ed6 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8091 Reviewed-on: https://chromium-review.googlesource.com/1227933Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#55942}
-
Michael Starzinger authored
This implements the proper semantics for matching exported/imported exceptions by using the notion of an "exception tag" that is global to the system. It can be used to match exceptions in one module against exceptions declared and/or thrown in another module (or instance). R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-shared BUG=v8:8091 Change-Id: I37586d7be5d5e6169b3418dfbc415b26dd4750dd Reviewed-on: https://chromium-review.googlesource.com/1226976 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55940}
-
- 14 Sep, 2018 1 commit
-
-
Stephan Herhut authored
Reduce the number of workers in the atomic compare-exchange test to make it run faster on systems with few cores. Bug: v8:8164 Change-Id: I4de22863e1f2a44d9da4416161d08f5acfcece22 Reviewed-on: https://chromium-review.googlesource.com/1224771 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#55887}
-
- 12 Sep, 2018 1 commit
-
-
Stephan Herhut authored
This also fixes a use where it should be a public name. For public names, we use what is defined in the module or wasm-function[%d] as per the wasm names spec. Bug: v8:8015 Change-Id: Ie102db4e1114b20caeb4a990cb9e07cacf0666bc Reviewed-on: https://chromium-review.googlesource.com/1215627Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#55827}
-
- 11 Sep, 2018 4 commits
-
-
Michael Starzinger authored
This checks the type signature during import against the expected signature. For this the {WasmExceptionObject} now contains a serialized version of the signature. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-import BUG=v8:8091 Change-Id: I5a34ef87eccf4d2ed3a784620796ec009623fd90 Reviewed-on: https://chromium-review.googlesource.com/1219509Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55789}
-
Andreas Haas authored
There was a bug in WebAssembly.instantiate in the case where a CSP disallows WebAssembly compilation. In this case the promise returned by WebAssembly.instantiate was rejected immediately because of the CSP, but then compilation was started anyways, and the promise was resolved after compilation for a second time, which caused the crash. With this CL we do not start compilation if CSP disallows WebAssembly compilation. R=clemensh@chromium.org Bug: chromium:881978 Change-Id: Iffdb3e02c3006eb7f86211ab197f81cf20438f0e Reviewed-on: https://chromium-review.googlesource.com/1219706 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55788}
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I9734259c9f41378ac216d5a222f0f7c71fcb5fa6 Reviewed-on: https://chromium-review.googlesource.com/1219023Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55781}
-
Michael Starzinger authored
This adds the ability to import exception into a module at instantiation time. Only a {WasmExceptionObject} that has been exported by another module instance can be imported, all other values are rejected. Note that currently there is no signature check being performed to make sure the imported exception matches the expected type. Also the identity of imported exceptions is not yet preserved. Furthermore the engine does not yet match thrown exception objects on a global level across modules. Hence imported exceptions will (wrongly) behave as completely new types within the module. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-import,unittests/WasmModuleVerifyTest BUG=v8:8091 Change-Id: If247762b949a1ba4a87d13bc3e790a45dbc67815 Reviewed-on: https://chromium-review.googlesource.com/1216402 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55777}
-
- 10 Sep, 2018 1 commit
-
-
Michael Starzinger authored
This new instance type will be used for wrapper objects representing exported exceptions. Currently the objects are empty and only serve as an identity for exported exceptions. Eventually they will also need to reference the signature underlying the exception to perform a signature check upon import. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-import BUG=v8:8091 Change-Id: Ifdd561fc000090f4a985aeb45549fd7110849646 Reviewed-on: https://chromium-review.googlesource.com/1215166 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55752}
-
- 07 Sep, 2018 1 commit
-
-
Stephan Herhut authored
Add a test that runs multiple workers that concurrently try to advance along a random sequence of numbers, using AtomicCompareExchange to update the shared current position. Change-Id: Ie073bbdce6fd6766ef1f73f996dd592b90b8b3c2 Reviewed-on: https://chromium-review.googlesource.com/1198769 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55722}
-
- 06 Sep, 2018 1 commit
-
-
Michael Starzinger authored
This adds the ability to add exception types to the export section of a module and reference them via the local exception index. Currently the export object then just contains the local index as a number, which is only temporary until we have proper export wrappers for exceptions. Also note that this tightens the restriction for the modules exception section to be located in between the import and the export section. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-export BUG=v8:8091 Change-Id: Ie26081c3f94e71cb576057db7e45ec5bd0e112f9 Reviewed-on: https://chromium-review.googlesource.com/1206873 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55679}
-
- 05 Sep, 2018 1 commit
-
-
Deepti Gandluri authored
BUG: v8:6532, chromium:874809 Change-Id: I55c00e8563741908cf0daf263152ce927ae18e7c Reviewed-on: https://chromium-review.googlesource.com/1205812 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Ben Smith <binji@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55666}
-
- 04 Sep, 2018 2 commits
-
-
Michael Starzinger authored
This fixes an off-by-one in the ordering restriction check for exception sections in a module. It also adds proper testing for exception handling of indirect calls. This in turn adds a table section that triggers the aforementioned bug. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions,unittests/WasmModuleVerifyTest BUG=v8:8091 Change-Id: Ie44ad4dee1b0c623f069fca7661c4282492b52d6 Reviewed-on: https://chromium-review.googlesource.com/1203993Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55615}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions BUG=v8:8091 Change-Id: I866430e1f3d3e7b93001a4375a869f19de75e65e Reviewed-on: https://chromium-review.googlesource.com/1203954Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55605}
-