Changeset 37213 in webkit for trunk/JavaScriptCore/kjs


Ignore:
Timestamp:
Oct 2, 2008, 3:19:05 PM (17 years ago)
Author:
[email protected]
Message:

2008-10-02 Cameron Zwarich <[email protected]>

Reviewed by Geoff Garen.

Bug 21317: Replace RegisterFile size and capacity information with Register pointers
<https://bugs.webkit.org/show_bug.cgi?id=21317>

This is a 2.3% speedup on the V8 DeltaBlue benchmark, a 3.3% speedup on
the V8 Raytrace benchmark, and a 1.0% speedup on SunSpider.

  • VM/Machine.cpp: (JSC::slideRegisterWindowForCall): (JSC::Machine::callEval): (JSC::Machine::execute): (JSC::Machine::privateExecute): (JSC::Machine::cti_op_call_JSFunction): (JSC::Machine::cti_op_construct_JSConstruct):
  • VM/RegisterFile.cpp: (JSC::RegisterFile::~RegisterFile):
  • VM/RegisterFile.h: (JSC::RegisterFile::RegisterFile): (JSC::RegisterFile::start): (JSC::RegisterFile::end): (JSC::RegisterFile::size): (JSC::RegisterFile::shrink): (JSC::RegisterFile::grow): (JSC::RegisterFile::lastGlobal): (JSC::RegisterFile::markGlobals): (JSC::RegisterFile::markCallFrames):
  • kjs/JSGlobalObject.cpp: (JSC::JSGlobalObject::copyGlobalsTo):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/JSGlobalObject.cpp

    r37088 r37213  
    441441
    442442    if (d()->registerArray) {
    443         memcpy(registerFile.base() - d()->registerArraySize, d()->registerArray.get(), d()->registerArraySize * sizeof(Register));
    444         setRegisters(registerFile.base(), 0, 0);
     443        memcpy(registerFile.start() - d()->registerArraySize, d()->registerArray.get(), d()->registerArraySize * sizeof(Register));
     444        setRegisters(registerFile.start(), 0, 0);
    445445    }
    446446}
Note: See TracChangeset for help on using the changeset viewer.