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

Last change on this file since 27845 was 27842, checked in by [email protected], 18 years ago

Reviewed by Eric Seidel.

Another round of grammar / parsing cleanup.


  1. Created distinct parser calls for parsing function bodies vs programs. This will help later with optimizing global variable access.


  1. Turned Parser into a singleton. Cleaned up Lexer's singleton interface.


  1. Modified Lexer to free a little more memory when done lexing. (Added FIXMEs for similar issues that I didn't fix.)


  1. Changed Lexer::makeIdentifier and Lexer::makeUString to start respecting the arguments passed to them. (No behavior change, but this problem could have caused serious problems for an unsuspecting user of these functions.)


  1. Removed KJS_DEBUG_MEM because it was bit-rotted.


  1. Removed Parser::prettyPrint because the same work was simpler to do at the call site.


  1. Some renames:


"Parser::accept" => "Parser::didFinishParsing"
"Parser::sid" => "Parser::m_sourceID"
"Lexer::doneParsing" => "Lexer::clear"
"sid" => "sourceId"
"lineno" => "lineNo"


  • JavaScriptCore.exp:
  • kjs/Parser.cpp: (KJS::Parser::Parser): (KJS::Parser::parseProgram): (KJS::Parser::parseFunctionBody): (KJS::Parser::parse): (KJS::Parser::didFinishParsing): (KJS::parser):
  • kjs/Parser.h: (KJS::Parser::sourceId):
  • kjs/function.cpp: (KJS::GlobalFuncImp::callAsFunction):
  • kjs/function_object.cpp: (FunctionObjectImp::construct):
  • kjs/grammar.y:
  • kjs/interpreter.cpp: (KJS::Interpreter::checkSyntax): (KJS::Interpreter::evaluate):
  • kjs/interpreter.h:
  • kjs/lexer.cpp: (kjsyylex): (KJS::lexer): (KJS::Lexer::Lexer): (KJS::Lexer::~Lexer): (KJS::Lexer::scanRegExp): (KJS::Lexer::doneParsing): (KJS::Lexer::makeIdentifier): (KJS::Lexer::makeUString):
  • kjs/lexer.h: (KJS::Lexer::pattern): (KJS::Lexer::flags): (KJS::Lexer::sawError):
  • kjs/nodes.cpp: (KJS::Node::Node): (KJS::FunctionBodyNode::FunctionBodyNode):
  • kjs/nodes.h:
  • kjs/testkjs.cpp: (prettyPrintScript): (kjsmain):
  • kjs/ustring.cpp:
  • kjs/ustring.h:
File size: 10.7 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_KJS_JSCreateNativeJSObject
70_KJS_JSObject_JSFinalize
71_KJS_JSObject_JSObjectCall
72_KJS_JSObject_JSObjectEval
73_KJS_JSObject_JSObjectGetMember
74_KJS_JSObject_JSObjectGetSlot
75_KJS_JSObject_JSObjectRemoveMember
76_KJS_JSObject_JSObjectSetMember
77_KJS_JSObject_JSObjectSetSlot
78_KJS_JSObject_JSObjectToString
79_WTFLog
80_WTFLogVerbose
81_WTFReportArgumentAssertionFailure
82_WTFReportAssertionFailure
83_WTFReportAssertionFailureWithMessage
84_WTFReportError
85_WTFReportFatalError
86__NPN_CreateObject
87__NPN_DeallocateObject
88__NPN_Enumerate
89__NPN_Evaluate
90__NPN_GetIntIdentifier
91__NPN_GetProperty
92__NPN_GetStringIdentifier
93__NPN_GetStringIdentifiers
94__NPN_IdentifierIsString
95__NPN_Invoke
96__NPN_InvokeDefault
97__NPN_ReleaseObject
98__NPN_ReleaseVariantValue
99__NPN_RemoveProperty
100__NPN_RetainObject
101__NPN_SetException
102__NPN_SetProperty
103__NPN_UTF8FromIdentifier
104__Z12jsRegExpFreeP8JSRegExp
105__Z15jsRegExpCompilePKti24JSRegExpIgnoreCaseOption23JSRegExpMultilineOptionPjPPKc
106__Z15jsRegExpExecutePK8JSRegExpPKtiiPii
107__Z23_NPN_CreateScriptObjectP4_NPPPN3KJS8JSObjectEN3WTF10PassRefPtrINS1_8Bindings10RootObjectEEES8_
108__Z25_NPN_CreateNoScriptObjectv
109__ZN3KJS10Identifier11addSlowCaseEPNS_7UString3RepE
110__ZN3KJS10Identifier3addEPKNS_5UCharEi
111__ZN3KJS10Identifier3addEPKc
112__ZN3KJS10Identifier5equalEPKNS_7UString3RepEPKc
113__ZN3KJS10throwErrorEPNS_9ExecStateENS_9ErrorTypeE
114__ZN3KJS10throwErrorEPNS_9ExecStateENS_9ErrorTypeEPKc
115__ZN3KJS11Interpreter10globalExecEv
116__ZN3KJS11Interpreter11checkSyntaxERKNS_7UStringEiPKNS_5UCharEi
117__ZN3KJS11Interpreter11checkSyntaxERKNS_7UStringEiS3_
118__ZN3KJS11Interpreter15restoreBuiltinsERKNS_13SavedBuiltinsE
119__ZN3KJS11Interpreter16initGlobalObjectEv
120__ZN3KJS11Interpreter16stopTimeoutCheckEv
121__ZN3KJS11Interpreter17startTimeoutCheckEv
122__ZN3KJS11Interpreter21shouldPrintExceptionsEv
123__ZN3KJS11Interpreter24setShouldPrintExceptionsEb
124__ZN3KJS11Interpreter4markEv
125__ZN3KJS11Interpreter6s_hookE
126__ZN3KJS11Interpreter8evaluateERKNS_7UStringEiPKNS_5UCharEiPNS_7JSValueE
127__ZN3KJS11Interpreter8evaluateERKNS_7UStringEiS3_PNS_7JSValueE
128__ZN3KJS11InterpreterC1EPNS_14JSGlobalObjectE
129__ZN3KJS11InterpreterC1EPNS_14JSGlobalObjectE
130__ZN3KJS11InterpreterC1Ev
131__ZN3KJS11InterpreterC2EPNS_14JSGlobalObjectE
132__ZN3KJS11InterpreterD1Ev
133__ZN3KJS11InterpreterD2Ev
134__ZN3KJS11JSImmediate4typeEPKNS_7JSValueE
135__ZN3KJS11JSImmediate8toObjectEPKNS_7JSValueEPNS_9ExecStateE
136__ZN3KJS11JSImmediate8toStringEPKNS_7JSValueE
137__ZN3KJS11PropertyMap11getLocationERKNS_10IdentifierE
138__ZN3KJS11PropertyMap5clearEv
139__ZN3KJS11PropertyMap7restoreERKNS_15SavedPropertiesE
140__ZN3KJS11PropertyMapD1Ev
141__ZN3KJS12DateInstance4infoE
142__ZN3KJS12PropertySlot15undefinedGetterEPNS_9ExecStateEPNS_8JSObjectERKNS_10IdentifierERKS0_
143__ZN3KJS12jsNumberCellEd
144__ZN3KJS13ArrayInstance4infoE
145__ZN3KJS13SavedBuiltinsC1Ev
146__ZN3KJS13SavedBuiltinsD1Ev
147__ZN3KJS13jsOwnedStringERKNS_7UStringE
148__ZN3KJS14StringInstance14deletePropertyEPNS_9ExecStateERKNS_10IdentifierE
149__ZN3KJS14StringInstance16getPropertyNamesEPNS_9ExecStateERNS_17PropertyNameArrayE
150__ZN3KJS14StringInstance18getOwnPropertySlotEPNS_9ExecStateERKNS_10IdentifierERNS_12PropertySlotE
151__ZN3KJS14StringInstance18getOwnPropertySlotEPNS_9ExecStateEjRNS_12PropertySlotE
152__ZN3KJS14StringInstance3putEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueEi
153__ZN3KJS14StringInstance4infoE
154__ZN3KJS14StringInstanceC1EPNS_8JSObjectERKNS_7UStringE
155__ZN3KJS14StringInstanceC2EPNS_8JSObjectERKNS_7UStringE
156__ZN3KJS15JSWrapperObject4markEv
157__ZN3KJS15SavedPropertiesC1Ev
158__ZN3KJS15SavedPropertiesD1Ev
159__ZN3KJS16RuntimeObjectImp4infoE
160__ZN3KJS16RuntimeObjectImpC1EPNS_8Bindings8InstanceE
161__ZN3KJS17PropertyNameArray3addERKNS_10IdentifierE
162__ZN3KJS19InternalFunctionImp4infoE
163__ZN3KJS19InternalFunctionImpC2EPNS_17FunctionPrototypeERKNS_10IdentifierE
164__ZN3KJS4List15expandAndAppendEPNS_7JSValueE
165__ZN3KJS4List7markSetEv
166__ZN3KJS4Node5derefEv
167__ZN3KJS6JSCell9getObjectEv
168__ZN3KJS6JSCellnwEm
169__ZN3KJS6JSLock12DropAllLocksC1Ev
170__ZN3KJS6JSLock12DropAllLocksD1Ev
171__ZN3KJS6JSLock14registerThreadEv
172__ZN3KJS6JSLock4lockEv
173__ZN3KJS6JSLock6unlockEv
174__ZN3KJS6JSLock9lockCountEv
175__ZN3KJS6Lookup9findEntryEPKNS_9HashTableERKNS_10IdentifierE
176__ZN3KJS6Parser12parseProgramERKNS_7UStringEiPKNS_5UCharEjPiS7_PS1_
177__ZN3KJS6parserEv
178__ZN3KJS7CStringD1Ev
179__ZN3KJS7UString3Rep4nullE
180__ZN3KJS7UString3Rep7destroyEv
181__ZN3KJS7UString6appendERKS0_
182__ZN3KJS7UStringC1EPKNS_5UCharEi
183__ZN3KJS7UStringC1EPKc
184__ZN3KJS7UStringC1ERKS0_S2_
185__ZN3KJS7UStringaSEPKc
186__ZN3KJS8Bindings10RootObject10invalidateEv
187__ZN3KJS8Bindings10RootObject11gcUnprotectEPNS_8JSObjectE
188__ZN3KJS8Bindings10RootObject17_createRootObjectE
189__ZN3KJS8Bindings10RootObject19setCreateRootObjectEPFN3WTF10PassRefPtrIS1_EEPvE
190__ZN3KJS8Bindings10RootObject6createEPKvN3WTF10PassRefPtrINS_11InterpreterEEE
191__ZN3KJS8Bindings10RootObject9gcProtectEPNS_8JSObjectE
192__ZN3KJS8Bindings10RootObjectD1Ev
193__ZN3KJS8Bindings10throwErrorEPNS_9ExecStateENS_9ErrorTypeEP8NSString
194__ZN3KJS8Bindings23convertObjcValueToValueEPNS_9ExecStateEPvNS0_13ObjcValueTypeEPNS0_10RootObjectE
195__ZN3KJS8Bindings23convertValueToObjcValueEPNS_9ExecStateEPNS_7JSValueENS0_13ObjcValueTypeE
196__ZN3KJS8Bindings8Instance18didExecuteFunctionEv
197__ZN3KJS8Bindings8Instance21setDidExecuteFunctionEPFvPNS_9ExecStateEPNS_8JSObjectEE
198__ZN3KJS8Bindings8Instance32createBindingForLanguageInstanceENS1_15BindingLanguageEPvN3WTF10PassRefPtrINS0_10RootObjectEEE
199__ZN3KJS8Debugger12sourceUnusedEPNS_9ExecStateEi
200__ZN3KJS8Debugger6attachEPNS_11InterpreterE
201__ZN3KJS8Debugger9exceptionEPNS_9ExecStateEiiPNS_7JSValueE
202__ZN3KJS8DebuggerC2Ev
203__ZN3KJS8DebuggerD2Ev
204__ZN3KJS8JSObject11hasInstanceEPNS_9ExecStateEPNS_7JSValueE
205__ZN3KJS8JSObject12removeDirectERKNS_10IdentifierE
206__ZN3KJS8JSObject14callAsFunctionEPNS_9ExecStateEPS0_RKNS_4ListE
207__ZN3KJS8JSObject14deletePropertyEPNS_9ExecStateERKNS_10IdentifierE
208__ZN3KJS8JSObject14deletePropertyEPNS_9ExecStateEj
209__ZN3KJS8JSObject16getPropertyNamesEPNS_9ExecStateERNS_17PropertyNameArrayE
210__ZN3KJS8JSObject18getOwnPropertySlotEPNS_9ExecStateEjRNS_12PropertySlotE
211__ZN3KJS8JSObject18getPrimitiveNumberEPNS_9ExecStateERdRPNS_7JSValueE
212__ZN3KJS8JSObject22fillGetterPropertySlotERNS_12PropertySlotEPPNS_7JSValueE
213__ZN3KJS8JSObject3putEPNS_9ExecStateERKNS_10IdentifierEPNS_7JSValueEi
214__ZN3KJS8JSObject3putEPNS_9ExecStateEjPNS_7JSValueEi
215__ZN3KJS8JSObject4callEPNS_9ExecStateEPS0_RKNS_4ListE
216__ZN3KJS8JSObject4markEv
217__ZN3KJS8JSObject9constructEPNS_9ExecStateERKNS_4ListE
218__ZN3KJS8JSObject9constructEPNS_9ExecStateERKNS_4ListERKNS_10IdentifierERKNS_7UStringEi
219__ZN3KJS8JSObject9putDirectERKNS_10IdentifierEPNS_7JSValueEi
220__ZN3KJS8JSObject9putDirectERKNS_10IdentifierEii
221__ZN3KJS8jsStringEPKc
222__ZN3KJS8jsStringERKNS_7UStringE
223__ZN3KJS9Collector15numInterpretersEv
224__ZN3KJS9Collector15recordExtraCostEm
225__ZN3KJS9Collector19numProtectedObjectsEv
226__ZN3KJS9Collector20rootObjectTypeCountsEv
227__ZN3KJS9Collector23collectOnMainThreadOnlyEPNS_7JSValueE
228__ZN3KJS9Collector4sizeEv
229__ZN3KJS9Collector7collectEv
230__ZN3KJS9Collector7protectEPNS_7JSValueE
231__ZN3KJS9Collector9unprotectEPNS_7JSValueE
232__ZN3KJSeqERKNS_7UStringEPKc
233__ZN3WTF10fastCallocEmm
234__ZN3WTF10fastMallocEm
235__ZN3WTF11fastReallocEPvm
236__ZN3WTF16fastZeroedMallocEm
237__ZN3WTF8fastFreeEPv
238__ZNK3KJS11Interpreter12builtinArrayEv
239__ZNK3KJS11Interpreter12globalObjectEv
240__ZNK3KJS11Interpreter12saveBuiltinsERNS_13SavedBuiltinsE
241__ZNK3KJS11Interpreter15builtinFunctionEv
242__ZNK3KJS11Interpreter22builtinObjectPrototypeEv
243__ZNK3KJS11Interpreter22builtinStringPrototypeEv
244__ZNK3KJS11Interpreter24builtinFunctionPrototypeEv
245__ZNK3KJS11PropertyMap3getERKNS_10IdentifierE
246__ZNK3KJS11PropertyMap4saveERNS_15SavedPropertiesE
247__ZNK3KJS12DateInstance7getTimeERdRi
248__ZNK3KJS13ArrayInstance7getItemEj
249__ZNK3KJS19InternalFunctionImp14implementsCallEv
250__ZNK3KJS19InternalFunctionImp21implementsHasInstanceEv
251__ZNK3KJS4List8getSliceEiRS0_
252__ZNK3KJS4Node8toStringEv
253__ZNK3KJS6JSCell17getTruncatedInt32ERi
254__ZNK3KJS6JSCell17getTruncatedInt32ERi
255__ZNK3KJS6JSCell18getTruncatedUInt32ERj
256__ZNK3KJS6JSCell18getTruncatedUInt32ERj
257__ZNK3KJS6JSCell9getNumberERd
258__ZNK3KJS6JSCell9getNumberEv
259__ZNK3KJS6JSCell9getStringERNS_7UStringE
260__ZNK3KJS6JSCell9getStringEv
261__ZNK3KJS6JSCell9getUInt32ERj
262__ZNK3KJS7JSValue15toInt32SlowCaseEPNS_9ExecStateERb
263__ZNK3KJS7JSValue16toUInt32SlowCaseEPNS_9ExecStateERb
264__ZNK3KJS7JSValue7toFloatEPNS_9ExecStateE
265__ZNK3KJS7JSValue9toIntegerEPNS_9ExecStateE
266__ZNK3KJS7UString10UTF8StringEb
267__ZNK3KJS7UString14toStrictUInt32EPb
268__ZNK3KJS7UString5asciiEv
269__ZNK3KJS7UString6is8BitEv
270__ZNK3KJS7UString8toUInt32EPb
271__ZNK3KJS7UString8toUInt32EPbb
272__ZNK3KJS8Bindings10RootObject11interpreterEv
273__ZNK3KJS8Bindings8Instance10rootObjectEv
274__ZNK3KJS8JSObject11hasPropertyEPNS_9ExecStateERKNS_10IdentifierE
275__ZNK3KJS8JSObject12defaultValueEPNS_9ExecStateENS_6JSTypeE
276__ZNK3KJS8JSObject14implementsCallEv
277__ZNK3KJS8JSObject19implementsConstructEv
278__ZNK3KJS8JSObject21implementsHasInstanceEv
279__ZNK3KJS8JSObject3getEPNS_9ExecStateERKNS_10IdentifierE
280__ZNK3KJS8JSObject3getEPNS_9ExecStateEj
281__ZNK3KJS8JSObject4typeEv
282__ZNK3KJS8JSObject6canPutEPNS_9ExecStateERKNS_10IdentifierE
283__ZNK3KJS8JSObject8toNumberEPNS_9ExecStateE
284__ZNK3KJS8JSObject8toObjectEPNS_9ExecStateE
285__ZNK3KJS8JSObject8toStringEPNS_9ExecStateE
286__ZNK3KJS8JSObject9classInfoEv
287__ZNK3KJS8JSObject9classNameEv
288__ZNK3KJS8JSObject9toBooleanEPNS_9ExecStateE
289__ZNK3KJS9ExecState18lexicalInterpreterEv
290__ZTVN3KJS14StringInstanceE
291__ZTVN3KJS15JSWrapperObjectE
292__ZTVN3KJS19InternalFunctionImpE
293__ZTVN3KJS8JSObjectE
294_jscore_collector_introspection
295_jscore_fastmalloc_introspection
296_kJSClassDefinitionEmpty
297_kjs_strtod
Note: See TracBrowser for help on using the repository browser.