- 01 Jun, 2021 1 commit
-
-
Camillo Bruni authored
- Add d8.file.read() and d8.file.execute() helpers - Change tools and tests to use new d8.file helper - Unify error throwing in v8::Shell::ReadFile Change-Id: I5ef4cb27f217508a367106f01e872a4059d5e399 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2928505 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#74883}
-
- 05 May, 2021 1 commit
-
-
Manos Koukoutos authored
Element segments and tables in tests used an ad-hoc mechanism to describe the different types of initializer expressions, e.g. an number which could denote either the value of a constant or the index of a global. This CL tidies up and generalizes the test infrastructure by directly using WasmInitExpr in those cases. Additional changes: - Introduce WasmElemSegment class. - Remove obsolete --experimental-wasm-bulk-memory flag from tests. - Rename WasmInitExpr.type -> kind. - Remove dependency of wasm-module-builder from mjsunit.js (except in assertTraps). Change-Id: I716254a04ceea9ceb8ac6b848e12e1637f618f0d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2857638 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#74368}
-
- 05 Oct, 2020 1 commit
-
-
Manos Koukoutos authored
This was not happening when there was no need to typecheck the entry. Additional changes: - Add tests with null table entries for typed and untyped function tables. - Allow AddIndirectFunctionTable in wasm-run-utils to specify table type. - Add possibility to define tables in test-gc.cc. - Merge trapTableOutOfBounds with trapInvalidFunc. - Use trapTableOutOfBounds in call_indirect as appropriate. - Fix emission of table types in wasm-module-builder.cc. Bug: v8:9495 Change-Id: I4a857ff4378e5a87dc0646d94b4c75635a43c55b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2442622Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70311}
-
- 08 Oct, 2019 1 commit
-
-
Clemens Backes authored
This brings our constants back in line with the changed spec text. We already use kExprTableGet and kExprTableSet, but for locals and globals we still use the old wording. This renaming is mostly mechanical. PS1 was created using: ag -l 'kExpr(Get|Set|Tee)Local' src test | \ xargs -L1 sed -E 's/kExpr(Get|Set|Tee)Local\b/kExprLocal\1/g' -i PS2 contains manual fixes. R=mstarzinger@chromium.org Bug: v8:9810 Change-Id: I1617f1b2a100685a3bf56218e76845a9481959c5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1847354Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64161}
-
- 13 Mar, 2019 1 commit
-
-
Andreas Haas authored
This CL just adds a parameter to addElementSegment and adjusts all existing tests. Note that addElementSegment contains some convenience code to construct one initial table if it does not exist yet. I did not extend that code to multiple tables. If you want to use multiple tables, you have to create them first before calling addElementSegment. R=clemensh@chromium.org Bug: v8:7581 Change-Id: Ie131fd5dc19856703ab5cfb2fa8f7d576f70a18b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1520709Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60211}
-
- 30 Jan, 2019 1 commit
-
-
Sven Sauleau authored
We noticed that almost every call site were loading both files, the split isn't necessary anymore. In some message tests, removed the absolute line number to allow future changes. Bug: v8:8726 Change-Id: I8527f0a1ecfa685aa01a5e2f5f47ddf1cb13a545 Reviewed-on: https://chromium-review.googlesource.com/c/1446452 Commit-Queue: Sven Sauleau <ssauleau@igalia.com> Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#59220}
-
- 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}
-
- 05 Sep, 2017 1 commit
-
-
Deepti Gandluri authored
BUG=v8:6749 R=titzer@chromium.org Change-Id: I4ac2ac8d8ca98d71dbc5a86c3cca268cd836997c Reviewed-on: https://chromium-review.googlesource.com/645146 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47837}
-
- 22 Mar, 2017 1 commit
-
-
Clemens Hammacher authored
Add a check to appendToTable to catch illegal input, and fix a test case triggering this check. Also removing unused variables and fix indentation. R=ahaas@chromium.org Change-Id: I0eaa48ab95ef710530a3cfbe94ed4dd419618cda Reviewed-on: https://chromium-review.googlesource.com/458436 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#44027}
-
- 21 Dec, 2016 1 commit
-
-
titzer authored
This is more renaming work to comply with the naming in the public design repository. E.g. types are called "value types" and we no longer refer to ASTs. R=clemensh@chromium.org BUG= Review-Url: https://codereview.chromium.org/2594993002 Cr-Commit-Position: refs/heads/master@{#41891}
-
- 20 Dec, 2016 1 commit
-
-
titzer authored
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}
-
- 26 Oct, 2016 1 commit
-
-
titzer authored
R=ahaas@chromium.org,rossberg@chromium.org,binji@chromium.org,bradnelson@chromium.org BUG=chromium:575167, chromium:659591 Review-Url: https://codereview.chromium.org/2440953002 Cr-Commit-Position: refs/heads/master@{#40600}
-
- 25 Oct, 2016 1 commit
-
-
titzer authored
R=bradnelson@chromium.org, rossberg@chromium.org BUG=v8:5507 Review-Url: https://codereview.chromium.org/2443353002 Cr-Commit-Position: refs/heads/master@{#40554}
-
- 19 Oct, 2016 1 commit
-
-
titzer authored
This CL refactors the handling of metadata associated with WebAssembly modules to reduce the duplicate marshalling of data from the C++ world to the JavaScript world. It does this by wrapping the C++ WasmModule* object in a Foreign that is rooted from the on-heap WasmCompiledModule (which is itself just a FixedArray). Upon serialization, the C++ object is ignored and the original WASM wire bytes are serialized. Upon deserialization, the C++ object is reconstituted by reparsing the bytes. This is motivated by increasing complications in implementing the JS API, in particular WebAssembly.Table, which must perform signature canonicalization across instances. Additionally, this CL implements the proper base + offset initialization behavior for tables. R=rossberg@chromium.org,bradnelson@chromium.org,mtrofin@chromium.org,yangguo@chromium.org BUG=v8:5507, chromium:575167, chromium:657316 Review-Url: https://chromiumcodereview.appspot.com/2424623002 Cr-Commit-Position: refs/heads/master@{#40434}
-
- 11 Oct, 2016 1 commit
-
-
titzer authored
R=bradnelson@chromium.org, ahaas@chromium.org, clemensh@chromium.org BUG=chromium:575167 Review-Url: https://codereview.chromium.org/2403093002 Cr-Commit-Position: refs/heads/master@{#40169}
-
- 27 Sep, 2016 1 commit
-
-
titzer authored
[0xC] Convert to stack machine semantics. [0xC] Use section codes instead of names. [0xC] Add elements section decoding. [0xC] Decoding of globals section. [0xC] Decoding of memory section. [0xC] Decoding of imports section. [0xC] Decoding of exports section. [0xC] Decoding of data section. [0xC] Remove CallImport bytecode. [0xC] Function bodies have an implicit block. [0xC] Remove the bottom label from loops. [0xC] Add signatures to blocks. [0xC] Remove arities from branches. Add tests for init expression decoding. Rework compilation of import wrappers and how they are patched. Rework function indices in debugging. Fix ASM->WASM builder for stack machine. Reorganize asm.js foreign functions due to import indices change. R=ahaas@chromium.org,rossberg@chromium.org,bradnelson@chromium.org BUG=chromium:575167 LOG=Y Committed: https://crrev.com/76eb976a67273b8c03c744f64ad850b0432554b9 Review-Url: https://codereview.chromium.org/2345593003 Cr-Original-Commit-Position: refs/heads/master@{#39678} Cr-Commit-Position: refs/heads/master@{#39795}
-
- 23 Sep, 2016 2 commits
-
-
machenbach authored
Revert of [wasm] Master CL for Binary 0xC changes. (patchset #26 id:490001 of https://codereview.chromium.org/2345593003/ ) Reason for revert: Main suspect for tsan: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/11893 Also changes layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/10036 +mips builder: https://build.chromium.org/p/client.v8.ports/builders/V8%20Mips%20-%20builder/builds/4032 Original issue's description: > [wasm] Master CL for Binary 0xC changes. > > [0xC] Convert to stack machine semantics. > [0xC] Use section codes instead of names. > [0xC] Add elements section decoding. > [0xC] Decoding of globals section. > [0xC] Decoding of memory section. > [0xC] Decoding of imports section. > [0xC] Decoding of exports section. > [0xC] Decoding of data section. > [0xC] Remove CallImport bytecode. > [0xC] Function bodies have an implicit block. > [0xC] Remove the bottom label from loops. > [0xC] Add signatures to blocks. > [0xC] Remove arities from branches. > Add tests for init expression decoding. > Rework compilation of import wrappers and how they are patched. > Rework function indices in debugging. > Fix ASM->WASM builder for stack machine. > Reorganize asm.js foreign functions due to import indices change. > > R=ahaas@chromium.org,rossberg@chromium.org,bradnelson@chromium.org > BUG=chromium:575167 > LOG=Y > > Committed: https://crrev.com/76eb976a67273b8c03c744f64ad850b0432554b9 > Cr-Commit-Position: refs/heads/master@{#39678} TBR=ahaas@chromium.org,bradnelson@chromium.org,mtrofin@chromium.org,rossberg@chromium.org,bradnelson@google.com,titzer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:575167 Review-Url: https://codereview.chromium.org/2361053004 Cr-Commit-Position: refs/heads/master@{#39685}
-
titzer authored
[0xC] Convert to stack machine semantics. [0xC] Use section codes instead of names. [0xC] Add elements section decoding. [0xC] Decoding of globals section. [0xC] Decoding of memory section. [0xC] Decoding of imports section. [0xC] Decoding of exports section. [0xC] Decoding of data section. [0xC] Remove CallImport bytecode. [0xC] Function bodies have an implicit block. [0xC] Remove the bottom label from loops. [0xC] Add signatures to blocks. [0xC] Remove arities from branches. Add tests for init expression decoding. Rework compilation of import wrappers and how they are patched. Rework function indices in debugging. Fix ASM->WASM builder for stack machine. Reorganize asm.js foreign functions due to import indices change. R=ahaas@chromium.org,rossberg@chromium.org,bradnelson@chromium.org BUG=chromium:575167 LOG=Y Review-Url: https://codereview.chromium.org/2345593003 Cr-Commit-Position: refs/heads/master@{#39678}
-
- 21 Jun, 2016 1 commit
-
-
rossberg authored
- Use ES6 classes and other goodies. - Make some names match design/spec. - Remove obsolete generation of END section. R=bradnelson@chromium.org BUG= Review-Url: https://codereview.chromium.org/2081973003 Cr-Commit-Position: refs/heads/master@{#37155}
-
- 29 Apr, 2016 2 commits
-
-
titzer authored
[wasm] Binary 11: Swap the order of section name / section length. [wasm] Binary 11: Shorter section names. [wasm] Binary 11: Add a prefix for function type declarations. [wasm] Binary 11: Function types encoded as pcount, p*, rcount, r* [wasm] Fix numeric names for functions. R=rossberg@chromium.org,jfb@chromium.org,ahaas@chromium.org BUG=chromium:575167 LOG=Y Review-Url: https://codereview.chromium.org/1896863003 Cr-Commit-Position: refs/heads/master@{#35897}
-
titzer authored
[wasm] Binary 11: br_table takes a value. [wasm] Binary 11: Add implicit blocks to if arms. [wasm] Binary 11: Add arities to call, return, and breaks [wasm] Binary 11: Add experimental version. This CL changes the encoder, decoder, and tests to use a postorder encoding of the AST, which is more efficient in decode time and space. R=bradnelson@chromium.org,rossberg@chromium.org,binji@chromium.org BUG=chromium:575167 LOG=Y Review-Url: https://codereview.chromium.org/1830663002 Cr-Commit-Position: refs/heads/master@{#35896}
-
- 07 Mar, 2016 1 commit
-
-
titzer authored
R=ahaas@chromium.org,binji@chromium.org BUG= Review URL: https://codereview.chromium.org/1770913002 Cr-Commit-Position: refs/heads/master@{#34559}
-
- 28 Feb, 2016 1 commit
-
-
titzer authored
R=binji@chromium.org,jfb@chromium.org BUG= Review URL: https://codereview.chromium.org/1740373002 Cr-Commit-Position: refs/heads/master@{#34346}
-
- 12 Jan, 2016 1 commit
-
-
titzer authored
R=ahaas@chromium.org,bradnelson@chromium.org LOG=Y BUG=chromium:575167 Review URL: https://codereview.chromium.org/1577803002 Cr-Commit-Position: refs/heads/master@{#33251}
-
- 17 Dec, 2015 1 commit
-
-
bradnelson authored
In preparation for switching wasm from a compile to a runtime option, add the runtime flag to all mjsunit tests. R=ahaas@chromium.org BUG= Review URL: https://codereview.chromium.org/1537643002 Cr-Commit-Position: refs/heads/master@{#32938}
-
- 11 Dec, 2015 1 commit
-
-
titzer authored
As discussed in person, this adds the code from v8-native-prototype into V8 proper, guarded by GYP flags that do not build the code by default. Passing wasm=on to 'make' or setting v8_wasm as a GYP flag activates building of this code. An additional header file is added to and exported from the compiler directory, src/compiler/wasm-compiler.h. This exposes a limited interface with opaque Node and Graph types to the decoder to build TF graphs, as well as functions to compile WASM graphs. The mjsunit tests added are blacklisted because they fail without the WASM object exposed to JS, which is also disabled by the build config option. This corresponds closely to https://github.com/WebAssembly/v8-native-prototype/commit/5981e06ebc9b1e578831d03100f17ebb77970ee0, with some formatting fixes and moving some files into src/compiler. R=mstarzinger@chromium.org, bradnelson@chromium.org BUG= Review URL: https://codereview.chromium.org/1504713014 Cr-Commit-Position: refs/heads/master@{#32794}
-