Commit Graph

71878 Commits

Author SHA1 Message Date
Lu Yahan
ad24c8370a [riscv64] Delete extra define
Change-Id: Ieb986b9e17103ec24ca98a7ab44e7bef9caa6bfa
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3194013
Reviewed-by: ji qiu <qiuji@iscas.ac.cn>
Commit-Queue: ji qiu <qiuji@iscas.ac.cn>
Cr-Commit-Position: refs/heads/main@{#77136}
2021-09-29 08:16:12 +00:00
Jakob Gruber
8965d90362 Reland "[regexp] Reorganize and deduplicate in the regexp parser"
This is a reland of 7d849870ff

Original change's description:
> [regexp] Reorganize and deduplicate in the regexp parser
>
> The parser is organized in a somewhat tricky way s.t. it can be
> hard to map the implementation back to the specified grammar.
>
> In particular, the logic for CharacterClassEscape, ClassEscape,
> and CharacterEscape was implemented twice - once inside a character
> class, once outside.
>
> This CL refactors related logic to have only a single implementation.
>
> As a drive-by, fix one related inconsistency related to \k inside
> a character class.
>
> Fixed: v8:10602
> Change-Id: I5858840159694fa6f8d1aa857027db80754e3dfd
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3178966
> Reviewed-by: Mathias Bynens <mathias@chromium.org>
> Commit-Queue: Jakob Gruber <jgruber@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#77114}

Fixed: v8:10602,chromium:1253976
Change-Id: I9e7cc6a34d3be06e1a68895775aa50b0eee78c57
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3193531
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Auto-Submit: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77135}
2021-09-29 07:33:12 +00:00
v8-ci-autoroll-builder
fd1571e778 Update V8 DEPS.
Rolling v8/base/trace_event/common: 715537d..68d8169

Rolling v8/build: a76920d..ecb990f

Rolling v8/third_party/aemu-linux-x64: 6Vr4alb5803W2n5PbA5ZLwCcJznKdmFX1pDoy_5hfOAC..e_KiIcYNB7sHa2eqRBhqVoR_Mmg2Q7nqmzRCXzegWQAC

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/2146b04..5afc365

Rolling v8/third_party/depot_tools: ce514ad..764c927

Rolling v8/third_party/googletest/src: e4717df..ab36804

Rolling v8/tools/clang: 2e80143..278dd91

Rolling v8/tools/luci-go: git_revision:e9585787c808e21d6eaa2c7d7a928dbc19999172..git_revision:a373a19da0fbbbe81b2b684e3797260294393e40

Rolling v8/tools/luci-go: git_revision:e9585787c808e21d6eaa2c7d7a928dbc19999172..git_revision:a373a19da0fbbbe81b2b684e3797260294393e40

Rolling v8/tools/luci-go: git_revision:e9585787c808e21d6eaa2c7d7a928dbc19999172..git_revision:a373a19da0fbbbe81b2b684e3797260294393e40

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

Change-Id: I4765817d9f51dd6f7d9a600799098134eee1a8fb
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3192297
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@{#77134}
2021-09-29 03:53:52 +00:00
Zhi An Ng
1ecddb8ff6 Revert "[bazel] Adds support to abseil"
This reverts commit 649e9113fd.

Reason for revert: Abseil was reverted due to gcc failures, so reverting this first. When upstream fixes land, we can reland abseil and this change.

Original change's description:
> [bazel] Adds support to abseil
>
> No-Try: true
> Bug: v8:11006
> Change-Id: Ie2758849fcb8b19ae34289d3e762094b062f2a5c
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3168644
> Reviewed-by: Dan Elphick <delphick@chromium.org>
> Commit-Queue: Victor Gomes <victorgomes@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#76938}

Bug: v8:11006
Change-Id: Iedde555df8bc736cf922b0d9f51b0a78f7e1db49
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3192192
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77133}
2021-09-28 21:58:22 +00:00
Ng Zhi An
67601ba9c2 Revert "Reland "[DEPS] Add abseil to deps""
This reverts commit 214ef26dd0.

Reason for revert: gcc bots are failing https://crbug.com/v8/12248

