Ignore:
Timestamp:
Sep 27, 2012, 10:04:40 AM (13 years ago)
Author:
[email protected]
Message:

3.20MB below FunctionParameters::create() on Membuster3.
<http://webkit.org/b/97730>

Reviewed by Anders Carlsson.

Figure out the exact space needed for parameter identifiers and use reserveInitialCapacity().
Reduces memory consumption on Membuster3 by ~1.60 MB.

  • parser/Nodes.cpp:

(JSC::FunctionParameters::FunctionParameters):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/parser/Nodes.cpp

    r127810 r129773  
    154154FunctionParameters::FunctionParameters(ParameterNode* firstParameter)
    155155{
     156    unsigned parameterCount = 0;
    156157    for (ParameterNode* parameter = firstParameter; parameter; parameter = parameter->nextParam())
    157         append(parameter->ident());
     158        ++parameterCount;
     159
     160    reserveInitialCapacity(parameterCount);
     161
     162    for (ParameterNode* parameter = firstParameter; parameter; parameter = parameter->nextParam())
     163        uncheckedAppend(parameter->ident());
    158164}
    159165
Note: See TracChangeset for help on using the changeset viewer.