Commit Graph

76128 Commits

Author SHA1 Message Date
Milad Fa
aa4f84ba44 PPC/s390: Remove some unused includes (3)
Port 1f16e67b51

Original Commit Message:

    Mostly src/codegen, src/compiler, src/snapshot, src/utils.

R=manoskouk@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com
BUG=
LOG=N

Change-Id: I8d3c2296aa82332e854ba6c3c8f99346d9561168
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749827
Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Reviewed-by: Junliang Yan <junyan@redhat.com>
Cr-Commit-Position: refs/heads/main@{#81586}
2022-07-07 14:26:31 +00:00
v8-ci-autoroll-builder
1653df96b1 Update google_benchmark
Rolling v8/third_party/google_benchmark/src: 7280499..ac8a6d3

cleanup comments (Dominic Hamon)
https://chromium.googlesource.com/external/github.com/google/benchmark/+/ac8a6d3

fix sanitizer builds by using clang 13 (#1426) (Dominic Hamon)
https://chromium.googlesource.com/external/github.com/google/benchmark/+/8205547

fix dependabot numpy version warning (Dominic Hamon)
https://chromium.googlesource.com/external/github.com/google/benchmark/+/0a95a42

fix cmake warning for libcxx setup (Dominic Hamon)
https://chromium.googlesource.com/external/github.com/google/benchmark/+/a8bc318

Expose default help printer function (#1425) (Yuri Khan)
https://chromium.googlesource.com/external/github.com/google/benchmark/+/4136c4a

Fix DoNotOptimize() GCC compile error with some types (#1340) (#1424) (Alexander Popov)
https://chromium.googlesource.com/external/github.com/google/benchmark/+/dfdda57

R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com,mlippautz@chromium.org

Change-Id: I3e08e9e4f0374c836b9fb96d80feff125664589f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3750518
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81585}
2022-07-07 13:30:31 +00:00
Jakob Kummerow
97ff024b6a [wasm] Support bytecode offsets in ModuleDisassembler
DevTools needs this.

Bug: v8:12917
Change-Id: Id63f290ebc9eff4ab87e88b97d81ae4d5ac3283a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747676
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81584}
2022-07-07 12:30:51 +00:00
Darius M
7b0861c023 [turboshaft] Add Dominator graph
Bug: v8:12783
Change-Id: I5495aac4213b0f9783b5e239b2d90047d25552d8
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3721497
Commit-Queue: Darius Mercadier <dmercadier@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81583}
2022-07-07 11:44:51 +00:00
Andy Wingo
43cef7a627 [stringrefs] Encoding instructions return code units written
See https://github.com/WebAssembly/stringref/issues/24.

Bug: v8:12868
Change-Id: Ib3854625aa18ae0e59f8d62d04e7132ca7381f60
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749179
Commit-Queue: Andy Wingo <wingo@igalia.com>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81582}
2022-07-07 11:39:41 +00:00
Ben Noordhuis
904c8cedf8 Fix std::is_same compiler error
std::is_same is the wrong predicate to use because `unsigned long` need
not be equivalent to either `unsigned int` or `unsigned long long`.

Fixes: https://github.com/nodejs/node-v8/issues/229
Bug: v8:12982
Change-Id: Iafff3c6a33f841490fa66d48649d24f720c869f1
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749192
Auto-Submit: Ben Noordhuis <info@bnoordhuis.nl>
Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-by: Darius Mercadier <dmercadier@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81581}
2022-07-07 11:12:59 +00:00
Leszek Swirski
ef90abfa90 [x64] Add PushAll helpers to TurboAssembler
Refactor register saving (both general and double registers) as using a
PushAll helper taking a RegList.

Change-Id: I0ccdec091f60988cbdb6893eb9cdda11efd8e1eb
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749176
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81580}
2022-07-07 11:10:51 +00:00
Samuel Groß
818a36bb9d [sandbox] Sandboxify WasmInstanceObject::globals_start
This field points to the start of an ArrayBuffer backing store, which
is guaranteed to be located inside the sandbox if it is enabled. As
such, this simply turns the field into a sandboxed pointer field.