Original change's description:
> Reland "[DEPS] Add abseil to deps"
>
> This is a reland of 3c49308ac6
>
> Original change's description:
> > [DEPS] Add abseil to deps
> >
> > Add a dependency on the chromium abseil-cpp subdir mirror.
> >
> > Bug: v8:11006
> > Change-Id: Icaad757269d27c65bc368ed539f84c5bb79ee62d
> > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2464940
> > Commit-Queue: Leszek Swirski <leszeks@chromium.org>
> > Reviewed-by: Yang Guo <yangguo@chromium.org>
> > Reviewed-by: Victor Gomes <victorgomes@chromium.org>
> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#70786}
>
> Bug: v8:11006
> Change-Id: I2befd2eadd11d485eee47c68119d93be9a3e1655
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2504257
> Commit-Queue: Leszek Swirski <leszeks@chromium.org>
> Reviewed-by: Adam Klein <adamk@chromium.org>
> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
> Reviewed-by: Yang Guo <yangguo@chromium.org>
> Reviewed-by: Hannes Payer <hpayer@chromium.org>
> Reviewed-by: Victor Gomes <victorgomes@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#76897}

Bug: v8:11006
Change-Id: Icdc7ed108a49fa33a0233a1af8ba8e4d9daadfd8
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3191392
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77132}
2021-09-28 20:08:22 +00:00
Dominik Inführ
1054ee7f34 [heap] Improve ephemeron processing
Refactor code such that the linear algorithm is actually executed
outside the method for the fixpoint iteration. Also added a CHECK
which verifies that iterating the ephemerons one more time results in
no further marked objects.

Also force another iteration when ProcessMarkingWorklist() processed
some object. In such cases we need to re-process all ephemerons
otherwise ephemeron semantics might be broken.

Bug: chromium:1252918
Change-Id: I9123dda50e34227a04825fd8b3172368286cc76f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190100
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77131}
2021-09-28 19:02:41 +00:00
Ng Zhi An
bbd441503f [cleanup] Fix -Wshadow warnings in ast.cc
Bug: v8:12244,v8:12245
Change-Id: I81cf283f4b38930c74c1e4508711af0d4702128d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3187273
Reviewed-by: Marja Hölttä <marja@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77130}
2021-09-28 18:44:51 +00:00
Ng Zhi An
043fb91b42 [cleanup] Make PropertyLocation a scoped enum
Bug: v8:12244
Change-Id: I7ea68dd74a376221631d7f56b4a012207f68a1ec
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3182899
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77129}
2021-09-28 18:39:41 +00:00
Maria Tîmbur
d68e5181ce [fuzzer] Only pick mutable fields for struct.set
As now struct and array types are generated arbitrary,
struct.set should only pick mutable fields.

Bug: v8:11954, chromium:1253031
Change-Id: Ic248e93b09ffefd4f5547e102c8ea4d56bb2bd90
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186439
Commit-Queue: Maria Tîmbur <mtimbur@google.com>
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77128}
2021-09-28 17:39:02 +00:00
Omer Katz
e437a51f1f Revert "cppgc: Inline allocation fast path across api boundary"
This reverts commit e47f920071.

Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Win64%20-%20msvc/19428?

Original change's description:
> cppgc: Inline allocation fast path across api boundary
>
> Bug: chromium:1239030, chromium:1056170
> Change-Id: I4a559027e63ebbd99e51344aa659d4fb284df88f
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190094
> Commit-Queue: Omer Katz <omerkatz@chromium.org>
> Reviewed-by: Anton Bikineev <bikineev@chromium.org>
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#77124}

Bug: chromium:1239030, chromium:1056170
Change-Id: I13b6f16449361a7fb9f1cac5b2e0938632df6518
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3191210
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77127}
2021-09-28 17:00:31 +00:00
Maria Tîmbur
9fc733f517 [fuzzer] Simplify generating function references
Because there can be fewer function signatures than there are
functions a new ForceAddSignature function was added which does
not deduplicate.


Bug: v8:11954
Change-Id: Ib028de47962dd1e797ead1b1f05a4e6815029487
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186431
Commit-Queue: Maria Tîmbur <mtimbur@google.com>
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77126}
2021-09-28 16:30:01 +00:00
Shu-yu Guo
294a77eab5 Revert "[regexp] Reorganize and deduplicate in the regexp parser"
This reverts commit 7d849870ff.

Reason for revert: Will block roll. Broke error message tests upstream:

https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Blink%20Win/6635/overview


