- 26 Aug, 2022 1 commit
-
-
Qifan Pan authored
Bug: v8:9407 Change-Id: I29f8f5ec68f09e8631b59d3a6a2926bab3b3bcd3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3845638Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Qifan Pan <panq@google.com> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#82741}
-
- 15 Aug, 2022 1 commit
-
-
Shu-yu Guo authored
The slow paths of the Array.prototype methods in the change-Array-by-copy proposal don't need to be inlined as macros. Make them builtins where possible. This CL also driveby fixes the fast path for toSpliced to only apply when the returned copy's length is <= kMaxFastArrayLength. Bug: v8:13035 Change-Id: I4034d5d40d7db14d86b33a6f1047e1b17781321a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3830287 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#82465}
-
- 09 Aug, 2022 2 commits
-
-
jameslahm authored
Add the receiver to the IteratorSymbolNonCallable error message. Bug: v8:12918 Change-Id: Ib863a357474282ec3723cc4e7e012052979ca2d6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3813069Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#82308}
-
Qifan Pan authored
This is a reland of commit 30ee0690 Avoid terminating from another thread in unit tests to make the termination of optimized bigint multiplication deterministic on windows Original change's description: > Reland "[TurboFan] Support BigIntMultiply" > > This is a reland of commit ccde4205 > > Added a test case for terminating optimized bigint multiply and attached frame_state to the runtime call to provide deopt information to determine the throw location > > Original change's description: > > [TurboFan] Support BigIntMultiply > > > > Bug: v8:9407 > > Change-Id: Iab0a4ca8dd5d83444d1addd6043a5c8e3a8577a7 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3773773 > > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#82140} > > Bug: v8:9407 > Change-Id: Ia691d758265148da1de291365d41c7c1d1f98ddd > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3810391 > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82232} Bug: v8:9407 Change-Id: I7d04897f4e8f260aba31dbad55ce1263406473d9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3819621 Commit-Queue: Qifan Pan <panq@google.com> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#82304}
-
- 05 Aug, 2022 2 commits
-
-
Francis McCabe authored
This reverts commit 30ee0690. Reason for revert: breaks something on windows: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Win64/47755/overview Original change's description: > Reland "[TurboFan] Support BigIntMultiply" > > This is a reland of commit ccde4205 > > Added a test case for terminating optimized bigint multiply and attached frame_state to the runtime call to provide deopt information to determine the throw location > > Original change's description: > > [TurboFan] Support BigIntMultiply > > > > Bug: v8:9407 > > Change-Id: Iab0a4ca8dd5d83444d1addd6043a5c8e3a8577a7 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3773773 > > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#82140} > > Bug: v8:9407 > Change-Id: Ia691d758265148da1de291365d41c7c1d1f98ddd > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3810391 > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82232} Bug: v8:9407 Change-Id: I006ed3770564149ae146c614c3d693de9ec29e41 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3812289 Owners-Override: Francis McCabe <fgm@chromium.org> Commit-Queue: Francis McCabe <fgm@chromium.org> Reviewed-by:
Francis McCabe <fgm@chromium.org> Auto-Submit: Francis McCabe <fgm@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#82233}
-
Qifan Pan authored
This is a reland of commit ccde4205 Added a test case for terminating optimized bigint multiply and attached frame_state to the runtime call to provide deopt information to determine the throw location Original change's description: > [TurboFan] Support BigIntMultiply > > Bug: v8:9407 > Change-Id: Iab0a4ca8dd5d83444d1addd6043a5c8e3a8577a7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3773773 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82140} Bug: v8:9407 Change-Id: Ia691d758265148da1de291365d41c7c1d1f98ddd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3810391 Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#82232}
-
- 03 Aug, 2022 1 commit
-
-
Nico Hartmann authored
This reverts commit ccde4205. Reason for revert: Investigating performance regressions Original change's description: > [TurboFan] Support BigIntMultiply > > Bug: v8:9407 > Change-Id: Iab0a4ca8dd5d83444d1addd6043a5c8e3a8577a7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3773773 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82140} Bug: v8:9407 Change-Id: I21de9fd43df2e043b4019d2bad560329ef0971b4 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3807584 Owners-Override: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#82168}
-
- 02 Aug, 2022 1 commit
-
-
Qifan Pan authored
Bug: v8:9407 Change-Id: Iab0a4ca8dd5d83444d1addd6043a5c8e3a8577a7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3773773Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#82140}
-
- 22 Jun, 2022 1 commit
-
-
Luis Fernando Pardo Sixtos authored
Initial implementation for concurrent shared arrays. Current implementation exposes a `SharedArray` constructor, but its syntax might change in the future. Shared arrays can be shared across Isolates, have a fixed size, have no prototype, have no constructor, and can only store primitives, shared structs and other shared arrays. With this CL shared structs are also allowed to store shared arrays. The Backing storage for the SharedArrays is a `FixedArrayBase`. This CL introdces a new ElementKind: `SHARED_ARRAY_ELEMENTS`. The new kind should match the overall functionality of the `PACKED_SEALED_ELEMENTS` kind, but having it as standalone kind allows for easier branching in CSA and turbofan code. Bug: v8:12547 Change-Id: I054a04624d4cf1f37bc26ae4b92b6fe33408538a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3585353Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Luis Fernando Pardo Sixtos <lpardosixtos@microsoft.com> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#81285}
-
- 10 Jun, 2022 1 commit
-
-
Andy Wingo authored
Bug: v8:12868 Change-Id: I5fb5dccb5ff6b691348a519253de338fa91e8be1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3695269Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Andy Wingo <wingo@igalia.com> Cr-Commit-Position: refs/heads/main@{#81082}
-
- 08 Jun, 2022 1 commit
-
-
Manos Koukoutos authored
- Rename WasmTrapElemSegmentDropped -> WasmTrapElemSegmentOutOfBounds. - Rename WasmArrayInitFromData -> WasmArrayInitFromSegment, in anticipation of array.init_from_elem. - Rename InitExprInterface::result_ -> computed_value_, to distinguish it from the {result} values. Also, rename generate_result() -> generate_value(). - Drive-by: Restructure Runtime_WasmArrayInitFromSegment. Change-Id: Ic372db909847c7a169f3d6732e64e8665f4200fb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3693702Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#80991}
-
- 01 Jun, 2022 2 commits
-
-
Shu-yu Guo authored
This is a reland of commit ea9a1f1c Changes since revert: - Make the state field uintptr-aligned since arm64 faults on atomic accesses to non-naturally aligned addresses. Original change's description: > [shared-struct] Add Atomics.Mutex > > This CL adds a moving GC-safe, JS-exposed mutex behind the > --harmony-struct flag. It uses a ParkingLot-inspired algorithm and > each mutex manages its own waiter queue. > > For more details, please see the design doc: https://docs.google.com/document/d/1QHkmiTF770GKxtoP-VQ1eKF42MpedLUeqiQPfCqus0Y/edit?usp=sharing > > Bug: v8:12547 > Change-Id: Ic58f8750d2e14ecd573173d17d5235a136bedef9 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3595460 > Commit-Queue: Shu-yu Guo <syg@chromium.org> > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#80789} Bug: v8:12547 Change-Id: I776cbf6ea860dcc6cb0ac51694a9b584b53d255c Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_mac_arm64_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3673354Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#80875}
-
Shu-yu Guo authored
Bug: v8:12764 Change-Id: I67b9b0e4f3c7ca6a2719c234b7f7605f07f86b28 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3671760Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#80874}
-
- 28 May, 2022 2 commits
-
-
Shu-yu Guo authored
This reverts commit ea9a1f1c. Reason for revert: arm64 pointer alignment issue https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket/8812962856609920785/+/u/Check/mutex-workers Original change's description: > [shared-struct] Add Atomics.Mutex > > This CL adds a moving GC-safe, JS-exposed mutex behind the > --harmony-struct flag. It uses a ParkingLot-inspired algorithm and > each mutex manages its own waiter queue. > > For more details, please see the design doc: https://docs.google.com/document/d/1QHkmiTF770GKxtoP-VQ1eKF42MpedLUeqiQPfCqus0Y/edit?usp=sharing > > Bug: v8:12547 > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng > Change-Id: Ic58f8750d2e14ecd573173d17d5235a136bedef9 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3595460 > Commit-Queue: Shu-yu Guo <syg@chromium.org> > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#80789} Bug: v8:12547 Change-Id: I226e16b743dc4b157fac33a9cbabab4d72cf290b Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3673353 Owners-Override: Shu-yu Guo <syg@chromium.org> Auto-Submit: Shu-yu Guo <syg@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#80790}
-
Shu-yu Guo authored
This CL adds a moving GC-safe, JS-exposed mutex behind the --harmony-struct flag. It uses a ParkingLot-inspired algorithm and each mutex manages its own waiter queue. For more details, please see the design doc: https://docs.google.com/document/d/1QHkmiTF770GKxtoP-VQ1eKF42MpedLUeqiQPfCqus0Y/edit?usp=sharing Bug: v8:12547 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Change-Id: Ic58f8750d2e14ecd573173d17d5235a136bedef9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3595460 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#80789}
-
- 27 May, 2022 2 commits
-
-
Shu-yu Guo authored
This refactors ConvertToRelativeIndex into a clamping version and a version that takes OOB labels for the upcoming implementation of Array#with and TypedArray#with. Also gets rid of the the "to" in the name, because these macros are actually converting _from_ a relative index to an absolute one, not the other way around. Bug: v8:12764 Change-Id: I8bf1c16ce73008164acbd6b849f4259fb9315274 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3669655Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#80786}
-
Shu-yu Guo authored
Bug: v8:12764 Change-Id: I51130143494e6442b335660d2fdcbc75f289fd92 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3671759Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#80785}
-
- 26 May, 2022 1 commit
-
-
Manos Koukoutos authored
We inline array allocation for wasm-gc in the TF graph by using AllocateRaw nodes. Additionally, we use memset to initialize large, zero-initialized arrays. These changes give measurable speedup in some benchmarks. Bug: v8:7748 Change-Id: Icbd37d0fe673c673379139b96d0e1c175e95e357 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3666618Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#80762}
-
- 25 Apr, 2022 1 commit
-
-
Shu-yu Guo authored
Make the file names consistent on "shadow-realm" (i.e. singular, with a dash). Bug: v8:11989 Change-Id: Id0a6f417fd9b53b9f7ddf9677da7396fa2481af6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3606392Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#80164}
-
- 22 Apr, 2022 1 commit
-
-
jameslahm authored
This CL extends GetIterator to check whether the result of calling @@iterator is JSReceiver and throw SymbolIteratorInvalid if it's not JSReceiver. GetIterator bytecode involves 3 steps now: - method = GetMethod(obj, @@iterator) - iterator = Call(method, obj) - if(!IsJSReceiver(iterator)) throw SymbolIteratorInvalid [Added] New Builtin: CallIteratorWithFeedbackLazyDeoptContinuation, which is used when lazy deopt is triggered by call @@iterator. Related spec: https://tc39.es/ecma262/#sec-getiterator. Related doc: https://docs.google.com/document/d/1s67HC2f-4zxA_s1Bmm7dfwMFv_KDUfMiWIKkNSeQNKw/edit#heading=h.kdzv8mq4g4ks. Bug: v8:9489 Change-Id: I17952c0f3e24e1e600ee1348809fb188c2c70f8e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3563447Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#80112}
-
- 31 Mar, 2022 1 commit
-
-
Joyee Cheung authored
As a follow-up of https://chromium-review.googlesource.com/c/v8/v8/+/3481475, this renames a few more operations related to property stores to keep them consistent and adds comments to explain about what they do. Summary of the renamed identifiers: - SetPropertyInLiteral -> CreateDataProperty: this implements [[CreateDataProperty]] in the spec which does [[DefineOwnProperty]] instead of [[Set]], so rename for clarity. - IsStoreIC(), IsStoreICKind() -> IsSetNamedIC(), IsSetNamedICKind(): these only check whether the feedback kind is kSetNamedSloppy or kSetNamedStrict, so the scope can be narrowed. - StoreMode::kOrdinary -> StoreMode::kSet: this implements [[Set]] in the spec and is used by both KeyedStoreIC and StoreIC to set the properties when there is no feedback. - StoreMode::kInLiteral -> StoreMode::kDefineKeyedOwnInLiteral: this implements [[CreateDataProperty]] while expecting the receiver to be a JSObject created by us (the `InLiteral` part). Prepend `DefineKeyedOwn` to it so that it's more aligned with other StoreModes - it should be possible to just merge this into the more generic StoreMode::kDefineKeyedOwn later. - KeyedStoreGenericAssembler::SetProperty -> KeyedStoreGenericAssembler::StoreProperty: these helpers are used by both define and set operations, distinguished with the StoreMode, so rename it to the more generic StoreProperty. Bug: v8:12548 Change-Id: Iccef673c1dc707bbdbf010f02f7db1e9ec32b3e4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3557690Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/main@{#79694}
-
- 21 Mar, 2022 1 commit
-
-
jameslahm authored
Originally, 'Promise()' without 'new' will throw "undefined is not a promise". Now it will throw "Promise constructor cannot be invoked without 'new'". Bug: v8:10817 Change-Id: Ic8b72a902ed395e44dbb32ccf96a2130a4a9422f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3459924Reviewed-by:
Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79547}
-
- 16 Mar, 2022 1 commit
-
-
Samuel Groß authored
JSObject::InitializeBody now checks whether the instance type of the object being initialized can have embedder data slots around the initialization logic for these slots. This fixes a performance regression on certain benchmarks. To perform this check efficiently, a new instance type, JSObjectWithEmbedderSlots, is introduced so that the check becomes a simple range check. Bug: chromium:1304139 Change-Id: I00c892bc2276e950b59602257ca1c2435c10e517 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3507712Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#79497}
-
- 25 Feb, 2022 2 commits
-
-
legendecas authored
Bootstrap ShadowRealm.prototype.evaluate, WrappedFunction and WrappedFunction.[[Call]]. Bug: v8:11989 Change-Id: Id380acb71cd5719e783c8f5d741cc4ccf2a93e78 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3432729Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Commit-Queue: Chengzhong Wu <legendecas@gmail.com> Cr-Commit-Position: refs/heads/main@{#79293}
-
jameslahm authored
The per-Isolate Symbol tables are implemented using NameDictionary before, which has additional property details overhead And NameDictionary is limited to 2^23, which limits the Symbol tables to be a maximum of 2^23. - replace NameDictionary with SymbolTable in isolate Bug: v8:12575 Change-Id: Ica4f05aac3494f7dfa3a074c240d4ba25df814e9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3476897Reviewed-by:
Shu-yu Guo <syg@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#79285}
-
- 23 Feb, 2022 1 commit
-
-
Shu-yu Guo authored
This is a reland of 1025bf26 Changes since revert: - TSAN issue fixed by https://crrev.com/c/3475084 - Skip the shared-struct-workers test until shared GC deadlock is fixed, being tracked in v8:12645 Original change's description: > [shared-struct] Prototype JS shared structs > > Unlike the Stage 1 proposal, for simplicity the prototype does not add > any new syntax, instead opting for exposing a SharedStructType > constructor which takes an array of field names. This type constructor > returns constructors for shared structs. > > Shared structs can be shared across Isolates, are fixed layout, have no > prototype, have no .constructor, and can only store primitives and > other shared structs. > > The initial prototype does not have TurboFan support. > > Bug: v8:12547 > Change-Id: I23bdd819940b42139692bcdb53d372099b0d4426 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3390643 > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Marja Hölttä <marja@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > Commit-Queue: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79156} Bug: v8:12547 Change-Id: Ic1f5cf9fa9791ae2d5d5dc7c110614ca10b5d98e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3475078Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#79215}
-
- 18 Feb, 2022 1 commit
-
-
Michael Achenbach authored
This reverts commit 1025bf26. Reason for revert: https://crbug.com/v8/12645 Original change's description: > [shared-struct] Prototype JS shared structs > > Unlike the Stage 1 proposal, for simplicity the prototype does not add > any new syntax, instead opting for exposing a SharedStructType > constructor which takes an array of field names. This type constructor > returns constructors for shared structs. > > Shared structs can be shared across Isolates, are fixed layout, have no > prototype, have no .constructor, and can only store primitives and > other shared structs. > > The initial prototype does not have TurboFan support. > > Bug: v8:12547 > Change-Id: I23bdd819940b42139692bcdb53d372099b0d4426 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3390643 > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Marja Hölttä <marja@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > Commit-Queue: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79156} Bug: v8:12547 Change-Id: I44f2b8bb7487b4d39ba1282585e0b2282501230f No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3474676 Auto-Submit: Michael Achenbach <machenbach@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Owners-Override: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#79170}
-
- 17 Feb, 2022 1 commit
-
-
Shu-yu Guo authored
Unlike the Stage 1 proposal, for simplicity the prototype does not add any new syntax, instead opting for exposing a SharedStructType constructor which takes an array of field names. This type constructor returns constructors for shared structs. Shared structs can be shared across Isolates, are fixed layout, have no prototype, have no .constructor, and can only store primitives and other shared structs. The initial prototype does not have TurboFan support. Bug: v8:12547 Change-Id: I23bdd819940b42139692bcdb53d372099b0d4426 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3390643Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#79156}
-
- 07 Feb, 2022 1 commit
-
-
Patrick Thier authored
We introduce a new information type ForwardingIndex to be stored in the Name::Hash field (to be used in the future). To do so we use the 2 least significant bit to distinguish types of information stored in the hash field (in contrast to only bit 1 to distinguis integer indicies from "real" hashes). This motivated a refactor to use base::BitField for the hash field. Bug: v8:12007 Change-Id: I651c86807edfc218792d0db12379374eaa50c930 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3432385Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Patrick Thier <pthier@chromium.org> Cr-Commit-Position: refs/heads/main@{#78975}
-
- 04 Feb, 2022 1 commit
-
-
Nico Hartmann authored
This is a reland of 517ed4ad Original change's description: > Reland "[Torque] Generalize Torque literals to larger size" > > Previously, literals in Torque were stored as double values, which > made it impossible to precisely represent 64 bit integer values. > This CL replaces the old literal expression with an integer and > floating point literal expression that are unbounded in size. We > allow implicit conversion of these literals to arbitary integer > and floating point types respectively and insert a corresponding > bounds check into generated CSA. > > Changes in the reland: Simplified IntegerLiteral to single digit. > > Bug: v8:7793, chromium:1289282 > Change-Id: I31c762c2f31165c7a1d0b07842b764e5851ce189 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3406750 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78811} Bug: v8:7793, chromium:1289282 Change-Id: I7aadc4d2c9494f03eae85e94949c8f4cab7a075c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3437047Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#78939}
-
- 28 Jan, 2022 1 commit
-
-
Nico Hartmann authored
This reverts commit 517ed4ad. Reason for revert: There still seems to be an issue on V8 Win msvc related to this CL (https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Win64%20-%20msvc/20568/overview). Original change's description: > Reland "[Torque] Generalize Torque literals to larger size" > > Previously, literals in Torque were stored as double values, which > made it impossible to precisely represent 64 bit integer values. > This CL replaces the old literal expression with an integer and > floating point literal expression that are unbounded in size. We > allow implicit conversion of these literals to arbitary integer > and floating point types respectively and insert a corresponding > bounds check into generated CSA. > > Changes in the reland: Simplified IntegerLiteral to single digit. > > Bug: v8:7793, chromium:1289282 > Change-Id: I31c762c2f31165c7a1d0b07842b764e5851ce189 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3406750 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78811} Bug: v8:7793, chromium:1289282 Change-Id: I818cec9625fbd827a4a30088d8c8b759fb6c50d7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3424484 Owners-Override: Nico Hartmann <nicohartmann@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#78847}
-
- 27 Jan, 2022 1 commit
-
-
Nico Hartmann authored
Previously, literals in Torque were stored as double values, which made it impossible to precisely represent 64 bit integer values. This CL replaces the old literal expression with an integer and floating point literal expression that are unbounded in size. We allow implicit conversion of these literals to arbitary integer and floating point types respectively and insert a corresponding bounds check into generated CSA. Changes in the reland: Simplified IntegerLiteral to single digit. Bug: v8:7793, chromium:1289282 Change-Id: I31c762c2f31165c7a1d0b07842b764e5851ce189 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3406750Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#78811}
-
- 25 Jan, 2022 1 commit
-
-
legendecas authored
1. Expose all the functions to empty builtins. 2. Wire up the basic structure of ShadowRealm and internal slots. Bug: v8:11989 Change-Id: If7545fe18a74b2bd4b70a1a25776e41f03aaff89 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3195532Reviewed-by:
Shu-yu Guo <syg@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Chengzhong Wu <legendecas@gmail.com> Cr-Commit-Position: refs/heads/main@{#78757}
-
- 24 Jan, 2022 1 commit
-
-
Manos Koukoutos authored
Changes: - Rename kWasmTrapDataSegmentDropped to the more accurate ~OutOfBounds. - Drop unused argument from {WasmCompiler::ArrayInit}. - Rename {Factory::NewWasmArray} -> NewWasmArrayFromElements. - Add error handling to {InitExprInterface}. - Allow the data count section to appear anywhere in the module under --experimental-wasm-gc. Add the same capability in wasm-module-builder.js. - Add {WasmArray::MaxLength(uint32_t element_size_log2)}. - Add kTrapArrayTooLarge in wasm-module-builder.js. - Small test improvements in gc-nominal.js. Bug: v8:7748 Change-Id: I68ca0e8b08f906503f0d82e5866395018d216382 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3401593Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78730}
-
- 21 Jan, 2022 1 commit
-
-
Tobias Tebbi authored
Change-Id: I92479fe32ff4f55a0cf33c1d0898740e3f3cd5ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3406752Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#78723}
-
- 20 Jan, 2022 1 commit
-
-
Nico Hartmann authored
This reverts commit 757830b0. Reason for revert: Speculatively revert due to a number of performance regressions Original change's description: > [Torque] Generalize Torque literals to larger size > > Previously, literals in Torque were stored as double values, which > made it impossible to precisely represent 64 bit integer values. > This CL replaces the old literal expression with an integer and > floating point literal expression that are unbounded in size. We > allow implicit conversion of these literals to arbitary integer > and floating point types respectively and insert a corresponding > bounds check into generated CSA. > > Bug: v8:7793 > Change-Id: I46c231aab92bc2f0c26955d1876079f306b358c6 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3329792 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78671} Bug: v8:7793 Change-Id: I9896e28b3c69b8cf2488bf93e993ec320d8c5d2e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3401866Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Owners-Override: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#78706}
-
- 18 Jan, 2022 1 commit
-
-
Nico Hartmann authored
Previously, literals in Torque were stored as double values, which made it impossible to precisely represent 64 bit integer values. This CL replaces the old literal expression with an integer and floating point literal expression that are unbounded in size. We allow implicit conversion of these literals to arbitary integer and floating point types respectively and insert a corresponding bounds check into generated CSA. Bug: v8:7793 Change-Id: I46c231aab92bc2f0c26955d1876079f306b358c6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3329792Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#78671}
-
- 17 Jan, 2022 1 commit
-
-
Victor Gomes authored
In preparation to use the hash table in the scope_info, we setup a hashtable from name to indices. Bug: v8:12315 Change-Id: I77f1eb40191c2fb2d40127e1e84dbc41ca2e4b70 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3386804Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#78646}
-
- 15 Dec, 2021 1 commit
-
-
Marja Hölttä authored
Bug: v8:11111 Change-Id: I5cdd26070eb6ddf264e46763a71097e9fb716bf0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3333924Reviewed-by:
Shu-yu Guo <syg@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#78383}
-
- 14 Dec, 2021 1 commit
-
-
Camillo Bruni authored
Use build_flags_ with @if/@ifnot in torque for the following flags: - V8_ENABLE_JAVASCRIPT_PROMISE_HOOKS - V8_ENABLE_SWISS_NAME_DICTIONARY - Make sure Torque and CSA code actually respect V8_ENABLE_JAVASCRIPT_PROMISE_HOOKS. - Rename V8_ALLOW_JAVASCRIPT_IN_PROMISE_HOOKS to V8_ENABLE_JAVASCRIPT_PROMISE_HOOKS - Rename gn/bazel arg v8_allow_javascript_in_promise_hooks to v8_enable_javascript_promise_hooks - Unship context promise hooks in chrome and enable them only in d8 for testing purposes - Make sure d8 and the API throw when using promise hooks without the compile time feature enabled Bug: chromium:1265186, v8:11025 Change-Id: I69834d44d683a36d0d7be3c3d68888321be0fd7f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3301474Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#78362}
-