Reviewed by Darin and Geoff.
authormjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Apr 2007 03:09:30 +0000 (03:09 +0000)
committermjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Apr 2007 03:09:30 +0000 (03:09 +0000)
commit6f5d0c0b621045bc3f492923523c7c6e2e323373
treee669a7f36f53f3dfae4c464e544250b021849ba3
parentedc8de61317889d071a0d5308509af821169cd93
    Reviewed by Darin and Geoff.

        - move most of Window's data members into a separate private object, to avoid needing
        to use the oversize allocator for it

        It was the only remaining JSObject subclass to use the oversize
        allocator on 32-bit platforms, and having oversize objects around
        makes garbage collection slower so this would hurt performance
        with many tabs/windows open.

        No significant effect on JS iBench.

        * bindings/js/kjs_events.cpp:
        (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener):
        (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener):
        (KJS::JSEventListener::JSEventListener):
        (KJS::JSEventListener::~JSEventListener):
        (KJS::JSLazyEventListener::parseCode):
        * bindings/js/kjs_window.cpp:
        (KJS::WindowPrivate::WindowPrivate):
        (KJS::Window::Window):
        (KJS::Window::~Window):
        (KJS::Window::location):
        (KJS::Window::selection):
        (KJS::Window::locationbar):
        (KJS::Window::menubar):
        (KJS::Window::personalbar):
        (KJS::Window::statusbar):
        (KJS::Window::toolbar):
        (KJS::Window::scrollbars):
        (KJS::Window::mark):
        (KJS::Window::getValueProperty):
        (KJS::Window::findJSEventListener):
        (KJS::Window::findJSUnprotectedEventListener):
        (KJS::Window::clearHelperObjectProperties):
        (KJS::Window::clear):
        (KJS::Window::setCurrentEvent):
        (KJS::Window::setReturnValueSlot):
        (KJS::Window::clearAllTimeouts):
        (KJS::Window::installTimeout):
        (KJS::Window::pauseTimeouts):
        (KJS::Window::resumeTimeouts):
        (KJS::Window::clearTimeout):
        (KJS::Window::timerFired):
        (KJS::Window::disconnectFrame):
        (KJS::Window::jsEventListeners):
        (KJS::Window::jsHTMLEventListeners):
        (KJS::Window::jsUnprotectedEventListeners):
        (KJS::Window::jsUnprotectedHTMLEventListeners):
        * bindings/js/kjs_window.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21014 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog
WebCore/bindings/js/kjs_events.cpp
WebCore/bindings/js/kjs_window.cpp
WebCore/bindings/js/kjs_window.h