Original change's description:
> [regexp] Reorganize and deduplicate in the regexp parser
>
> The parser is organized in a somewhat tricky way s.t. it can be
> hard to map the implementation back to the specified grammar.
>
> In particular, the logic for CharacterClassEscape, ClassEscape,
> and CharacterEscape was implemented twice - once inside a character
> class, once outside.
>
> This CL refactors related logic to have only a single implementation.
>
> As a drive-by, fix one related inconsistency related to \k inside
> a character class.
>
> Fixed: v8:10602
> Change-Id: I5858840159694fa6f8d1aa857027db80754e3dfd
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3178966
> Reviewed-by: Mathias Bynens <mathias@chromium.org>
> Commit-Queue: Jakob Gruber <jgruber@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#77114}

Change-Id: Ic7404d6c9f0e6ea51e8cd8f1ab672856dca0c637
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190692
Auto-Submit: Shu-yu Guo <syg@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@{#77125}
2021-09-28 16:15:15 +00:00
Omer Katz
e47f920071 cppgc: Inline allocation fast path across api boundary
Bug: chromium:1239030, chromium:1056170
Change-Id: I4a559027e63ebbd99e51344aa659d4fb284df88f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190094
Commit-Queue: Omer Katz <omerkatz@chromium.org>
Reviewed-by: Anton Bikineev <bikineev@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77124}
2021-09-28 15:36:01 +00:00
Jakob Gruber
c872728c5d [regexp] Clean up js-regexp.h
Update outdated comments and address TODO about kDataIndex.

Change-Id: Ibf6e91857c0430cb9a598c98933db63ac42a1d1f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3189197
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Auto-Submit: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Patrick Thier <pthier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77123}
2021-09-28 15:28:01 +00:00
Seth Brenith
4b53234311 [heap] Don't age bytecode when GCing for devtools snapshot
When preparing to take a heap snapshot for the devtools, V8 uses
CollectAllAvailableGarbage, which runs 2 to 7 rounds of garbage
collection, depending on whether weak callbacks indicate that further
rounds might be beneficial. Depending on how many rounds of GC run,
varying amounts of bytecode and baseline code may be flushed, leading to
inconsistent behavior and underreporting the amount of memory used by
bytecode and baseline code. In this change, I propose that bytecode
should not increase in age during these collections, so that the
resulting snapshot is a better indication of actual memory usage.

Change-Id: I644be37833f85bb58e2e2fad5da62949cbdc9bef
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3182885
Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#77122}
2021-09-28 15:09:21 +00:00
Al Muthanna Athamina
ab41d9bf37 [infra] Add arm64 simulator heap sandbox builders
Bug: v8:12257
Change-Id: I0c78e692a1712082818e8af32593b0489c4e18ff
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190103
Commit-Queue: Almothana Athamneh <almuthanna@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77121}
2021-09-28 14:59:01 +00:00
Victor Gomes
01a28ec67e [Google3] Remove valgrind dependency
Change-Id: I796eacdf7c0e1fc9de5b31e47bf0e20cd4aa70d7
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190430
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Dan Elphick <delphick@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Reviewed-by: Dan Elphick <delphick@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77120}
2021-09-28 14:12:34 +00:00
Victor Gomes
89b2c7bc15 [heap] Update HeapStats map type
Use `const void*` to signal that we are not hashing for the
`char*` contents.

Change-Id: Ib8c31e293ec1e57a7799a68cfd2d59ce39076d43
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190108
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77119}
2021-09-28 14:10:06 +00:00
Jakob Gruber
69e1a42e2b [regexp] Use ZoneVector in RegExpBytecodeGenerator
.. to avoid the expensive malloc call.

Fixed: v8:9455
Change-Id: I6734fe07a3884b228d818f60be83d9e45c2ee383
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190105
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Patrick Thier <pthier@chromium.org>
Auto-Submit: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Patrick Thier <pthier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77118}
2021-09-28 13:44:20 +00:00
Michael Savigny
e34ac47724 [reclient] Add use_remoteexec=true to reclient mixin.
Add the use_remoteexec arg to the reclient mixin.  Set both use_rbe and
use_remoteexec while switch from one ot the other.

Bug: chromium:1252752
Change-Id: I415a849dbd27c4de23d6f9fcfde7c1beba8f5f7f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3188950
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Savigny <msavigny@google.com>
Cr-Commit-Position: refs/heads/main@{#77117}
2021-09-28 13:16:16 +00:00
Thibaud Michaud
37430ba3f8 [wasm] Move misplaced DCHECK in wasm interpreter
When handling the 'end' opcode, there was a confusion with the value of
"unreachable". This DCHECK assumes the value of "unreachable" before
closing the scope, but was placed after the value is potentially updated
to reflect the state after the 'end' opcode.

R=clemensb@chromium.org

Bug: chromium:1251845
Change-Id: Iea526e6485fa705f6ff4077f54a53204cc70a926
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190102
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Commit-Queue: Thibaud Michaud <thibaudm@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77116}
2021-09-28 13:08:49 +00:00
Clemens Backes
44b68bc2ca [wasm] Add regression test for 1252747
R=manoskouk@chromium.org

