Skip to content
  • oliver@apple.com's avatar
    2010-03-01 Oliver Hunt <oliver@apple.com> · 467b7798
    oliver@apple.com authored
            Reviewed by Maciej Stachowiak.
    
            Refactor named getter function signature to be in line with indexing getter signature
            https://bugs.webkit.org/show_bug.cgi?id=35563
    
            This removes the PropertySlot argument from getter functions, and makes them directly
            pass the slot base.  This makes the semantics for the functions match that of the
            indexing getters.
    
            On the down side, this means that we can no longer simply use a proxy function for
            JS getters, so we now add another marker value to indicate that a getter is present
            and branch accordingly.
    
            Against all rationality sunspider reports this as a perf win, but i suspect it's just noise.
    
            * API/JSCallbackObject.h:
            * API/JSCallbackObjectFunctions.h:
            (JSC::::staticValueGetter):
            (JSC::::staticFunctionGetter):
            (JSC::::callbackGetter):
            * JavaScriptCore.exp:
            * runtime/JSActivation.cpp:
            (JSC::JSActivation::argumentsGetter):
            * runtime/JSActivation.h:
            * runtime/JSFunction.cpp:
            (JSC::JSFunction::argumentsGetter):
            (JSC::JSFunction::callerGetter):
            (JSC::JSFunction::lengthGetter):
            * runtime/JSFunction.h:
            * runtime/NumberConstructor.cpp:
            (JSC::numberConstructorNaNValue):
            (JSC::numberConstructorNegInfinity):
            (JSC::numberConstructorPosInfinity):
            (JSC::numberConstructorMaxValue):
            (JSC::numberConstructorMinValue):
            * runtime/PropertySlot.cpp:
            (JSC::PropertySlot::functionGetter):
            * runtime/PropertySlot.h:
            (JSC::PropertySlot::getValue):
            (JSC::PropertySlot::setGetterSlot):
            (JSC::PropertySlot::setCacheableGetterSlot):
            * runtime/RegExpConstructor.cpp:
            (JSC::regExpConstructorDollar1):
            (JSC::regExpConstructorDollar2):
            (JSC::regExpConstructorDollar3):
            (JSC::regExpConstructorDollar4):
            (JSC::regExpConstructorDollar5):
            (JSC::regExpConstructorDollar6):
            (JSC::regExpConstructorDollar7):
            (JSC::regExpConstructorDollar8):
            (JSC::regExpConstructorDollar9):
            (JSC::regExpConstructorInput):
            (JSC::regExpConstructorMultiline):
            (JSC::regExpConstructorLastMatch):
            (JSC::regExpConstructorLastParen):
            (JSC::regExpConstructorLeftContext):
            (JSC::regExpConstructorRightContext):
            * runtime/RegExpObject.cpp:
            (JSC::regExpObjectGlobal):
            (JSC::regExpObjectIgnoreCase):
            (JSC::regExpObjectMultiline):
            (JSC::regExpObjectSource):
            (JSC::regExpObjectLastIndex):
    2010-03-01  Oliver Hunt  <oliver@apple.com>
    
            Reviewed by Maciej Stachowiak.
    
            Refactor named getter function signature to be in line with indexing getter signature
            https://bugs.webkit.org/show_bug.cgi?id=35563
    
            Fix method signature and update code as appropriate
    
            * UserObjectImp.cpp:
            (UserObjectImp::userObjectGetter):
            * UserObjectImp.h:
    2010-03-01  Oliver Hunt  <oliver@apple.com>
    
            Reviewed by Maciej Stachowiak.
    
            Refactor named getter function signature to be in line with indexing getter signature
            https://bugs.webkit.org/show_bug.cgi?id=35563
    
            Fix up WebCore to use the new named getter function signature, update the
            codegenerator to the new calling convention, and fix the custom bindings.
    
            * bindings/js/JSCSSStyleDeclarationCustom.cpp:
            (WebCore::JSCSSStyleDeclaration::nameGetter):
            * bindings/js/JSDOMBinding.cpp:
            (WebCore::objectToStringFunctionGetter):
            * bindings/js/JSDOMBinding.h:
            * bindings/js/JSDOMWindowCustom.cpp:
            (WebCore::nonCachingStaticFunctionGetter):
            (WebCore::childFrameGetter):
            (WebCore::namedItemGetter):
            * bindings/js/JSDataGridColumnListCustom.cpp:
            (WebCore::JSDataGridColumnList::nameGetter):
            * bindings/js/JSHTMLAllCollectionCustom.cpp:
            (WebCore::JSHTMLAllCollection::nameGetter):
            * bindings/js/JSHTMLCollectionCustom.cpp:
            (WebCore::JSHTMLCollection::nameGetter):
            * bindings/js/JSHTMLDocumentCustom.cpp:
            (WebCore::JSHTMLDocument::nameGetter):
            * bindings/js/JSHTMLFormElementCustom.cpp:
            (WebCore::JSHTMLFormElement::nameGetter):
            * bindings/js/JSHTMLFrameSetElementCustom.cpp:
            (WebCore::JSHTMLFrameSetElement::nameGetter):
            * bindings/js/JSHistoryCustom.cpp:
            (WebCore::nonCachingStaticBackFunctionGetter):
            (WebCore::nonCachingStaticForwardFunctionGetter):
            (WebCore::nonCachingStaticGoFunctionGetter):
            * bindings/js/JSLocationCustom.cpp:
            (WebCore::nonCachingStaticReplaceFunctionGetter):
            (WebCore::nonCachingStaticReloadFunctionGetter):
            (WebCore::nonCachingStaticAssignFunctionGetter):
            * bindings/js/JSMimeTypeArrayCustom.cpp:
            (WebCore::JSMimeTypeArray::nameGetter):
            * bindings/js/JSNamedNodeMapCustom.cpp:
            (WebCore::JSNamedNodeMap::nameGetter):
            * bindings/js/JSNodeListCustom.cpp:
            (WebCore::JSNodeList::nameGetter):
            * bindings/js/JSPluginArrayCustom.cpp:
            (WebCore::JSPluginArray::nameGetter):
            * bindings/js/JSPluginCustom.cpp:
            (WebCore::JSPlugin::nameGetter):
            * bindings/js/JSPluginElementFunctions.cpp:
            (WebCore::runtimeObjectPropertyGetter):
            * bindings/js/JSPluginElementFunctions.h:
            * bindings/js/JSStorageCustom.cpp:
            (WebCore::JSStorage::nameGetter):
            * bindings/js/JSStyleSheetListCustom.cpp:
            (WebCore::JSStyleSheetList::nameGetter):
            * bindings/scripts/CodeGeneratorJS.pm:
            * bridge/runtime_array.cpp:
            (JSC::RuntimeArray::lengthGetter):
            * bridge/runtime_array.h:
            * bridge/runtime_method.cpp:
            (JSC::RuntimeMethod::lengthGetter):
            * bridge/runtime_method.h:
            * bridge/runtime_object.cpp:
            (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
            (JSC::Bindings::RuntimeObject::fieldGetter):
            (JSC::Bindings::RuntimeObject::methodGetter):
            * bridge/runtime_object.h:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55401 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    467b7798