1. 16 Sep, 2021 10 commits
  2. 15 Sep, 2021 13 commits
    • Ng Zhi An's avatar
      [disasm][x64] Remove unnecessary initialization code · f67ee467
      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: 's avatarDeepti Gandluri <gdeepti@chromium.org>
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76854}
      f67ee467
    • Clemens Backes's avatar
      Revert "[wasm][externref] Support default value for the table.set" · 46540df8
      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}
      46540df8
    • Clemens Backes's avatar
      Revert "[arm64][wasm-simd] Use Cm(0) for integer comparison with 0" · 9068522b
      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: 's avatarClemens 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}
      9068522b
    • Clemens Backes's avatar
      [wasm][test] CFI also prints UBSan errors · e366c4b7
      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: 's avatarClemens Backes <clemensb@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76850}
      e366c4b7
    • Andreas Haas's avatar
      [wasm] Change type() for js-api objects · 0af529a3
      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: 's avatarThibaud Michaud <thibaudm@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76849}
      0af529a3
    • Dominik Inführ's avatar
      Revert "[test] Avoid disabling of RCS during runtime" · 0feba98a
      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}
      0feba98a
    • Ilja Iskovs's avatar
      [arm64][wasm-simd] Use Cm(0) for integer comparison with 0 · 16df1dfa
      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: 's avatarZhi An Ng <zhin@chromium.org>
      Commit-Queue: Martyn Capewell <martyn.capewell@arm.com>
      Cr-Commit-Position: refs/heads/main@{#76847}
      16df1dfa
    • Andreas Haas's avatar
      [wasm][externref] Support default value for the table.set · 6b578980
      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: 's avatarThibaud Michaud <thibaudm@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76846}
      6b578980
    • Dominik Inführ's avatar
      [test] Avoid disabling of RCS during runtime · 11045926
      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: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76845}
      11045926
    • Jakob Kummerow's avatar
      [wasm-gc] Implement nominal types · bc3b9332
      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: 's avatarManos Koukoutos <manoskouk@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76844}
      bc3b9332
    • Clemens Backes's avatar
      Reland^2 "[wasm][test] Fix test expectation" · 65998631
      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: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76841}
      65998631
    • Clemens Backes's avatar
      Revert "Reland "[wasm][test] Fix test expectation"" · 2872775f
      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}
      2872775f
    • Clemens Backes's avatar
      Reland "[wasm][test] Fix test expectation" · a55c82d4
      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: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#76839}
      a55c82d4
  3. 14 Sep, 2021 12 commits
  4. 13 Sep, 2021 5 commits