Remove 'length' field from ScopeInfo
This change relands the last part of https://crrev.com/c/2601880 . ScopeInfo has a vestigial 'length' field from when it used to be a FixedArray. This change removes that field, which saves some memory. More specifically: - Make ScopeInfo inherit from HeapObject, not FixedArrayBase which supplied the 'length' field. - Change FactoryBase::NewScopeInfo to allocate the updated object shape. It maintains the existing behavior of filling the newly-allocated object with undefined, even though that's not a valid ScopeInfo and further initialization is required. - Change a few length computations to use HeapObject::kHeaderSize rather than FixedArray::kHeaderSize. - Remove an unnecessary heap verifier function. Change-Id: I9b3980157568fdb0402fa31660949966b401fd31 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2733037Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#73278}
Showing
This diff is collapsed.
Please
register
or
sign in
to comment