Bug: chromium:1342548
Change-Id: I5a76e23cfc83b2a04cd461def1cd04337ccf5cf7
Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749190
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Commit-Queue: Samuel Groß <saelo@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81579}
2022-07-07 10:57:29 +00:00
Samuel Groß
6ec763657a Delete PartiallyReservedSandboxPageAllocation test
Page allocation in a partially-reserved sandbox is generally best-effort
once the reserved part is fully allocated, which happens in this test.
As such, there is no guarantee that this test succeeds, and it does seem
to fail in practice on some bots with memory sanitizers enabled. The
same logic is essentially tested by the
VirtualAddressSpaceTest.TestEmulatedSubspace test so simply deleting
this test should be fine.

Bug: v8:13040
Change-Id: I1469bd9d2e330a6e834bb565ce4e7f5985be28a9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749180
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
Auto-Submit: Samuel Groß <saelo@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81578}
2022-07-07 10:43:52 +00:00
Clemens Backes
6c2a5caec3 [flags] Print detected cycle in flag implications
Instead of just failing with a CHECK failure, do print the actual cycle.

Before:
# Check failed: iteration++ < 1000.

After:
# Cycle in flag implications:
--assert-types -> --no-concurrent-recompilation
--stress-concurrent-inlining -> --concurrent-recompilation

R=tebbi@chromium.org

Bug: chromium:1336577
Change-Id: I9707fbe19fbc3c27b54cf2ef7626a5f8825e8c60
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3707275
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81577}
2022-07-07 10:41:01 +00:00
Toon Verwaest
ad89010f4e [maglev] Inline store of smi/heapobject fields
To implement this, this cl introduces explicit check smi/heapobject
nodes that we use for the value (and also separate from CheckMaps
now). This will allow us to remove duplicate checks later.

The performance of StoreField itself isn't vastly better due to fixed
register requirements though.

Bug: v8:7700
Change-Id: I98caa290c88be64f41154fd232bde98fb46ce497
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747870
Commit-Queue: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81576}
2022-07-07 10:26:21 +00:00
Manos Koukoutos
1f16e67b51 Remove some unused includes (3)
Mostly src/codegen, src/compiler, src/snapshot, src/utils.

Bug: v8:13006
Change-Id: I2fb31acc749a7376e6f2a7424ed2e67ff479d971
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749178
Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81575}
2022-07-07 09:42:31 +00:00
Manos Koukoutos
a052d3fe24 [wasm-gc] Optimize after memory lowering
Bug: v8:7748
Change-Id: I8da40c9443747ec8004ec78f0b1f82b83535944e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3749181
Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81574}
2022-07-07 09:38:36 +00:00
Paul Semel
9318e064bf [wasm][csp] Add support for SetErrorMessageForWasmCodeGeneration
This adds support for a better error message when wasm code generation
is not allowed. Chrome will use this new API here: https://chromium-review.googlesource.com/c/chromium/src/+/3738183.

Bug: chromium:1255058
Change-Id: I8c9639c4fd08d1dff0a5a2fc6a8360f40a7e140e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3740721
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: Paul Semel <paulsemel@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81573}
2022-07-07 08:38:31 +00:00
Andy Wingo
8aa97d5a5a [stringrefs] Expand domain of string.eq to include null values
See https://github.com/WebAssembly/stringref/pull/32.

Bug: v8:12868
Change-Id: Ia804809b01eb06163c4477b3f06ac09e016b6277
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747875
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Andy Wingo <wingo@igalia.com>
Cr-Commit-Position: refs/heads/main@{#81572}
2022-07-07 07:41:37 +00:00
Andy Wingo
d29e9e005e [stringrefs] stringview_wtf16.slice end position is exclusive
See https://github.com/WebAssembly/stringref/pull/31.

Bug: v8:12868
Change-Id: Iefe6b8e6c1b6f2eed8a2aca1818d5edbf6ab48ae
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747874
Commit-Queue: Andy Wingo <wingo@igalia.com>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81571}
2022-07-07 07:33:17 +00:00
Andy Wingo
cd33c3780e [stringrefs] Rename stringview_iter.cur to stringview_iter.next
See https://github.com/WebAssembly/stringref/pull/29.