Bug: chromium:1252747
Change-Id: I337d5e26015f5af8c76caebb962093d1dad42952
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190095
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77115}
2021-09-28 13:03:14 +00:00
Jakob Gruber
7d849870ff [regexp] Reorganize and deduplicate in the regexp parser
The parser is organized in a somewhat tricky way s.t. it can be
hard to map the implementation back to the specified grammar.

In particular, the logic for CharacterClassEscape, ClassEscape,
and CharacterEscape was implemented twice - once inside a character
class, once outside.

This CL refactors related logic to have only a single implementation.

As a drive-by, fix one related inconsistency related to \k inside
a character class.

Fixed: v8:10602
Change-Id: I5858840159694fa6f8d1aa857027db80754e3dfd
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3178966
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77114}
2021-09-28 12:07:35 +00:00
Jakob Kummerow
d6fb96aed3 [cleanup] Fix -Wshadow in prettyprinter.h
Bug: v8:12244,v8:12245
Change-Id: Ic677503ceeb5903e94cc60d7c95f0ec990fba691
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3183163
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77113}
2021-09-28 11:45:35 +00:00
Lu Yahan
f4782ed4bb [riscv64] Uint32 sign extend into 64bit
The intent of the RISC-V ISA is that 32-bit C values are stored sign extended in registers, even for unsigned types.
So we skip cctest case RunLoadStoreZeroExtend64/RunUnalignedLoadStoreZeroExtend64 due to sign extend uint32

