Commit Graph

72021 Commits

Author SHA1 Message Date
Michael Lippautz
9568732a0f cppgc: Check for wrong sentinel values
Check for the most commonly used wrong sentinel value (-1). Users
should use cppgc::kSentinelPointer instead.

Bug: chromium:1263009
Change-Id: I200954bcd70c6a100ffec24aece3e1843e1438a0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3242002
Auto-Submit: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77529}
2021-10-25 16:27:59 +00:00
Vasili Skurydzin
dcbcb52c9c aix: Skip test in debug mode to avoid increasing stack-size
Bug: v8:12297
Change-Id: Ifbf6ac61e6b61e419b361d1fc14009d6d745193c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3231484
Reviewed-by: Milad Fa <mfarazma@redhat.com>
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Vasili Skurydzin <vasili.skurydzin@ibm.com>
Cr-Commit-Position: refs/heads/main@{#77528}
2021-10-25 14:14:19 +00:00
Omer Katz
5fe0aa3bc7 cppgc: Make ObjectSizeTrait::GetSize atomic
ObjectSizeTrait::GetSize is used by Trace methods in Blink and may be
called while concurrent marking is active. The current version is
non-atmoic and therefore can race with marking on other threads.

Bug: chromium:1261860
Change-Id: Ia0b41ec496ac64ae3dd5a040b25f6972b21561c5
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3240832
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77527}
2021-10-25 13:40:21 +00:00
Milad Fa
cf98260e46 S390: Fix compilation error on builtins
variable 'pushed_stack_space' set but not used.

Change-Id: I427f76448b9933f9c8f1169709e28eef4512241f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3241543
Reviewed-by: Junliang Yan <junyan@redhat.com>
Commit-Queue: Milad Fa <mfarazma@redhat.com>
Cr-Commit-Position: refs/heads/main@{#77526}
2021-10-25 13:32:29 +00:00
Thibaud Michaud
39cc69dc14 [wasm] Factorize wasm-js constructor setup
R=ahaas@chromium.org

Change-Id: I860cd7aebdf46f323c7f6ad0cd563246a061c4d1
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3226338
Commit-Queue: Thibaud Michaud <thibaudm@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77525}
2021-10-25 13:18:43 +00:00
Camillo Bruni
23af060d6c [runtime] Introduce explicit Execute::CallScript
For the upcoming host_defined_options fixes we will have to explicitly
pass the host-defined options to Invoke so we will be able to install
it in the script context in the future.

Bug: chromium:1244145
Change-Id: I690cc774d6a17278db4381aba8c3408e979606c1
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3222765
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77524}
2021-10-25 13:17:39 +00:00
Michael Lippautz
06021c1437 cppgc: Delegate Persistent node allocation failure to OOM handler
Persistent node slots are dynamically allocated and their allocation
may fail. Delegate to the proper OOM handler in this case.

Bug: chromium:1243257
Change-Id: I985f5b0c940f7ac4996f3f3243123a07119005b9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3240786
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77523}
2021-10-25 13:14:19 +00:00
v8-ci-autoroll-builder
293f2826e9 [tools] Update gcmole
R=clemensb@chromium.org

Change-Id: Ia804d29a61e9d716b5ee5acebce7cb9c273697d7
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3241363
Commit-Queue: Liviu Rau <liviurau@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77522}
2021-10-25 12:52:21 +00:00
Maya Lekova
e1f5e68ebb [fastcall] Fix MachineType for FP TypedArray arguments
This CL fixes an issue in EffectControlLinearizer, where the primitive
type of the argument of a fast C call was used to compute its
MachineType even when the argument was actually a TypedArray, which
should always be treated as a Tagged type. This resulted in Float32/64
typed arrays being passed in FP registers, leading to a crash in the
register allocator.

Drive-by fix: Fixed output from --trace-turbo-alloc so that all of its
sub-parts are printed with PrintF, avoiding interleaved log lines.

