Skip to content
  • oliver@apple.com's avatar
    Use bump allocator for initial property storage · 78558736
    oliver@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=67494
    
    Reviewed by Gavin Barraclough.
    
    Switch to a bump allocator for the initial out of line
    property storage.  This gives us slightly faster allocation
    for short lived objects that need out of line storage at
    the cost of an additional memcpy when the object survives
    a GC pass.
    
    No performance impact.
    
    * JavaScriptCore.exp:
    * heap/Heap.cpp:
    (JSC::Heap::collect):
    * heap/Heap.h:
    (JSC::Heap::allocatePropertyStorage):
    (JSC::Heap::inPropertyStorageNursary):
    * heap/NewSpace.cpp:
    (JSC::NewSpace::NewSpace):
    * heap/NewSpace.h:
    (JSC::NewSpace::resetPropertyStorageNursary):
    (JSC::NewSpace::allocatePropertyStorage):
    (JSC::NewSpace::inPropertyStorageNursary):
    * jit/JITStubs.cpp:
    (JSC::DEFINE_STUB_FUNCTION):
    * runtime/JSObject.cpp:
    (JSC::JSObject::allocatePropertyStorage):
    * runtime/JSObject.h:
    (JSC::JSObject::~JSObject):
    (JSC::JSObject::putDirectInternal):
    (JSC::JSObject::putDirectWithoutTransition):
    (JSC::JSObject::putDirectFunctionWithoutTransition):
    (JSC::JSObject::transitionTo):
    (JSC::JSObject::visitChildrenDirect):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@94445 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    78558736