Change-Id: Icfe727916b1c04aad5681902ec4782cc98906964
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3184560
Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Ji Qiu <qiuji@iscas.ac.cn>
Cr-Commit-Position: refs/heads/main@{#77112}
2021-09-28 11:39:26 +00:00
Jakob Kummerow
d7fc0134ee [cleanup][test] Don't rely on __COUNTER__ in expectations
Several of the cctest/test-bytecode-generator/* tests used to rely
on the __COUNTER__ C++ compiler macro, which could cause spurious
test failures due to mismatched expectations when usages of that
macro were added or removed elsewhere in the code. This patch switches
to a custom, controllable static counter variable instead, to make
the tests' behaviors self-contained.

Bug: v8:12244
Change-Id: I4d875b6095e4ee4ef91933ab8c60c89054d1894a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186836
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77111}
2021-09-28 11:09:05 +00:00
Zhao Jiazhong
89d71aa946 [mips][loong64][wasm] Interpret table.grow result as 32 bit
Port commit a0ace8a8a5

On mips64 and loong64, sign-extend the 32-bit value.

Change-Id: I058e3fcba94c25ad36ab1d751dea6bfc0558471a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3189854
Reviewed-by: Liu yu <liuyu@loongson.cn>
Commit-Queue: Liu yu <liuyu@loongson.cn>
Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Cr-Commit-Position: refs/heads/main@{#77110}
2021-09-28 10:28:04 +00:00
Victor Gomes
0cdcf46f11 [bazel] Add Kythe api to Torque compiler
No-Try: true
Bug: v8:12261
Change-Id: Ib51f8b694156228d2a3217b3cf171d15390af87d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190092
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77109}
2021-09-28 08:30:56 +00:00
Lu Yahan
3991395843 [riscv64] Fix build error
Port e301d71ff5
 [compiler] Teach InstructionScheduler about protected memory accesses

Port a0ace8a8a5
 [wasm] Interpret table.grow result as 32 bit

Port [regexp] Fix UAF in RegExpMacroAssembler

Change-Id: Ieac5e4deae9c6bbf844788d927f5201b906495f6
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3189213
Commit-Queue: Ji Qiu <qiuji@iscas.ac.cn>
Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn>
Cr-Commit-Position: refs/heads/main@{#77108}
2021-09-28 07:01:56 +00:00
Manos Koukoutos
9acedc80e3 [wasm] Add position decorator before copying loop nodes
Bug: chromium:1252747
Change-Id: I2eb0f71049836ca5a761928e3c8adf7034f5fdb2
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186437
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77107}
2021-09-28 05:30:14 +00:00
v8-ci-autoroll-builder
a87788bc6c Update V8 DEPS.
Rolling v8/build: 6476f40..a76920d

Rolling v8/buildtools: 9d33a71..a9bc3e2

Rolling v8/buildtools/linux64: git_revision:de86ec4176235871a7cb335756987e41246dae4a..git_revision:0153d369bbccc908f4da4993b1ba82728055926a

Rolling v8/buildtools/third_party/libc++abi/trunk: c883cb1..50e90b8

Rolling v8/buildtools/third_party/libunwind/trunk: a7e4ce0..a002c72

Rolling v8/third_party/abseil-cpp: a46a633..8aecb68

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/444aba8..2146b04

Rolling v8/third_party/depot_tools: f35d350..ce514ad

Rolling v8/tools/clang: efd7c81..2e80143

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

Change-Id: Ifcb08d19030149f8f920d334f4b0072c286d80bd
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3189492
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@{#77106}
2021-09-28 03:47:04 +00:00
Lu Yahan
64b96fb8df [riscv64] [regexp]: Allow reentrant irregexp execution
Port 3162604 3173681
Bug: v8:11382

Change-Id: Iea5910dfe1f091cb0d202f1abe894562f5c6c63f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3184561
Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn>
Commit-Queue: Ji Qiu <qiuji@iscas.ac.cn>
Cr-Commit-Position: refs/heads/main@{#77105}
2021-09-28 00:24:24 +00:00
Shu-yu Guo
af5ca2e05d Skip {map,set}-grow-failed tests on TSAN
These tests test allocation failure and time out on TSAN.

Bug: v8:11852
Change-Id: I81e0af3ab8130c05488c6a117dd1c6ef12aba33b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3188071
Auto-Submit: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Adam Klein <adamk@chromium.org>
Reviewed-by: Adam Klein <adamk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77104}
2021-09-27 20:32:29 +00:00
legendecas
cd77eb7bd7 [builtins] Fixes TypedArray ops behavior when the buffer was detached
After the parameter processing, the arraybuffer may have been detached.
TypedArray copyWithin/fill should throw in that condition. TypedArray
includes should return false if the search element is not undefined.

Change-Id: If507d0efa1dafbe3dcefcd368e5ea27406bb3df8
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3144315
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77103}
2021-09-27 19:08:20 +00:00
Georg Neis
1fbacf7bf7 [compiler] Remove redundant MakeRef call
Bug: v8:7790
Change-Id: Ibf6e842c2bec780a9a52643494def8efbab92466
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3185920
Auto-Submit: Georg Neis <neis@chromium.org>
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77102}
2021-09-27 17:28:00 +00:00
Jakob Kummerow
68371328e0 [RCS][cleanup] Fix -Wshadow warnings
Bug: v8:12244,v8:12245
Change-Id: Ib0db9d9431e42399d3031b5d7f315ddf3cd9993d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3182441
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77101}
2021-09-27 17:24:09 +00:00
Sathya Gunasekaran
2ba3873502 Revert "heap: Resolve -Wshadow warning in allocation-observer.cc"
This reverts commit ec4a3124d1.

Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=1253374#c2

Original change's description:
> heap: Resolve -Wshadow warning in allocation-observer.cc
>
> Bug: v8:12244, v8:12245
> Change-Id: Id6b9e0a3986fb04c1a949b26ecf20da652ddd097
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3181537
> Auto-Submit: Michael Lippautz <mlippautz@chromium.org>
> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
> Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#77045}

Bug: v8:12244, v8:12245
Change-Id: I506055fa7b959ac9adffa77ebc58234ec5b03371
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186834
Reviewed-by: Sathya Gunasekaran  <gsathya@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77100}
2021-09-27 17:08:28 +00:00
Nico Hartmann
6c9f799207 [Torque] Add Kythe api to Torque compiler
Prepare the Torque compiler to generate Kythe artifacts to be consumed
by CodeSearch.

Drive-by changes.
* Extend SourcePosition by an offset in the input string, as this is
  required by the Kythe graph.
* Correctly set missing identifier positions in Declarations.

Bug: v8:12261
Change-Id: Ida0a4a562c99f58ab924ddde36f3146f3d3fd415
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3181102
Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
Reviewed-by: Seth Brenith <seth.brenith@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#77099}
2021-09-27 16:56:18 +00:00
Ng Zhi An
063384f76e [cleanup] Fix -Wshadow warnings in inspector
Bug: v8:12244
Change-Id: I57a54b43c1821b57ef45de38c4d7782534f74d2d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3183521
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77098}
2021-09-27 16:14:19 +00:00
Ng Zhi An
c7a03c49fa [cleanup] Fix -Wshadow warnings in test/fuzzer/regexp
Don't really have a good name for this inner TryCatch.

Bug: v8:12244
Change-Id: I4c1353bcd98e78e49d0354e285249302a8ee0dd8
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3183522
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77097}
2021-09-27 15:59:54 +00:00
Ng Zhi An
c4674d80c9 [cleanup] Fix -Wshadow warnings in torque
Bug: v8:12244
Change-Id: Ia441c2056a8a4edf44aa6fd5a1bb86726d599af9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3182927
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Zhi An Ng <zhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77096}
2021-09-27 15:55:09 +00:00
Shu-yu Guo
fee41d59b6 [modules] Implement module namespace exotic object [[DefineOwnProperty]]
Bug: v8:12240
Change-Id: I9bf62d8c99b1f945139e274652d667c1a361e2a4
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3180371
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77095}
2021-09-27 15:45:59 +00:00
Andreas Haas
e5595fb96e [cleanup] Remove variable shadowing in cctest/compiler/*
Bug: v8:12244
Change-Id: Ia99fac6e7001bb6bce12256d3fcce28e45222f7d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3182229
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77094}
2021-09-27 15:31:19 +00:00
Camillo Bruni
0298ece601 [diagnostics] Improve Context printing
- Print extension and type
- Clarify elements printing

Change-Id: Ie5d5fb60e20bb2f5bfee4e438a4dec52b3b27d13
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186435
Auto-Submit: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Maya Lekova <mslekova@chromium.org>
Reviewed-by: Maya Lekova <mslekova@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77093}
2021-09-27 15:02:49 +00:00
Andreas Haas
0a8bccfd7b [cleanup] Remove variable shadowing in wasm-interpreter.cc
R=thibaudm@chromium.org

Bug: v8:12244
Change-Id: I9012ec21f4dbf2c644b0cb3964e545bfb2b2112c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3182442
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77092}
2021-09-27 14:53:09 +00:00
Victor Gomes
311a4aea71 [bazel] Introduce ObjectVisitorWithCageBases
No-Try: true
Bug: v8:11880
Change-Id: I8d15b1974e965a31b822308879d78461bf1a141f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186442
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77091}
2021-09-27 14:00:29 +00:00
Zhao Jiazhong
f5e48df1f2 [mips][loong64][regexp] Fix regexp test failures
Port commit bba7c09aad
  [regexp] Allow reentrant irregexp execution

Port commit 4bbfc4b7a6
  [regexp] Remove the `stack` parameter from regexp matchers

Port commit c1700c56ad
  [regexp] Fix UAF in RegExpMacroAssembler

Bug: v8:11382
Change-Id: Ie2e95d7b19ecbd740e8d8a4130c725416abc114a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3185562
Reviewed-by: Liu yu <liuyu@loongson.cn>
Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Cr-Commit-Position: refs/heads/main@{#77090}
2021-09-27 13:49:08 +00:00
Patrick Thier
ea6dd0f4f6 [arm][arm64] Activate Argument Count Consistency
Activate argument count consistency (receiver is always included in
JS argument count) for arm and arm64.

Bug: v8:11112
Change-Id: I4b019721422a0a4653d59e81cde2f7d57708e625
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3186436
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Auto-Submit: Patrick Thier <pthier@chromium.org>
Reviewed-by: Victor Gomes <victorgomes@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77089}
2021-09-27 13:15:29 +00:00
Igor Sheludko
3ac59282af [ext-code-space] Introduce ObjectVisitorWithCageBases
... an ObjectVisitor subclass that takes care of caching values of
both the main pointer compression cage base and code cage base
(when the external code space is enabled).

Drive-by: this CL also changes signature of
RelocInfo::target_object_no_host(...) to accept PtrComprCageBase
instead of Isolate*.

Bug: v8:11880
Change-Id: I3fbb382e0a0170e28542bc495d8fecfd24da8a07
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3182231
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77088}
2021-09-27 12:49:01 +00:00
Omer Katz
14cc79ccf5 cppgc: Support virtual prefinalizers
Bug: chromium:1252634, chromium:1056170
Change-Id: Ifdecca29dbff4ed3d6ee2acd547a20add482d59f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3183167
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77087}
2021-09-27 12:29:52 +00:00