- 24 Sep, 2020 2 commits
-
-
Marja Hölttä authored
The actual fix is in LoadIC::ComputeHandler (checking lookup_start_object == holder instead of receiver == holder) + the LookupIterator changes for preserving lookup_start_object. The rest is renaming / refactoring. Reland: not relying on the prototype validity cell after all Previous version: https://chromium-review.googlesource.com/c/v8/v8/+/2414039 Bug: v8:9237, chromium:1127653 Change-Id: I1949442f8ddcecb776f0c5d2cf737cb75f80e313 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2428588Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#70112}
-
Marja Hölttä authored
This reverts commit ab7e6df0. Reason for revert: Several fuzz bugs: chromium:1131469, chromium:1131525, chromium:1131779 Original change's description: > [super ic] Fix more receiver vs lookup start object vs holder confusion > > The actual fix is in LoadIC::ComputeHandler (checking > lookup_start_object == holder instead of receiver == holder) + the > LookupIterator changes for preserving lookup_start_object. > > The rest is renaming / refactoring. > > Bug: v8:9237, chromium:1127653 > Change-Id: Ieef46fb46ababa79623951c48639429c5b552d2d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2414039 > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70045} TBR=marja@chromium.org,ishell@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9237 Bug: chromium:1127653, chromium:1131469, chromium:1131525, chromium:1131779 Change-Id: I1bad5ba1dcfe9a0de8ce775feac2d3bfd7264c8c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2426620 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#70107}
-
- 22 Sep, 2020 1 commit
-
-
Marja Hölttä authored
The actual fix is in LoadIC::ComputeHandler (checking lookup_start_object == holder instead of receiver == holder) + the LookupIterator changes for preserving lookup_start_object. The rest is renaming / refactoring. Bug: v8:9237, chromium:1127653 Change-Id: Ieef46fb46ababa79623951c48639429c5b552d2d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2414039 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#70045}
-
- 08 Sep, 2020 1 commit
-
-
Marja Hölttä authored
Bug: v8:9237 Change-Id: I06d7e74ba0360334e6fa65c19f24548e220e4c69 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2349297 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#69735}
-
- 28 Aug, 2020 1 commit
-
-
Marja Hölttä authored
LoadICParameters already has separate fields for receiver and holder, though, in practice, they were always equal. Moreover, the holder didn't mean holder, but the lookup start object. This CL makes parts of the IC layer reusable for cases where they are not equal, by clarifying whether we're accessing the receiver, the lookup_start_object, or the holder. List of changes: StoreICParameters: - Detached from LoadICParameters, now they are independent classes. LoadICParameters: - Renamed holder to lookup_start_object. TryProbeStubCache: - Renamed receiver to lookup_start_object. LoadIC: LoadIC_BytecodeHandler: LoadIC_NoFeedback: KeyedLoadIC: KeyedLoadICGeneric: KeyedLoadICPolymorphicName: - These won't be reused in the receiver != lookup_start_object case, so added asserts that receiver == lookup_start_object. TryMonomorphicCase: HandlePolymorphicCase: LoadIC_Noninlined: GenericElementLoad: - Renamed receiver_map param to lookup_start_object_map. The callers either assert receiver == lookup_start_object, or read the map from the lookup start object. GenericPropertyLoad: - Renamed receiver param to lookup_start_object. - Renamed receiver_map param to lookup_start_object_map. The callers either assert receiver == lookup_start_object, or read the map from the lookup start object. CallGetterIfAccessor: - Added the holder parameter and used it accordingly. Bug: v8:9237 Change-Id: I27aca08f58bd66cc9bd1b1baf9f1ff5565d795eb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2362918 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#69606}
-
- 17 Aug, 2020 1 commit
-
-
Jakob Kummerow authored
This is a comment-only CL. Change-Id: I002b1765bfa839982ab11c22f744734fdd34d4ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352788Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69417}
-
- 10 Jul, 2020 1 commit
-
-
Santiago Aboy Solanes authored
Since we are not using CodeAssemblerVariables anymore, we can properly scope the class so that the only way to instance one is through the typed version (i.e TypedCodeAssemblerVariable). Bug: v8:6949 Change-Id: I3ee99bcbb9421aadd0944af57f6452e832719758 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2290858 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#68797}
-
- 04 Mar, 2020 1 commit
-
-
Igor Sheludko authored
This CL simplifies IC code since we no longer need to keep feedback slot indices in both Smi and IntPtr form and as a result it should improve overall performance of --no-opt mode on Octane by ~1%. Bug: v8:10047 Change-Id: Ib717697cdb805c9f93286e9c62ee8a63361d3560 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1965586 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#66585}
-
- 18 Dec, 2019 1 commit
-
-
Leszek Swirski authored
This reverts commit 5377e72c. Reason for revert: Looks like the relevant graphs didn't recover after this revert, which suggests that the regression was an unrelated secondary effect. Relanding the original change since the revert did cause some microbenchmark regressions. Original change's description: > Revert "[ic] Load name/context lazily in LdaNamedProperty" > > This reverts commit 347092ac. > > Not a clean revert, since other changes got baked on top, but rather > a manual removal of LoadLazyICParameters. > > Reason for revert: Seems to actually regress bindings perf tests (see > bugs and https://chromeperf.appspot.com/group_report?rev=62539), doesn't > seem to improve performance elsewhere, and increases complexity. > > Original change's description: > > [ic] Load name/context lazily in LdaNamedProperty > > > > Introduces LazyLoadICParameters which allow a LazyNode for context and > > name. These aren't used on the fast path, so we want to avoid reading > > them for both performance and register pressure reasons. > > > > Change-Id: Ifb637cf4782ce984feee9af503998e7539beb823 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1686665 > > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#62539} > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: chromium:981797 > Bug: chromium:982630 > Change-Id: I88af764d17afb76d6e64b95a3d1e4aaa1c6c8978 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1934327 > Auto-Submit: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#65205} TBR=leszeks@chromium.org,verwaest@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:981797, chromium:982630, v8:10059 Change-Id: I13754de06c83439e03e22cfaa7a14ce454076db9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1973730Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#65499}
-
- 27 Nov, 2019 1 commit
-
-
Leszek Swirski authored
This reverts commit 347092ac. Not a clean revert, since other changes got baked on top, but rather a manual removal of LoadLazyICParameters. Reason for revert: Seems to actually regress bindings perf tests (see bugs and https://chromeperf.appspot.com/group_report?rev=62539), doesn't seem to improve performance elsewhere, and increases complexity. Original change's description: > [ic] Load name/context lazily in LdaNamedProperty > > Introduces LazyLoadICParameters which allow a LazyNode for context and > name. These aren't used on the fast path, so we want to avoid reading > them for both performance and register pressure reasons. > > Change-Id: Ifb637cf4782ce984feee9af503998e7539beb823 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1686665 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62539} # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:981797 Bug: chromium:982630 Change-Id: I88af764d17afb76d6e64b95a3d1e4aaa1c6c8978 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1934327 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#65205}
-
- 19 Nov, 2019 1 commit
-
-
Mythri A authored
Bug: v8:9810 Change-Id: I6d7b9099a53badfdfdfa6b57211931b39ae72124 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1917154Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#65034}
-
- 13 Nov, 2019 1 commit
-
-
Mythri A authored
Bug: v8:9810 Change-Id: I30c6265904c43ec86abc91a28d789fe5bfb22694 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1910106 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#64934}
-
- 11 Nov, 2019 1 commit
-
-
Dan Elphick authored
Also fixes its uses in interpreter-generator.cc and accessor-assembler.cc. Bug: v8:9810 Change-Id: Ie9817f3e53c54588a4ad28c2c98da1a48ac73681 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1906571Reviewed-by:
Mythri Alle <mythria@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#64875}
-
- 31 Oct, 2019 1 commit
-
-
Mythri A authored
With lazy feedback allocation we always miss to runtime for LdaGlobal till the feedback vector is allocated. This cl adds and uses a new builtin to handle some of the common cases in builtins instead of missing to runtime. Bug: chromium:988402 Change-Id: I5fe0a157234007d8771501df9f2a5ea3a9116862 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1841354 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#64671}
-
- 10 Oct, 2019 1 commit
-
-
Suraj Sharma authored
Bug: v8:9779 Change-Id: Id0d7a214766f91ed8e65f3e24c08e987ba27aff8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1838923Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Suraj Sharma <surshar@microsoft.com> Cr-Commit-Position: refs/heads/master@{#64205}
-
- 01 Oct, 2019 1 commit
-
-
Dan Elphick authored
Moves CodeStubAssembler::BranchIfPrototypesHaveNoElements to AccessorAssembler and TNodifies it on the way. Bug: v8:9396 Change-Id: Ie5d8ad5abc3dbdb688c0cbee4610cd441ba1a9b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1826736 Auto-Submit: Dan Elphick <delphick@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#64057}
-
- 17 Sep, 2019 1 commit
-
-
Mythri A authored
TNodifies most of ic-accessor-assember. Most of the remaining Node* are because of the Parameters. Bug: v8:6949, v8:9396 Change-Id: Ife9fd96c5e46dee02fdc60e5825562d7ae89f8f9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803634Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#63830}
-
- 13 Sep, 2019 1 commit
-
-
Igor Sheludko authored
... and from AccessorAssembler::LoadGlobalIC(). Tbr: tebbi@chromium.org Bug: v8:9708 Change-Id: Ia7d2ab30cfcfd513257655eb30a466d929ac774a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801853 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63759}
-
- 12 Sep, 2019 1 commit
-
-
Tobias Tebbi authored
This enables using TNode types without including code-assembler.h, which is useful when generating CallInterfaceDescriptors. As a drive-by, this moves TNode from v8::internal::compiler to v8::internal. It's only used outside of the compiler anyway. Change-Id: I3d938c22366a3570315041683094f77b0d1096a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1798425 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63721}
-
- 10 Sep, 2019 1 commit
-
-
Leszek Swirski authored
Rather than duplicating code paths for in- and out-of-object stores, have one code path which checks whether it needs to load the property store (and change the storage location to the HeapNumber value for unboxed doubles). As a drive-by, change the representation dispatch into a switch, and inline the representation checks into that switch, to make explicit what checks for what and which paths transform the value. Also, TNodify some of the surrounding functions. Change-Id: Ia1bf698b4cec3ffce9aaa5732cda2e3be9efd8e8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1795345Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63652}
-
- 05 Sep, 2019 1 commit
-
-
Leszek Swirski authored
This is a reland of 981aafaf It adds double checks to LoadFieldByIndex in the optimizing compiler, which are likely the source of the crashes. Original change's description: > Reland "[ic] In-place Double -> Tagged transitions" > > This is a reland of 0736599a. > This is a reland of 7e1fbe8f. > > Original change description: > > [ic] In-place Double -> Tagged transitions > > > > With no more MutableHeapNumber, we can make Double -> Tagged transitions > > in-place, at the cost of an extra map check when accessing double fields > > to make sure they are still doubles. > > > > Bug: v8:9606 > > Change-Id: I74ff39ed6fba62ee223cd37dfe761f7d73020e1c > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1743973 > > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#63374} > > TBR=verwaest@chromium.org, tebbi@chromium.org > > Bug: v8:9606 > Change-Id: I2d1b7416064d743582f4983fb868316b7e8a4cf2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1777661 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63499} TBR=verwaest@chromium.org Bug: v8:9606 Bug: chromium:997989 Change-Id: Iccfff8e5c6306c9ee4f6c62767dce883b1c6f743 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1784288Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63582}
-
- 04 Sep, 2019 1 commit
-
-
Leszek Swirski authored
This reverts commit 981aafaf. Reason for revert: Still crashing on Canary. Original change's description: > Reland "[ic] In-place Double -> Tagged transitions" > > This is a reland of 0736599a. > This is a reland of 7e1fbe8f. > > Original change description: > > [ic] In-place Double -> Tagged transitions > > > > With no more MutableHeapNumber, we can make Double -> Tagged transitions > > in-place, at the cost of an extra map check when accessing double fields > > to make sure they are still doubles. > > > > Bug: v8:9606 > > Change-Id: I74ff39ed6fba62ee223cd37dfe761f7d73020e1c > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1743973 > > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#63374} > > TBR=verwaest@chromium.org, tebbi@chromium.org > > Bug: v8:9606 > Change-Id: I2d1b7416064d743582f4983fb868316b7e8a4cf2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1777661 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63499} TBR=leszeks@chromium.org, verwaest@chromium.org, tebbi@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9606 Bug: chromium:997989 Change-Id: Ic95166e67df68e84a524dffd8155121c3ff6aa13 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1784283 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63550}
-
- 02 Sep, 2019 1 commit
-
-
Leszek Swirski authored
This is a reland of 0736599a. This is a reland of 7e1fbe8f. Original change description: > [ic] In-place Double -> Tagged transitions > > With no more MutableHeapNumber, we can make Double -> Tagged transitions > in-place, at the cost of an extra map check when accessing double fields > to make sure they are still doubles. > > Bug: v8:9606 > Change-Id: I74ff39ed6fba62ee223cd37dfe761f7d73020e1c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1743973 > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63374} TBR=verwaest@chromium.org, tebbi@chromium.org Bug: v8:9606 Change-Id: I2d1b7416064d743582f4983fb868316b7e8a4cf2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1777661Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63499}
-
- 29 Aug, 2019 1 commit
-
-
Leszek Swirski authored
This reverts commit 0736599a. This reverts commit 7e1fbe8f. Reason for revert: Still some crashes, reverting to unblock dev. TBR=ishell@chromium.org,tebbi@chromium.org Bug: v8:9606 Bug: chromium:997485 Bug: chromium:997989 Change-Id: I9a0cb5440bf4fce06c9e6134dacf5c03d512f049 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1773271 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63441}
-
- 23 Aug, 2019 2 commits
-
-
Leszek Swirski authored
With no more MutableHeapNumber, we can make Double -> Tagged transitions in-place, at the cost of an extra map check when accessing double fields to make sure they are still doubles. Bug: v8:9606 Change-Id: I74ff39ed6fba62ee223cd37dfe761f7d73020e1c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1743973Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63374}
-
Leszek Swirski authored
Replace uses of WordEqual on two tagged representation nodes with a new TaggedEqual helper, which on pointer compressed configs only compares the bottom 32-bits of the word. We no longer allow using WordEqual on anything not known to be a WordT (i.e. Node* or TNode<Object>). In the future, this may allow us to ignore the top bits of an uncompressed Smi, and have simpler decompression, though this patch is not sufficient for such a change. As a necessary drive-by, TNodify a bunch of stuff. Bug: v8:8948 Change-Id: Ie11b70709e5d3073f12551b37b420a172a71bc99 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1763531 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#63372}
-
- 05 Aug, 2019 1 commit
-
-
Mythri A authored
This is a reland of 159df248 Original change's description: > [ic] Don't transition to premonomorphic state > > We used to use premonomorphic state to delay initializing the ICs. > This optimization was to avoid the cost of setting up handlers if the > code executed only once. With lazy feedback allocation we no longer > need this. > > This cl also renames LoadIC_Uninitialized to LoadIC_Nofeedback and > StoreIC_Uninitialized to StoreIC_Nofeedback since we now miss to > runtime in the uninitialized state and use the builtin when there > is no feedback. > > > Change-Id: I1633e61ea74664da51348e362c34c47a017a264a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1683525 > Commit-Queue: Mythri Alle <mythria@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63020} Change-Id: Ica7eb65649615c2f8410d5b815a98b55cb1cfc4d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1731000 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#63082}
-
- 01 Aug, 2019 2 commits
-
-
Leszek Swirski authored
This reverts commit 159df248. Reason for revert: Breaks large-classes-properties test (https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8906338563361079200/+/steps/Bisect_159df248/0/steps/Retry_-_isolates/0/logs/large-classes-properties/0) Original change's description: > [ic] Don't transition to premonomorphic state > > We used to use premonomorphic state to delay initializing the ICs. > This optimization was to avoid the cost of setting up handlers if the > code executed only once. With lazy feedback allocation we no longer > need this. > > This cl also renames LoadIC_Uninitialized to LoadIC_Nofeedback and > StoreIC_Uninitialized to StoreIC_Nofeedback since we now miss to > runtime in the uninitialized state and use the builtin when there > is no feedback. > > > Change-Id: I1633e61ea74664da51348e362c34c47a017a264a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1683525 > Commit-Queue: Mythri Alle <mythria@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63020} TBR=mythria@chromium.org,verwaest@chromium.org Change-Id: I4fad4e8b881d4a3f8d12149e1797b217a317eaee No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1730995Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63023}
-
Mythri A authored
We used to use premonomorphic state to delay initializing the ICs. This optimization was to avoid the cost of setting up handlers if the code executed only once. With lazy feedback allocation we no longer need this. This cl also renames LoadIC_Uninitialized to LoadIC_Nofeedback and StoreIC_Uninitialized to StoreIC_Nofeedback since we now miss to runtime in the uninitialized state and use the builtin when there is no feedback. Change-Id: I1633e61ea74664da51348e362c34c47a017a264a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1683525 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#63020}
-
- 05 Jul, 2019 1 commit
-
-
Leszek Swirski authored
Introduces LazyLoadICParameters which allow a LazyNode for context and name. These aren't used on the fast path, so we want to avoid reading them for both performance and register pressure reasons. Change-Id: Ifb637cf4782ce984feee9af503998e7539beb823 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1686665 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#62539}
-
- 13 Jun, 2019 1 commit
-
-
Toon Verwaest authored
Swap bits between bitfield2 and bitfield3 so that bitfield2 doesn't change across named property transitions. This will allow us to share bf1/bf2 through the descriptor array. Change-Id: I3579ae89189ae0729cd492db1afb29cf90981f6a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1657908Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#62134}
-
- 27 May, 2019 3 commits
-
-
Benedikt Meurer authored
This is a reland of 4b86fea5 with copy&paste typo in CodeStubAssembler::AllocateByteArray() fixed (bug led to holes in new space, which was crashing reproducibly on the ia32 bot). Original change's description: > [typedarray] Move external/data pointer to JSTypedArray. > > As the next step in supporting huge typed arrays in V8, this moves the > external/data pointer from the FixedTypedArrayBase backing store to the > JSTypedArray instance itself, and replaces the special backing stores > with a plain ByteArray (removing all the code for the FixedTypedArrayBase > class hierarchy). By doing so, we can drastically simplify the system > around typed arrays. > > Note: Several places in the code base used to check the instance type > of the elements backing store of a JSTypedArray instead of checking the > elements kind on the JSTypedArray map directly. Those had to be fixed, > since the backing store is now always a ByteArray. > > Drive-by-fix: Move all the typed elements access related code into the > elements.cc file to properly encapsulate the accesses. > > Doc: http://doc/1Z-wM2qwvAuxH46e9ivtkYvKzzwYZg8ymm0x0wJaomow > Bug: chromium:951196, chromium:965583, v8:4153, v8:7881, v8:9183 > Change-Id: I8cc06b190c53e34155000b4560f5f3ef40621646 > Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627535 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Simon Zünd <szuend@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61855} Tbr: petermarshall@chromium.org Bug: chromium:951196, chromium:965583, v8:4153, v8:7881, v8:9183 Change-Id: I87fcdb28532c5f08cc227332a4d59546cb423810 Cq-Include-Trybots: luci.chromium.try:linux-rel, win7-rel Cq-Include-Trybots: luci.v8.try:v8_linux_shared_compile_rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1631592Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#61864}
-
Clemens Hammacher authored
This reverts commit 4b86fea5. Reason for revert: Fails on linux shared: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20shared/31045 Original change's description: > [typedarray] Move external/data pointer to JSTypedArray. > > As the next step in supporting huge typed arrays in V8, this moves the > external/data pointer from the FixedTypedArrayBase backing store to the > JSTypedArray instance itself, and replaces the special backing stores > with a plain ByteArray (removing all the code for the FixedTypedArrayBase > class hierarchy). By doing so, we can drastically simplify the system > around typed arrays. > > Note: Several places in the code base used to check the instance type > of the elements backing store of a JSTypedArray instead of checking the > elements kind on the JSTypedArray map directly. Those had to be fixed, > since the backing store is now always a ByteArray. > > Drive-by-fix: Move all the typed elements access related code into the > elements.cc file to properly encapsulate the accesses. > > Doc: http://doc/1Z-wM2qwvAuxH46e9ivtkYvKzzwYZg8ymm0x0wJaomow > Bug: chromium:951196, chromium:965583, v8:4153, v8:7881, v8:9183 > Change-Id: I8cc06b190c53e34155000b4560f5f3ef40621646 > Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627535 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Simon Zünd <szuend@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61855} TBR=ulan@chromium.org,yangguo@chromium.org,titzer@chromium.org,sigurds@chromium.org,petermarshall@chromium.org,bmeurer@chromium.org,szuend@chromium.org Change-Id: I0bc1f935de6063acf75a0f4bb8c0ba67428603fd No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:951196, chromium:965583, v8:4153, v8:7881, v8:9183 Cq-Include-Trybots: luci.chromium.try:linux-rel, win7-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1631427Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61856}
-
Benedikt Meurer authored
As the next step in supporting huge typed arrays in V8, this moves the external/data pointer from the FixedTypedArrayBase backing store to the JSTypedArray instance itself, and replaces the special backing stores with a plain ByteArray (removing all the code for the FixedTypedArrayBase class hierarchy). By doing so, we can drastically simplify the system around typed arrays. Note: Several places in the code base used to check the instance type of the elements backing store of a JSTypedArray instead of checking the elements kind on the JSTypedArray map directly. Those had to be fixed, since the backing store is now always a ByteArray. Drive-by-fix: Move all the typed elements access related code into the elements.cc file to properly encapsulate the accesses. Doc: http://doc/1Z-wM2qwvAuxH46e9ivtkYvKzzwYZg8ymm0x0wJaomow Bug: chromium:951196, chromium:965583, v8:4153, v8:7881, v8:9183 Change-Id: I8cc06b190c53e34155000b4560f5f3ef40621646 Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627535 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61855}
-
- 21 May, 2019 1 commit
-
-
Yang Guo authored
Bug: v8:9247 TBR=bmeurer@chromium.org,neis@chromium.org NOPRESUBMIT=true Change-Id: Ia1e49d1aac09c4ff9e05d58fab9d08dd71198878 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621931Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61682}
-
- 07 May, 2019 1 commit
-
-
Mythri A authored
This is a reland of d14ed12e with fix for test failures in lite mode. When handling load named properties (without feedback vectors) we used to miss to runtimes if the prototypes aren't set. This was because we wanted to give the prototype a chance to become fast, since most prototypes start in slow mode but move to fast after the initial setup. Though this check is not really useful when we don't have feedback vectors, and once feedback vectors are allocated we will turn the prototypes fast anyway. Bug: v8:8394, v8:8860 Change-Id: I5c7b5061e1d9068c72d6f0eea47517880940a054 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591772Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#61267}
-
- 12 Apr, 2019 2 commits
-
-
Mythri Alle authored
This reverts commit d14ed12e. Reason for revert: breaks mjsunit tests in lite mode: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm%20-%20sim%20-%20lite/3557 Original change's description: > [ic] Remove the check for fast prototypes in LoadIC_Uninitialized > > When handling load named properties (without feedback vectors) we used > to miss to runtimes if the prototypes aren't set. This was because we > wanted to give the prototype a chance to become fast, since most prototypes > start in slow mode but move to fast after the initial setup. Though this > check is not really useful when we don't have feedback vectors, and once > feedback vectors are allocated we will turn the prototypes fast anyway. > > Bug: v8:8394, v8:8860 > Change-Id: Ib2247e5e921f6375bda65310560ac832fd0339bf > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1561316 > Commit-Queue: Mythri Alle <mythria@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60818} TBR=mythria@chromium.org,verwaest@chromium.org Change-Id: I28e420951483c93363e8a78621a247a7723d735f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8394, v8:8860 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1565893Reviewed-by:
Mythri Alle <mythria@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60820}
-
Mythri A authored
When handling load named properties (without feedback vectors) we used to miss to runtimes if the prototypes aren't set. This was because we wanted to give the prototype a chance to become fast, since most prototypes start in slow mode but move to fast after the initial setup. Though this check is not really useful when we don't have feedback vectors, and once feedback vectors are allocated we will turn the prototypes fast anyway. Bug: v8:8394, v8:8860 Change-Id: Ib2247e5e921f6375bda65310560ac832fd0339bf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1561316 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#60818}
-
- 04 Apr, 2019 1 commit
-
-
Sigurd Schneider authored
Bug: v8:9020 Change-Id: Ie624a02598f5c3a43e40e03d0337c17ca5cc3769 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541052 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#60628}
-
- 29 Mar, 2019 1 commit
-
-
Clemens Hammacher authored
Even though both are allowed in the style guide, it recommends to use 'using', as its syntax is more consistent with the rest of C++. This CL turns all typedefs in ic code to 'using' declarations. R=ishell@chromium.org Bug: v8:8834 Change-Id: I70c74d3f20a6c15693157de5fc40bb769ef0599d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545895 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60520}
-