Bug: chromium:1260954
Change-Id: I249c8629daae3af437fb52f53f45211f3a214222
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3231341
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77521}
2021-10-25 12:32:31 +00:00
Victor Gomes
d909af0895 [baseline] Allow concurrent code allocation to fail
Drive-by: Use only LocalIsolate in AllocateConcurrentSP

Bug: v8:12054
Change-Id: Ibdd8b562548f249fc2be4dca723ce4fedc7c09ad
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3240783
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77520}
2021-10-25 11:18:31 +00:00
Igor Sheludko
0996db8bde [ext-code-space] Allocate external code space near embedded builtins
Bug: v8:11880
Change-Id: I9a936c293e261142111e235c041e3526680d9629
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3240828
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77519}
2021-10-25 11:17:30 +00:00
Michael Lippautz
4b437beee9 cppgc: Add support for young generation only marking verification
Marking verification should only process young generation objects when
verifying the marking state of a young generation garbage collection.

Bug: v8:12324
Change-Id: I01db261437ec5c42ddb6c79c44e31b5fe0e536d7
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3231343
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77518}
2021-10-25 11:16:28 +00:00
Jakob Gruber
5b5a200274 Add missing status annotation for regress-1262423
No-Try: true
Bug: chromium:1262423
Change-Id: I9d56e347d046944f01e33aa6fb8752c889e2d38d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3240784
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Auto-Submit: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77517}
2021-10-25 11:15:26 +00:00
Nico Hartmann
bdf31d5883 [TurboFan] Do not use NumberConstant as immediate in x86
Bug: chromium:1254189
Change-Id: I77854c767cf5c5748999fdd40a4a42e25dff3f79
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236989
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Reviewed-by: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77516}
2021-10-25 10:03:33 +00:00
Manos Koukoutos
520dc0d3de [wasm-gc][turbofan] Simple escape analysis
We introduce simple escape analysis for wasm-gc objects, where struct
allocations that are only assigned to are eliminated. Handling phi uses
of allocated objects is left for future work.

Bug: v8:11510
Change-Id: Ibd0b220466546e150b26b02890572a5174c6872d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3229744
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77515}
2021-10-25 09:42:14 +00:00
Jakob Gruber
b7dc9915ff [regexp] Only emit valid ranges in MakeRangeArray
Character class handling in the irregexp pipeline is quite complex;
codepoints outside the BMP (basic multilingual plane) are only
translated into surrogate pairs when needed, e.g. when the subject
string is two-byte. If not needed, the codepoints simply stay part of
the list of CharacterRanges.

In EmitCharClass, we determine the valid subset of ranges through
ranges_length; until this CL, we forgot to pass that information on to
MakeRangeArray. Do that now by truncating the list of CharacterRanges.

Fixed: chromium:1262423
Change-Id: I5bb5b839e9935890ca2d10908ad66d72c3217178
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3240782
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Auto-Submit: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77514}
2021-10-25 09:32:49 +00:00
v8-ci-autoroll-builder
e26aced708 Update V8 DEPS.
Rolling v8/build: ad1e3fb..acad0f2

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

