Ignore:
Timestamp:
Dec 5, 2007, 6:31:41 PM (17 years ago)
Author:
[email protected]
Message:

JavaScriptCore:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and
functions accessing data members from Interpreter to JSGlobalObject.
Changed Interpreter member functions to static functions.


This resolves a bug in global object bootstrapping, where the global
ExecState could be used when uninitialized.


This is a big change, but it's mostly code motion and renaming.


Layout and JS tests, and testjsglue and testapi, pass. SunSpider reports
a .7% regression, but Shark sees no difference related to this patch,
and SunSpider reported a .7% speedup from an earlier step in this
refactoring, so I think it's fair to call that a wash.

JavaScriptGlue:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
subclass with JSGlobalObject subclass.


  • JSRun.cpp: (JSRun::JSRun): (JSRun::Evaluate): (JSRun::CheckSyntax):
  • JSRun.h: (JSGlueGlobalObject::JSGlueGlobalObject):
  • JSUtils.cpp: (KJSValueToCFTypeInternal):
  • JSValueWrapper.cpp: (getThreadGlobalExecState):

WebCore:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject. Changed Interpreter
member functions to static functions. Same for the subclass,
ScriptInterpreter.


This is a big change, but it's mostly code motion and renaming.

WebKit/mac:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject.


  • WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]):

WebKit/win:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject.


  • WebFrame.cpp: (WebFrame::globalContext): (WebFrame::attachScriptDebugger): (WebFrame::windowObjectCleared):
  • WebScriptDebugger.cpp: (WebScriptDebugger::WebScriptDebugger):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/bindings/runtime_root.cpp

    r28328 r28468  
    5151// fix them by adding a JSObject to RootObject dictionary.
    5252
    53 RootObject* findRootObject(JSObject* jsObject)
     53RootObject* findProtectingRootObject(JSObject* jsObject)
    5454{
    5555    RootObjectSet::const_iterator end = rootObjectSet()->end();
     
    6161}
    6262
    63 RootObject* findRootObject(Interpreter* interpreter)
     63RootObject* findRootObject(JSGlobalObject* globalObject)
    6464{
    6565    RootObjectSet::const_iterator end = rootObjectSet()->end();
    6666    for (RootObjectSet::const_iterator it = rootObjectSet()->begin(); it != end; ++it) {
    67         if ((*it)->interpreter() == interpreter)
     67        if ((*it)->globalObject() == globalObject)
    6868            return *it;
    6969    }
     
    281281}
    282282
    283 Interpreter* RootObject::interpreter() const
    284 {
    285     ASSERT(m_isValid);
    286     return m_globalObject->interpreter();
    287 }
    288 
    289283JSGlobalObject* RootObject::globalObject() const
    290284{
Note: See TracChangeset for help on using the changeset viewer.