Flags are also updated under `instruction-selector` to include
these operations. Not having them was causing their Simd versions
to remain unused as well. V8 was just interpreting them at runtime.
Change-Id: I42677f7412859ad4759b70ba16667ec9d90505af
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2994803
Reviewed-by: Junliang Yan <junyan@redhat.com>
Commit-Queue: Milad Fa <mfarazma@redhat.com>
Cr-Commit-Position: refs/heads/master@{#75444}
This is a reland of edab873071
It was speculatively reverted but the issue turned out to just be slow
tests.
Original change's description:
> Fix -Wimplicit-int-float-conversions.
>
> Bug: chromium:989932
> Change-Id: Ief917b023cb079f5ff87dc8963d74f225d074d7a
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2989096
> Reviewed-by: Bill Budge <bbudge@chromium.org>
> Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
> Auto-Submit: Peter Kasting <pkasting@chromium.org>
> Commit-Queue: Peter Kasting <pkasting@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#75413}
Bug: chromium:989932
Change-Id: Iec8ac8ee32705c6a699a2df2f292ffe07cde99f7
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2994802
Reviewed-by: Bill Budge <bbudge@chromium.org>
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Commit-Queue: Bill Budge <bbudge@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75443}
The accessor flattening code checks for the "description" property of
Symbols. But the incoming object is a JSReceiver (expressed as
v8::Object on the public API) and thus can never be a Symbol (which is a
primitive value). So this check is always false.
Bug: chromium:1076820
Change-Id: I5190d515cabcfcf052530c251a5ebfe946ae1742
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2991245
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Philip Pfaffe <pfaffe@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75440}
Several headers in the large inline objects header cycle were depending
on deserializer.h to access Deserializer::uninitialized_field_value().
Unfortunately this meant that a change to many snapshot headers caused a
rebuild of over 1480 files.
This moves the constant into smi.h which would always be included by the
objects inline headers.
Bug: v8:11879
Change-Id: I2efd1c42efd43e6cd4630cea7fd76dd2bd29ae3d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2992717
Commit-Queue: Dan Elphick <delphick@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Auto-Submit: Dan Elphick <delphick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75439}
WasmValueObjects used to not have a constructor defined. That prevents
custom devtoolsFormatters from being applied to such objects.
Change-Id: Id775cdb710d0c4106f70858cc1fc92b1f8bd4590
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2991243
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Philip Pfaffe <pfaffe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75438}
Add common TimelineTrackStackedBase base class for TimelineTrackTick
and TimelineTrackTimer for visualising stacked time ranges that only
need rescaling when zooming in.
Additional changes:
- Highlight matching registers in disassembly
- Simplify CodeLogEntry summary for script code
- Show event for array items in the property-link-table
Bug: v8:10644
Change-Id: I0b37274e12ba55f1c6251b90d39d996ffae7f37e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2992716
Reviewed-by: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75437}
WasmFeatures::FromIsolate() was called without a HandleScope in the
original CL. This was fixed by using the WasmFeatures from the
NativeModule instead of calling WasmFeatures::FromIsolate.
Original message:
Initializing the compilation progress first, and making it an explicit
step, allows us to share the wrapper compilation code between async
compilation and streaming compilation. In the future it will also allow
us to initialize compilation units based on the compilation progress,
which will allow us to share more code between async compilation and
deserialization.
R=clemensb@chromium.org
Bug: v8:11862
Change-Id: Id2d0990e5c7fa0f266f730f7e0bfa24fe641497b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2993029
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75436}
Fix a sanitizer undefined behavior error found by the fuzzer in
function AddAll32BitIntFastCallback_6Args, due to a possible integer
underflow or overflow.
Bug: chromium:1223873
Change-Id: Ibef53ce2b4421bed5154a694fb607d36f2bba28a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2993551
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75435}
Lite-mode test runs were running tests with
--stress-concurrent-inlining, and this results in a flag contradiction.
Bug: v8:11907
Change-Id: I7c0c697af8b1f197f8c7735f62677943d91ebb91
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2983203
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Michael Stanton <mvstanton@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75434}
This CL skips some recently added tests that do not work for TPH at the moment,
including:
* One uses --concurrent_inlining
* One Requires local heaps
* 7 tests that create multiple isplates
* 3 LogMaps* tests that is expected to fail due to map address reuse
This CL also set v8_enable_allocation_folding = true for TPH.
Bug: v8:11641
Change-Id: I5db32f5f9e730dc4e12e4869ec78210bde23ca0d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2994219
Commit-Queue: Wenyu Zhao <wenyu.zhao@anu.edu.au>
Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
Auto-Submit: Wenyu Zhao <wenyu.zhao@anu.edu.au>
Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75432}
Bug: v8:11879
Change-Id: I7badcbe81485f9e325c75f406560983b78be949a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2989101
Reviewed-by: Georg Neis <neis@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75423}
PopulateReferenceMaps caches an iterator for the reference maps list,
which allows skipping many iterations when the live ranges are mostly
sorted.
When they are not sorted however, the complexity increases significantly
since we have to iterate from the beginning of the reference maps list
for each live range.
We observed a real-world wasm GC function where this phase takes up 90%
of the compilation time because of this, which drops to below 2% when
the ranges are sorted first.
R=sigurds@chromium.org
CC=jkummerow@chromium.org
Change-Id: I829c909c06e5a1daee0f8d10c156d0a382af9ed0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2985339
Commit-Queue: Thibaud Michaud <thibaudm@chromium.org>
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75420}
This CL implements setting the javascript_execution_assert
on the isolate from generated code, so we don't need to create
an expensive class in the embedder callback.
Bug: chromium:1218898
Change-Id: Ia05b49281ab4c1cc3ac34caf2dfadb79feb86e84
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2982998
Commit-Queue: Maya Lekova <mslekova@chromium.org>
Reviewed-by: Georg Neis <neis@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75414}
This is a reland of 8f17052ce0
Changes can be seen in PS1..4 (re-marked kraken/audio-beat-detection)
Original change's description:
> [test] Unmark TSAN tests as SLOW/SKIP
>
> We allowed more time for tsan testing [1] so unmarking some tests.
>
> [1]: https://chromium-review.googlesource.com/c/v8/v8/+/2979671
>
> Bug: v8:7790, v8:11600, v8:11906
> Change-Id: I026a32abe0380c2d32327aaa8b301ef51f22a5e2
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2979602
> Reviewed-by: Mythri Alle <mythria@chromium.org>
> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#75357}
Bug: v8:7790, v8:11600, v8:11906
Change-Id: Ie5b8886820d8e7d18c8ceee612a5c4d9ef72bc49
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2983536
Reviewed-by: Mythri Alle <mythria@chromium.org>
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75408}
This limits the feature of running Memory-hungry tests in sequence to
the GCE bots in swarming. There, the positive memory impact is large
due to the overall lower system memory and the negative runtime impact
is small due to the smaller number of cores.
Bug: v8:11928
Change-Id: Ib577b455d5cccbb3c9855526becbdbf822259bea
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2991630
Auto-Submit: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Liviu Rau <liviurau@chromium.org>
Reviewed-by: Liviu Rau <liviurau@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75406}
With batch compilation, tracing messages for OSR were wrong and
misleading.
Since we can trace when and where we enter baseline code with other
flags (--trace-unoptimized) we can remove tracing for baseline OSR.
Bug: v8:11420
Change-Id: I72483c9262b7009652664739b692fd32bd936e20
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2988403
Auto-Submit: Patrick Thier <pthier@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75405}
- Creates v8root to reconcile support with blaze
- Adds -m32 flag for 32 bit architectures
No-Try: true
Bug: v8:11234
Change-Id: I1c0b68b92922ee00cbfb960625c7be62445f636a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2987834
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75404}
Rolling v8/build: 9dc1297..d3674b9
Rolling v8/buildtools: 46bcd59..82a4d60
Rolling v8/buildtools/linux64: git_revision:d924640c25f9d90386716116a53957f24d709042..git_revision:4d207c94eab41f09c9a8505eb47f3d2919e47943
Rolling v8/buildtools/third_party/libc++/trunk: 8fa8794..79a2e92
Rolling v8/third_party/aemu-linux-x64: JZYvEBpGNCDNOK3uLHlpKn_AN6roNsL0YVup96egRSEC..A1XxYDWVeZi3lNSg1lZdcmGtIB2fA0XTIPYdevon60YC
Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/a2a4ced..11a2ddf
Rolling v8/third_party/depot_tools: cf60c0a..a73eec2
Rolling v8/tools/clang: 098695c..49e7cd9
Rolling v8/tools/luci-go: git_revision:2adc53281f4a72ecb71e84a8af5acc0fced04cc9..git_revision:8ed83b4afa51020c8900d121bb57624b35882dec
Rolling v8/tools/luci-go: git_revision:2adc53281f4a72ecb71e84a8af5acc0fced04cc9..git_revision:8ed83b4afa51020c8900d121bb57624b35882dec
Rolling v8/tools/luci-go: git_revision:2adc53281f4a72ecb71e84a8af5acc0fced04cc9..git_revision:8ed83b4afa51020c8900d121bb57624b35882dec
TBR=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com
Change-Id: I9b820d261ef642c5bbd53b331c24e0757389a585
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2989108
Reviewed-by: 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/master@{#75399}