2008-09-30 Darin Adler <darin@apple.com>
Reviewed by Eric Seidel.
- https://bugs.webkit.org/show_bug.cgi?id=21214
work on getting rid of ExecState
Eliminate some unneeded uses of dynamicGlobalObject.
* API/JSClassRef.cpp:
(OpaqueJSClass::contextData): Changed to use a map in the global data instead
of on the global object. Also fixed to use only a single hash table lookup.
* API/JSObjectRef.cpp:
(JSObjectMakeConstructor): Use lexicalGlobalObject rather than dynamicGlobalObject
to get the object prototype.
* kjs/ArrayPrototype.cpp:
(JSC::arrayProtoFuncToString): Use arrayVisitedElements set in global data rather
than in the global object.
(JSC::arrayProtoFuncToLocaleString): Ditto.
(JSC::arrayProtoFuncJoin): Ditto.
* kjs/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData): Don't initialize opaqueJSClassData, since
it's no longer a pointer.
(JSC::JSGlobalData::~JSGlobalData): We still need to delete all the values, but
we don't need to delete the map since it's no longer a pointer.
* kjs/JSGlobalData.h: Made opaqueJSClassData a map instead of a pointer to a map.
Also added arrayVisitedElements.
* kjs/JSGlobalObject.h: Removed arrayVisitedElements.
* kjs/Shell.cpp:
(functionRun): Use lexicalGlobalObject instead of dynamicGlobalObject.
(functionLoad): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37175 268f45cc-cd09-0410-ab3c-d52691b4dbfc
8 files changed