-
Igor Sheludko authored
This reverts commit 23b2d571. Reason for revert: Breaks the V8 roll https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/1000394/ Original change's description: > Reland "[heap] Store size with invalidated object" > > This is a reland of commit 5d235def > > The previous version of this CL got reverted because the cached > size of an invalidated object wasn't up-to-date when performing a GC. > > Not all size changes go through NotifyObjectLayoutChange, so > https://crrev.com/c/3607992 introduced NotifyObjectSizeChange as a > bottleneck for object size changes/right-trimming. This method is > now used to update the size of invalidated objects. > > Original change's description: > > [heap] Store size with invalidated object > > > > When updating pointers during a full GC, a page might not be swept > > already. In such cases there might be invalid objects and slots recorded > > in free memory. Updating tagged slots in free memory is fine even though > > it is superfluous work. > > > > However, the GC also needs to calculate the size of potentially dead > > invalid objects in order to be able to check whether a slot is within > > that object. But since that object is dead, its map might be dead as > > well which makes size calculation impossible on such objects. The CL > > changes this to cache the size of invalid objects. A follow-up CL will > > also check the marking bit of invalid objects. > > > > Bug: v8:12578, chromium:1316289 > > Change-Id: Ie773d0862a565982957e0dc409630d76552d1a32 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599482 > > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > > Reviewed-by: Jakob Linke <jgruber@chromium.org> > > Reviewed-by: Patrick Thier <pthier@chromium.org> > > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#80169} > > Bug: v8:12578, chromium:1316289 > Change-Id: I1f7c6070b8e7d116aeb1a8d03d4f87927ab40872 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3608632 > Reviewed-by: Jakob Linke <jgruber@chromium.org> > Reviewed-by: Patrick Thier <pthier@chromium.org> > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#80262} Bug: v8:12578, chromium:1316289 Change-Id: I88b73ebe09bb923ba4ac57b0dbdceb08a1badd99 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3616730 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Igor Sheludko <ishell@chromium.org> Owners-Override: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#80291}
1a80bfc1