• franzih's avatar
    [runtime] Allocate space for computed property names. · 399f36b5
    franzih authored
    Allocate space in the backing store for computed property names.
    
    The property backing store was pre-allocated for the constant
    properties up to the first non-constant (computed name) property.
    To use lowering for storing data properties in literals
    with computed property names effectively, a fast store is needed, i.e.,
    available space in the property backing store for properties
    with computed names.
    
    backing_store_size is the number of all properties (including
    computed names, but without __proto__)
    that is calculated in the ast and passed to the runtime function that allocates
    the property backing store. backing_store_size and
    constant_properties constitute a BoilerplateDescription.
    
    backing_store_size might be slightly too high because computed names
    can evaluate to the same name, but that should be a rare
    case so over-allocating is OK.
    
    If a property is __proto__, we don't store it as a regular
    property, because the map changes. Keep track of
    has_seen_proto in the parser to calculate the
    backing store size correctly.
    
    BUG=v8:5625
    
    Review-Url: https://codereview.chromium.org/2632503003
    Cr-Commit-Position: refs/heads/master@{#42576}
    399f36b5
Name
Last commit
Last update
..
OWNERS Loading commit data...
duplicate-finder.cc Loading commit data...
duplicate-finder.h Loading commit data...
expression-classifier.h Loading commit data...
func-name-inferrer.cc Loading commit data...
func-name-inferrer.h Loading commit data...
parameter-initializer-rewriter.cc Loading commit data...
parameter-initializer-rewriter.h Loading commit data...
parse-info.cc Loading commit data...
parse-info.h Loading commit data...
parser-base.h Loading commit data...
parser.cc Loading commit data...
parser.h Loading commit data...
parsing.cc Loading commit data...
parsing.h Loading commit data...
pattern-rewriter.cc Loading commit data...
preparse-data-format.h Loading commit data...
preparse-data.cc Loading commit data...
preparse-data.h Loading commit data...
preparser.cc Loading commit data...
preparser.h Loading commit data...
rewriter.cc Loading commit data...
rewriter.h Loading commit data...
scanner-character-streams.cc Loading commit data...
scanner-character-streams.h Loading commit data...
scanner.cc Loading commit data...
scanner.h Loading commit data...
token.cc Loading commit data...
token.h Loading commit data...