De-virtualize JSObject::className
https://bugs.webkit.org/show_bug.cgi?id=71428
Reviewed by Sam Weinig.
Source/JavaScriptCore:
Added className to the MethodTable, changed all the virtual
implementations of className to static ones, and replaced
all call sites with corresponding lookups in the MethodTable.
* API/JSCallbackObject.h:
* API/JSCallbackObjectFunctions.h:
(JSC::::className):
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::className):
* debugger/DebuggerActivation.h:
* jsc.cpp:
(GlobalObject::createStructure):
* profiler/Profiler.cpp:
(JSC::Profiler::createCallIdentifier):
* runtime/ClassInfo.h:
* runtime/JSCell.cpp:
(JSC::JSCell::className):
* runtime/JSCell.h:
* runtime/JSObject.cpp:
(JSC::JSObject::className):
* runtime/JSObject.h:
* runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncToString):
* testRegExp.cpp:
(GlobalObject::createStructure):
Source/JavaScriptGlue:
Added className to the MethodTable, changed all the virtual
implementations of className to static ones, and replaced
all call sites with corresponding lookups in the MethodTable.
* JSUtils.cpp:
(KJSValueToCFTypeInternal):
Source/WebCore:
No new tests.
Added className to the MethodTable, changed all the virtual
implementations of className to static ones, and replaced
all call sites with corresponding lookups in the MethodTable.
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::className):
* bindings/js/JSDOMWindowShell.h:
* bindings/js/JSInjectedScriptHostCustom.cpp:
(WebCore::JSInjectedScriptHost::internalConstructorName):
* bridge/testqtbindings.cpp:
(Global::className):
Source/WebKit/efl:
Added className to the MethodTable, changed all the virtual
implementations of className to static ones, and replaced
all call sites with corresponding lookups in the MethodTable.
* ewk/ewk_js.cpp:
(ewk_js_npobject_to_object):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@99223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/JavaScriptCore/runtime/JSCell.cpp b/Source/JavaScriptCore/runtime/JSCell.cpp
index 2d48ec3..e22f5b4 100644
--- a/Source/JavaScriptCore/runtime/JSCell.cpp
+++ b/Source/JavaScriptCore/runtime/JSCell.cpp
@@ -179,4 +179,10 @@
ASSERT_NOT_REACHED();
}
+UString JSCell::className(const JSObject*)
+{
+ ASSERT_NOT_REACHED();
+ return UString();
+}
+
} // namespace JSC