Bug: v8:12868
Change-Id: I5a1e3662a7c3457c6835d7dfccf3a1583ef49f2a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747873
Commit-Queue: Andy Wingo <wingo@igalia.com>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81570}
2022-07-07 06:27:47 +00:00
v8-ci-autoroll-builder
1e061cd2b5 Update V8 DEPS (trusted-origins)
Rolling v8/build: f855a2b..ea8947a

Rolling v8/tools/clang: c8f1e5e..8bd72d6

R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com

Change-Id: I6a322050d37383935b05174fda14b0ee2b6c7627
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3750517
Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#81569}
2022-07-07 04:54:57 +00:00
v8-ci-autoroll-builder
0ce56922a5 Update V8 DEPS (trusted-versions)
Rolling v8/third_party/fuchsia-sdk/sdk: version:8.20220705.3.1..version:8.20220706.2.1

R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com

Change-Id: I4e01266cbfacd70405ddaa228182872749fc7d36
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3750516
Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#81568}
2022-07-07 03:50:27 +00:00
Dominic Cooney
1fac1301ce iOS: Use sysctlbyname to check if jscvt is supported
Bug: v8:13004
Change-Id: I6b29094a7fcea75d46328e686961e7a1f25343fd
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3746216
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Dominic Cooney <dpc@fb.com>
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81567}
2022-07-06 22:39:47 +00:00
Jakob Kummerow
1545a71603 [wasm] Add ModuleDisassembler
Unused as of this CL; users will follow.

Bug: v8:12917
Change-Id: I6c615fc53e782f7f00c8a20a00aabea08f3e4605
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3742699
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81566}
2022-07-06 17:47:57 +00:00
Matthias Liedtke
a4fdd9f5de [wasm][test] test-gc.cc: Replace struct.new_with_rtt
with struct.new

Bug: v8:7748
Change-Id: Icc4868910832556f4c31081fb4af336f492db28e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747868
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Auto-Submit: Matthias Liedtke <mliedtke@google.com>
Commit-Queue: Matthias Liedtke <mliedtke@google.com>
Cr-Commit-Position: refs/heads/main@{#81565}
2022-07-06 17:40:07 +00:00
Leszek Swirski
76356780aa [maglev] Add a maglev-specific safepoint mechanism
Maglev groups all its tagged spill slots together, and the number of
them doesn't change. This means that the generality of the existing
safepoint mechanism is massive overkill for maglev code.

This patch adds a maglev-specific safepoint table, which is the
safepoint of a code object if-and-only-if that code object has maglev
code. This safepoint stores the number of tagged and untagged slots
once, globally, and individual entries are just used for deopts and for
storing the state of pushed registers (this is currently unused, but
will be used in the future for pushing registers in deferred calls).

Bug: v8:7700
Change-Id: I15f84a6e957357825e84e33238f8a36f2e0b3012
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747858
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81564}
2022-07-06 16:38:27 +00:00
Michael Achenbach
c04fba9354 [infra] Run gcc-bot tests on Focal image
We don't build with bundled sysroot on gcc builders, hence we need to
match the sysroot on tester bots. There is already a number of
Focal bots in chromium.tests and the capacity needed for these gcc
bots is insignificant.

No-Try: true
Bug: chromium:1307180
Change-Id: Id9d3d08bdb09923cf919b17286c949c6ac9005ed
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747872
Reviewed-by: Alexander Schulze <alexschulze@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81563}
2022-07-06 16:19:07 +00:00
Jakob Kummerow
9195b00035 [wasm] Disallow using stack-backed handles in runtime-wasm.cc
We currently don't have a way to visit parameter stack slots being
passed from Wasm to the runtime during GC, so while we usually access
them as if they were handles, they're not actually GC-safe in this
case. Until we find a way to fix this differently, force manual creation
of safe handles.

