source: webkit/trunk/JavaScriptCore/JavaScriptCore.exp@ 34781

Last change on this file since 34781 was 34754, checked in by Darin Adler, 17 years ago

JavaScriptCore:

2008-06-23 Darin Adler <Darin Adler>

Reviewed by Geoff.

More preparation toward making functions work on primitive types without
creating wrapper objects. No speedup this time, but prepares for a future
speedup without slowing things down.

SunSpider reports no change.

  • Eliminated the implementsCall, callAsFunction and construct virtual functions from JSObject. Instead, the CallData and ConstructData for a native function includes a function pointer that the caller can use directly. Changed all call sites to use CallData and ConstructData.
  • Changed the "this" argument to native functions to be a JSValue rather than a JSObject. This prepares us for passing primitives into these functions. The conversion to an object now must be done inside the function. Critically, if it's a function that can be called on a DOM window object, then we have to be sure to call toThisObject on the argument before we use it for anything even if it's already an object.
  • Eliminated the practice of using constructor objects in the global object to make objects of the various basic types. Since these constructors can't be replaced by script, there's no reason to involve a constructor object at all. Added functions to do the construction directly.
  • Made some more class members private and protected, including virtual function overrides. This can catch code using unnecessarily slow virtual function code paths when the type of an object is known statically. If we later find a new reason use the members outside the class it's easy to make them public again.
  • Moved the declarations of the native implementations for functions out of header files. These can have internal linkage and be declared inside the source file.
  • Changed PrototypeFunction to take function pointers with the right arguments to be put directly into CallData. This eliminates the need to have a separate PrototypeReflexiveFunction, and reveals that the real purpose of that class included something else specific to eval -- storage of a cached global object. So renamed PrototypeReflexiveFunction to GlobalEvalFunction.
  • API/JSCallbackConstructor.cpp: (KJS::constructJSCallback): (KJS::JSCallbackConstructor::getConstructData):
  • API/JSCallbackConstructor.h:
  • API/JSCallbackFunction.cpp: (KJS::JSCallbackFunction::implementsHasInstance): (KJS::JSCallbackFunction::call): (KJS::JSCallbackFunction::getCallData):
  • API/JSCallbackFunction.h: (KJS::JSCallbackFunction::classInfo):
  • API/JSCallbackObject.h: (KJS::JSCallbackObject::classRef): (KJS::JSCallbackObject::classInfo):
  • API/JSCallbackObjectFunctions.h: (KJS::::getConstructData): (KJS::::construct): (KJS::::getCallData): (KJS::::call):
  • API/JSObjectRef.cpp: (JSObjectMakeFunction): (JSObjectIsFunction): (JSObjectCallAsFunction): (JSObjectCallAsConstructor):
  • JavaScriptCore.exp:
  • VM/Machine.cpp: (KJS::jsTypeStringForValue): (KJS::Machine::privateExecute):
  • kjs/ArrayPrototype.cpp: (KJS::arrayProtoFuncToString): (KJS::arrayProtoFuncToLocaleString): (KJS::arrayProtoFuncJoin): (KJS::arrayProtoFuncConcat): (KJS::arrayProtoFuncPop): (KJS::arrayProtoFuncPush): (KJS::arrayProtoFuncReverse): (KJS::arrayProtoFuncShift): (KJS::arrayProtoFuncSlice): (KJS::arrayProtoFuncSort): (KJS::arrayProtoFuncSplice): (KJS::arrayProtoFuncUnShift): (KJS::arrayProtoFuncFilter): (KJS::arrayProtoFuncMap): (KJS::arrayProtoFuncEvery): (KJS::arrayProtoFuncForEach): (KJS::arrayProtoFuncSome): (KJS::arrayProtoFuncIndexOf): (KJS::arrayProtoFuncLastIndexOf): (KJS::ArrayConstructor::ArrayConstructor): (KJS::constructArrayWithSizeQuirk): (KJS::constructWithArrayConstructor): (KJS::ArrayConstructor::getConstructData): (KJS::callArrayConstructor): (KJS::ArrayConstructor::getCallData):
  • kjs/ArrayPrototype.h:
  • kjs/BooleanObject.cpp: (KJS::booleanProtoFuncToString): (KJS::booleanProtoFuncValueOf): (KJS::constructBoolean): (KJS::constructWithBooleanConstructor): (KJS::BooleanConstructor::getConstructData): (KJS::callBooleanConstructor): (KJS::BooleanConstructor::getCallData): (KJS::constructBooleanFromImmediateBoolean):
  • kjs/BooleanObject.h:
  • kjs/CallData.h: (KJS::):
  • kjs/ConstructData.h: (KJS::):
  • kjs/FunctionPrototype.cpp: (KJS::callFunctionPrototype): (KJS::FunctionPrototype::getCallData): (KJS::functionProtoFuncToString): (KJS::functionProtoFuncApply): (KJS::functionProtoFuncCall): (KJS::constructWithFunctionConstructor): (KJS::FunctionConstructor::getConstructData): (KJS::callFunctionConstructor): (KJS::FunctionConstructor::getCallData): (KJS::constructFunction):
  • kjs/FunctionPrototype.h:
  • kjs/JSArray.cpp: (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key): (KJS::JSArray::sort): (KJS::constructEmptyArray): (KJS::constructArray):
  • kjs/JSArray.h: (KJS::JSArray::classInfo):
  • kjs/JSFunction.cpp: (KJS::JSFunction::call): (KJS::globalFuncEval): (KJS::globalFuncParseInt): (KJS::globalFuncParseFloat): (KJS::globalFuncIsNaN): (KJS::globalFuncIsFinite): (KJS::globalFuncDecodeURI): (KJS::globalFuncDecodeURIComponent): (KJS::globalFuncEncodeURI): (KJS::globalFuncEncodeURIComponent): (KJS::globalFuncEscape): (KJS::globalFuncUnescape): (KJS::globalFuncKJSPrint): (KJS::PrototypeFunction::PrototypeFunction): (KJS::PrototypeFunction::getCallData): (KJS::GlobalEvalFunction::GlobalEvalFunction): (KJS::GlobalEvalFunction::mark):
  • kjs/JSFunction.h: (KJS::InternalFunction::classInfo): (KJS::InternalFunction::functionName): (KJS::JSFunction::classInfo): (KJS::GlobalEvalFunction::cachedGlobalObject):
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset): (KJS::JSGlobalObject::mark):
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObject): (KJS::JSGlobalObject::evalFunction):
  • kjs/JSImmediate.cpp: (KJS::JSImmediate::toObject):
  • kjs/JSNotAnObject.cpp:
  • kjs/JSNotAnObject.h:
  • kjs/JSObject.cpp: (KJS::JSObject::put): (KJS::callDefaultValueFunction): (KJS::JSObject::defaultValue): (KJS::JSObject::lookupGetter): (KJS::JSObject::lookupSetter): (KJS::JSObject::hasInstance): (KJS::JSObject::fillGetterPropertySlot): (KJS::Error::create): (KJS::constructEmptyObject):
  • kjs/JSObject.h: (KJS::GetterSetter::GetterSetter): (KJS::GetterSetter::getter): (KJS::GetterSetter::setGetter): (KJS::GetterSetter::setter): (KJS::GetterSetter::setSetter):
  • kjs/JSValue.cpp: (KJS::JSCell::deleteProperty): (KJS::call): (KJS::construct):
  • kjs/JSValue.h:
  • kjs/MathObject.cpp: (KJS::mathProtoFuncAbs): (KJS::mathProtoFuncACos): (KJS::mathProtoFuncASin): (KJS::mathProtoFuncATan): (KJS::mathProtoFuncATan2): (KJS::mathProtoFuncCeil): (KJS::mathProtoFuncCos): (KJS::mathProtoFuncExp): (KJS::mathProtoFuncFloor): (KJS::mathProtoFuncLog): (KJS::mathProtoFuncMax): (KJS::mathProtoFuncMin): (KJS::mathProtoFuncPow): (KJS::mathProtoFuncRandom): (KJS::mathProtoFuncRound): (KJS::mathProtoFuncSin): (KJS::mathProtoFuncSqrt): (KJS::mathProtoFuncTan):
  • kjs/MathObject.h:
  • kjs/NumberObject.cpp: (KJS::numberProtoFuncToString): (KJS::numberProtoFuncToLocaleString): (KJS::numberProtoFuncValueOf): (KJS::numberProtoFuncToFixed): (KJS::numberProtoFuncToExponential): (KJS::numberProtoFuncToPrecision): (KJS::NumberConstructor::NumberConstructor): (KJS::constructWithNumberConstructor): (KJS::NumberConstructor::getConstructData): (KJS::callNumberConstructor): (KJS::NumberConstructor::getCallData): (KJS::constructNumber): (KJS::constructNumberFromImmediateNumber):
  • kjs/NumberObject.h: (KJS::NumberObject::classInfo): (KJS::NumberConstructor::classInfo):
  • kjs/PropertySlot.cpp: (KJS::PropertySlot::functionGetter):
  • kjs/RegExpObject.cpp: (KJS::regExpProtoFuncTest): (KJS::regExpProtoFuncExec): (KJS::regExpProtoFuncCompile): (KJS::regExpProtoFuncToString): (KJS::callRegExpObject): (KJS::RegExpObject::getCallData): (KJS::constructRegExp): (KJS::constructWithRegExpConstructor): (KJS::RegExpConstructor::getConstructData): (KJS::callRegExpConstructor): (KJS::RegExpConstructor::getCallData):
  • kjs/RegExpObject.h: (KJS::RegExpConstructor::classInfo):
  • kjs/Shell.cpp: (GlobalObject::GlobalObject): (functionPrint): (functionDebug): (functionGC): (functionVersion): (functionRun): (functionLoad): (functionReadline): (functionQuit):
  • kjs/date_object.cpp: (KJS::gmtoffset): (KJS::formatLocaleDate): (KJS::fillStructuresUsingDateArgs): (KJS::DateInstance::getTime): (KJS::DateInstance::getUTCTime): (KJS::DateConstructor::DateConstructor): (KJS::constructDate): (KJS::DateConstructor::getConstructData): (KJS::callDate): (KJS::DateConstructor::getCallData): (KJS::dateParse): (KJS::dateNow): (KJS::dateUTC): (KJS::dateProtoFuncToString): (KJS::dateProtoFuncToUTCString): (KJS::dateProtoFuncToDateString): (KJS::dateProtoFuncToTimeString): (KJS::dateProtoFuncToLocaleString): (KJS::dateProtoFuncToLocaleDateString): (KJS::dateProtoFuncToLocaleTimeString): (KJS::dateProtoFuncValueOf): (KJS::dateProtoFuncGetTime): (KJS::dateProtoFuncGetFullYear): (KJS::dateProtoFuncGetUTCFullYear): (KJS::dateProtoFuncToGMTString): (KJS::dateProtoFuncGetMonth): (KJS::dateProtoFuncGetUTCMonth): (KJS::dateProtoFuncGetDate): (KJS::dateProtoFuncGetUTCDate): (KJS::dateProtoFuncGetDay): (KJS::dateProtoFuncGetUTCDay): (KJS::dateProtoFuncGetHours): (KJS::dateProtoFuncGetUTCHours): (KJS::dateProtoFuncGetMinutes): (KJS::dateProtoFuncGetUTCMinutes): (KJS::dateProtoFuncGetSeconds): (KJS::dateProtoFuncGetUTCSeconds): (KJS::dateProtoFuncGetMilliSeconds): (KJS::dateProtoFuncGetUTCMilliseconds): (KJS::dateProtoFuncGetTimezoneOffset): (KJS::dateProtoFuncSetTime): (KJS::setNewValueFromTimeArgs): (KJS::setNewValueFromDateArgs): (KJS::dateProtoFuncSetMilliSeconds): (KJS::dateProtoFuncSetUTCMilliseconds): (KJS::dateProtoFuncSetSeconds): (KJS::dateProtoFuncSetUTCSeconds): (KJS::dateProtoFuncSetMinutes): (KJS::dateProtoFuncSetUTCMinutes): (KJS::dateProtoFuncSetHours): (KJS::dateProtoFuncSetUTCHours): (KJS::dateProtoFuncSetDate): (KJS::dateProtoFuncSetUTCDate): (KJS::dateProtoFuncSetMonth): (KJS::dateProtoFuncSetUTCMonth): (KJS::dateProtoFuncSetFullYear): (KJS::dateProtoFuncSetUTCFullYear): (KJS::dateProtoFuncSetYear): (KJS::dateProtoFuncGetYear):
  • kjs/date_object.h: (KJS::DateInstance::internalNumber): (KJS::DateInstance::classInfo):
  • kjs/error_object.cpp: (KJS::errorProtoFuncToString): (KJS::constructError): (KJS::constructWithErrorConstructor): (KJS::ErrorConstructor::getConstructData): (KJS::callErrorConstructor): (KJS::ErrorConstructor::getCallData): (KJS::NativeErrorConstructor::construct): (KJS::constructWithNativeErrorConstructor): (KJS::NativeErrorConstructor::getConstructData): (KJS::callNativeErrorConstructor): (KJS::NativeErrorConstructor::getCallData):
  • kjs/error_object.h: (KJS::NativeErrorConstructor::classInfo):
  • kjs/internal.cpp: (KJS::JSNumberCell::toObject): (KJS::JSNumberCell::toThisObject): (KJS::GetterSetter::mark): (KJS::GetterSetter::toPrimitive): (KJS::GetterSetter::toBoolean): (KJS::GetterSetter::toNumber): (KJS::GetterSetter::toString): (KJS::GetterSetter::toObject): (KJS::InternalFunction::InternalFunction): (KJS::InternalFunction::implementsHasInstance):
  • kjs/lookup.h: (KJS::HashEntry::):
  • kjs/nodes.cpp: (KJS::FuncDeclNode::makeFunction): (KJS::FuncExprNode::makeFunction):
  • kjs/object_object.cpp: (KJS::objectProtoFuncValueOf): (KJS::objectProtoFuncHasOwnProperty): (KJS::objectProtoFuncIsPrototypeOf): (KJS::objectProtoFuncDefineGetter): (KJS::objectProtoFuncDefineSetter): (KJS::objectProtoFuncLookupGetter): (KJS::objectProtoFuncLookupSetter): (KJS::objectProtoFuncPropertyIsEnumerable): (KJS::objectProtoFuncToLocaleString): (KJS::objectProtoFuncToString): (KJS::ObjectConstructor::ObjectConstructor): (KJS::constructObject): (KJS::constructWithObjectConstructor): (KJS::ObjectConstructor::getConstructData): (KJS::callObjectConstructor): (KJS::ObjectConstructor::getCallData):
  • kjs/object_object.h:
  • kjs/string_object.cpp: (KJS::replace): (KJS::stringProtoFuncToString): (KJS::stringProtoFuncValueOf): (KJS::stringProtoFuncCharAt): (KJS::stringProtoFuncCharCodeAt): (KJS::stringProtoFuncConcat): (KJS::stringProtoFuncIndexOf): (KJS::stringProtoFuncLastIndexOf): (KJS::stringProtoFuncMatch): (KJS::stringProtoFuncSearch): (KJS::stringProtoFuncReplace): (KJS::stringProtoFuncSlice): (KJS::stringProtoFuncSplit): (KJS::stringProtoFuncSubstr): (KJS::stringProtoFuncSubstring): (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase): (KJS::stringProtoFuncLocaleCompare): (KJS::stringProtoFuncBig): (KJS::stringProtoFuncSmall): (KJS::stringProtoFuncBlink): (KJS::stringProtoFuncBold): (KJS::stringProtoFuncFixed): (KJS::stringProtoFuncItalics): (KJS::stringProtoFuncStrike): (KJS::stringProtoFuncSub): (KJS::stringProtoFuncSup): (KJS::stringProtoFuncFontcolor): (KJS::stringProtoFuncFontsize): (KJS::stringProtoFuncAnchor): (KJS::stringProtoFuncLink): (KJS::stringFromCharCode): (KJS::StringConstructor::StringConstructor): (KJS::constructWithStringConstructor): (KJS::StringConstructor::getConstructData): (KJS::callStringConstructor): (KJS::StringConstructor::getCallData):
  • kjs/string_object.h:

JavaScriptGlue:

2008-06-23 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • JSValueWrapper.cpp: (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead of the old callAsFunction.

WebCore:

2008-06-23 Darin Adler <Darin Adler>

Reviewed by Geoff.

Update for JavaScript changes.

  • Use CallData and ConstructData instead of the obsolete implementsCall, callAsFunction, and construct functions.
  • Updated native function arguments, specifically to allow a JSValue rather than a JSObject for the this argument, and to call toThisObject as needed when treating it as an object.
  • Made some more class members private and protected, including virtual function overrides.
  • Eliminated the use of getCallData in the JavaScript bridging code as a way to check if an instance supports invokeDefaultMethod.
  • Eliminated unnecessary polymorphism in the NodeIterator and TreeWalker classes. They were using virtual functions simply to share an instance of the RefCounted template, which was not helpful.
  • bindings/js/JSAudioConstructor.cpp: (WebCore::constructAudio): (WebCore::JSAudioConstructor::getConstructData):
  • bindings/js/JSAudioConstructor.h: (WebCore::JSAudioConstructor::document): (WebCore::JSAudioConstructor::classInfo):
  • bindings/js/JSClipboardCustom.cpp: (WebCore::JSClipboard::types):
  • bindings/js/JSCustomSQLStatementCallback.cpp: (WebCore::JSCustomSQLStatementCallback::handleEvent):
  • bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
  • bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::handleEvent):
  • bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
  • bindings/js/JSDOMBinding.h: (WebCore::DOMObject::DOMObject):
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::windowProtoFuncAToB): (WebCore::windowProtoFuncBToA): (WebCore::windowProtoFuncOpen): (WebCore::windowProtoFuncSetTimeout): (WebCore::windowProtoFuncClearTimeout): (WebCore::windowProtoFuncSetInterval): (WebCore::windowProtoFuncAddEventListener): (WebCore::windowProtoFuncRemoveEventListener): (WebCore::windowProtoFuncShowModalDialog): (WebCore::windowProtoFuncNotImplemented): (WebCore::toJSDOMWindow):
  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::classInfo):
  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::JSLazyEventListener::parseCode):
  • bindings/js/JSEventTargetBase.cpp: (WebCore::retrieveEventTargetAndCorrespondingNode): (WebCore::jsEventTargetAddEventListener): (WebCore::jsEventTargetRemoveEventListener): (WebCore::jsEventTargetDispatchEvent):
  • bindings/js/JSEventTargetBase.h:
  • bindings/js/JSHTMLAppletElementCustom.cpp: (WebCore::JSHTMLAppletElement::customGetOwnPropertySlot): (WebCore::JSHTMLAppletElement::customPut): (WebCore::JSHTMLAppletElement::getCallData):
  • bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::callHTMLCollection): (WebCore::JSHTMLCollection::getCallData):
  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open):
  • bindings/js/JSHTMLEmbedElementCustom.cpp: (WebCore::JSHTMLEmbedElement::customGetOwnPropertySlot): (WebCore::JSHTMLEmbedElement::customPut): (WebCore::JSHTMLEmbedElement::getCallData):
  • bindings/js/JSHTMLInputElementBase.cpp: (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
  • bindings/js/JSHTMLInputElementBase.h:
  • bindings/js/JSHTMLObjectElementCustom.cpp: (WebCore::JSHTMLObjectElement::customGetOwnPropertySlot): (WebCore::JSHTMLObjectElement::customPut): (WebCore::JSHTMLObjectElement::getCallData):
  • bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::constructHTMLOptionElement): (WebCore::JSHTMLOptionElementConstructor::getConstructData):
  • bindings/js/JSHTMLOptionElementConstructor.h: (WebCore::JSHTMLOptionElementConstructor::document): (WebCore::JSHTMLOptionElementConstructor::classInfo):
  • bindings/js/JSImageConstructor.cpp: (WebCore::constructImage): (WebCore::JSImageConstructor::getConstructData):
  • bindings/js/JSImageConstructor.h: (WebCore::JSImageConstructor::document): (WebCore::JSImageConstructor::classInfo):
  • bindings/js/JSInspectedObjectWrapper.h: (WebCore::JSInspectedObjectWrapper::classInfo):
  • bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
  • bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::scopeChain):
  • bindings/js/JSNodeFilterCondition.cpp: (WebCore::JSNodeFilterCondition::JSNodeFilterCondition): (WebCore::JSNodeFilterCondition::mark): (WebCore::JSNodeFilterCondition::acceptNode):
  • bindings/js/JSNodeFilterCondition.h: (WebCore::JSNodeFilterCondition::create):
  • bindings/js/JSNodeFilterCustom.cpp: (WebCore::toNodeFilter):
  • bindings/js/JSNodeListCustom.cpp: (WebCore::callNodeList): (WebCore::JSNodeList::getCallData): (WebCore::JSNodeList::canGetItemsForName): (WebCore::JSNodeList::nameGetter):
  • bindings/js/JSPluginElementFunctions.cpp: (WebCore::runtimeObjectGetter): (WebCore::runtimeObjectPropertyGetter): (WebCore::runtimeObjectCustomGetOwnPropertySlot): (WebCore::runtimeObjectCustomPut): (WebCore::runtimeObjectGetCallData): (WebCore::pluginInstance): (WebCore::getRuntimeObject): (WebCore::callPlugin):
  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::put): (WebCore::JSQuarantinedObjectWrapper::construct): (WebCore::JSQuarantinedObjectWrapper::getConstructData): (WebCore::JSQuarantinedObjectWrapper::hasInstance): (WebCore::JSQuarantinedObjectWrapper::call): (WebCore::JSQuarantinedObjectWrapper::getCallData):
  • bindings/js/JSQuarantinedObjectWrapper.h: (WebCore::JSQuarantinedObjectWrapper::className):
  • bindings/js/JSRGBColor.cpp:
  • bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::constructXMLHttpRequest): (WebCore::JSXMLHttpRequestConstructor::getConstructData):
  • bindings/js/JSXMLHttpRequestConstructor.h: (WebCore::JSXMLHttpRequestConstructor::document): (WebCore::JSXMLHttpRequestConstructor::classInfo):
  • bindings/js/JSXSLTProcessorConstructor.cpp: (WebCore::constructXSLTProcessor): (WebCore::JSXSLTProcessorConstructor::getConstructData):
  • bindings/js/JSXSLTProcessorConstructor.h: (WebCore::JSXSLTProcessorConstructor::classInfo):
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::ScheduledAction): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/NP_jsobject.cpp: (_NPN_InvokeDefault): (_NPN_Invoke):
  • bridge/c/c_instance.cpp: (KJS::Bindings::CInstance::supportsInvokeDefaultMethod):
  • bridge/c/c_instance.h:
  • bridge/jni/jni_jsobject.mm: (JavaJSObject::call):
  • bridge/objc/objc_instance.h:
  • bridge/objc/objc_instance.mm: (ObjcInstance::supportsInvokeDefaultMethod):
  • bridge/objc/objc_runtime.h: (KJS::Bindings::ObjcFallbackObjectImp::propertyName): (KJS::Bindings::ObjcFallbackObjectImp::classInfo):
  • bridge/objc/objc_runtime.mm: (Bindings::webScriptObjectClass): (Bindings::webUndefinedClass): (ObjcFallbackObjectImp::ObjcFallbackObjectImp): (callObjCFallbackObject): (ObjcFallbackObjectImp::getCallData):
  • bridge/qt/qt_instance.h:
  • bridge/runtime.cpp: (KJS::Bindings::Instance::createRuntimeObject): (KJS::Bindings::Instance::getInstance):
  • bridge/runtime.h: (KJS::Bindings::Field::~Field): (KJS::Bindings::Method::~Method): (KJS::Bindings::Class::~Class): (KJS::Bindings::Instance::supportsInvokeDefaultMethod):
  • bridge/runtime_method.cpp: (KJS::callRuntimeMethod): (KJS::RuntimeMethod::getCallData):
  • bridge/runtime_method.h: (KJS::RuntimeMethod::methods):
  • bridge/runtime_object.cpp: (RuntimeObjectImp::defaultValue): (callRuntimeObject): (RuntimeObjectImp::getCallData):
  • bridge/runtime_object.h: (KJS::RuntimeObjectImp::getInternalInstance): (KJS::RuntimeObjectImp::classInfo):
  • dom/NodeIterator.h:
  • dom/Traversal.cpp:
  • dom/Traversal.h:
  • dom/TreeWalker.h:
  • Property svn:eol-style set to native
