Ignore:
Timestamp:
Oct 8, 2009, 8:22:41 PM (16 years ago)
Author:
[email protected]
Message:

At long last, I pronounce the death of AllInOneFile.cpp.

Patch by Geoffrey Garen <[email protected]> on 2009-10-08
Reviewed by Maciej Stachowiak.

SunSpider reports a 1.01x speedup.

to compilation stages.

  • parser/Grammar.y:
  • parser/Lexer.cpp:
  • parser/Lexer.h:

(JSC::jscyylex):

  • runtime/ArrayConstructor.cpp:

(JSC::constructArrayWithSizeQuirk):

  • runtime/Collector.h:
  • runtime/JSCell.cpp:

(JSC::JSCell::operator new):

  • runtime/JSCell.h:

(JSC::JSCell::operator new):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::operator new):

  • runtime/JSNumberCell.h:

(JSC::JSNumberCell::operator new):

  • runtime/JSString.cpp:
  • runtime/JSString.h:

(JSC::jsString):
(JSC::jsSubstring):
(JSC::jsOwnedString):

  • runtime/RegExpConstructor.cpp:
  • runtime/RegExpConstructor.h:

(JSC::RegExpConstructorPrivate::RegExpConstructorPrivate):
(JSC::RegExpConstructorPrivate::lastOvector):
(JSC::RegExpConstructorPrivate::tempOvector):
(JSC::RegExpConstructorPrivate::changeLastOvector):
(JSC::RegExpConstructor::performMatch):

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncMatch):

  • yarr/RegexJIT.cpp:
  • yarr/RegexJIT.h:

(JSC::Yarr::executeRegex): Inlined a few things that Shark said
were hot, on the presumption that AllInOneFile.cpp used to inline them
automatically.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/runtime/Collector.h

    r49280 r49365  
    7272        void destroy();
    7373
    74 #ifdef JAVASCRIPTCORE_BUILDING_ALL_IN_ONE_FILE
    75         // We can inline these functions because everything is compiled as
    76         // one file, so the heapAllocate template definitions are available.
    77         // However, allocateNumber is used via jsNumberCell outside JavaScriptCore.
    78         // Thus allocateNumber needs to provide a non-inline version too.
    79         void* inlineAllocateNumber(size_t s) { return heapAllocate<NumberHeap>(s); }
    80         void* inlineAllocate(size_t s) { return heapAllocate<PrimaryHeap>(s); }
    81 #endif
    8274        void* allocateNumber(size_t);
    8375        void* allocate(size_t);
Note: See TracChangeset for help on using the changeset viewer.