Bug: v8:13036
Change-Id: I9ffec58348d912bd56fb199e9d0bc90bf753b87c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3745372
Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81562}
2022-07-06 16:05:37 +00:00
Michael Achenbach
ace6a5904a [infra] Remove obsolete builder configs
Remove configs for bots that were removed. Dedicated focal bots and
x86 gcc bots.

Bug: chromium:1307180, v8:13005
Change-Id: I482829f6644642b3d9fe1b380b2a3edaba2045d4
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747869
Reviewed-by: Alexander Schulze <alexschulze@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81561}
2022-07-06 16:03:57 +00:00
Shu-yu Guo
9e1f89c0f9 Remove unused RelocInfoWriter::WriteData
Change-Id: I7996f49f5358d8be684a39b64020bc6bef82b7bb
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3739228
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81560}
2022-07-06 15:01:18 +00:00
Shu-yu Guo
725c163d8e [heap] Fix recording OLD_TO_SHARED slots of Code-embedded pointers
Code in client heaps can embed pointers to shared objects. In non-shared
GC, these pointers can be weak. During shared GC, unconditionally
consider Code-embedded client->shared pointers as strong so we don't
have to deoptimize and clear embedded objects in all client Isolates'
Code instances.

Bug: v8:13027
Change-Id: Id34d7e707153191639e8e531fc12d917b9382a26
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3739231
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81559}
2022-07-06 14:49:56 +00:00
Andy Wingo
6db9f2ba0e [stringrefs] Implement string.new_wtf16_array
See https://github.com/WebAssembly/stringref/issues/1.

Bug: v8:12868
Change-Id: Icd197b4872a72ae84878b2ac48a66f7026ab90cd
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3745369
Commit-Queue: Andy Wingo <wingo@igalia.com>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81558}
2022-07-06 14:32:26 +00:00
Joyee Cheung
81c14eb85d [runtime] return when failed access callback doesn't throw
When the failed access callback is configured but it doesn't throw,
we should return instead of expecting an exception, otherwise
it would crash because there isn't one.

This patch also adds --throw-on-failed-access-check and
--noop-on-failed-access-check in d8 to mimic the behavior
of the failed access check callback in chromium.

Bug: chromium:1339722
Change-Id: Ie1db9d2fb364c6f8259eb9b8d81a21071c280a80
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3737305
Commit-Queue: Joyee Cheung <joyee@igalia.com>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81557}
2022-07-06 14:01:36 +00:00
Manos Koukoutos
3ec0f9365e Remove some unused includes (2)
Mainly src/compiler-dispatcher, src/d8, src/debug, src/runtime.
Drive-by: Restore CONDITIONAL_WRITE_BARRIER invocation, which was
accidentally changed.

Bug: v8:13006
Change-Id: If07334b654b9ba2d4bec14a11cfdeeb1aa953b7d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3745402
Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81556}
2022-07-06 13:58:57 +00:00
Thibaud Michaud
d0b75e25da [wasm][stack-switching] Fix nested suspenders
Fix some issues with nested suspenders:
- Fix scratch register conflict when returning from an inner suspender
- The outer suspender should stay in 'Active' state
- Suspenders should become 'Inactive' when they return

CC=ahaas@chromium.org

Bug: v8:12191
Change-Id: Ic6c6108c4f8df3d32417d7813eb04e0e2a46d27a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3743386
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Thibaud Michaud <thibaudm@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81555}
2022-07-06 13:48:06 +00:00
Clemens Backes
e4f07c0997 [wasm][streaming] Check section order of code section
The streaming decoder did not properly check the ordering of sections
relative to the code section.
This CL fixes that for both empty and non-empty code sections.
The special path for empty code sections is not actually needed, so
remove it to simplify code paths.

Drive-by:
1. Refactor the existing code for checking section ordering to make it
   more structured and readable.
2. Ensure that we either call {DecodeCodeSection} or {StartCodeSection},
   but not both.
3. Remove {set_code_section}, merge it into {StartCodeSection}.
4. Simplify calls to {CalculateGlobalOffsets} (make them unconditional
   and remove one redundant one).

R=ahaas@chromium.org

