Andreas Haas
22615158ed
Reland [wasm] Make WebAssembly.compile() asynchronous
...
The following aspects were changed for the reland:
* The DeferredHandleScope is supposed with a specific pattern,
i.e. allocate handles in a normal HandleScope and then
reopen them in the DeferredHandleScope.
* Set the native_context when it is used in a task.
Change-Id: Ia42c46ec6bc73179cb1f458e36658414ff85cc23
Reviewed-on: https://chromium-review.googlesource.com/468809
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44434}
2017-04-06 10:13:08 +00:00
Michael Achenbach
668dcf3b56
Revert "[wasm] Make WebAssembly.compile() asynchronous"
...
This reverts commit 7a6e6bb1e2
.
Reason for revert: breaks layout tests:
https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/14688
See:
https://github.com/v8/v8/wiki/Blink-layout-tests
Original change's description:
> [wasm] Make WebAssembly.compile() asynchronous
>
> titzer@ originally created this
> CL (https://codereview.chromium.org/2757903002 ). I fixed crashing tests
> and adressed some comments of the reviewers.
>
> R=bradnelson@chromium.org, clemensh@chromium.org , mtrofin@chromium.org
> BUG=v8:6003
>
> Change-Id: I4ab6d503909402d24043657a896200032e6d1023
> Reviewed-on: https://chromium-review.googlesource.com/464887
> Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
> Reviewed-by: Mircea Trofin <mtrofin@chromium.org>
> Commit-Queue: Andreas Haas <ahaas@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#44333}
TBR=bradnelson@chromium.org ,mtrofin@chromium.org,ahaas@chromium.org,clemensh@chromium.org,titzer@chromium.org,v8-reviews@googlegroups.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:6003
Change-Id: I87dbdbba0be4624828b6b0a94e02b6681593e335
Reviewed-on: https://chromium-review.googlesource.com/465813
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44342}
2017-04-03 14:34:38 +00:00
Andreas Haas
7a6e6bb1e2
[wasm] Make WebAssembly.compile() asynchronous
...
titzer@ originally created this
CL (https://codereview.chromium.org/2757903002 ). I fixed crashing tests
and adressed some comments of the reviewers.
R=bradnelson@chromium.org , clemensh@chromium.org , mtrofin@chromium.org
BUG=v8:6003
Change-Id: I4ab6d503909402d24043657a896200032e6d1023
Reviewed-on: https://chromium-review.googlesource.com/464887
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Mircea Trofin <mtrofin@chromium.org>
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44333}
2017-04-03 11:04:02 +00:00
gdeepti
e6d13999fd
[wasm] Memory buffer should be detached after Memory.Grow
...
Memory.Grow should detach the ArrayBuffer associated with the Mem object after Grow. Currently, when guard pages are enabled protection is changed to make more of the buffer accessible. This does not work for when the buffer should be detached after grow, because the memory object has a reference to the same buffer befor/after grow.
R=titzer@chromium.org , eholk@chromium.org
Review-Url: https://codereview.chromium.org/2653183003
Cr-Commit-Position: refs/heads/master@{#42717}
2017-01-26 22:15:59 +00:00
titzer
f51a5f732c
[wasm-test] WasmModuleBuilder.addCustomSection in the JS builder API.
...
R=rossberg@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2650053005
Cr-Commit-Position: refs/heads/master@{#42655}
2017-01-25 11:53:09 +00:00
mtrofin
777057763c
[wasm] JSAPI conformance: instance.exports has null prototype.
...
BUG=v8:5885
Review-Url: https://codereview.chromium.org/2649163004
Cr-Commit-Position: refs/heads/master@{#42636}
2017-01-24 19:00:36 +00:00
titzer
68efecff60
[wasm] Implement WebAssembly.Module.customSections.
...
R=ahaas@chromium.org ,rossberg@chromium.org
BUG=chromium:575167
Review-Url: https://codereview.chromium.org/2626263004
Cr-Commit-Position: refs/heads/master@{#42634}
2017-01-24 15:23:02 +00:00
mtrofin
24c050e8bc
[wasm] WebAssembly.instantiate has a pair-returning overload
...
Additionally, fixed invalid check in WebAssembly.Module constructor.
The constructor takes precisely one argument.
BUG=v8:5875
Review-Url: https://codereview.chromium.org/2644993002
Cr-Commit-Position: refs/heads/master@{#42575}
2017-01-20 18:46:44 +00:00
mtrofin
2e3447bb66
[wasm] WebAssembly.compile: pass errors through promise resolver
...
BUG=v8:5876
Review-Url: https://codereview.chromium.org/2644893004
Cr-Commit-Position: refs/heads/master@{#42568}
2017-01-20 15:33:59 +00:00
gdeepti
6934db7ca7
[wasm] WebAssembly.Memory.grow() should handle the no instance case
...
- Currently WebAssembly.Memory.grow() assumes that it always has an instance associated with it,
fix to grow and reflect new size when no instance is associated with memory object.
- Correctness fixes for the js api, throw range errors instead of generic errors
BUG=chromium:680938
R=bradnelson@chromium.org , titzer@chromium.org
Review-Url: https://codereview.chromium.org/2638243002
Cr-Commit-Position: refs/heads/master@{#42432}
2017-01-18 04:45:07 +00:00
rossberg
4f556e9e4b
Add @@toStringTag for WebAssembly classes
...
R=titzer@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2625133005
Cr-Commit-Position: refs/heads/master@{#42379}
2017-01-16 15:31:40 +00:00
rossberg
ef555d08a9
Delay all exceptions in WebAssembly.instantiate
...
R=titzer@chromium.org
BUG=v8:5818
Review-Url: https://codereview.chromium.org/2637703004
Cr-Commit-Position: refs/heads/master@{#42372}
2017-01-16 13:13:42 +00:00
gdeepti
ccf0998d63
[wasm] Table.Grow should grow dispatch tables
...
- Table.Grow updates function, signature table sizes
- Updates generated code with new base addresses for function, signature tables
- Relocates size references for correct bounds check
R=bradnelson@chromium.org , titzer@chromium.org
Review-Url: https://codereview.chromium.org/2637643002
Cr-Commit-Position: refs/heads/master@{#42349}
2017-01-15 07:46:08 +00:00
mtrofin
f8fd6ec3dd
[wasm] JS-API: enable WebAssembly.instantiate tests; fix LinkError
...
We weren't throwing LinkError where appropriate
progress
BUG=v8:5835
Review-Url: https://codereview.chromium.org/2629523007
Cr-Commit-Position: refs/heads/master@{#42342}
2017-01-13 20:47:44 +00:00
mtrofin
7c7434085e
[wasm] JS-APIs: more WebAssembly.compile tests
...
enabled TODO-ed compile tests
BUG=v8:5833
Review-Url: https://codereview.chromium.org/2628053004
Cr-Commit-Position: refs/heads/master@{#42293}
2017-01-12 21:30:39 +00:00
rossberg
022635bf0d
Implement Instance instances correctly; fix a few error cases
...
R=titzer@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2620263003
Cr-Commit-Position: refs/heads/master@{#42288}
2017-01-12 20:32:27 +00:00
mtrofin
53137df89a
[wasm] JS APIs & memory
...
- updated WebAssembly.Instance ctor uses in our tests to match spec
- disallowing mem section *and* mem import, as per spec
BUG=v8:5824
Review-Url: https://codereview.chromium.org/2627763002
Cr-Commit-Position: refs/heads/master@{#42278}
2017-01-12 16:48:09 +00:00
titzer
bbf00d80aa
[wasm] Implement WebAssembly.Module.exports function.
...
R=rossberg@chromium.org
BUG=v8:5814,chromium:575167
Review-Url: https://codereview.chromium.org/2623183002
Cr-Commit-Position: refs/heads/master@{#42233}
2017-01-11 14:40:25 +00:00
titzer
d5a0860e87
[wasm] Implement the WebAssembly.Module.imports function.
...
R=rossberg@chromium.org
BUG=v8:5813,chromium:575167
Review-Url: https://codereview.chromium.org/2620203005
Cr-Commit-Position: refs/heads/master@{#42231}
2017-01-11 14:17:54 +00:00
mtrofin
040f7434cc
[wasm] JS API tests for WebAssembly.validate
...
Also ensuring it is validation error to specify more than
one memory import.
BUG=v8:5824
Review-Url: https://codereview.chromium.org/2624853002
Cr-Commit-Position: refs/heads/master@{#42205}
2017-01-11 00:25:09 +00:00
rossberg
8e9c90baa0
Make .prototype properties of Wasm constructors read-only
...
R=titzer@chromium.org
BUG=v8:5817
Review-Url: https://codereview.chromium.org/2620783005
Cr-Commit-Position: refs/heads/master@{#42184}
2017-01-10 15:40:57 +00:00
titzer
01c464a5af
[wasm] Set JS API names and function lengths appropriately.
...
R=clemensh@chromium.org
BUG=chromium:575167
Review-Url: https://codereview.chromium.org/2590243003
Cr-Commit-Position: refs/heads/master@{#41885}
2016-12-21 09:03:35 +00:00
titzer
6e8338865a
[wasm] Implement correct 2-level namespace for imports.
...
R=clemensh@chromium.org
CC=rossberg@chromium.org
BUG=chromium:575167
Review-Url: https://codereview.chromium.org/2591753002
Cr-Commit-Position: refs/heads/master@{#41866}
2016-12-20 15:32:56 +00:00
titzer
b6a57e6ff5
[wasm] Add js-api test and fix property details for some functions.
...
R=clemensh@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2585193004
Cr-Commit-Position: refs/heads/master@{#41817}
2016-12-19 17:19:56 +00:00