Change-Id: I9a41a3b68d828e01cfe2d8e9e06b26974965ad55
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3239926
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/main@{#77513}
2021-10-25 03:44:59 +00:00
Liu Yu
c3953255d7 [loong64][mips] Create Instance Type for Class Constructors
Port commit 1cd7a58223

Change-Id: Iec6b60caeb55fd240407acc99872ebf0558654bf
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3239087
Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Auto-Submit: Liu yu <liuyu@loongson.cn>
Cr-Commit-Position: refs/heads/main@{#77512}
2021-10-25 02:36:58 +00:00
Lu Yahan
8f99174c57 [riscv64] Delete unused varible
Change-Id: Id6d8f1224cb59fb55decbd6fef1c8e674ea6de63
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3237328
Reviewed-by: ji qiu <qiuji@iscas.ac.cn>
Commit-Queue: ji qiu <qiuji@iscas.ac.cn>
Auto-Submit: Yahan Lu <yahan@iscas.ac.cn>
Cr-Commit-Position: refs/heads/main@{#77511}
2021-10-25 02:31:59 +00:00
v8-ci-autoroll-builder
8571eeba39 Update V8 DEPS.
Rolling v8/build: 263ec78..ad1e3fb

Rolling v8/buildtools/third_party/libunwind/trunk: fa8d4c8..21acd3f

Rolling v8/third_party/aemu-linux-x64: KDNRxWTmjlQIxZYPFEwIygxfih4aexkTD2JwU6hED-8C..8buMrGFlldiiEGiS-u8rclQGhORwxrcN14vZGo5U8sgC

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

Change-Id: I0a097f57932644ddde82209d64ecb5c1dd92f415
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3239523
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/main@{#77510}
2021-10-24 03:54:23 +00:00
Liviu Rau
46936947d8 Add owners file to gcmole folder
Narrow down the list of owners to choose from in the gcmole auto-update CLs.

Bug: v8:11169
Change-Id: I9f553124c43dc9fc094a8f4a6e2bcc832fe27636
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236993
Commit-Queue: Liviu Rau <liviurau@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77509}
2021-10-23 07:03:02 +00:00
v8-ci-autoroll-builder
09d8490662 Update V8 DEPS.
Rolling v8/build: 4d4596d..263ec78

Rolling v8/buildtools/third_party/libc++abi/trunk: be63497..9b8228b

Rolling v8/buildtools/third_party/libunwind/trunk: 6f77fbf..fa8d4c8

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

Change-Id: I01ebcedc4000923f7e433e0a8dc87d1f042f6f08
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3237759
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/main@{#77508}
2021-10-23 03:54:32 +00:00
Zhao Jiazhong
25ca43f2ee [mips32] Fix unused-but-set-variable check failures
Some variables are only used in DCHECKs, which leading to the
`unused-but-set-variable` check fail in release mode.
So we need to explicitly mark them as used.

Change-Id: I18dc8ec97ea5fbbaa081a52629b9572b863d901e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3237558
Reviewed-by: Liu yu <liuyu@loongson.cn>
Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Cr-Commit-Position: refs/heads/main@{#77507}
2021-10-22 08:52:31 +00:00
v8-ci-autoroll-builder
cfe0a7a905 Update V8 DEPS.
Rolling v8/build: ee9068d..4d4596d

Rolling v8/buildtools/third_party/libc++abi/trunk: 4c834ab..be63497

Rolling v8/third_party/aemu-linux-x64: CtkoubyWN1QNNB68v2CsV0fsa-ikErKqmbujQdM_iGMC..KDNRxWTmjlQIxZYPFEwIygxfih4aexkTD2JwU6hED-8C

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/2d03634..e9a87dc

Rolling v8/third_party/depot_tools: ed33756..7a6ff98

Rolling v8/tools/clang: 2b09788..e193c0a

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

Change-Id: I913db72cd3a1b0b7351a95d33829f85bb643268e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3237409
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/main@{#77506}
2021-10-22 03:51:32 +00:00
Frank Tang
63344e8d0b Roll ICU and correct timezone test
Bug: v8:12301
Change-Id: Ia87943478c1b67c077a18785668c485c404cd5dd
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3235814
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77505}
2021-10-21 18:39:31 +00:00
Ng Zhi An
76efd418e4 [x64] Verify disassembly of some AVX instructions
Extract instructions, and pextrq.

Bug: v8:12207
Change-Id: I919ce53a6bb1357cb70d78b3c7f12fc3d2128deb
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3223969
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77504}
2021-10-21 18:32:21 +00:00
Frank Tang
eaa1ac794e [test262] Roll test262
8d420cef4..1ad9bb7626

Bug: v8:7834
Change-Id: Icc082f9834aabd39f0d21f85d6ff9ed8ad1d0137
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3235813
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77503}
2021-10-21 16:41:33 +00:00
Michael Lippautz
4009aacbb0 Manually update google_benchmark
https://github.com/google/benchmark/pull/1256 has been upstreamed.
Manually roll forward and immediately remove the build-time work
around.

Change-Id: I567dc0bdfda128656c874b6555dc6a89eeaa8100
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236991
Auto-Submit: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77502}
2021-10-21 16:36:41 +00:00
Michael Lippautz
2b14bd03dc compiler: Fix x86 OOL write barrier stub when building without wasm
Bug: chromium:1260621
Change-Id: Iddfd5ee70ce9479209ff81f41197805e738298e0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236990
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77501}
2021-10-21 15:50:30 +00:00
Clemens Backes
14ad5cd194 [foozzie] Test the --turbo-force-mid-tier-regalloc flag
This flag will force the usage of the mid-tier register allocator, which
is otherwise only used for huge functions, hence does not get much
fuzzer coverage.

R=machenbach@chromium.org

Bug: v8:12330
Change-Id: I30b602b54adf858a2a3aaf73d8828875c1f6df7a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234492
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77500}
2021-10-21 14:02:05 +00:00
Milad Fa
1d9dd1cdd3 PPC: specifically use cr0 under AssertCallableFunction
Change-Id: Ia4151fe23a8217f3f62d895fb74f96f934ab9618
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236766
Reviewed-by: Junliang Yan <junyan@redhat.com>
Commit-Queue: Milad Fa <mfarazma@redhat.com>
Cr-Commit-Position: refs/heads/main@{#77499}
2021-10-21 13:53:55 +00:00
Joyee Cheung
63a8a3bb18 Trace optimization in store-data-property-in-literal-private.js
To get more details about the failure when it flakes.

Bug: v8:12332
Change-Id: I1bf5188efe13a75e34dd9832e6275fd985ee8dbd
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3233974
Commit-Queue: Joyee Cheung <joyee@igalia.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77498}
2021-10-21 13:30:47 +00:00
JianxiaoLuIntel
1ca94ac9e7 [heap] Fix YoungGenerationMarkingJob with flag "parallel-marking"
Bug: v8:12333
Change-Id: Ic29a9d67b586629148075dccbcebcf6f49398fb8
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3235684
Auto-Submit: Jianxiao Lu <jianxiao.lu@intel.com>
Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77497}
2021-10-21 13:00:37 +00:00
Camillo Bruni
3121b1700d [tools] Fix gdb redirect helper in gdb-v8-support.py
Drive-by-fix: format file

