- 05 Mar, 2021 1 commit
-
-
Frank Emrich authored
This CL is part of a series that makes SwissNameDictionary available as a new property backing store. Currently, the flag v8_dict_mode_prototypes allows selecting between NameDictionary and OrderedNameDictionary as the backing store used for all dictionary mode objects. This series of CLs changes this such that enabling the flag causes SwissNameDictionary being used instead of OrderedNameDictionary. The behavior for when the flag is not set remains unchanged (= use NameDictionary). This particular CL a) moves two operations from ordered-hash-table.cc to swiss-name-dictionary.cc (which were itself just copies of existing functions, see the existing TODOs about cleaning this up). b) adds a new getter for the SwissNameDictionary backing store, called JSReceiver::property_dictionary_swiss. c) contains a first wave of replacing usages of OrderedNameDictionary with SwissNameDictionary. Bug: v8:11388 Change-Id: Ie6b45571aee3646c0c0d3937b3c25f0f033810dd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2732676Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Frank Emrich <emrich@google.com> Cr-Commit-Position: refs/heads/master@{#73213}
-
- 20 Nov, 2020 1 commit
-
-
Leszek Swirski authored
Because of LocalHeap safepoints, our existing assert scopes don't necessarily maintain the same guarantees as desired. In particular, DisallowHeapAllocation no longer guarantees that objects don't move. This patch transitions DisallowHeapAllocation to DisallowGarbageCollection, to ensure that code using this scope is also protected against safepoints. Change-Id: I0411425884f6849982611205fb17bb072881c722 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2540547 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#71319}
-
- 19 Nov, 2020 1 commit
-
-
Frank Emrich authored
This CL adds partial support for objects whose slow mode dictionaries are OrderedNameDictionaries. This is the case for all slow mode objects if V8_DICT_MODE_PROTOTYPES is enabled. In particular, this part contains the remaining fixes to runtime code, except for the class templating logic, which follows in a later CL. Bug: v8:7569 Change-Id: Ib4d08d7d352125709ca916dfc75018dabf71b0cd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2540549Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Frank Emrich <emrich@google.com> Cr-Commit-Position: refs/heads/master@{#71275}
-
- 16 Nov, 2020 1 commit
-
-
Igor Sheludko authored
... and use Name::hash() where the hash is expected to be computed. In particular, when we are dealing with internalized strings or symbols. Bug: v8:11074 Change-Id: Ida22f134fee0ddf2c9b962d1bcca6aa0b632af5f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2529451Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#71200}
-
- 13 Nov, 2020 1 commit
-
-
Georg Neis authored
Bug: v8:7790 Change-Id: I4b6ef907c66bdc0a327d211db2f86ebb75f969a7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2536638Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#71183}
-
- 09 Nov, 2020 1 commit
-
-
Camillo Bruni authored
Using KeyAccumulator::GetKeys directly enables fast-paths by checking if the enum-cache is set. Drive-by-fix: - Reduce public interface of KeyAccumulator to prevent these performance issues in the future. - Fix value-serializer.cc includes Change-Id: I2cc7b3bf9d1e42e699829427163ecbdee92c9007 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2520898 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#71050}
-
- 03 Nov, 2020 1 commit
-
-
Frank Emrich authored
This CL adds partial support for objects whose slow mode dictionaries are OrderedNameDictionaries. This is the case for all slow mode objects if V8_DICT_MODE_PROTOTYPES is enabled. Bug: v8:7569 Change-Id: I0b5a0d751e6551e78121569ddefd9e00c164cc5a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2489692Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Frank Emrich <emrich@google.com> Cr-Commit-Position: refs/heads/master@{#70952}
-
- 02 Nov, 2020 1 commit
-
-
Frank Emrich authored
This turns the member functions CollectKeysTo and CopyEnumKeysTo of BaseNameDictionary into helper function in keys.cc; they are only used there. Further, CollectKeysTo is renamed to CollectKeysFromDictionary. EnumIndexComparator is moved from keys.cc to dictionary.h. All moves are motivated by https://chromium-review.googlesource.com/c/v8/v8/+/2489692 needing these function in other places. Bug: v8:7569 Change-Id: Ia8039e98fd00cef45dec376f3c401635b2321761 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2509597Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Frank Emrich <emrich@google.com> Cr-Commit-Position: refs/heads/master@{#70912}
-
- 05 Oct, 2020 1 commit
-
-
Santiago Aboy Solanes authored
We can use tag dispatching to distinguish between the synchronized and non-synchronized accessors. Also eliminated the need of adding explicit "synchronized" in the name when using the macros. As a note, we currently have one case of using both relaxed and synchronized accessors (Map::instance_descriptors). Cleaned up: * BytecodeArray::source_position_table * Code::code_data_container * Code::source_position_table * FunctionTemplateInfo::call_code * Map::instance_descriptors * Map::layout_descriptor * SharedFunctionInfo::function_data Bug: v8:7790 Change-Id: I5a502f4b2df6addb6c45056e77061271012c7d90 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2424130 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#70306}
-
- 15 Jul, 2020 1 commit
-
-
Igor Sheludko authored
... this will avoid the need to pass AllocationPolicy to every method that can allocate/deallocate and allows to make deallocation method implementation stateful. The latter will also allow implementing accounting of deallocated zone memory. Adding one more field is generally fine because usually these hashmap objects are allocated on the stack or inside other rarely-allocated long-lived objects. The only exception is Scope class. The Scope objects are created very often during parsing and each of them has a VariableMap field. The Scope object size issue will be addressed in a follow-up CL. Bug: v8:10572 Change-Id: I63fbd41246cf2e568c8ba80c213d3e9caffc2c87 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284992Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68877}
-
- 08 Jul, 2020 1 commit
-
-
Igor Sheludko authored
... into src/zone/scoped-list.h src/zone/zone-hashmap.h src/zone/zone-list.h src/zone/zone-fwd.h zone-fwd.h header contains zone-related forward type declarations. Bug: v8:10506 Change-Id: Ic61b6717b3034afa24bdd49fbc0ce758a0e93c75 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284987 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68734}
-
- 22 Jun, 2020 1 commit
-
-
Dan Elphick authored
This changes black/white list to block/allow list. Bug: v8:10619 Change-Id: Id55d72f90891670ca57b62dfeb6b3251025927dc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2257228Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#68464}
-
- 04 Mar, 2020 1 commit
-
-
Camillo Bruni authored
Drive-by-fix: Add V8_WARN_UNUSED_RESULT to MaybeHandle::ToHandle Bug: chromium:1057653 Change-Id: I2834806ca498a2fa43a64f5391606cdbfb4af4fa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2084814Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#66582}
-
- 20 Feb, 2020 2 commits
-
-
Toon Verwaest authored
An enum cache can only be referenced together with the map that owns the entries that are needed. Otherwise the entires can be trimmed away if the map dies because of transitions. Bug: chromium:1050046 Change-Id: I5bc9dd65ca092c3d5ebc08ce553f6f1dc980d41b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2066959 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#66375}
-
Shiyu Zhang authored
This can speed up the below micro-bench by 3x and improve JetStream2-tagcloud-SP case by ~2%. Object.prototype.foo = function() {}; let array = ['a','b','c','d','e']; let start = Date.now(); for (let i = 0; i < 1e5; i++) { for (let j in array) {} } console.log(Date.now() - start); Contributed by tao.pan@intel.com Change-Id: I44c948c2e4c28b8e42192f36802a5ea0f82bbe25 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2049903Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> Cr-Commit-Position: refs/heads/master@{#66362}
-
- 17 Feb, 2020 1 commit
-
-
Camillo Bruni authored
Make it explicit that AddShadowingKeys might allocate. Bug: chromium:1049013 Change-Id: I938531a0324fa581422b74813518f3e85c9b3fbb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2046888 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#66288}
-
- 22 Jan, 2020 1 commit
-
-
Shiyu Zhang authored
This is a reland of 3b753563 Original change's description: > Reland "[runtime] Cache prototype chain enumerable keys in PrototypeInfo" > > This is a reland of 5253d7bf > > Original change's description: > > [runtime] Cache prototype chain enumerable keys in PrototypeInfo > > > > This CL adds a prototype_chain_enum_cache to cache the enumeration of a > > prototype and its entire chain on the PrototypeInfo. It can improve for-in > > performance via simply merging the receiver enumeration with this cache. > > > > It improves the score of JetStream2-tagcloud-SP case by ~9% on IA Chromebook. > > > > Contributed by tao.pan@intel.com > > > > Change-Id: Ib40bfe41e772672337155584672f06fa1ba1e70d > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1870844 > > Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#65224} > > Change-Id: I93b74727c46abbaab163324c50fbd977fcc9bb36 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1955232 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> > Cr-Commit-Position: refs/heads/master@{#65377} Change-Id: If4b4631e1b8a3d2df748b6be8500f838836a3291 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2008253 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#65919}
-
- 11 Dec, 2019 1 commit
-
-
Toon Verwaest authored
This reverts commit 3b753563. Reason for revert: breaks in multiple places: https://bugs.chromium.org/p/chromium/issues/detail?id=1029368 https://bugs.chromium.org/p/chromium/issues/detail?id=1029361 Original change's description: > Reland "[runtime] Cache prototype chain enumerable keys in PrototypeInfo" > > This is a reland of 5253d7bf > > Original change's description: > > [runtime] Cache prototype chain enumerable keys in PrototypeInfo > > > > This CL adds a prototype_chain_enum_cache to cache the enumeration of a > > prototype and its entire chain on the PrototypeInfo. It can improve for-in > > performance via simply merging the receiver enumeration with this cache. > > > > It improves the score of JetStream2-tagcloud-SP case by ~9% on IA Chromebook. > > > > Contributed by tao.pan@intel.com > > > > Change-Id: Ib40bfe41e772672337155584672f06fa1ba1e70d > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1870844 > > Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#65224} > > Change-Id: I93b74727c46abbaab163324c50fbd977fcc9bb36 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1955232 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> > Cr-Commit-Position: refs/heads/master@{#65377} TBR=verwaest@chromium.org,shiyu.zhang@intel.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I5b0d544e802ffda6a6804931087f37cb112805ef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1962273Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#65418}
-
- 09 Dec, 2019 1 commit
-
-
Zhang, Shiyu authored
This is a reland of 5253d7bf Original change's description: > [runtime] Cache prototype chain enumerable keys in PrototypeInfo > > This CL adds a prototype_chain_enum_cache to cache the enumeration of a > prototype and its entire chain on the PrototypeInfo. It can improve for-in > performance via simply merging the receiver enumeration with this cache. > > It improves the score of JetStream2-tagcloud-SP case by ~9% on IA Chromebook. > > Contributed by tao.pan@intel.com > > Change-Id: Ib40bfe41e772672337155584672f06fa1ba1e70d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1870844 > Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#65224} Change-Id: I93b74727c46abbaab163324c50fbd977fcc9bb36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1955232Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> Cr-Commit-Position: refs/heads/master@{#65377}
-
- 29 Nov, 2019 1 commit
-
-
Toon Verwaest authored
This reverts commit 5253d7bf. Reason for revert: Elements don't properly invalidate the cache. Original change's description: > [runtime] Cache prototype chain enumerable keys in PrototypeInfo > > This CL adds a prototype_chain_enum_cache to cache the enumeration of a > prototype and its entire chain on the PrototypeInfo. It can improve for-in > performance via simply merging the receiver enumeration with this cache. > > It improves the score of JetStream2-tagcloud-SP case by ~9% on IA Chromebook. > > Contributed by tao.pan@intel.com > > Change-Id: Ib40bfe41e772672337155584672f06fa1ba1e70d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1870844 > Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#65224} TBR=verwaest@chromium.org,shiyu.zhang@intel.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Ic5d476bc8b334241b2accb8344749fcf7dcf5e09 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1943153Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#65259}
-
- 28 Nov, 2019 1 commit
-
-
Zhang, Shiyu authored
This CL adds a prototype_chain_enum_cache to cache the enumeration of a prototype and its entire chain on the PrototypeInfo. It can improve for-in performance via simply merging the receiver enumeration with this cache. It improves the score of JetStream2-tagcloud-SP case by ~9% on IA Chromebook. Contributed by tao.pan@intel.com Change-Id: Ib40bfe41e772672337155584672f06fa1ba1e70d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1870844 Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#65224}
-
- 26 Nov, 2019 1 commit
-
-
Jakob Kummerow authored
Bug: v8:4153 Change-Id: I036b3f464a635414e050972cee2dffbf3b44cafd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1918250 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#65164}
-
- 15 Nov, 2019 1 commit
-
-
Maya Lekova authored
This helps reduce the number of false positives encountered by the dead variable analysis in gcmole. TBR=jgruber@chromium.org, verwaest@chromium.org, yangguo@chromium.org Bug: v8:9810 Change-Id: I1a34ccaab340e6abc37832b4ce1a0cabc56fa438 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1917146 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64981}
-
- 12 Oct, 2019 1 commit
-
-
Zhang, Shiyu authored
... for the case we haven't seen any elements on the entire prototype chain. Contributed by tao.pan@intel.com Change-Id: Ied7d1a918b545e71d94ab1521bf0d233ea15cfce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1848960Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> Cr-Commit-Position: refs/heads/master@{#64261}
-
- 11 Oct, 2019 2 commits
-
-
Jakob Kummerow authored
This is for consistency and compiler-enforced type safety. No change in behavior intended. Change-Id: I31467832ba6c63fd5f97df9fee6221559b283d67 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1852766 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64244}
-
Jakob Kummerow authored
instead of plain uint32_t as entry. This provides some type safety, because the compiler will check that we are not mixing up indexes and entries. It also paves the way to consistently using size_t for TypedArray indexes. Bug: v8:4153 Change-Id: Ie0eb63693c871efda9860d3d288896819868b66a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1852765Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#64236}
-
- 06 Sep, 2019 1 commit
-
-
Zhang, Shiyu authored
Shadowing key is used to exclude non-enumerable keys when iterating over the prototype chain. This CL skips adding shadowing key for end prototype to improve for-in performance. It can improve the performance of below microbench by ~50%. Object.prototype.foo = function() {}; let obj = { a:0, b:1 }; let start = Date.now(); for (let i = 0; i<1e6; i++) { for (var j in obj) {} } console.log(Date.now() - start); This CL also improves the score of JetStream2-tagcloud-SP case by 8% on IA Chromebook. Contributed by tao.pan@intel.com Change-Id: I456082c08bf70f1f450ff54f657cdab26eb7bc2b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1781113Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Shiyu Zhang <shiyu.zhang@intel.com> Cr-Commit-Position: refs/heads/master@{#63587}
-
- 28 Aug, 2019 1 commit
-
-
Sigurd Schneider authored
This change allows the KeyAccumulator to throw a range error if there are too many properties to be enumerated. This CL introduces extensive checks during key enumeration in the run-time, and might introduce regressions. If so, feel free to revert. Bug: chromium:918301 Change-Id: I6166c0b15f1a05eac7116a979f12ba4833d1d1b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545902 Auto-Submit: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#63430}
-
- 11 Jul, 2019 1 commit
-
-
Mythri A authored
GetOwnPropertyNameTryFast uses ENUMERABLE_STRINGS filter to trigger fast path in KeyAccumulator::GetKeys conditionally when all properties on the receiver are enumerable. It is not easy to verify if all properties are enumerable and the current check is incorrect in some cases. For ex: when we have non-enumerable properties when we have elements on the receiver. This cl removes this try_fast path from the builtin. This could impact performance. The long term fix for this would be to fix KeyAccumulator::GetKeys to use fast path for more cases. Bug: chromium:977870 Change-Id: Iecde730739c2c452ffa0d893d0d1b3612a45d1b2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1679499Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#62649}
-
- 23 May, 2019 4 commits
-
-
Yang Guo authored
NOPRESUBMIT=true TBR=mstarzinger@chromium.org Bug: v8:9247 Change-Id: I4cd6b79a1c2cba944f6f23caed59d4f1a4ee358b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624217 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61790}
-
Yang Guo authored
TBR=bmeurer@chromium.org,leszeks@chromium.org Bug: v8:9247 Change-Id: I8d14d0192ea8c705f8274e8e61a162531826edb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624220Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61769}
-
Clemens Hammacher authored
This CL was generated by an automatic clang AST rewriter using this matcher expression: callExpr( callee( cxxMethodDecl( hasName("operator->"), ofClass(isSameOrDerivedFrom("v8::internal::Object")) ) ), argumentCountIs(1) ) The "->" at the expression location was then rewritten to ".". R=jkummerow@chromium.org TBR=mstarzinger@chromium.org,verwaest@chromium.org,yangguo@chromium.org Bug: v8:9183, v8:3770 No-Try: true No-Tree-Checks: true Change-Id: I0a7ecabdeafe51d0cf427f5280af0c7cab96869e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624209Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61764}
-
Yang Guo authored
Bug: v8:9247 Change-Id: I0023200c54fa6499ae4e2cf5e4c89407cc35f187 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624218Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61762}
-
- 22 May, 2019 1 commit
-
-
Yang Guo authored
Bug: v8:9247 Change-Id: I79e0553e8a0d6dac2aa16b94a6c0e05b6ccde4a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621934 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#61725}
-
- 20 May, 2019 1 commit
-
-
Yang Guo authored
Code that is being moved primarily deal with layout of a JSObject, accessing properties and elements, and map transitions. NOTREECHECKS=true NOTRY=true Bug: v8:9247 Change-Id: Ibce5d5926ac4021c8d40c4dd109948775ce1da58 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1613994 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61638}
-
- 17 May, 2019 1 commit
-
-
Yang Guo authored
TBR=rmcilroy@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org Bug: v8:9247 Change-Id: I7ffc2bd4a5fdf7c20cc3283bb5545cbf9ffd4e53 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1617254Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61609}
-
- 16 May, 2019 2 commits
-
-
Maya Lekova authored
This reverts commit 9ac8b200. Reason for revert: Breaks CFI bot https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20-%20cfi/20442 Original change's description: > Move API-related files > > NOPRESUBMIT=true > TBR=verwaest@chromium.org > > Bug: v8:9247 > Change-Id: I45bfe0782ba92aa7ed27a9e308d0aab9ba1bac7f > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1613988 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Commit-Queue: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61579} TBR=rmcilroy@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org Change-Id: I28ee9174a1cbc1dae9711977bf9369253ef43058 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9247 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1615463Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#61583}
-
Yang Guo authored
NOPRESUBMIT=true TBR=verwaest@chromium.org Bug: v8:9247 Change-Id: I45bfe0782ba92aa7ed27a9e308d0aab9ba1bac7f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1613988Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61579}
-
- 07 May, 2019 1 commit
-
-
Peter Marshall authored
This is a reland of ad44c258 Patchset 2 is the original CL Patchset 3 fixes some misuses of FixedArrayBase::length() and adds some DCHECKS to flush out any more misuses. Patchset 4 adds the PPC/S390 port by miladfar@ca.ibm.com. Original change's description: > [typedarray] Make JSTypedArray::length authoritative. > > This is the first step towards full huge typed array support in V8. > Before this change, the JSTypedArray::length and the elements backing > store length (FixedTypedArrayBase::length) were used more or less > interchangeably to determine the number of elements in a JSTypedArray. > > With this change we disentangle these two lengths, and instead make > JSTypedArray::length authoritative. For on-heap typed arrays, the > FixedTypedArrayBase::length will remain the number of elements in the > backing store, but for the off-heap typed arrays, this length will be > set to 0 (matching the fact that the FixedTypedArrayBase instance does > not contain any elements itself). > > This also unifies the JSTypedArray::set_/length() and length_value() > methods to only have JSTypedArray::set_/length() which returns/takes > size_t values. Currently this still requires the values to be in Smi > range, but later we will extend this to allow arbitrary size_t values > (in the safe integer range). > > Bug: v8:4153, v8:7881 > Change-Id: Iff9089130bb31fa9e08e0cf913e7ab52c3dbf107 > Cq-Include-Trybots: luci.chromium.try:linux-blink-rel > Doc: http://doc/1Z-wM2qwvAuxH46e9ivtkYvKzzwYZg8ymm0x0wJaomow > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543729 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Ben Titzer <titzer@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60648} Bug: v8:4153, v8:7881, v8:9105 Change-Id: Ic38f833071a723642ebc6f82a4012dbc0878ef98 Cq-Include-Trybots: luci.chromium.try:linux-blink-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594435Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61275}
-
- 02 May, 2019 1 commit
-
-
Peter Marshall authored
This reverts commit ad44c258. Reason for revert: Missed some users: crbug.com/v8/9105 Original change's description: > [typedarray] Make JSTypedArray::length authoritative. > > This is the first step towards full huge typed array support in V8. > Before this change, the JSTypedArray::length and the elements backing > store length (FixedTypedArrayBase::length) were used more or less > interchangeably to determine the number of elements in a JSTypedArray. > > With this change we disentangle these two lengths, and instead make > JSTypedArray::length authoritative. For on-heap typed arrays, the > FixedTypedArrayBase::length will remain the number of elements in the > backing store, but for the off-heap typed arrays, this length will be > set to 0 (matching the fact that the FixedTypedArrayBase instance does > not contain any elements itself). > > This also unifies the JSTypedArray::set_/length() and length_value() > methods to only have JSTypedArray::set_/length() which returns/takes > size_t values. Currently this still requires the values to be in Smi > range, but later we will extend this to allow arbitrary size_t values > (in the safe integer range). > > Bug: v8:4153, v8:7881 > Change-Id: Iff9089130bb31fa9e08e0cf913e7ab52c3dbf107 > Cq-Include-Trybots: luci.chromium.try:linux-blink-rel > Doc: http://doc/1Z-wM2qwvAuxH46e9ivtkYvKzzwYZg8ymm0x0wJaomow > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543729 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Ben Titzer <titzer@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60648} TBR=jarin@chromium.org,titzer@chromium.org,hpayer@chromium.org,petermarshall@chromium.org,bmeurer@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. TBR=jarin@chromium.org, szuend@chromium.org Bug: v8:4153, v8:7881 Change-Id: I96992bff15b4a2765ae4a557d2c37e78269c927d Cq-Include-Trybots: luci.chromium.try:linux-blink-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593294 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61172}
-