Bug: chromium:1336380
Change-Id: Ia2c5c115d43d2b5315e3b3c9e4a21175a36aa326
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747860
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81554}
2022-07-06 13:43:17 +00:00
Danylo Boiko
f61d1afec6 [turbolizer] Turboshaft view initial commit
General:
- Graph view refactoring
Turboshaft:
- Blocks representation
- Inline nodes representation
- Minimum required turboshaft toolbox actions
- Layout caching

Bug: v8:7327
Change-Id: I2ac07965ac775c68c522cfc9367b7ce0ff18672a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726287
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Danylo Boiko <danielboyko02@gmail.com>
Cr-Commit-Position: refs/heads/main@{#81553}
2022-07-06 13:11:46 +00:00
Michael Achenbach
6639962a32 [build] Silence gcc warnings on coverage bot.
GCC warnings are already treated as failures on other bots. They don't
add value on the coverage bot and only block creating reports.

Bug: v8:13005
Change-Id: I2d55288a4790e8cd508cdb8340265c696e44b671
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747864
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Auto-Submit: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81552}
2022-07-06 13:09:06 +00:00
Liu Yu
2ac469ae5d [loong64][mips64][fastcall] Support EnforceRange annotation
Port commit 8559a04f4c

Change-Id: I74bbbaddb196bba0945cc857e708534e4eb3f9b3
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747466
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Commit-Queue: Maya Lekova <mslekova@chromium.org>
Auto-Submit: Liu Yu <liuyu@loongson.cn>
Cr-Commit-Position: refs/heads/main@{#81551}
2022-07-06 12:28:25 +00:00
Michael Achenbach
f4b58389f6 [infra] Drop header-includes check from gcc bots
There is already a builder v8_linux64_header_includes_dbg blocking CQ
and a CI counterpart for this feature. Also switching it on for gcc
doesn't add value, just a slow-down of the gcc bots.

No-Try: true
Bug: v8:13005
Change-Id: Id20112928b8db406ce998cf463ddb3f95aa8e361
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747859
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81550}
2022-07-06 12:16:26 +00:00
Jakob Kummerow
d1a6638afa [wasm] Fix linking of "SectionName()"
Speculative fix as I can't repro the failures locally.

Change-Id: I0a06ee02435e5131c44c7b4bef142cb4385d3243
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747861
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81549}
2022-07-06 11:22:16 +00:00
Michael Achenbach
a2d293b84a [build] Disable gcc warnings for unittests
This is a workaround to silence gcc failures stemming from googletest
headers.

Bug: chromium:1307180
Change-Id: Ia6eb08f170f65c2fde6e4c287f9781d9df559b35
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3738220
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81548}
2022-07-06 09:32:55 +00:00
Michael Achenbach
544fca5fa7 [infra] Add 64bit gcc release bots
No-Try: true
Bug: v8:13005
Change-Id: Ie941d501ca6bdb8dc40d2188fb62741440fa6caf
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3747857
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Alexander Schulze <alexschulze@chromium.org>
Auto-Submit: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81547}
2022-07-06 09:24:46 +00:00
v8-ci-autoroll-builder
8a6a9e8c18 Update V8 DEPS (trusted-origins)
Rolling v8/build: 9ea9d49..f855a2b

R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com

Change-Id: I6dfb1ac58aad1c11620d42efcd9e0c340eaae762
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3746083
Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#81546}
2022-07-06 04:47:41 +00:00
v8-ci-autoroll-builder
ee99132a7f Update V8 DEPS (trusted-versions)
Rolling v8/third_party/android_sdk/public: PGPmqJtSIQ84If155ba7iTU846h5WJ-bL5d_OoUWEWYC..IPzAG-uU5zVMxohpg9-7-N0tQC1TCSW1VbrBFw7Ld04C

Rolling v8/third_party/fuchsia-sdk/sdk: version:8.20220701.2.1..version:8.20220705.3.1

R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com

Change-Id: Id0df943e5c230c0ad061fe88716c646756ab8d37
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3746082
Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#81545}
2022-07-06 03:50:51 +00:00
Lu Yahan
600f753385 [riscv64] Port [fastcall] Support EnforceRange annotation
Port commit 8559a04f4c