File size: 12.2 KB
Line 
1_JSCheckScriptSyntax
2_JSClassCreate
3_JSClassRelease
4_JSClassRetain
5_JSContextGetGlobalObject
6_JSEvaluateScript
7_JSGarbageCollect
8_JSGlobalContextCreate
9_JSGlobalContextRelease
10_JSGlobalContextRetain
11_JSObjectCallAsConstructor
12_JSObjectCallAsFunction
13_JSObjectCopyPropertyNames
14_JSObjectDeleteProperty
15_JSObjectGetPrivate
16_JSObjectGetProperty
17_JSObjectGetPropertyAtIndex
18_JSObjectGetPrototype
19_JSObjectHasProperty
20_JSObjectIsConstructor
21_JSObjectIsFunction
22_JSObjectMake
23_JSObjectMakeConstructor
24_JSObjectMakeFunction
25_JSObjectMakeFunctionWithCallback
26_JSObjectSetPrivate
27_JSObjectSetProperty
28_JSObjectSetPropertyAtIndex
29_JSObjectSetPrototype
30_JSPropertyNameAccumulatorAddName
31_JSPropertyNameArrayGetCount
32_JSPropertyNameArrayGetNameAtIndex
33_JSPropertyNameArrayRelease
34_JSPropertyNameArrayRetain
35_JSStringCopyCFString
36_JSStringCreateWithCFString
37_JSStringCreateWithCharacters
38_JSStringCreateWithUTF8CString
39_JSStringGetCharactersPtr
40_JSStringGetLength
41_JSStringGetMaximumUTF8CStringSize
42_JSStringGetUTF8CString
43_JSStringIsEqual
44_JSStringIsEqualToUTF8CString
45_JSStringRelease
46_JSStringRetain
47_JSValueGetType
48_JSValueIsBoolean
49_JSValueIsEqual
50_JSValueIsInstanceOfConstructor
51_JSValueIsNull
52_JSValueIsNumber
53_JSValueIsObject
54_JSValueIsObjectOfClass
55_JSValueIsStrictEqual
56_JSValueIsString
57_JSValueIsUndefined
58_JSValueMakeBoolean
59_JSValueMakeNull
60_JSValueMakeNumber
61_JSValueMakeString
62_JSValueMakeUndefined
63_JSValueProtect
64_JSValueToBoolean
65_JSValueToNumber
66_JSValueToObject
67_JSValueToStringCopy
68_JSValueUnprotect
69_WTFLog
70_WTFLogVerbose
71_WTFReportArgumentAssertionFailure
72_WTFReportAssertionFailure
73_WTFReportAssertionFailureWithMessage
74_WTFReportError
75_WTFReportFatalError
76__Z12jsRegExpFreeP8JSRegExp
77__Z15jsRegExpCompilePKti24JSRegExpIgnoreCaseOption23JSRegExpMultilineOptionPjPPKc
78__Z15jsRegExpExecutePK8JSRegExpPKtiiPii
79__ZN3KJS10Identifier11addSlowCaseEPNS_12JSGlobalDataEPNS_7UString3RepE
80__ZN3KJS10Identifier11addSlowCaseEPNS_9ExecStateEPNS_7UString3RepE
81__ZN3KJS10Identifier3addEPNS_9ExecStateEPKc
82__ZN3KJS10Identifier5equalEPKNS_7UString3RepEPKc
83__ZN3KJS10throwErrorEPNS_9ExecStateENS_9ErrorTypeE
84__ZN3KJS10throwErrorEPNS_9ExecStateENS_9ErrorTypeEPKc
85__ZN3KJS10throwErrorEPNS_9ExecStateENS_9ErrorTypeERKNS_7UStringE
86__ZN3KJS11Interpreter11checkSyntaxEPNS_9ExecStateERKNS_7UStringEiS5_
87__ZN3KJS11Interpreter21shouldPrintExceptionsEv
88__ZN3KJS11Interpreter24setShouldPrintExceptionsEb
89__ZN3KJS11Interpreter8evaluateEPNS_9ExecStateERNS_10ScopeChainERKNS_7UStringEiN3WTF10PassRefPtrINS_14SourceProviderEEEPNS_7JSValueE
90__ZN3KJS11Interpreter8evaluateEPNS_9ExecStateERNS_10ScopeChainERKNS_7UStringEiS7_PNS_7JSValueE
91__ZN3KJS11JSImmediate8toObjectEPKNS_7JSValueEPNS_9ExecStateE
92__ZN3KJS11JSImmediate8toStringEPKNS_7JSValueE
93__ZN3KJS11ProfileNode4sortEPFbRKN3WTF6RefPtrIS0_EES5_E
94__ZN3KJS11ProgramNode6createEPNS_14SourceElementsEPN3WTF6VectorISt4pairINS_10IdentifierEjELm16EEEPNS4_INS3_6RefPtrINS_12FuncDeclNodeEEELm16EEEbb
95__ZN3KJS11PropertyMap11getLocationERKNS_10IdentifierE
96__ZN3KJS11PropertyMap11getLocationERKNS_10IdentifierERb
97__ZN3KJS11PropertyMap3putERKNS_10IdentifierEPNS_7JSValueEjb
98__ZN3KJS11PropertyMapD1Ev
99__ZN3KJS12DateInstance4infoE
100__ZN3KJS12JSGlobalData14sharedInstanceEv
101__ZN3KJS12JSGlobalData14threadInstanceEv
102__ZN3KJS12PropertySlot15undefinedGetterEPNS_9ExecStateERKNS_10IdentifierERKS0_
103__ZN3KJS12RegisterFile14addGlobalSlotsEm
104__ZN3KJS12StringObject14deletePropertyEPNS_9ExecStateERKNS_10IdentifierE
105__ZN3KJS12StringObject16getPropertyNamesEPNS_9ExecStateERNS_17PropertyNameArrayE
106__ZN3KJS12StringObject18getOwnPropertySlotEPNS_9ExecStateERKNS_10IdentifierERNS_12PropertySlotE
107__ZN3KJS12StringObject18getOwnPropertySlotEPNS_9ExecStateEjRNS_12PropertySlotE
108__ZN3KJS12StringObject3putEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueE
109__ZN3KJS12StringObject4infoE
110__ZN3KJS12StringObjectC2EPNS_9ExecStateEPNS_8JSObjectERKNS_7UStringE
111__ZN3KJS13CodeGenerator21setDumpsGeneratedCodeEb
112__ZN3KJS13StatementNode6setLocEii
113__ZN3KJS13jsOwnedStringEPNS_9ExecStateERKNS_7UStringE
114__ZN3KJS14JSGlobalObject10globalExecEv
115__ZN3KJS14JSGlobalObject12defineGetterEPNS_9ExecStateERKNS_10IdentifierEPNS_8JSObjectE
116__ZN3KJS14JSGlobalObject12defineSetterEPNS_9ExecStateERKNS_10IdentifierEPNS_8JSObjectE
117__ZN3KJS14JSGlobalObject16stopTimeoutCheckEv
118__ZN3KJS14JSGlobalObject17putWithAttributesEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueEj
119__ZN3KJS14JSGlobalObject17startTimeoutCheckEv
120__ZN3KJS14JSGlobalObject3putEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueE
121__ZN3KJS14JSGlobalObject4initEPNS_8JSObjectE
122__ZN3KJS14JSGlobalObject4markEv
123__ZN3KJS14JSGlobalObjectD2Ev
124__ZN3KJS14JSGlobalObjectnwEm
125__ZN3KJS14JSGlobalObjectnwEmNS0_9SharedTagE
126__ZN3KJS14constructArrayEPNS_9ExecStateERKNS_7ArgListE
127__ZN3KJS15JSWrapperObject4markEv
128__ZN3KJS16InternalFunction4infoE
129__ZN3KJS16InternalFunctionC2EPNS_17FunctionPrototypeERKNS_10IdentifierE
130__ZN3KJS16JSVariableObject14deletePropertyEPNS_9ExecStateERKNS_10IdentifierE
131__ZN3KJS16JSVariableObject16getPropertyNamesEPNS_9ExecStateERNS_17PropertyNameArrayE
132__ZN3KJS16ParserRefCounted3refEv
133__ZN3KJS16ParserRefCounted5derefEv
134__ZN3KJS17PropertyNameArray3addEPNS_7UString3RepE
135__ZN3KJS17PrototypeFunctionC1EPNS_9ExecStateEPNS_17FunctionPrototypeEiRKNS_10IdentifierEPFPNS_7JSValueES2_PNS_8JSObjectES9_RKNS_7ArgListEE
136__ZN3KJS17PrototypeFunctionC1EPNS_9ExecStateEiRKNS_10IdentifierEPFPNS_7JSValueES2_PNS_8JSObjectES7_RKNS_7ArgListEE
137__ZN3KJS17RegisterFileStack20allocateRegisterFileEmPS0_
138__ZN3KJS17constructFunctionEPNS_9ExecStateERKNS_7ArgListERKNS_10IdentifierERKNS_7UStringEi
139__ZN3KJS19constructEmptyArrayEPNS_9ExecStateE
140__ZN3KJS19initializeThreadingEv
141__ZN3KJS23objectProtoFuncToStringEPNS_9ExecStateEPNS_8JSObjectEPNS_7JSValueERKNS_7ArgListE
142__ZN3KJS4Heap14allocateNumberEm
143__ZN3KJS4Heap15recordExtraCostEm
144__ZN3KJS4Heap17globalObjectCountEv
145__ZN3KJS4Heap20protectedObjectCountEv
146__ZN3KJS4Heap23collectOnMainThreadOnlyEPNS_7JSValueE
147__ZN3KJS4Heap25protectedObjectTypeCountsEv
148__ZN3KJS4Heap26protectedGlobalObjectCountEv
149__ZN3KJS4Heap4heapEPKNS_7JSValueE
150__ZN3KJS4Heap4sizeEv
151__ZN3KJS4Heap7collectEv
152__ZN3KJS4Heap7protectEPNS_7JSValueE
153__ZN3KJS4Heap8allocateEm
154__ZN3KJS4Heap9unprotectEPNS_7JSValueE
155__ZN3KJS4callEPNS_9ExecStateEPNS_7JSValueENS_8CallTypeERKNS_8CallDataES3_RKNS_7ArgListE
156__ZN3KJS5equalEPKNS_7UString3RepES3_
157__ZN3KJS6JSCell11getCallDataERNS_8CallDataE
158__ZN3KJS6JSCell14deletePropertyEPNS_9ExecStateERKNS_10IdentifierE
159__ZN3KJS6JSCell14deletePropertyEPNS_9ExecStateEj
160__ZN3KJS6JSCell16getConstructDataERNS_13ConstructDataE
161__ZN3KJS6JSCell18getOwnPropertySlotEPNS_9ExecStateERKNS_10IdentifierERNS_12PropertySlotE
162__ZN3KJS6JSCell18getOwnPropertySlotEPNS_9ExecStateEjRNS_12PropertySlotE
163__ZN3KJS6JSCell3putEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueE
164__ZN3KJS6JSCell3putEPNS_9ExecStateEjPNS_7JSValueE
165__ZN3KJS6JSCell9getObjectEv
166__ZN3KJS6JSCellnwEmPNS_9ExecStateE
167__ZN3KJS6JSLock12DropAllLocksC1Ev
168__ZN3KJS6JSLock12DropAllLocksD1Ev
169__ZN3KJS6JSLock14registerThreadEv
170__ZN3KJS6JSLock4lockEv
171__ZN3KJS6JSLock6unlockEv
172__ZN3KJS6JSLock9lockCountEv
173__ZN3KJS6Parser5parseEPNS_9ExecStateERKNS_7UStringEiN3WTF10PassRefPtrINS_14SourceProviderEEEPiSA_PS3_
174__ZN3KJS6strtodEPKcPPc
175__ZN3KJS7ArgList10slowAppendEPNS_7JSValueE
176__ZN3KJS7CStringD1Ev
177__ZN3KJS7CStringaSERKS0_
178__ZN3KJS7JSArray4infoE
179__ZN3KJS7Profile10restoreAllEv
180__ZN3KJS7Profile5focusEPKNS_11ProfileNodeE
181__ZN3KJS7Profile7excludeEPKNS_11ProfileNodeE
182__ZN3KJS7Profile7forEachEMNS_11ProfileNodeEFvvE
183__ZN3KJS7UString3Rep11computeHashEPKti
184__ZN3KJS7UString3Rep4nullE
185__ZN3KJS7UString3Rep7destroyEv
186__ZN3KJS7UString4fromEj
187__ZN3KJS7UString6appendEPKc
188__ZN3KJS7UString6appendERKS0_
189__ZN3KJS7UStringC1EPKc
190__ZN3KJS7UStringC1EPKti
191__ZN3KJS7UStringaSEPKc
192__ZN3KJS8Debugger6attachEPNS_14JSGlobalObjectE
193__ZN3KJS8Debugger6detachEPNS_14JSGlobalObjectE
194__ZN3KJS8DebuggerC2Ev
195__ZN3KJS8DebuggerD2Ev
196__ZN3KJS8JSObject11hasInstanceEPNS_9ExecStateEPNS_7JSValueE
197__ZN3KJS8JSObject12defineGetterEPNS_9ExecStateERKNS_10IdentifierEPS0_
198__ZN3KJS8JSObject12defineSetterEPNS_9ExecStateERKNS_10IdentifierEPS0_
199__ZN3KJS8JSObject12lookupGetterEPNS_9ExecStateERKNS_10IdentifierE
200__ZN3KJS8JSObject12lookupSetterEPNS_9ExecStateERKNS_10IdentifierE
201__ZN3KJS8JSObject14deletePropertyEPNS_9ExecStateERKNS_10IdentifierE
202__ZN3KJS8JSObject14deletePropertyEPNS_9ExecStateEj
203__ZN3KJS8JSObject16getPropertyNamesEPNS_9ExecStateERNS_17PropertyNameArrayE
204__ZN3KJS8JSObject17putDirectFunctionEPNS_16InternalFunctionEi
205__ZN3KJS8JSObject17putWithAttributesEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueEj
206__ZN3KJS8JSObject17putWithAttributesEPNS_9ExecStateEjPNS_7JSValueEj
207__ZN3KJS8JSObject18getOwnPropertySlotEPNS_9ExecStateEjRNS_12PropertySlotE
208__ZN3KJS8JSObject18getPrimitiveNumberEPNS_9ExecStateERdRPNS_7JSValueE
209__ZN3KJS8JSObject22fillGetterPropertySlotERNS_12PropertySlotEPPNS_7JSValueE
210__ZN3KJS8JSObject3putEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueE
211__ZN3KJS8JSObject3putEPNS_9ExecStateEjPNS_7JSValueE
212__ZN3KJS8JSObject4markEv
213__ZN3KJS8Profiler13stopProfilingEPNS_9ExecStateERKNS_7UStringE
214__ZN3KJS8Profiler14startProfilingEPNS_9ExecStateERKNS_7UStringEPNS_14ProfilerClientE
215__ZN3KJS8Profiler8profilerEv
216__ZN3KJS8jsStringEPNS_9ExecStateEPKc
217__ZN3KJS8jsStringEPNS_9ExecStateERKNS_7UStringE
218__ZN3KJS9constructEPNS_9ExecStateEPNS_7JSValueENS_13ConstructTypeERKNS_13ConstructDataERKNS_7ArgListE
219__ZN3KJSeqERKNS_7UStringEPKc
220__ZN3KJSgtERKNS_7UStringES2_
221__ZN3KJSltERKNS_7UStringES2_
222__ZN3WTF10fastCallocEmm
223__ZN3WTF10fastMallocEm
224__ZN3WTF11fastReallocEPvm
225__ZN3WTF12createThreadEPFPvS0_ES0_
226__ZN3WTF12detachThreadEj
227__ZN3WTF12isMainThreadEv
228__ZN3WTF13currentThreadEv
229__ZN3WTF15ThreadCondition4waitERNS_5MutexE
230__ZN3WTF15ThreadCondition6signalEv
231__ZN3WTF15ThreadCondition9broadcastEv
232__ZN3WTF15ThreadConditionC1Ev
233__ZN3WTF15ThreadConditionD1Ev
234__ZN3WTF16callOnMainThreadEPFvPvES0_
235__ZN3WTF16fastZeroedMallocEm
236__ZN3WTF19initializeThreadingEv
237__ZN3WTF23waitForThreadCompletionEjPPv
238__ZN3WTF28setMainThreadCallbacksPausedEb
239__ZN3WTF5Mutex4lockEv
240__ZN3WTF5Mutex6unlockEv
241__ZN3WTF5Mutex7tryLockEv
242__ZN3WTF5MutexC1Ev
243__ZN3WTF5MutexD1Ev
244__ZN3WTF7Unicode18convertUTF16ToUTF8EPPKtS2_PPcS4_b
245__ZN3WTF8Collator18setOrderLowerFirstEb
246__ZN3WTF8CollatorC1EPKc
247__ZN3WTF8CollatorD1Ev
248__ZN3WTF8fastFreeEPv
249__ZNK3KJS11PropertyMap3getERKNS_10IdentifierE
250__ZNK3KJS12DateInstance7getTimeERdRi
251__ZNK3KJS14JSGlobalObject14isDynamicScopeEv
252__ZNK3KJS14JSGlobalObject14toGlobalObjectEPNS_9ExecStateE
253__ZNK3KJS16InternalFunction21implementsHasInstanceEv
254__ZNK3KJS16JSVariableObject16isVariableObjectEv
255__ZNK3KJS16JSVariableObject21getPropertyAttributesEPNS_9ExecStateERKNS_10IdentifierERj
256__ZNK3KJS17DebuggerCallFrame10thisObjectEv
257__ZNK3KJS17DebuggerCallFrame12functionNameEv
258__ZNK3KJS17DebuggerCallFrame4typeEv
259__ZNK3KJS17DebuggerCallFrame8evaluateERKNS_7UStringERPNS_7JSValueE
260__ZNK3KJS4Node8toStringEv
261__ZNK3KJS6JSCell12toThisObjectEPNS_9ExecStateE
262__ZNK3KJS6JSCell17getTruncatedInt32ERi
263__ZNK3KJS6JSCell18getTruncatedUInt32ERj
264__ZNK3KJS6JSCell9classInfoEv
265__ZNK3KJS6JSCell9getNumberEv
266__ZNK3KJS6JSCell9getStringERNS_7UStringE
267__ZNK3KJS6JSCell9getStringEv
268__ZNK3KJS6JSCell9getUInt32ERj
269__ZNK3KJS7ArgList8getSliceEiRS0_
270__ZNK3KJS7JSArray7getItemEj
271__ZNK3KJS7JSValue15toInt32SlowCaseEPNS_9ExecStateERb
272__ZNK3KJS7JSValue16toUInt32SlowCaseEPNS_9ExecStateERb
273__ZNK3KJS7JSValue7toFloatEPNS_9ExecStateE
274__ZNK3KJS7JSValue9toIntegerEPNS_9ExecStateE
275__ZNK3KJS7UString10UTF8StringEb
276__ZNK3KJS7UString14toStrictUInt32EPb
277__ZNK3KJS7UString5asciiEv
278__ZNK3KJS7UString6is8BitEv
279__ZNK3KJS7UString6substrEii
280__ZNK3KJS7UString8toUInt32EPb
281__ZNK3KJS7UString8toUInt32EPbb
282__ZNK3KJS8JSObject11hasPropertyEPNS_9ExecStateERKNS_10IdentifierE
283__ZNK3KJS8JSObject11hasPropertyEPNS_9ExecStateEj
284__ZNK3KJS8JSObject12defaultValueEPNS_9ExecStateENS_6JSTypeE
285__ZNK3KJS8JSObject12toThisObjectEPNS_9ExecStateE
286__ZNK3KJS8JSObject14toGlobalObjectEPNS_9ExecStateE
287__ZNK3KJS8JSObject21getPropertyAttributesEPNS_9ExecStateERKNS_10IdentifierERj
288__ZNK3KJS8JSObject21implementsHasInstanceEv
289__ZNK3KJS8JSObject4typeEv
290__ZNK3KJS8JSObject8toNumberEPNS_9ExecStateE
291__ZNK3KJS8JSObject8toObjectEPNS_9ExecStateE
292__ZNK3KJS8JSObject8toStringEPNS_9ExecStateE
293__ZNK3KJS8JSObject9classNameEv
294__ZNK3KJS8JSObject9toBooleanEPNS_9ExecStateE
295__ZNK3KJS9HashTable11createTableEPNS_12JSGlobalDataE
296__ZNK3WTF8Collator7collateEPKtmS2_m
297__ZTVN3KJS12JSNumberCellE
298__ZTVN3KJS12StringObjectE
299__ZTVN3KJS14JSGlobalObjectE
300__ZTVN3KJS15JSWrapperObjectE
301__ZTVN3KJS16InternalFunctionE
302__ZTVN3KJS16JSVariableObjectE
303__ZTVN3KJS8JSObjectE
304_jscore_collector_introspection
305_jscore_fastmalloc_introspection
306_kJSClassDefinitionEmpty
307_releaseFastMallocFreeMemory
Note: See TracBrowser for help on using the repository browser.