• mhahnenberg@apple.com's avatar
    Add static ClassInfo structs to classes that override JSCell::getCallData · dd90ed20
    mhahnenberg@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=69311
    
    Reviewed by Darin Adler.
    
    Source/JavaScriptCore:
    
    Added ClassInfo structs to each class that defined its own getCallData
    function but did not already have its own ClassInfo struct.  This is a
    necessary addition for when we switch over to looking up getCallData from
    the MethodTable in ClassInfo rather than doing the virtual call (which we
    are removing).  These new ClassInfo structs are public because we often
    use these structs in other areas of the code to uniquely identify JSC classes and
    to enforce runtime invariants based on those class identities using ASSERTs.
    
    * runtime/BooleanConstructor.cpp:
    * runtime/BooleanConstructor.h:
    
    getCallData was not marked as static is StrictModeTypeErrorFunction.
    * runtime/Error.cpp:
    (JSC::StrictModeTypeErrorFunction::getCallDataVirtual):
    (JSC::StrictModeTypeErrorFunction::getCallData):
    * runtime/ErrorConstructor.cpp:
    * runtime/ErrorConstructor.h:
    * runtime/FunctionConstructor.cpp:
    * runtime/FunctionConstructor.h:
    * runtime/FunctionPrototype.cpp:
    * runtime/FunctionPrototype.h:
    
    Source/WebCore:
    
    No new tests.
    
    Added ClassInfo structs to each class that defined its own getCallData
    function but did not already have its own ClassInfo struct.  This is a
    necessary addition for when we switch over to looking up getCallData from
    the MethodTable in ClassInfo rather than doing the virtual call (which we
    are removing).  These new ClassInfo structs are public because we often
    use these structs in other areas of the code to uniquely identify JSC classes and
    to enforce runtime invariants based on those class identities using ASSERTs.
    
    * bridge/qt/qt_runtime.cpp:
    * bridge/qt/qt_runtime.h:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96630 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    dd90ed20
BooleanConstructor.cpp 3.23 KB