Change-Id: Ibeafd18e3bed0907536b93d1fd4c5db98bef41ba
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3746292
Commit-Queue: ji qiu <qiuji@iscas.ac.cn>
Auto-Submit: Yahan Lu <yahan@iscas.ac.cn>
Reviewed-by: ji qiu <qiuji@iscas.ac.cn>
Cr-Commit-Position: refs/heads/main@{#81544}
2022-07-06 02:15:02 +00:00
Milad Fa
9723c929f3 S390 [simd][liftoff] Implement relaxed q15mulr
Changes for TF instruction selector will be pasted
in the CL comments and will get applied once all
relaxed opcodes have been implemented in codegen/liftoff.

Change-Id: I61f393b4df7d6b2dbe14632e71b3f317379b4ae6
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3743507
Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
Reviewed-by: Milad Farazmand <mfarazma@redhat.com>
Reviewed-by: Junliang Yan <junyan@redhat.com>
Cr-Commit-Position: refs/heads/main@{#81543}
2022-07-05 20:58:11 +00:00
ishell@chromium.org
cb762adc4f [tests] Skip tests that fail in --stress-snapshot mode
Bug: v8:13038
Change-Id: I98832b00523535b57cde67d4d389aa361bc19a46
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3745405
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Auto-Submit: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81542}
2022-07-05 18:01:53 +00:00
Nikolaos Papaspyrou
e8cea8c876 [tools][gm] Fix aliases for modes with a suffix
Minor bug fix in alias support (crrev.com/c/3723506), which broke
modes with suffixes, e.g. x64.release-css or x64.rel-css

No-Try: True
Change-Id: I16fdc83dde269f66f4bb7260de0d2649aaece27e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732929
Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81541}
2022-07-05 17:24:41 +00:00
Michael Lippautz
16b5842425 [cppgc] Use global OOM handler for GCInfoTable
GCInfoTable is a process-global table storing Oilpan type information.
Table operations may fail in OOM scenarios which were previously just
caught in regular CHECKs. Change to use a global OOM handler that is set
up to use V8's handler.

Bug: chromium:1283199
Change-Id: Id33263ef7cd4028d60a071f5ab3b165e59ac9593
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3745368
Reviewed-by: Anton Bikineev <bikineev@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81540}
2022-07-05 17:11:15 +00:00
Manos Koukoutos
32e6b48fca Reland "Remove some unused includes"
This is a reland of commit 2d74bfa4a0

Difference compared to original: Restore one needed include.

Original change's description:
> Remove some unused includes
>
> Mostly src/api, src/asmjs. src/ast, src/base, src/wasm.
>
> Bug: v8:13006
> Change-Id: If4e85afe003fda9f8a681077827c3502e939fe57
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3742702
> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
> Reviewed-by: Toon Verwaest <verwaest@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#81523}

Bug: v8:13006
Change-Id: I88c45059572fa25af4e0999f479ba5c28572db7f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3746077
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81539}
2022-07-05 16:44:13 +00:00
snek
d89d185fad [fastcall] expose wasm memory to cfunction
Load current Memory start/size off of the wasm instance when entering
fast calls, so they can use that info for whatever they need to do.
Fast calls from JS set the memory to null, and the memory does not
need to be piped from wasm to slow callbacks as wasm always calls
the fast function.

Change-Id: Ibfa33cdd7dba85300f95cbdacc9a56b3f7181663
Bug: chromium:1052746
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3719005
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Commit-Queue: snek <snek@chromium.org>
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81538}
2022-07-05 16:24:01 +00:00
Luis Fernando Pardo Sixtos
6151ae0127 [shared-struct] Support shared arrays in Atomics.{load,store,exchange}
Atomics.load, Atomics.store, and Atomics.exchange now accept shared
array objects as their 1st argument.

Currently these are implemented in C++ and not yet in CSA.

Bug: v8:12547
Change-Id: I54ed8816a696a4f45dda964739b1cfd917d39dc0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3723974
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Luis Fernando Pardo Sixtos <lpardosixtos@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#81537}
2022-07-05 15:49:01 +00:00