Change-Id: I4915ef1e917a22a8be464f75c136b4c97e045379
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234493
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77496}
2021-10-21 12:27:45 +00:00
Clemens Backes
d757cd5c63 [compiler] Fix mid-tier register allocator issue
If an output operand has "same as input" policy, we cannot assume that
it's input 0. Instead we should look at the {input_index}.

The bug manifests on Wasm select instructions, where the input index is
actually 2 and not 0.

In order to test this better, we introduce the a new
--turbo-force-mid-tier-regalloc flag, which always uses the mid-tier
register allocator. Otherwise the bug would only manifest on huge
functions.

R=mslekova@chromium.org
CC=​thibaudm@chromium.org

Bug: v8:12330
Change-Id: I6a005a48bbd2aba354dc99fed587bffce24c8839
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234722
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77495}
2021-10-21 12:20:26 +00:00
Patrick Thier
2e955523d1 Update comments about argument count in interface descriptors
Comments in interface-descriptors stated that the argument count is
without the receiver, which is no longer true (see [1]).

[1] https://crrev.com/c/3140608

Bug: v8:11112
Change-Id: I75277bd4044a49a5a668f602501ad229bc44720b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234491
Commit-Queue: Patrick Thier <pthier@chromium.org>
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Auto-Submit: Patrick Thier <pthier@chromium.org>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77494}
2021-10-21 11:20:43 +00:00
v8-ci-autoroll-builder
121601a414 Update V8 DEPS.
Rolling v8/build: 110f470..ee9068d

