- 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}
-
- 27 Mar, 2020 1 commit
-
-
Ng Zhi An authored
Rework the remaining tests in grow-memory to check for first 5 offsets and last 5 offsets in the relevant pages. Bug: v8:7783 Change-Id: I59435f3c1a6f50ff808fdd045a6c7039860fc72e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2116647Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66896}
-
- 26 Mar, 2020 1 commit
-
-
Ng Zhi An authored
Rework testMemoryGrowPreservesDataMemOp tests so that they only test the first and last 5 offsets within the page, instead of every offset. Slight logic change: instead of storing the value C - offset (where C is a constant that is different for 32 and 16 memops), we store just the value offset. This allows us to combine the logic for all 3 memops (32, 16, and 8). But we need to add a modulo so that in the 8 bit case, we don't store a value that exceeds the maximum (the other cases will never hit a case that exceeds the max). Bug: v8:7783 Change-Id: Ibfdc77555ba2ca26391eba303050a03538f6012d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2117633Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66879}
-
- 24 Mar, 2020 1 commit
-
-
Ng Zhi An authored
Rework the testMemoryGrowReadWrite and testMemoryGrowZeroInitialSize tests. Combine the different sized tests (32, 16, 8 bit integers) into a single base tests, taking in function arguments to specify which load/store function to call from the module exports. Also reduced the number of checks made in each test. Previously the test was asserting on every single valid offset. Now it checks the first 5 and the last 5 of each page of memory. From a quick local test using `time`, it speeds up this test on x64 from ~40s to ~20s. There is more work to be done: there are other tests below that also assert on each offset, we can change those in a future patch. The goal is to be able to run this on arm simulators sufficiently quickly, and not require to mark this test as slow. Bug: v8:7783 Change-Id: I2b17cf1811de6c26332d7e8f91efbbac3e89f6e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2116601Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66848}
-
- 28 Feb, 2020 1 commit
-
-
Jakob Kummerow authored
There were a few places that still checked against the limit for initial memory size rather than the limit for memory size after growth (which was recently separated from the former). Bug: v8:7881 Change-Id: Id17d86e2f7a5dfa4f1dd35153b0cefc01f72ed33 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2078574 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#66496}
-
- 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}
-
- 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}
-
- 29 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
The "grow_memory" opcode was renamed to "memory.grow", and the spec repo was updated to use kExprMemoryGrow internally instead of kExprGrowMemory (https://github.com/WebAssembly/spec/pull/720). This CL does the same change for v8. Drive-by: Rename "current_size" to "memory.size", and a minor cleanup in wasm-graph-builder.js to bring it in line with the version in the js-api tests in the spec repo. R=titzer@chromium.org Change-Id: If525dba898b2c248890a616d3392c22b45f698ef Reviewed-on: https://chromium-review.googlesource.com/c/1302057Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#57089}
-
- 29 Aug, 2018 1 commit
-
-
Andreas Haas authored
It is better not to have V8-specific constants in mjsunit.js because it also has V8-independent uses, e.g. in the spec tests. R=gdeepti@chromium.org Bug: v8:8015 Change-Id: I3b576f093f639c13e673cbd0bd5305c8101d7281 Reviewed-on: https://chromium-review.googlesource.com/1192843Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55485}
-
- 17 Aug, 2017 2 commits
-
-
Enrico Bacis authored
This CL introduces 6 tests that verify that the effects of a grow_memory instruction executed inside a function are visible also from the caller of the function. The tests verify that: * the current_memory instruction returns the correct value after returning from a function that grew memory; * accessing a memory page that has been created inside a function does not trap in the caller; * when a function grows the memory and then store something in the grown memory, the caller always reads from the grown memory. This checks that the memory start address gets updated in the caller (the memory buffer could in fact be relocated by the grow_memory instruction). These tests are implemented for direct and indirect function calls. R=ahaas@chromium.org,clemensh@chromium.org Change-Id: Iac8db0fa7a6dd6f530e090af5423fc165d87e863 Reviewed-on: https://chromium-review.googlesource.com/616150 Commit-Queue: Enrico Bacis <enricobacis@google.com> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#47398}
-
Enrico Bacis authored
The WASM spec maximum memory size is higher than internal V8 maximum object size. When a memory object grows above this limit (and only in that case), we should signal an error. This worked for not-exported memory; however when growing exported memory, the code was comparing the V8 memory limit with the maximum number of pages defined in the module, instead of the current number of pages + the number of new required pages. This lead to signaling errors even when growing exported memory below the V8 limit if the maximum number of pages specified in the module was higher than the V8 limit. GrowMemoryBuffer already checks that we do not grow a memory buffer past the maximum size specified as parameter, so we can pass it the minimum between the the V8 limit and the maximum number of pages specified in the module. This CL introduces a test in test/mjsunit/wasm/import-memory.js that triggers the problematic path and a patch to fix it. R=ahaas@chromium.org,clemensh@chromium.org,gdeepti@chromium.org Change-Id: I5a8da420418b394d61e1ba3cdf4408c3c09e61b6 Reviewed-on: https://chromium-review.googlesource.com/600217Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Enrico Bacis <enricobacis@google.com> Cr-Commit-Position: refs/heads/master@{#47395}
-
- 16 Jun, 2017 1 commit
-
-
gdeepti authored
BUG=v8:6478, chromium:729768 R=bradnelson@chromium.org, eholk@chromium.org Review-Url: https://codereview.chromium.org/2903153002 Cr-Original-Commit-Position: refs/heads/master@{#45931} Committed: https://chromium.googlesource.com/v8/v8/+/7e6ed62071d2756688a23bd6dac096b0d4660b5d Review-Url: https://codereview.chromium.org/2903153002 Cr-Commit-Position: refs/heads/master@{#45967}
-
- 14 Jun, 2017 2 commits
-
-
machenbach authored
Revert of [wasm] Increase WebAssembly.Memory maximum size to ~2GB (patchset #10 id:200001 of https://codereview.chromium.org/2903153002/ ) Reason for revert: gc stress failure: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/11122 Original issue's description: > [wasm] Increase WebAssembly.Memory maximum size to 2GB > > BUG=v8:6478, chromium:729768 > > R=bradnelson@chromium.org, eholk@chromium.org > > Review-Url: https://codereview.chromium.org/2903153002 > Cr-Commit-Position: refs/heads/master@{#45931} > Committed: https://chromium.googlesource.com/v8/v8/+/7e6ed62071d2756688a23bd6dac096b0d4660b5d TBR=bradnelson@chromium.org,eholk@chromium.org,gdeepti@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:6478, chromium:729768 Review-Url: https://codereview.chromium.org/2935243002 Cr-Commit-Position: refs/heads/master@{#45932}
-
gdeepti authored
BUG=v8:6478, chromium:729768 R=bradnelson@chromium.org, eholk@chromium.org Review-Url: https://codereview.chromium.org/2903153002 Cr-Commit-Position: refs/heads/master@{#45931}
-
- 18 Jan, 2017 1 commit
-
-
rossberg authored
Makes us pass the spec's memory.wast test. R=titzer@chromium.org BUG= Review-Url: https://codereview.chromium.org/2640453003 Cr-Commit-Position: refs/heads/master@{#42452}
-
- 08 Nov, 2016 1 commit
-
-
gdeepti authored
- When module bytes have a memory maximum defined, compiled module object should set maximum memory - Exported memory objects should set maximum value on the memory objects - Update tests to use declared maximum values. R=ahaas@chromium.org Review-Url: https://codereview.chromium.org/2474333003 Cr-Commit-Position: refs/heads/master@{#40820}
-
- 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}
-
- 20 Oct, 2016 1 commit
-
-
gdeepti authored
BUG=chromium:644670 R=ahaas@chromium.org, titzer@chromium.org Review-Url: https://chromiumcodereview.appspot.com/2438593003 Cr-Commit-Position: refs/heads/master@{#40451}
-
- 14 Oct, 2016 3 commits
-
-
gdeepti authored
Currently when memory size references are updated with zero initial memory during GrowMemory/Relocation of Instance objects, the bounds check does not take into account the size of memtype. R=titzer@chromium.org, bradnelson@chromium.org Committed: https://crrev.com/70416a2b360c0d993cffb48284b143d484d1e290 Review-Url: https://codereview.chromium.org/2416543002 Cr-Original-Commit-Position: refs/heads/master@{#40326} Cr-Commit-Position: refs/heads/master@{#40329}
-
gdeepti authored
Revert of [wasm] Fix bounds check for zero initial memory. (patchset #11 id:200001 of https://codereview.chromium.org/2416543002/ ) Reason for revert: Reverting because of failure on V8 Linux64 GC Stress http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/8572 Original issue's description: > [wasm] Fix bounds check for zero initial memory. > > Currently when memory size references are updated with zero initial memory during GrowMemory/Relocation of Instance objects, the bounds check does not take into account the size of memtype. > > R=titzer@chromium.org, bradnelson@chromium.org > > Committed: https://crrev.com/70416a2b360c0d993cffb48284b143d484d1e290 > Cr-Commit-Position: refs/heads/master@{#40326} TBR=bradnelson@chromium.org,titzer@chromium.org,bradnelson@google.com,mtrofin@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2416393002 Cr-Commit-Position: refs/heads/master@{#40328}
-
gdeepti authored
Currently when memory size references are updated with zero initial memory during GrowMemory/Relocation of Instance objects, the bounds check does not take into account the size of memtype. R=titzer@chromium.org, bradnelson@chromium.org Review-Url: https://codereview.chromium.org/2416543002 Cr-Commit-Position: refs/heads/master@{#40326}
-
- 29 Sep, 2016 2 commits
-
-
adamk authored
Revert of [wasm] Remove improper assembler check for grow memory. (patchset #2 id:20001 of https://codereview.chromium.org/2376153003/ ) Reason for revert: grow-memory test now fails on Linux dbg, blocking the CQ: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug/builds/11217 Original issue's description: > [wasm] Remove improper assembler check for grow memory. > > Note that the offset can still be out of bounds, even after grow memory. The calculation of the remaining size can overflow. > > R=gdeepti@chromium.org > BUG=chromium:644670 > > Committed: https://crrev.com/e6071a9c067e07304329250e040b652fb82e9b5e > Cr-Commit-Position: refs/heads/master@{#39886} TBR=gdeepti@chromium.org,titzer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:644670 Review-Url: https://codereview.chromium.org/2378973003 Cr-Commit-Position: refs/heads/master@{#39889}
-
titzer authored
Note that the offset can still be out of bounds, even after grow memory. The calculation of the remaining size can overflow. R=gdeepti@chromium.org BUG=chromium:644670 Review-Url: https://codereview.chromium.org/2376153003 Cr-Commit-Position: refs/heads/master@{#39886}
-
- 28 Sep, 2016 1 commit
-
-
gdeepti authored
- Store instruction with an offset bigger than GrowMemory offset should handle out of bounds correctly - Refactor to separate runnning from compile so arguments can be passed in to module builder tests. BUG=chromium:644670 R=ahaas@chromium.org, titzer@chromium.org Review-Url: https://codereview.chromium.org/2373613004 Cr-Commit-Position: refs/heads/master@{#39840}
-
- 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}
-
- 12 Sep, 2016 1 commit
-
-
gdeepti authored
- Using realloc is still unsafe as the allocator, using array_buffer_allocator - Fixing tests to avoid overlapping stores, adding more tests BUG=v8:5344 R=ahaas@chromium.org, mlippautz@chromium.org Review-Url: https://codereview.chromium.org/2319983002 Cr-Commit-Position: refs/heads/master@{#39329}
-
- 02 Sep, 2016 1 commit
-
-
gdeepti authored
BUG=v8:5304 R=ahaas@chromium.org, titzer@chromium.org Review-Url: https://codereview.chromium.org/2277443009 Cr-Commit-Position: refs/heads/master@{#39112}
-
- 30 Aug, 2016 1 commit
-
-
ahaas authored
If the input of grow-memory was not representable as a SMI, then the input was not passed correctly to the runtime, which caused a crash. With this CL the input of grow-memory is checked before the runtime is called. R=titzer@chromium.org, gdeepti@chromium.org TEST=mjsunit/wasm/grow-memory.js:testGrowMemoryTrapsWithNonSmiInput() Review-Url: https://codereview.chromium.org/2288773002 Cr-Commit-Position: refs/heads/master@{#39022}
-
- 04 Aug, 2016 1 commit
-
-
gdeepti authored
Return -1 instead of out of throwing errors, update tests. R=titzer@chromium.org, ahaas@chromium.org Review-Url: https://codereview.chromium.org/2216443002 Cr-Commit-Position: refs/heads/master@{#38350}
-
- 28 Jun, 2016 1 commit
-
-
gdeepti authored
- GrowMemory runtime function, tests added to checks if memory can be grown and relocation information is updated correctly R=titzer@chromium.org, bradnelson@chromium.org Review-Url: https://codereview.chromium.org/2051043002 Cr-Commit-Position: refs/heads/master@{#37338}
-