Oopenharmony_ciSupport wasm interpreter in ohos
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[interpreter] Merge hole elision info on continue for loops that are structured for (start; cond; next) { body } currently have a single scope for body next but that's wrong, since body isn't guaranteed to run to the end before running next. There might be a continue. This considers body to be "branchy" with any continue merging before next, as well as the body end itself. Bug: 450618029 Change-Id: I0156e1c02eeafad880bd324f1f5441023d53139d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7030683 Auto-Submit: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#103064} | 8 个月前 | |
[test] Pretty print object properties on assert failure Because I don't get much out of "Object() != Object()" Change-Id: I5a765b9cb0a272d30edcd834ec7b60d2fd03190b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3497352 Reviewed-by: Camillo Bruni <cbruni@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79370} | 4 年前 | |
[runtime] Ensure JSMessageObject has source positions Under certain conditions GC could flush bytecode array from SharedFunctionInfos. This CL ensures that the bytecode array is always available for reconstructing source positions. Bug: chromium:1265570 Change-Id: I2ce7eb04201f69121687ab0aaa2af42adb2caae0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3275569 Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#77877} | 4 年前 | |
[build] Add data deps for d8 test suites Bug: chromium:669910 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ifb8719a989a4fda48241967271ebe39037643e39 Reviewed-on: https://chromium-review.googlesource.com/980032 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#52223} | 8 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Fix assignment with undeclared target. R=clemensh@chromium.org BUG=v8:6127 Change-Id: I32d2a36cdc2a65c3e0016e49157524573755d09d Reviewed-on: https://chromium-review.googlesource.com/461185 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Cr-Commit-Position: refs/heads/master@{#44260} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function type checking. R=ahaas@chromium.org TEST=message/asm-function-mismatch-def BUG=v8:6208 Change-Id: I415281d63bb376da3220ba31bbdf0b3d60e03299 Reviewed-on: https://chromium-review.googlesource.com/469947 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#44482} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function type checking. R=ahaas@chromium.org TEST=message/asm-function-mismatch-def BUG=v8:6208 Change-Id: I415281d63bb376da3220ba31bbdf0b3d60e03299 Reviewed-on: https://chromium-review.googlesource.com/469947 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#44482} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function name collisions. R=ahaas@chromium.org TEST=message/asm-function-variable-collision BUG=v8:6127 Change-Id: I75658f0bf58a8b3de5eb42f4f054476f8d2c139b Reviewed-on: https://chromium-review.googlesource.com/469651 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#44475} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Fix handling of bogus code after export statement. This makes the asm.js validator reject source with trailing expressions after the module exporting return statement. Most of the time trailing statements would not affect semantics, since they are unreachable. In some cases we might hide an expected ReferenceError tough. R=leszeks@chromium.org TEST=mjsunit/regress/regress-crbug-934138 BUG=chromium:934138 Change-Id: I790366204f5e9c943715a065b5229f2442e2c86e Reviewed-on: https://chromium-review.googlesource.com/c/1481216 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#59766} | 7 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function name collisions. R=ahaas@chromium.org TEST=message/asm-function-variable-collision BUG=v8:6127 Change-Id: I75658f0bf58a8b3de5eb42f4f054476f8d2c139b Reviewed-on: https://chromium-review.googlesource.com/469651 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#44475} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Fix validation failure in module variable import. R=clemensh@chromium.org TEST=message/asm-import-wrong-object BUG=chromium:718653 Change-Id: Ib903d7041ffb6a67c1b3c7be3e0f9455229acd90 Reviewed-on: https://chromium-review.googlesource.com/497747 Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45129} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Fix validation failure in module variable import. R=clemensh@chromium.org TEST=message/asm-import-wrong-object BUG=chromium:718653 Change-Id: Ib903d7041ffb6a67c1b3c7be3e0f9455229acd90 Reviewed-on: https://chromium-review.googlesource.com/497747 Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45129} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
Reland "[asmjs] Properly validate asm.js heap sizes" This is a reland of 5c3092718e92d123366d0e5d3679c7258bda686c (the CL was reverted because of a Chromium test that is now fixed) Original change's description: > Reland "[asmjs] Properly validate asm.js heap sizes" > > This is a reland of 5d69010e269e3161a95de2030e14f0a291d00b42 > > Original change's description: > > [asmjs] Properly validate asm.js heap sizes > > > > Enforce both engine limitations and spec (http://asmjs.org/spec/latest/) > > limitations on the size of asm.js heaps. > > > > R=clemensh@chromium.org > > CC=mstarzinger@chromium.org > > > > Bug: chromium:873600 > > Change-Id: I104c23bbd0a9a7c494f97f8f9e83ac5a37496dfd > > Reviewed-on: https://chromium-review.googlesource.com/1174411 > > Commit-Queue: Ben Titzer <titzer@chromium.org> > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#55163} > > Bug: chromium:873600 > Change-Id: Id24070bda3aafb9e1a32af0732a1b18f633ef932 > Reviewed-on: https://chromium-review.googlesource.com/1179681 > Commit-Queue: Ben Titzer <titzer@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55193} Bug: chromium:873600 Change-Id: I6eca2a89589070837b109278f964fc8e9a0fd6f1 Reviewed-on: https://chromium-review.googlesource.com/1183081 Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55249} | 7 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Report module linking failures to the console. This adds reporting of linking failures (i.e. module instantiation) similar to the existing reporting for validation failures. Note that the messages in question are deterministic and can be tested. R=clemensh@chromium.org Change-Id: Ibecebefb86f1d878f626702c05fd0cb21189dc2a Reviewed-on: https://chromium-review.googlesource.com/507488 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Jochen Eisinger <jochen@chromium.org> Cr-Commit-Position: refs/heads/master@{#45421} | 8 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Report module linking failures to the console. This adds reporting of linking failures (i.e. module instantiation) similar to the existing reporting for validation failures. Note that the messages in question are deterministic and can be tested. R=clemensh@chromium.org Change-Id: Ibecebefb86f1d878f626702c05fd0cb21189dc2a Reviewed-on: https://chromium-review.googlesource.com/507488 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Jochen Eisinger <jochen@chromium.org> Cr-Commit-Position: refs/heads/master@{#45421} | 8 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Make validation error messages consistent. This removes the debug information (i.e. direct references to the parser source file) from the message, hence making messages consistent between release and debug mode. The debug information can now be printed via the new --trace-asm-parser flag. Also adds two message test cases, showcasing that expected output can now be tested. More tests might be added to the message test suite later whenever it makes sense. R=clemensh@chromium.org BUG=v8:6127 Change-Id: I348044356896442ff9be2d638a564c82fec7a51c Reviewed-on: https://chromium-review.googlesource.com/461942 Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#44248} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Make validation error messages consistent. This removes the debug information (i.e. direct references to the parser source file) from the message, hence making messages consistent between release and debug mode. The debug information can now be printed via the new --trace-asm-parser flag. Also adds two message test cases, showcasing that expected output can now be tested. More tests might be added to the message test suite later whenever it makes sense. R=clemensh@chromium.org BUG=v8:6127 Change-Id: I348044356896442ff9be2d638a564c82fec7a51c Reviewed-on: https://chromium-review.googlesource.com/461942 Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#44248} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function table type checks. R=clemensh@chromium.org TEST=message/asm-table-mismatch-[def|use] BUG=v8:6202 Change-Id: I3e87f84591bedbda6366883a850dced149db0c8a Reviewed-on: https://chromium-review.googlesource.com/471666 Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#44506} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function table type checks. R=clemensh@chromium.org TEST=message/asm-table-mismatch-[def|use] BUG=v8:6202 Change-Id: I3e87f84591bedbda6366883a850dced149db0c8a Reviewed-on: https://chromium-review.googlesource.com/471666 Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#44506} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function table definition failures. R=clemensh@chromium.org BUG=v8:6127 Change-Id: I7f418b4e1accc8d560886cd5c05bdc54d3088249 Reviewed-on: https://chromium-review.googlesource.com/474864 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#44586} | 9 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Fix handling of bogus code after export statement. This makes the asm.js validator reject source with trailing expressions after the module exporting return statement. Most of the time trailing statements would not affect semantics, since they are unreachable. In some cases we might hide an expected ReferenceError tough. R=leszeks@chromium.org TEST=mjsunit/regress/regress-crbug-934138 BUG=chromium:934138 Change-Id: I790366204f5e9c943715a065b5229f2442e2c86e Reviewed-on: https://chromium-review.googlesource.com/c/1481216 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#59766} | 7 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
[asm.js] Test and fix function table definition failures. R=clemensh@chromium.org BUG=v8:6127 Change-Id: I7f418b4e1accc8d560886cd5c05bdc54d3088249 Reviewed-on: https://chromium-review.googlesource.com/474864 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#44586} | 9 年前 | |
[platform] Allow to memory-map empty files This current fails, since {mmap} fails with EINVAL for empty mappings. The destructor already has special handling for a {nullptr} mapping, so we can just use {nullptr} for empty files. We get a similar error on windows, and can fix it the same way. On order to make presubmit checks happy, we have to skip copyright checking and checking for terminating newlines for empty files. R=mlippautz@chromium.org Change-Id: I2b73da7ff6df72d8bdd40df1fff6422e0a46881e Reviewed-on: https://chromium-review.googlesource.com/c/1424861 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58970} | 7 年前 | |
[platform] Allow to memory-map empty files This current fails, since {mmap} fails with EINVAL for empty mappings. The destructor already has special handling for a {nullptr} mapping, so we can just use {nullptr} for empty files. We get a similar error on windows, and can fix it the same way. On order to make presubmit checks happy, we have to skip copyright checking and checking for terminating newlines for empty files. R=mlippautz@chromium.org Change-Id: I2b73da7ff6df72d8bdd40df1fff6422e0a46881e Reviewed-on: https://chromium-review.googlesource.com/c/1424861 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58970} | 7 年前 | |
[test] Fix flake in message tests js-wasm-wrapper-inlining-turbolev-* While excluded in the stress_incremental_marking variant, there is a bot that doesn't use that variant but still adds that flag to all test invocations. No-Tree-Checks: true No-Try: true Change-Id: I3810d1e4090bf597ed75e7640d3731984a388b1f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7156518 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#103738} | 7 个月前 | |
[wasm][compiler] Do not Wasm-in-JS inline on 32 bits ...since that hits unreachable code in isel and potentially other places. We would need to add the Int64LoweringReducer to the JS pipeline, but that is a more medium-term project. This might cause regressions compared to the "old" Turbofan-based Wasm-in-JS inlining, which has a more fine-grained bailout, see https://crrev.com/c/7079509. Fixed: 449028728 Change-Id: I06a9019f802bc45bdbe66c6e485144c1cfb1a97d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7079824 Auto-Submit: Daniel Lehmann <dlehmann@chromium.org> Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#103511} | 8 个月前 | |
[test] Fix flake in message tests js-wasm-wrapper-inlining-turbolev-* While excluded in the stress_incremental_marking variant, there is a bot that doesn't use that variant but still adds that flag to all test invocations. No-Tree-Checks: true No-Try: true Change-Id: I3810d1e4090bf597ed75e7640d3731984a388b1f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7156518 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#103738} | 7 个月前 | |
[wasm][compiler] Do not Wasm-in-JS inline on 32 bits ...since that hits unreachable code in isel and potentially other places. We would need to add the Int64LoweringReducer to the JS pipeline, but that is a more medium-term project. This might cause regressions compared to the "old" Turbofan-based Wasm-in-JS inlining, which has a more fine-grained bailout, see https://crrev.com/c/7079509. Fixed: 449028728 Change-Id: I06a9019f802bc45bdbe66c6e485144c1cfb1a97d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7079824 Auto-Submit: Daniel Lehmann <dlehmann@chromium.org> Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#103511} | 8 个月前 | |
Support wasm interpreter in ohos Signed-off-by: diking <wangzhongqi5@huawei.com> | 29 天前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[parser] classify binding pattern errors when parsing await expression await expressions are an invalid destructuring target, and should result in a SyntaxError when used in a position where a destructuring target is expected. BUG=v8:7173 R=marja@chromium.org, adamk@chromium.org Change-Id: I1bdb4bc13cb2e3e904fc4389a6e0abca1e0ed17f Reviewed-on: https://chromium-review.googlesource.com/811946 Reviewed-by: Sathya Gunasekaran (ooo until 12/12) <gsathya@chromium.org> Commit-Queue: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#49977} | 8 年前 | |
[parser] classify binding pattern errors when parsing await expression await expressions are an invalid destructuring target, and should result in a SyntaxError when used in a position where a destructuring target is expected. BUG=v8:7173 R=marja@chromium.org, adamk@chromium.org Change-Id: I1bdb4bc13cb2e3e904fc4389a6e0abca1e0ed17f Reviewed-on: https://chromium-review.googlesource.com/811946 Reviewed-by: Sathya Gunasekaran (ooo until 12/12) <gsathya@chromium.org> Commit-Queue: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#49977} | 8 年前 | |
[d8] Print filename on failed readbuffer Knowing which file is missing helps debugging enormously. R=jkummerow@chromium.org Change-Id: I2f93486044137721a0c9a4fa1b9e961a821ab25a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6997619 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102866} | 9 个月前 | |
[d8] Print filename on failed readbuffer Knowing which file is missing helps debugging enormously. R=jkummerow@chromium.org Change-Id: I2f93486044137721a0c9a4fa1b9e961a821ab25a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6997619 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102866} | 9 个月前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Move the last JS tests out of "preparser". This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753} | 10 年前 | |
[testing] Convert some "preparser" tests into "message". This converts existing "preparser" tests that expect a certain exception message to be produced into "message" tests. Thereby we get much better coverage because the former test suite degraded by now to just check whether each test case threw or not, the exception message was not being checked at all. This also deprecates the ability of "preparser" to specify that single test cases based on JS files are expected to throw, "messages" is far superior, use that test suite instead. R=machenbach@chromium.org TEST=message,preparser Review URL: https://codereview.chromium.org/1784013003 Cr-Commit-Position: refs/heads/master@{#34713} | 10 年前 | |
[testing] Convert some "preparser" tests into "message". This converts existing "preparser" tests that expect a certain exception message to be produced into "message" tests. Thereby we get much better coverage because the former test suite degraded by now to just check whether each test case threw or not, the exception message was not being checked at all. This also deprecates the ability of "preparser" to specify that single test cases based on JS files are expected to throw, "messages" is far superior, use that test suite instead. R=machenbach@chromium.org TEST=message,preparser Review URL: https://codereview.chromium.org/1784013003 Cr-Commit-Position: refs/heads/master@{#34713} | 10 年前 | |
[test] Use pathlib in test framework This turns all paths in the test frameworks and all its suite implementations from strings into pathlib paths. This makes the framework more future-proof, simplifies a lot of code and enhances readability. It comes with the risk of introducing new bugs. This is lowered using an experimental test comparison script: https://crrev.com/c/4648372. Some detailed changes: - The "path" of a test case is now a pathlib path (also in cases where the path doesn't correspond to a location on the file system). This path is always relative to the test root. - The "name" of a test case is the posix string of that path used in status files and at the command line. - All other paths are absolute. - We use some more wrapping with Path() than absolutely necessary. Reducing such a wrapping where it's not needed is a micro-optimization and the potential by introducing a bug by forgetting one is worse. - Some modules are not happy with pathlib objects, hence a few explicit str() conversions are added. Thoughts on risk: - The highest risk is that due to the newly introduced logic, some test cases are silently filtered and not run now. We'll manually compare runs before and after this change. - Each test attempted to run will either pass or fail, failures won't be silent. E.g. a wrong path passed to the cctest executable is flagged as a failure. - Wrongly constructed paths to JS test cases lead to failures (tested several manually). Other failure types: - Some string path not turned into pathlib: Will typically fail when calling any pathlib function. - Some pathlib object treated as a string: Will typically raise an exception, e.g. using in-operator. - Logic bugs in pathlib functions behaving differently than anticipated, e.g. with_suffix(): Will typically result in wrong paths, resulting in errors reading a test case. Though worst case could be silent ignoring. Cq-Include-Trybots: luci.v8.try:v8_numfuzz_dbg Cq-Include-Trybots: luci.v8.try:v8_numfuzz_rel Cq-Include-Trybots: luci.v8.try:v8_numfuzz_tsan_rel Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel Cq-Include-Trybots: luci.v8.try:v8_android_arm64_n5x_rel Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel Cq-Include-Trybots: luci.v8.try:v8_android_arm64_n5x_rel Bug: chromium:1132088 Change-Id: Ifc94feb292174935db969dcf5d174d2eedcf3dfd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4538761 Reviewed-by: Liviu Rau <liviurau@google.com> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#88502} | 2 年前 | |
Changed the message reporting for try { ... } finally { ... } statements to report the exception when they happen in the try block and not as previously when re-thrown after execution of the finally block. There is no longer any message generated by re-throw. Added test cases for various combinations of try/catch/finally with throw in different places. Added a regression directory to the messages tests which is processed by the test runner. Added regression tests for the specific bugs fixed. Runs all the test suites. BUG=73 BUG=75 Review URL: http://codereview.chromium.org/8050 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@565 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 | 17 年前 | |
First commit of new tools/run-tests.py Review URL: https://codereview.chromium.org/10919265 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 | 13 年前 | |
Update V8 to version 3.0 (re-land r5920). git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 | 15 年前 | |
Update V8 to version 3.0 (re-land r5920). git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 | 15 年前 | |
Update V8 to version 3.0 (re-land r5920). git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 | 15 年前 | |
Update V8 to version 3.0 (re-land r5920). git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 | 15 年前 | |
[d8] Add unicode filename support on windows This is a follow up CL for https://crrev.com/c/3538284. Tests credited to https://crrev.com/c/3468352. - Add unicode filename path test. - Convert ansi encoded filename argv to utf8 encoded on windows. Because the ansi encoded filename argv may lose some information for unicode filename, and we need to use GetCommandLineW to get the actual unicode filename argument. And we convert it to utf8 encoded to be consistent with subsequent processing. - Use REPLACEMENT CHARACTER to replace the characters which cannot be encoded with sys.stdout.encoding in progress.py. This CL should be **reverted** if new unicode filenames cause problems. Bug: v8:12541 Change-Id: Ic5c5ae342b3a5b11c3119452af03c9165d429ed7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3568926 Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#79850} | 4 年前 | |
[d8] Add unicode filename support on windows This is a follow up CL for https://crrev.com/c/3538284. Tests credited to https://crrev.com/c/3468352. - Add unicode filename path test. - Convert ansi encoded filename argv to utf8 encoded on windows. Because the ansi encoded filename argv may lose some information for unicode filename, and we need to use GetCommandLineW to get the actual unicode filename argument. And we convert it to utf8 encoded to be consistent with subsequent processing. - Use REPLACEMENT CHARACTER to replace the characters which cannot be encoded with sys.stdout.encoding in progress.py. This CL should be **reverted** if new unicode filenames cause problems. Bug: v8:12541 Change-Id: Ic5c5ae342b3a5b11c3119452af03c9165d429ed7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3568926 Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#79850} | 4 年前 | |
[wasm][compilation-hints] Fix --no-liftoff behavior - Make sure compilation hints are used for inlining when --no-liftoff is enabled. - Make sure the correct compilation tiers are used when compiling with compilation hints and --no-liftoff. - (Drive-by) Add some comments, remove some outdated ones. Bug: 405952385 Change-Id: I175fe763847ba27d697fabd201dd496c7542a58c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7137678 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#103644} | 7 个月前 | |
[wasm][compilation-hints] Fix --no-liftoff behavior - Make sure compilation hints are used for inlining when --no-liftoff is enabled. - Make sure the correct compilation tiers are used when compiling with compilation hints and --no-liftoff. - (Drive-by) Add some comments, remove some outdated ones. Bug: 405952385 Change-Id: I175fe763847ba27d697fabd201dd496c7542a58c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7137678 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#103644} | 7 个月前 | |
[wasm][compilation-hints] Ignore mistyped hints when inlining Bug: 405952385 Change-Id: Ie4b5d3255ab37cde15b14191dc31c05a89b3352c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7124309 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#103586} | 8 个月前 | |
[wasm][compilation-hints] Ignore mistyped hints when inlining Bug: 405952385 Change-Id: Ie4b5d3255ab37cde15b14191dc31c05a89b3352c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7124309 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#103586} | 8 个月前 | |
[wasm][turboshaft] Add DataView well-known import recognition test Bug: v8:14108 Change-Id: I688203461a93317a64622b1c0a06bc2fc2349d5d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5024279 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Eva Herencsárová <evih@chromium.org> Cr-Commit-Position: refs/heads/main@{#90914} | 2 年前 | |
[wasm][turboshaft] Add DataView well-known import recognition test Bug: v8:14108 Change-Id: I688203461a93317a64622b1c0a06bc2fc2349d5d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5024279 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Eva Herencsárová <evih@chromium.org> Cr-Commit-Position: refs/heads/main@{#90914} | 2 年前 | |
[test] Automatically add --no-stress-opt to message tests Message tests check the output of a test against an expected file. Executing with --stress-opt changes the output, since the test will be run multiple times. For that reason, most message tests explicitly add the --no-stress-opt flag. Since this is redundant, and not a per-test setting, just configure this globally for all message tests instead. R=machenbach@chromium.org Bug: v8:12425 Change-Id: I52f1b43da2781fcb6f6bd37e67d483ca69c1c929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3471637 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79164} | 4 年前 | |
Reland "Reland "[d8][wasm] Test wasm compilation completion"" The deadlock should be fixed with https://crrev.com/c/1002174. This is a reland of 4d1c2907d365465b71e5a836d73377d4f900d421 Original change's description: > Reland "[d8][wasm] Test wasm compilation completion" > > This is a reland of ed2605f04095b9dcc0550e5f00757f4f34881c27 > > Original change's description: > > [d8][wasm] Test wasm compilation completion > > > > d8 was recently changed to keep running until wasm compilation has > > completed. This adds a message test to test that. > > > > R=ahaas@chromium.org > > > > Change-Id: I73af53b6df4ee5f9a6afd26cf2d71a269140465f > > Reviewed-on: https://chromium-review.googlesource.com/966184 > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#52008} > > Change-Id: Iadbd5056dfa58da454956c4e89369af8b0455b35 > Reviewed-on: https://chromium-review.googlesource.com/975242 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52154} Bug: chromium:824681 Change-Id: I4077645bcfcb2320f6573bb779027add36feee3f Reviewed-on: https://chromium-review.googlesource.com/999632 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#52505} | 8 年前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[wasm][compilation-hints] Write compilation hints to stdout and file We generate the compilation-hints sections from a module, based on collected feedback, behind a couple of new flags. Namely: - We generate the compilation-priority section based on whether a function was compiled and/or marked for tierup. We always generate a 0 compilation priority if the function was compiled, and a 0 optimization priority if it was also marked for tierup. Note that we do not actually tier up in this configuration. - We generate the instruction-frequencies and call-targets sections based on collected liftoff feedback. The flag --wasm-generate-compilation-hints writes a proper wasm module to a file, containing only the new sections. The flag --trace-wasm-generate-compilation-hints emits a textual representation of these sections to stdout. Bug: 405952385 Change-Id: Ibb89123966c4ed3ced77fcefd028f535495f2b30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7157372 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#103947} | 7 个月前 | |
[wasm][compilation-hints] Write compilation hints to stdout and file We generate the compilation-hints sections from a module, based on collected feedback, behind a couple of new flags. Namely: - We generate the compilation-priority section based on whether a function was compiled and/or marked for tierup. We always generate a 0 compilation priority if the function was compiled, and a 0 optimization priority if it was also marked for tierup. Note that we do not actually tier up in this configuration. - We generate the instruction-frequencies and call-targets sections based on collected liftoff feedback. The flag --wasm-generate-compilation-hints writes a proper wasm module to a file, containing only the new sections. The flag --trace-wasm-generate-compilation-hints emits a textual representation of these sections to stdout. Bug: 405952385 Change-Id: Ibb89123966c4ed3ced77fcefd028f535495f2b30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7157372 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#103947} | 7 个月前 | |
[flag] Remove --always-turbofan Bug: 431974094 Change-Id: Ia86d64cf626db0977299f8ec105f86ee4f385e7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6781181 Reviewed-by: Marja Hölttä <marja@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#101612} | 11 个月前 | |
Reland "[turboshaft][wasm] Wasm-in-JS inlining: Part 1" This is a reland of commit 3bd2f9579c669c002fc099680fe6b943bd29e79b Removing any.convert_extern and extern.convert_any support to fix arm64 non-pointer-compression build. Will fix Wasm builtin calls in a follow-up. Original change's description: > [turboshaft][wasm] Wasm-in-JS inlining: Part 1 > > Start with some boilerplate and incomplete implementation. This adds: > - Off-by-default, experimental flag. > - Attaching the information which Wasm function is called to a new > TurboFan sidetable (determined the least invasive/best option > together with Nico). > - Convert that sidetable information and attach to TSCallDescriptor. > - New Turboshaft phase and reducer, which consume this info and do the > actual inlining. > - Mjsunit-style message test. > - WasmFullDecoder instantiation (in the TS reducer) and new interface > for the decoder. > - Bailout by decoding Wasm function twice. > - Don't toggle thread-in-Wasm-flag when inlining (HACKY, see comment). > - Implementation (roughly copied from regular Wasm TS pipeline) of > * locals, globals, constants, > * simple arithmetic, > * several binary and unary operations that don't trap or call > builtins. > > TODOs for follow-up parts: > - Correct stack trace, metadata, debugging ... > - Implement support for more Wasm instructions in the inlining > interface (which might need smarter code sharing with the regular > Wasm pipeline) > - Implement memory accesses (with bounds checking) > - Fuzz the whole thing with Fuzzilli > > Bug: 353475584 > Change-Id: Ica7283e76ea15b4cf5efd0dbc8d47877ee080382 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5823909 > Commit-Queue: Daniel Lehmann <dlehmann@chromium.org> > Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> > Cr-Commit-Position: refs/heads/main@{#96030} Bug: 353475584 Change-Id: Ic6b99da6f82b09efec21346fb31e9f754d866d08 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5850985 Commit-Queue: Daniel Lehmann <dlehmann@chromium.org> Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Auto-Submit: Daniel Lehmann <dlehmann@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#96052} | 1 年前 | |
[flag] Remove --always-turbofan Bug: 431974094 Change-Id: Ia86d64cf626db0977299f8ec105f86ee4f385e7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6781181 Reviewed-by: Marja Hölttä <marja@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#101612} | 11 个月前 | |
[turbofan][maglev] Improve inlining tracing Bug: 42204525 Change-Id: I6bd8f0125b6ff7d41d71940445fa7a1aa1bfcc70 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6769768 Commit-Queue: Darius Mercadier <dmercadier@chromium.org> Auto-Submit: Darius Mercadier <dmercadier@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#102235} | 10 个月前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[wasm] Remove --expose-wasm and refactor Wasm JS installation - Remove the --expose-wasm flag and instead determine based on the other flags (--jitless, correctness-fuzzer-suppressions, --wasm-jitless) whether the WebAssembly object should be installed as a global property. - Always use the WebAssembly object from the context for installing new (conditional) features. - Add more checks when installing new properties. - Make some methods private. Bug: 373485797 Change-Id: I1b39502a6b6a1b680a3d481b2c6c0031431c9c45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5932661 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#96636} | 1 年前 | |
[string] Use rapidhash for string hashing Rapidhash is used in Chromium for hashing, and should present a better performance/hash quality tradeoff than our existing hash. This is a port of the rapidhash fork in chromium: https://source.chromium.org/chromium/chromium/src/+/main:third_party/rapidhash/ Since rapidhash works on blocks of characters rather than individual characters, we have to make two adjustments to our hashing: * Handle two-byte strings of one-byte characters specially, so that they have the same hash as the equivalent one-byte string * Calculate the hash separately from the character-by-character check for digits in the integer index loop. Bug: 392441189 Change-Id: I17c7443f36e71751f1394c0f037d5776f7ec0bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6185430 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98391} | 1 年前 | |
[tests] Clean up flags for staged JS features Bug: 391658080 Change-Id: Ib68e18d2f3c31e39236e019ebcdd91701ed6653c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6199809 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#98370} | 1 年前 | |
[wasm] Implement relative call counts for inlining - Collect total call counts for each function in Liftoff and store them in the feedback storage in the WasmModule. - Calculate relative call counts (that is, (call counts per call site)/(parent total call count)) and use them along with the wire byte size to calculate scores for inlining candidates. - Do not inline if that score is too low (replaces the previous condition). This was tested with J2Wasm benchmark suite and performs en par with the current configuration in running time and compilation time, and regresses 2.4% in code size. It was also tested with pspdfkit, where it performs en par with the current configuration. Change-Id: Ie7c128e55e3ce028090477f117e9f9e19d32dedd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6966167 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#102908} | 9 个月前 | |
[wasm] Remove --turboshaft-wasm and --turboshaft-wasm-wrappers Remove two enabled-by-default flags where we currently do not test the disabled mode and we also do not want to switch back. Also remove some obviously dead code caused by this; more cleanup will be necessary in follow-up CLs. R=mliedtke@chromium.org Bug: 382509286 Change-Id: I6c1361b1889fb905f956cce31d499011f2ed0b1a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6074953 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#97747} | 1 年前 | |
[wasm] Implement relative call counts for inlining - Collect total call counts for each function in Liftoff and store them in the feedback storage in the WasmModule. - Calculate relative call counts (that is, (call counts per call site)/(parent total call count)) and use them along with the wire byte size to calculate scores for inlining candidates. - Do not inline if that score is too low (replaces the previous condition). This was tested with J2Wasm benchmark suite and performs en par with the current configuration in running time and compilation time, and regresses 2.4% in code size. It was also tested with pspdfkit, where it performs en par with the current configuration. Change-Id: Ie7c128e55e3ce028090477f117e9f9e19d32dedd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6966167 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#102908} | 9 个月前 | |
[wasm] Remove --turboshaft-wasm and --turboshaft-wasm-wrappers Remove two enabled-by-default flags where we currently do not test the disabled mode and we also do not want to switch back. Also remove some obviously dead code caused by this; more cleanup will be necessary in follow-up CLs. R=mliedtke@chromium.org Bug: 382509286 Change-Id: I6c1361b1889fb905f956cce31d499011f2ed0b1a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6074953 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#97747} | 1 年前 | |
[deoptimizer][wasm] Fix parameter stack slot alignment for v128 While SIMD stack slots are in general not aligned (neither in Liftoff nor in Turbofan), they are 16-Byte aligned relative to the previous stack pointer. The deoptimizer did not account for that. This is now fixed by calling wasm::IterateSignatureImpl() which should also ensure that any other implementation details should now be in sync. The return stack slots are part of the caller's frame size, so they should already be accounted for. Fixed: 353913485 Bug: 42204618 Change-Id: Ie0931690da0ce30bec70e8cfa07643fe128fd622 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5729976 Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#95193} | 1 年前 | |
[wasm] Remove --turboshaft-wasm and --turboshaft-wasm-wrappers Remove two enabled-by-default flags where we currently do not test the disabled mode and we also do not want to switch back. Also remove some obviously dead code caused by this; more cleanup will be necessary in follow-up CLs. R=mliedtke@chromium.org Bug: 382509286 Change-Id: I6c1361b1889fb905f956cce31d499011f2ed0b1a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6074953 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#97747} | 1 年前 | |
[deoptimizer][wasm] Fix parameter stack slot alignment for v128 While SIMD stack slots are in general not aligned (neither in Liftoff nor in Turbofan), they are 16-Byte aligned relative to the previous stack pointer. The deoptimizer did not account for that. This is now fixed by calling wasm::IterateSignatureImpl() which should also ensure that any other implementation details should now be in sync. The return stack slots are part of the caller's frame size, so they should already be accounted for. Fixed: 353913485 Bug: 42204618 Change-Id: Ie0931690da0ce30bec70e8cfa07643fe128fd622 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5729976 Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#95193} | 1 年前 | |
[wasm] add tracing support for global variables in Wasm Add support for tracing global variables, similar to the already existing tracing for reads and writes to Wasm linear memory. This will be used for detecting and reporting differences in global variables between the two runs in the differential fuzzing of the Wasm libfuzzers. Bug: 436219201 Change-Id: Ifabfe4dfdd4a8ac24c4d7c8a1c2705e0bd117c8a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6827702 Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Cr-Commit-Position: refs/heads/main@{#101853} | 10 个月前 | |
[wasm][fuzzer] Store memory and global traces for differential fuzzing This adds an option to store the memory and global traces instead of printing them to stdout in the runtime functions. This is a preparation for comparing the memory and global traces between the reference and non-reference runs in the differential fuzzing, which requires the traces to be stored. Bug: 436219201 Change-Id: I6bbb268eaccc798c8336368fa2415fbc97d240b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6897246 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102417} | 9 个月前 | |
[wasm] add tracing support for global variables in Wasm Add support for tracing global variables, similar to the already existing tracing for reads and writes to Wasm linear memory. This will be used for detecting and reporting differences in global variables between the two runs in the differential fuzzing of the Wasm libfuzzers. Bug: 436219201 Change-Id: Ifabfe4dfdd4a8ac24c4d7c8a1c2705e0bd117c8a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6827702 Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Cr-Commit-Position: refs/heads/main@{#101853} | 10 个月前 | |
[wasm][fuzzer] Store memory and global traces for differential fuzzing This adds an option to store the memory and global traces instead of printing them to stdout in the runtime functions. This is a preparation for comparing the memory and global traces between the reference and non-reference runs in the differential fuzzing, which requires the traces to be stored. Bug: 436219201 Change-Id: I6bbb268eaccc798c8336368fa2415fbc97d240b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6897246 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102417} | 9 个月前 | |
[wasm] Cleanup implications for call_indirect inlining Now that https://crrev.com/c/6431682 enables call_indirect inlining by default, we no longer need an implication from --future. Thus also revert the changes in tests introduced when we added this implication in https://crrev.com/c/5929031. Also, the implication from --wasm-inlining-call-indirect to --wasm-inlining makes it inconvenient to disable inlining altogether (because it will cause an incompatible flag implications error without explicitly specifying --no-wasm-inlining-call-indirect too.) Use a neg-neg implication instead. This came up in the context of https://chromium-review.googlesource.com/c/v8/v8/+/6541895/comment/35743e3d_14d8daf6/ Bug: 335082212 Change-Id: I2c97263f2e1e1b6174c27e8b79da34198efb6619 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564464 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Daniel Lehmann <dlehmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#100350} | 1 年前 | |
[wasm] Fix WasmTraceExit for void functions The WasmTraceExit runtime function will fail if the first parameter does not look like a Smi. In the case that no return value is present, Liftoff just left the register uninitialized though, which can lead to a DCHECK error in the runtime function (depending on the value of that register), and could even lead to GC problems if the runtime function happens to trigger GC. This CL solves the problem by passing {Smi::zero()} instead of a pointer to a stack slot in case that no returns are present. This matches what TurboFan passes. R=ahaas@chromium.org Change-Id: I5b93f2aafdcead25630ee5d05dcfa06372a7b94d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4303436 Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#86231} | 3 年前 | |
[wasm] support wasm-trace-memory for memory64. With this CL, tracing wasm memory64 is enabled. Given that 32-bit machines actually do not support allocating memory more than 4GB, message tests of memory64 are skipped on 32-bits machines. Besides, tests added by this CL are relavant to SIMD, so they are also skipped on no_simd_hardware. Bug: v8:13782 Change-Id: Ib911cc07d8d4d6e81d5e1f01786ae42662bd35d4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4297292 Auto-Submit: 杨文明 <yangwenming@bytedance.com> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#86212} | 3 年前 | |
[wasm][fuzzer] Store memory and global traces for differential fuzzing This adds an option to store the memory and global traces instead of printing them to stdout in the runtime functions. This is a preparation for comparing the memory and global traces between the reference and non-reference runs in the differential fuzzing, which requires the traces to be stored. Bug: 436219201 Change-Id: I6bbb268eaccc798c8336368fa2415fbc97d240b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6897246 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102417} | 9 个月前 | |
[wasm][multi-memory] Support --trace-wasm-memory This extends --trace-wasm-memory to support multiple memories. Fixed: 42204192 Change-Id: I8e191617b613901f510595f38b9349458fcf020b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6643578 Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#100869} | 1 年前 | |
[wasm][fuzzer] Store memory and global traces for differential fuzzing This adds an option to store the memory and global traces instead of printing them to stdout in the runtime functions. This is a preparation for comparing the memory and global traces between the reference and non-reference runs in the differential fuzzing, which requires the traces to be stored. Bug: 436219201 Change-Id: I6bbb268eaccc798c8336368fa2415fbc97d240b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6897246 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102417} | 9 个月前 | |
[tests] Clean up flags for staged JS features Bug: 391658080 Change-Id: Ib68e18d2f3c31e39236e019ebcdd91701ed6653c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6199809 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#98370} | 1 年前 | |
[wasm][fuzzer] Store memory and global traces for differential fuzzing This adds an option to store the memory and global traces instead of printing them to stdout in the runtime functions. This is a preparation for comparing the memory and global traces between the reference and non-reference runs in the differential fuzzing, which requires the traces to be stored. Bug: 436219201 Change-Id: I6bbb268eaccc798c8336368fa2415fbc97d240b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6897246 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102417} | 9 个月前 | |
[tests] Clean up flags for staged JS features Bug: 391658080 Change-Id: Ib68e18d2f3c31e39236e019ebcdd91701ed6653c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6199809 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#98370} | 1 年前 | |
[wasm][fuzzer] Store memory and global traces for differential fuzzing This adds an option to store the memory and global traces instead of printing them to stdout in the runtime functions. This is a preparation for comparing the memory and global traces between the reference and non-reference runs in the differential fuzzing, which requires the traces to be stored. Bug: 436219201 Change-Id: I6bbb268eaccc798c8336368fa2415fbc97d240b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6897246 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nikolas Kaipel <nikolaskaipel@google.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#102417} | 9 个月前 | |
[wasm] Cleanup implications for call_indirect inlining Now that https://crrev.com/c/6431682 enables call_indirect inlining by default, we no longer need an implication from --future. Thus also revert the changes in tests introduced when we added this implication in https://crrev.com/c/5929031. Also, the implication from --wasm-inlining-call-indirect to --wasm-inlining makes it inconvenient to disable inlining altogether (because it will cause an incompatible flag implications error without explicitly specifying --no-wasm-inlining-call-indirect too.) Use a neg-neg implication instead. This came up in the context of https://chromium-review.googlesource.com/c/v8/v8/+/6541895/comment/35743e3d_14d8daf6/ Bug: 335082212 Change-Id: I2c97263f2e1e1b6174c27e8b79da34198efb6619 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564464 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Daniel Lehmann <dlehmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#100350} | 1 年前 | |
[wasm] Fix WasmTraceExit for void functions The WasmTraceExit runtime function will fail if the first parameter does not look like a Smi. In the case that no return value is present, Liftoff just left the register uninitialized though, which can lead to a DCHECK error in the runtime function (depending on the value of that register), and could even lead to GC problems if the runtime function happens to trigger GC. This CL solves the problem by passing {Smi::zero()} instead of a pointer to a stack slot in case that no returns are present. This matches what TurboFan passes. R=ahaas@chromium.org Change-Id: I5b93f2aafdcead25630ee5d05dcfa06372a7b94d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4303436 Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#86231} | 3 年前 | |
[heap][test] Fix two tests for conservative stack scanning These two tests rely on precise garbage collection, as they test --- among other things --- that some resources have been collected after a GC. They may fail if conservative stack scanning is used. This CL fixes the tests by invoking the GC in asynchronous execution mode, when necessary, to ensure that it will be invoked from the event loop without a stack. Furthermore, test regress-4578 which included two independent scenaria is now split in two, to prevent interaction between the asynchronous tasks of these two scenaria. Bug: v8:13257 Change-Id: Ic1463e0ba2a6c601a78000154037bb48662802b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4519135 Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Cr-Commit-Position: refs/heads/main@{#87644} | 3 年前 | |
[weakrefs] Remove cleanupSome The FinalizationRegistry cleanupSome proposal has been withdrawn. Remove the flag, unexpose the method, and refactor it to C++ (which is a net simplification). Bug: 40644196 Change-Id: I9349a63e19b189fd373051a19b23d7251e0a7a2d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6039915 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#97418} | 1 年前 |
JavaScript tests with expected output
Tests in test/message pass if the output matches the expected output.
Message tests are particularly useful when checking for exact error messages.
Tests and their expected output must have the same filename, with the .js and
.out extension.
foo.js
foo.out
You can use a regex in the expected output instead of the exact path:
*%(basename)s:7: SyntaxError: Detected cycle while resolving name 'a'
Empty lines are ignored in the comparison, but whitespaces are not.
Exact details of the test runner are in testcfg.py.