Rolling v8/buildtools/third_party/libc++abi/trunk: 9eb0245..4c834ab

Rolling v8/buildtools/third_party/libunwind/trunk: 557b51a..6f77fbf

Rolling v8/third_party/aemu-linux-x64: oT0j0p3wnLGyIs4qDcea3sRhW4YKoAhTY2LDWkJ4T4QC..CtkoubyWN1QNNB68v2CsV0fsa-ikErKqmbujQdM_iGMC

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/876bab7..2d03634

Rolling v8/third_party/depot_tools: 756e98f..ed33756

Rolling v8/third_party/googletest/src: 075810f..16f637f

Rolling v8/tools/clang: c00aa10..2b09788

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

Change-Id: I779a9da6804d29e4f7a05d646d1f8a6cbff3de8f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3233925
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/main@{#77493}
2021-10-21 10:46:12 +00:00
Patrick Thier
88c0f72927 [turbofan] Fix calling class constructors with spread
Calling class constructors without new is a spec violation and should
raise an exception.
In [1] calling class constructors with spread (without new) was handled
by reducing the node to a call to runtime to raise the exception.
However, arguments of the call have to be evaluated first ([2]).
This CL changes the reduction of JSCallWithSpread/JSCallWithArrayLike to
a no-op in JSCallReducer if the target is a class constructor, delaying
raising of the exception to the call builtin.

[1] https://crrev.com/c/3229369
[2] https://tc39.es/ecma262/#sec-evaluatecall

Bug: chromium:1262007
Change-Id: I2ef504d4ce6e51d582b5951beb6debb983cefba6
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236348
Commit-Queue: Patrick Thier <pthier@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77492}
2021-10-21 10:14:12 +00:00
Victor Porof
21d2dec521 Create an async stack tagging prototype API
This CL exposes the async stack traces instrumentation on the console
object, behind a --experimental-async-stack-tagging-api flag. It serves
as a prototype that aims to validate whether the debugging experience
can be improved for userland code that uses custom schedulers. The tests
are implemented as Blink web tests in the following CL:
https://chromium-review.googlesource.com/c/chromium/src/+/3226418

Bug: chromium:332624
Change-Id: Ib1ee71de68f7bb9aff5b944812ce681d8711d217
Signed-off-by: Victor Porof <victorporof@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3212506
Reviewed-by: Simon Zünd <szuend@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77491}
2021-10-21 09:57:52 +00:00
Victor Gomes
af1ccea736 [heap] Support registering code on the background thread
We use a mutex to avoid data race when reading/writing to the
code object registry.

Functions called only by the sweeper happens during safepoints and
do not need to be protected by the mutex.

Bug: v8:12054
Change-Id: Ie85bf0422622eee7f2836ecae132397a6aa4ed59
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234721
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77490}
2021-10-21 09:55:23 +00:00
Leszek Swirski
eaf40c2008 Manually update instrumented_libraries DEPS
Rolling this manually because we have to update paths in sync with
instrumented_libraries due to https://crrev.com/c/3224627.

Rolling v8/third_party/instrumented_libraries:
6527a4e..3c149f5

Bug: chromium:1261909
Change-Id: Ibcb6ebefa287e0125e0cb75be8dc51dea392a502
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3233138
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77489}
2021-10-21 09:54:22 +00:00
Leszek Swirski
66fd941a47 Reland "[Fuchsia] Remove checkout_fuchsia_for_arm64_host"
This is a reland of 6cd14492aa

Additionally rolls buildtools to include https://crrev.com/c/3045960

Rolling v8/build: f78b0bd..110f470

Rolling v8/buildtools: a9bc3e2..f5750f5

