- 16 Sep, 2021 10 commits
-
-
Manos Koukoutos authored
Behind the --wasm-inlining flag, we introduce speculative direct calls as an alternative to invoking functions through references. In pseudocode, call_ref(func_ref, args...) reduces to if (func_ref == function_reference_at(expected_index)) { call_direct(expected_index, args...) } else call_ref(func_ref, args...) The introduced direct call can later get inlined in WasmInliningPhase. Currently, we always speculate that the reference is the function at index 0. Proper heuristics, based on liftoff runtime feedback, will come later. Bug: v8:12166, v8:7748 Change-Id: Icd1319d3091b436e71906717fd8a2662bfbb8481 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162602 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#76884}
-
Patrick Thier authored
JavascriptBuiltinContinuationFrame and BuiltinFrame didn't correctly handle the receiver when it was included in the argument count. Bug: v8:11112, chromium:1249941 Change-Id: I4d79bd152ea7e992fa3b87a4de2a509b79fcb37c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3165058 Commit-Queue: Patrick Thier <pthier@chromium.org> Reviewed-by:
Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#76881}
-
Georg Neis authored
... by adding atomic (relaxed) accessor's for a map's constructor_or_backpointer field, and using them in the two functions. Bug: chromium:1250216, v8:7790 Change-Id: I3416799cca73792ff5f8963685274ad9afdc6229 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162129Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/main@{#76876}
-
Andreas Haas authored
Reason for revert: There was an out-dated wpt test in blink that failed after this CL. I adjusted the test expectations in https://chromium-review.googlesource.com/c/chromium/src/+/3162980 so that I can land this CL. Original change's description: > Revert "[wasm][externref] Support default value for the table.set" > > This reverts commit 6b578980. > > Reason for revert: Fails layout tests: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Blink%20Linux/13751/overview > > Original change's description: > > [wasm][externref] Support default value for the table.set > > > > WebAssembly.Table.set allows a default value instead of the second > > parameter, which was not supported by V8 so far. > > > > R=thibaudm@chromium.org > > > > Bug: v8:7581 > > Change-Id: I417790722b1cb4f854cd0056ecb8377c330c45fa > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3141574 > > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > > Commit-Queue: Andreas Haas <ahaas@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#76846} > > Bug: v8:7581 > Change-Id: I83d9be59c66ece3184b5708e5b8a3b401e4938ed > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3163257 > Auto-Submit: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Cr-Commit-Position: refs/heads/main@{#76852} Bug: v8:7581 Change-Id: I248f836ba4de2a4e3f3d80c00e6f1ac0b46a38d7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162608 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#76873}
-
Andreas Haas authored
R=thibaudm@chromium.org Bug: v8:12227 Change-Id: If10683be63beb32c658d2dfaac0a07d858c472ba Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162038 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#76871}
-
Milad Fa authored
Liftoff needs to be fully implemented for running this test. Change-Id: Ia229d478fa22d4ce9a715d13b3d2b09a2634ad1c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3163016Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#76870}
-
Andreas Haas authored
Drive-by: Reorder the entries in wasm-js.status a bit. R=thibaudm@chromium.org Change-Id: I7c854c41a58f16f95a8909f4d7aa103ae440007d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162126Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#76869}
-
Liu Yu authored
This test is added in commit bc3b9332 Bug: v8:7748 Change-Id: I8bada39c6fc9ed22f7a25786697aed880738bc9e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3163286 Auto-Submit: Liu yu <liuyu@loongson.cn> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#76868}
-
Jaroslav Sevcik authored
EphemeronHashTable does not trigger interrupts when accessed (as opposed to calling the WeakMapGet builtin), so it avoids the use-after-free problem when reading exception metadata triggers session disconnect while holding a reference to the session. Bug: chromium:1241860 Change-Id: I29264b04b8daf682e7c33a97faedf50e323d57c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158326 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/main@{#76864}
-
Dominik Inführ authored
This is a reland of 11045926 The first version of this CL uncovered a TSAN failure when not disabling RCS anymore. The problem was that a background thread was still updating RCS counters, while the main thread already dumped those values during tear down. This CL fixes this by dumping counters only after all background threads are stopped. Original change's description: > [test] Avoid disabling of RCS during runtime > > Test was flaky since disabling of RCS at runtime is unsafe. Some code > (e.g. TRACE_GC) is run only in case RCS is enabled and such code paths > might also DCHECK that RCS is enabled. > A background thread (sweeping in this case) could've already > entered such a code path right before RCS is disabled. In this case the > guard at the entry still saw that RCS is enabled but subsequent DCHECKs > that ensure that RCS is enabled might fail. > > We could fix this by completing the sweeper tasks before disabling RCS > but there might be other similar tasks which might be run at that point > in the future (e.g. memory unmapper). > > Disabling the flag doesn't even seem to be needed for the initial > regression test, so it seems simpler to just not disable RCS anymore. > > Bug: v8:12026 > Change-Id: I878f7dd9a7a4abb6a501f7a7651a1240ef2082a6 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162043 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76845} Bug: v8:12026, v8:12234 Change-Id: I5cb577051d188d17b02ca7da79a3f1d9aa646cae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162050 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#76859}
-
- 15 Sep, 2021 13 commits
-
-
Ng Zhi An authored
These tests don't depend on initializing VM (for Context) or even an isolate, so we can remove the setup code, and use UNINITIALIZED_TEST (will not even set up an isolate). Bug: v8:12207 Change-Id: I4b509b95cc8272db22892c32b53464678403dc7d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160748Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/main@{#76854}
-
Clemens Backes authored
This reverts commit 6b578980. Reason for revert: Fails layout tests: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Blink%20Linux/13751/overview Original change's description: > [wasm][externref] Support default value for the table.set > > WebAssembly.Table.set allows a default value instead of the second > parameter, which was not supported by V8 so far. > > R=thibaudm@chromium.org > > Bug: v8:7581 > Change-Id: I417790722b1cb4f854cd0056ecb8377c330c45fa > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3141574 > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > Commit-Queue: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76846} Bug: v8:7581 Change-Id: I83d9be59c66ece3184b5708e5b8a3b401e4938ed No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3163257 Auto-Submit: Clemens Backes <clemensb@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#76852}
-
Clemens Backes authored
This reverts commit 16df1dfa. Reason for revert: Multiple failures, e.g. https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux/43844/overview Original change's description: > [arm64][wasm-simd] Use Cm(0) for integer comparison with 0 > > Use an immediate zero operand for integer comparison when possible. This > gives ~1% runtime performance improvement in some benchmarks on Neoverse > N1. > > Change-Id: I727a8104f8e6ca3d122d6b5b8b3d38d7bdd76c47 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158327 > Reviewed-by: Zhi An Ng <zhin@chromium.org> > Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> > Cr-Commit-Position: refs/heads/main@{#76847} Tbr: zhin@chromium.org Change-Id: I7039106d885c59aecad24dd8dda4d151b8e1f022 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162053Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Auto-Submit: Clemens Backes <clemensb@chromium.org> Owners-Override: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#76851}
-
Clemens Backes authored
Instead of trying to detect which sanitizer we run on, just allow the output that any sanitizer would produce. Note that the regular expression syntax is pretty limited, so we cannot express this as a single regex. This removes the single use of {V8_USE_UNDEFINED_BEHAVIOR_SANITIZER} again, but for completeness I leave it in {macros.h} for now. TBR=jkummerow@chromium.org Bug: v8:12226 Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_cfi_rel_ng Change-Id: I37a6d15ebb9fdafbdbee0158ba6c540582c31301 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162046Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#76850}
-
Andreas Haas authored
The type() function is now part of the js-api object and not part of the constructor anymore, see https://github.com/WebAssembly/js-types/blob/master/document/js-api/index.bs#L971 This fixes a failing spec test, but there is a bug in the test itself, so it cannot be enabled yet. R=thibaudm@chromium.org Bug: v8:12227, v8:7742 Change-Id: I41e3752ad2e9af85c7197617f573dd0dc1a7a77f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162036Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#76849}
-
Dominik Inführ authored
This reverts commit 11045926. Reason for revert: Uncovered TSAN failure Original change's description: > [test] Avoid disabling of RCS during runtime > > Test was flaky since disabling of RCS at runtime is unsafe. Some code > (e.g. TRACE_GC) is run only in case RCS is enabled and such code paths > might also DCHECK that RCS is enabled. > A background thread (sweeping in this case) could've already > entered such a code path right before RCS is disabled. In this case the > guard at the entry still saw that RCS is enabled but subsequent DCHECKs > that ensure that RCS is enabled might fail. > > We could fix this by completing the sweeper tasks before disabling RCS > but there might be other similar tasks which might be run at that point > in the future (e.g. memory unmapper). > > Disabling the flag doesn't even seem to be needed for the initial > regression test, so it seems simpler to just not disable RCS anymore. > > Bug: v8:12026 > Change-Id: I878f7dd9a7a4abb6a501f7a7651a1240ef2082a6 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162043 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76845} Bug: v8:12026 Change-Id: I154817fc5ddeab68c69c745d08f3d77c48896dc4 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162049 Auto-Submit: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#76848}
-
Ilja Iskovs authored
Use an immediate zero operand for integer comparison when possible. This gives ~1% runtime performance improvement in some benchmarks on Neoverse N1. Change-Id: I727a8104f8e6ca3d122d6b5b8b3d38d7bdd76c47 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158327Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/main@{#76847}
-
Andreas Haas authored
WebAssembly.Table.set allows a default value instead of the second parameter, which was not supported by V8 so far. R=thibaudm@chromium.org Bug: v8:7581 Change-Id: I417790722b1cb4f854cd0056ecb8377c330c45fa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3141574Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#76846}
-
Dominik Inführ authored
Test was flaky since disabling of RCS at runtime is unsafe. Some code (e.g. TRACE_GC) is run only in case RCS is enabled and such code paths might also DCHECK that RCS is enabled. A background thread (sweeping in this case) could've already entered such a code path right before RCS is disabled. In this case the guard at the entry still saw that RCS is enabled but subsequent DCHECKs that ensure that RCS is enabled might fail. We could fix this by completing the sweeper tasks before disabling RCS but there might be other similar tasks which might be run at that point in the future (e.g. memory unmapper). Disabling the flag doesn't even seem to be needed for the initial regression test, so it seems simpler to just not disable RCS anymore. Bug: v8:12026 Change-Id: I878f7dd9a7a4abb6a501f7a7651a1240ef2082a6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162043Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#76845}
-
Jakob Kummerow authored
Per https://github.com/WebAssembly/gc/issues/234, this implements "nominal" type definitions with explicit supertypes, and statically typed RTT-less instructions for allocation and testing/casting. This should be fully backwards compatible with existing Wasm modules. Spec: https://bit.ly/3cWcm6Q ("version 4") Bug: v8:7748 Change-Id: Id5a1399b368fdfad22036cfd66f1bef593e640f7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3144916 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#76844}
-
Clemens Backes authored
This is a reland of a55c82d4, now also fixed for UBSan. Original change's description: > Reland "[wasm][test] Fix test expectation" > > This is a reland of 6f9cde1e, with > special handling for MSan as well. > > Original change's description: > > [wasm][test] Fix test expectation > > > > In the mprotect case, there could be one or multiple succeeding writes > > until we finally crash. Thus do not check that we never successfully > > write, but just check that the last printed statement is *before* a > > write. > > > > R=jkummerow@chromium.org > > > > Bug: v8:12226 > > Change-Id: I04209691a9320a9b29dd0ec364539e062ad2dc03 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160343 > > Commit-Queue: Clemens Backes <clemensb@chromium.org> > > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#76829} > > Bug: v8:12226 > Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel_ng > Change-Id: I85ca98be43fc1d933d39a4602194e1771c33007c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162037 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76839} Bug: v8:12226 Change-Id: I911295b73a385c899a993a729db3a499e58b7cb6 Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162041Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#76841}
-
Clemens Backes authored
This reverts commit a55c82d4. Reason for revert: Fails on UBSan: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64%20-%20cfi/31712/overview Original change's description: > Reland "[wasm][test] Fix test expectation" > > This is a reland of 6f9cde1e, with > special handling for MSan as well. > > Original change's description: > > [wasm][test] Fix test expectation > > > > In the mprotect case, there could be one or multiple succeeding writes > > until we finally crash. Thus do not check that we never successfully > > write, but just check that the last printed statement is *before* a > > write. > > > > R=jkummerow@chromium.org > > > > Bug: v8:12226 > > Change-Id: I04209691a9320a9b29dd0ec364539e062ad2dc03 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160343 > > Commit-Queue: Clemens Backes <clemensb@chromium.org> > > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#76829} > > Bug: v8:12226 > Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel_ng > Change-Id: I85ca98be43fc1d933d39a4602194e1771c33007c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162037 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76839} Bug: v8:12226 Change-Id: Ifb0f4b7e87c9c54271f7f3de29b1f1fc6e867f3f Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel_ng No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162040 Auto-Submit: Clemens Backes <clemensb@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#76840}
-
Clemens Backes authored
This is a reland of 6f9cde1e, with special handling for MSan as well. Original change's description: > [wasm][test] Fix test expectation > > In the mprotect case, there could be one or multiple succeeding writes > until we finally crash. Thus do not check that we never successfully > write, but just check that the last printed statement is *before* a > write. > > R=jkummerow@chromium.org > > Bug: v8:12226 > Change-Id: I04209691a9320a9b29dd0ec364539e062ad2dc03 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160343 > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76829} Bug: v8:12226 Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel_ng Change-Id: I85ca98be43fc1d933d39a4602194e1771c33007c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3162037Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#76839}
-
- 14 Sep, 2021 12 commits
-
-
Zhi An Ng authored
This reverts commit 6f9cde1e. Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/40332/overview Original change's description: > [wasm][test] Fix test expectation > > In the mprotect case, there could be one or multiple succeeding writes > until we finally crash. Thus do not check that we never successfully > write, but just check that the last printed statement is *before* a > write. > > R=jkummerow@chromium.org > > Bug: v8:12226 > Change-Id: I04209691a9320a9b29dd0ec364539e062ad2dc03 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160343 > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76829} Bug: v8:12226 Change-Id: I11ed00268db8dae5c773ed14fda9a343566f910a No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3161333 Auto-Submit: Zhi An Ng <zhin@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#76831}
-
Clemens Backes authored
In the mprotect case, there could be one or multiple succeeding writes until we finally crash. Thus do not check that we never successfully write, but just check that the last printed statement is *before* a write. R=jkummerow@chromium.org Bug: v8:12226 Change-Id: I04209691a9320a9b29dd0ec364539e062ad2dc03 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160343 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#76829}
-
Ng Zhi An authored
Currently the main test for disassembly just checks that there is disassembly support for a assembler function, it doesn't verify the output is as expected. Add a new test case that checks the disassembly output against an expected string. Right now we only check a single instruction, subsequent patches will move more instructions into this test case. Bug: v8:12207 Change-Id: Id183bb2fd625713d82239363ebce3f4c77155acd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3150145Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/main@{#76828}
-
Frank Tang authored
Refactor generic option reading facility also used by Temporal from intl-objects.* to option-util.* See https://tc39.es/proposal-temporal/#sec-getoptionsobject https://tc39.es/proposal-temporal/#sec-getoptionsobject-deleted https://tc39.es/ecma402/#sec-getoptionsobject Bug: v8:11544 Change-Id: I8b27e8fa3515c1287217c2fbe225172fb8f69210 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3122501Reviewed-by:
Shu-yu Guo <syg@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#76824}
-
Andreas Haas authored
WPT and WebAssembly spec tests are not 100% in sync, which means that there are aspects of the WebAssembly spec that get only tested by WPT. Up until now WPT was only executed on the blink side, and failing tests were just ignored. With this CL we add WPT to the existing wasm spec test setup, so that we run both the spec tests, and WPT. Bug: v8:12227 Change-Id: Iccbe696a6d9dd01f8bab1990736f1ed16e0cdf7b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160347Reviewed-by:
Liviu Rau <liviurau@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#76823}
-
Clemens Backes authored
Avoid the usage of ASSERT_DEATH_IF_SUPPORTED with a matcher, as that's not supported if death tests are not supported (e.g. on iOS). R=jkummerow@chromium.org Bug: v8:11974 Change-Id: Ieb33ac8605e82fde67bfcd0e81e85ac2d18e9b27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160341Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#76822}
-
Deepti Gandluri authored
This reverts commit 0adc1410. Reason for revert: Reverting due to fail on V8 Linux - noi18n - debug https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket/8836095186331011153/+/u/Check_-_default/function-exist Original change's description: > [Temporal] Part 1 - Skeleton > > 1. Expose all the functions to empty buildins. > 2. Wire up basic structure of classes and internal slots. > > Design Doc: https://docs.google.com/document/d/1Huu2OUlmveBh4wjgx0D7ouC9O9vSdiZWaRK3OwkQZU0/ > > This is just a CL to establish a skeleton for Temporal. > The Temporal is very big. The prototype CL is in > https://chromium-review.googlesource.com/c/v8/v8/+/2967755 > but too big to be reviewed so I break up the basic structure here first. > > Cq-Include-Trybots: luci.v8.try:v8_linux64_bazel > Bug: v8:11544 > Change-Id: I10d09e3c2530e5b1a6ba60014a2294e138879ff3 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3092561 > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Reviewed-by: Shu-yu Guo <syg@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Frank Tang <ftang@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76819} Bug: v8:11544 Change-Id: I358f671452a986c8e87d1f831ab5eb1550a38441 Cq-Include-Trybots: luci.v8.try:v8_linux64_bazel No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3160467 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Auto-Submit: Deepti Gandluri <gdeepti@chromium.org> Owners-Override: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/main@{#76821}
-
Frank Tang authored
1. Expose all the functions to empty buildins. 2. Wire up basic structure of classes and internal slots. Design Doc: https://docs.google.com/document/d/1Huu2OUlmveBh4wjgx0D7ouC9O9vSdiZWaRK3OwkQZU0/ This is just a CL to establish a skeleton for Temporal. The Temporal is very big. The prototype CL is in https://chromium-review.googlesource.com/c/v8/v8/+/2967755 but too big to be reviewed so I break up the basic structure here first. Cq-Include-Trybots: luci.v8.try:v8_linux64_bazel Bug: v8:11544 Change-Id: I10d09e3c2530e5b1a6ba60014a2294e138879ff3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3092561Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#76819}
-
legendecas authored
DataView constructor, DataView.prototype.byteLength and DataView.prototype.byteOffset should throw TypeError when the buffer was detached. Both SpiderMonkey and JSC passed the test262 suites. Bug: v8:12162 Change-Id: I126d24213c00e4d26540519bce9b5388862eb32c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3140015Reviewed-by:
Shu-yu Guo <syg@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#76818}
-
Clemens Backes authored
The previous setup of the test was suboptimal and could easily hide bugs. Since the whole test body was wrapped in an ASSERT_DEATH call (without checking any message of the crash), any CHECK failure inside the test body would make the test pass. This CL leverages the fact that in our setup the "death test style" is set to "threadsafe" anyway, so the process that is forked for the death test just runs the whole test body including the single death test of interest, and the parent checks that it indeed crashes. This allows us to undo our previous setup and just include death test assertions regularly in the test body. By checking that the child process fails exactly between two print statements (around the write access) we ensure that we observe the crash we intend to observe. R=jkummerow@chromium.org CC=mpdenton@chromium.org Bug: v8:11974 Cq-Include-Trybots: luci.v8.try:v8_mac_arm64_rel_ng Cq-Include-Trybots: luci.v8.try:v8_mac_arm64_dbg_ng Change-Id: I293079ae2dbcbe154bef91314ed08cab567f4d18 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3151965Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#76814}
-
Thibaud Michaud authored
This is a reland of deb66c84 Added missing cctest.status entries to disable the tests on non-simd hardware. Original change's description: > [wasm] Add tests for NaN detection in Liftoff > > Check that the flag is also set if only one of the lanes is NaN for SIMD > operations. > > R=clemensb@chromium.org > > Bug: v8:11856 > Change-Id: I3860ed1beac4faee1ade7180b67ca06762ca9b95 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158322 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76801} Bug: v8:11856 Change-Id: If45451703d80fe217eac8c610dac022dc778436f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158329Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#76812}
-
Manos Koukoutos authored
Bug: v8:12166 Change-Id: Ic15170b6e2dbaf5c9218c8fd951f4f7462b1d37a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3157951 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#76810}
-
- 13 Sep, 2021 5 commits
-
-
Ng Zhi An authored
Move this from macro-assembler-x64 to shared-macro-assembler, and use this implementation for ia32 (TurboFan and Liftoff). Bug: v8:11589 Change-Id: If851560c8db1293924ca024725609c399c553a4a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3124099 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/main@{#76803}
-
Clemens Backes authored
This reverts commit deb66c84. Reason for revert: Fails in no-sse config: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20debug/36712 Original change's description: > [wasm] Add tests for NaN detection in Liftoff > > Check that the flag is also set if only one of the lanes is NaN for SIMD > operations. > > R=clemensb@chromium.org > > Bug: v8:11856 > Change-Id: I3860ed1beac4faee1ade7180b67ca06762ca9b95 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158322 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76801} Bug: v8:11856 Change-Id: I16c50b3d0c1831a6d61159bdcf29610fd5aed8a4 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158328 Auto-Submit: Clemens Backes <clemensb@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#76802}
-
Thibaud Michaud authored
Check that the flag is also set if only one of the lanes is NaN for SIMD operations. R=clemensb@chromium.org Bug: v8:11856 Change-Id: I3860ed1beac4faee1ade7180b67ca06762ca9b95 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3158322Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#76801}
-
Benedikt Meurer authored
This unblocks https://crrev.com/c/3099011 by speeding up the case for the DebugPropertyIterator where only non-indexed properties (for large arrays or typed arrays) are requested. Previously we'd walk through all properties - including all indexed properties - and only filter out the indexed properties in the end in `ValueMirror::getProperties()`. Bug: chromium:1199701, chromium:1162229 Change-Id: I2555e3129fef29da347314eee400ea97ebf5e5b7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3114135 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Kim-Anh Tran <kimanh@chromium.org> Cr-Commit-Position: refs/heads/main@{#76796}
-
Michael Lippautz authored
The refactoring is triggered by https://crrev.com/c/3121905 where we noticed that a bunch of tricky counter paths could be simplified, making reasoning about corectness easier. In this CL: 1. Use uniqe_ptr instead of Optional to allow moving SweepingJob away from the header file. 2. sweeping_in_progress_ is replaced with simply checking for a job. 3. freed_bytes_ are moved to the job and the dependency is reversed, avoiding the inside-out (Job->Sweeper) dependency completely. 4. Merge() and counter updates are merged into a Finalize() method. 5. FinishIfDone() allows for conditional finization. 6. young_bytes_ and old_bytes_ are removed as they were always updated when the corresponding bytes in the ArrayBufferList was updated. Change-Id: I56e5b04087166ce03d3a9195ac48359122a84c73 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3124776Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#76795}
-