Original change's description:
> [Fuchsia] Remove checkout_fuchsia_for_arm64_host
>
> Also roll /build to a version that contains the cl removing
> checkout_fuchsia_for_arm64_host
>
> Bug: chromium:1137662
> Change-Id: I72851e5ab4e1daabf6ea62fb7935dfd28d8dee25
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3232816
> Auto-Submit: Chong Gu <chonggu@google.com>
> Commit-Queue: Chong Gu <chonggu@google.com>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#77486}

Bug: chromium:1137662
Change-Id: Iaa142fd3e61ce14972381f309a83f45e1a0cb318
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236347
Reviewed-by: Liviu Rau <liviurau@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77488}
2021-10-21 08:33:13 +00:00
Leszek Swirski
24693010d9 Revert "[Fuchsia] Remove checkout_fuchsia_for_arm64_host"
This reverts commit 6cd14492aa.

Reason for revert: The build roll is breaking out Android Arm64 build (https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Android%20Arm64%20-%20builder/41853/overview)

Original change's description:
> [Fuchsia] Remove checkout_fuchsia_for_arm64_host
>
> Also roll /build to a version that contains the cl removing
> checkout_fuchsia_for_arm64_host
>
> Bug: chromium:1137662
> Change-Id: I72851e5ab4e1daabf6ea62fb7935dfd28d8dee25
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3232816
> Auto-Submit: Chong Gu <chonggu@google.com>
> Commit-Queue: Chong Gu <chonggu@google.com>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#77486}

Bug: chromium:1137662
Change-Id: I48f8f030cee277b761d17fa3c891737f84c25970
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234962
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Owners-Override: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77487}
2021-10-21 07:59:32 +00:00
Chong Gu
6cd14492aa [Fuchsia] Remove checkout_fuchsia_for_arm64_host
Also roll /build to a version that contains the cl removing
checkout_fuchsia_for_arm64_host

Bug: chromium:1137662
Change-Id: I72851e5ab4e1daabf6ea62fb7935dfd28d8dee25
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3232816
Auto-Submit: Chong Gu <chonggu@google.com>
Commit-Queue: Chong Gu <chonggu@google.com>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77486}
2021-10-21 07:43:02 +00:00
Lu Yahan
6b2809df52 [riscv64][regexp] Compact codegen for large character classes
Port 8bbb44e537
Port 7c08633bf6

Change-Id: Iebc3e223a0a7bc5f31ef0f21d8589e60ccdc0833
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3233695
Auto-Submit: Yahan Lu <yahan@iscas.ac.cn>
Commit-Queue: ji qiu <qiuji@iscas.ac.cn>
Reviewed-by: ji qiu <qiuji@iscas.ac.cn>
Cr-Commit-Position: refs/heads/main@{#77485}
2021-10-21 01:58:51 +00:00
Ng Zhi An
c3f346b7ac [wasm-relaxed-simd][x64] Prototype relaxed min and max
Relaxed f32x4 and f64x2 min and max.

These instructions only guarantee results when the inputs are non nans,
and when the inputs are not 0s of opposite signs.

Reuse existing float binop testing harnesses and add special checks for
such constants when relaxed operations are being tested.

Drive-by rename of x64 instruction codes to be Minps/Maxps/Minpd/Maxpd
since they map down exactly to a single instruction.

Bug: v8:12284
Change-Id: I1449dbfa87935a96d7d260db22667ab7b9e86601
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3218196
Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77484}
2021-10-21 00:58:24 +00:00
Shu-yu Guo
24af42e8a3 [test] Fix flag misconfig
--no-stress-flush-bytecode doesn't exist and should be
--no-stress-flush-code. Not supressing it means a tester could pass
--stress-flush-code and --no-flush-bytecode, which are contradictory and
will assert.

Bug: v8:12331
Cq-Include-Trybots: luci.v8.try:v8_numfuzz_dbg_ng,v8_numfuzz_ng
Change-Id: I6490271bcb11f5ea925eb8b65fbe0455c2dafeaf
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3233952
Reviewed-by: Zhi An Ng <zhin@chromium.org>
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Auto-Submit: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77483}
2021-10-20 20:24:51 +00:00
Michael Achenbach
50708676f9 Revert "Update V8 DEPS."
This reverts commit 17a99fec25.

Reason for revert: https://crbug.com/1261909

Original change's description:
> Update V8 DEPS.
>
> Rolling v8/build: f78b0bd..50ef978
>
> Rolling v8/buildtools: a9bc3e2..aa2fb01
>
> Rolling v8/buildtools/third_party/libc++abi/trunk: 9eb0245..025086b
>
> Rolling v8/buildtools/third_party/libunwind/trunk: 557b51a..10f4e4a
>
> Rolling v8/third_party/aemu-linux-x64: oT0j0p3wnLGyIs4qDcea3sRhW4YKoAhTY2LDWkJ4T4QC..p2K77JFqGXfOhd-k7kwHxN1jcMy1onKpHYDko4dJTnwC
>
> Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/876bab7..2d03634
>
> Rolling v8/third_party/depot_tools: 756e98f..b6ce244
>
> Rolling v8/third_party/googletest/src: 075810f..16f637f
>
> Rolling v8/third_party/instrumented_libraries: 6527a4e..3c149f5
>
> Rolling v8/tools/clang: c00aa10..79b0bc1
>
> TBR=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com
>
> Change-Id: Ied2105fc229f34fd8b454eac0b01aed99a417de6
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234818
> 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/main@{#77481}

Bug: chromium:1261909
Change-Id: I9e02280aad8ba14883856c2421f6d61ebb012775
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234724
Auto-Submit: Michael Achenbach <machenbach@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@{#77482}
2021-10-20 19:25:13 +00:00
v8-ci-autoroll-builder
17a99fec25 Update V8 DEPS.
Rolling v8/build: f78b0bd..50ef978

Rolling v8/buildtools: a9bc3e2..aa2fb01

Rolling v8/buildtools/third_party/libc++abi/trunk: 9eb0245..025086b

Rolling v8/buildtools/third_party/libunwind/trunk: 557b51a..10f4e4a

Rolling v8/third_party/aemu-linux-x64: oT0j0p3wnLGyIs4qDcea3sRhW4YKoAhTY2LDWkJ4T4QC..p2K77JFqGXfOhd-k7kwHxN1jcMy1onKpHYDko4dJTnwC

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/876bab7..2d03634

Rolling v8/third_party/depot_tools: 756e98f..b6ce244

Rolling v8/third_party/googletest/src: 075810f..16f637f

Rolling v8/third_party/instrumented_libraries: 6527a4e..3c149f5

Rolling v8/tools/clang: c00aa10..79b0bc1

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

Change-Id: Ied2105fc229f34fd8b454eac0b01aed99a417de6
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234818
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/main@{#77481}
2021-10-20 16:57:31 +00:00
Milad Fa
d219d39a80 PPC/s390: [turbofan] Handle class constructor
Port e127f58410

Original Commit Message:

    Handling of class constructors was moved from CallFunction to Call
    in [1].
    When reducing calls with spread we forward varargs directly to
    CallFunction, if we are spreading to inlined arguments or arguments of
    the outermost function.
    In that case we didn't check for class constructors and therefore didn't
    raise an exception.
    This CL adds checks for class constructors to all JSCall* nodes in
    JSCallReducer that missed them before.

    [1] https://crrev.com/c/3186434

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

Change-Id: I02cba90369354f064201daa1bf8812e17cb2dc21
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234040
Reviewed-by: Junliang Yan <junyan@redhat.com>
Commit-Queue: Milad Fa <mfarazma@redhat.com>
Cr-Commit-Position: refs/heads/main@{#77480}
2021-10-20 16:31:01 +00:00