Ignore:
Timestamp:
Jun 30, 2008, 10:45:21 PM (17 years ago)
Author:
[email protected]
Message:

2008-06-30 Geoffrey Garen <[email protected]>

Reviewed by Oliver Hunt.


Removed the "registerBase" abstraction. Since the register file never
reallocates, we can keep direct pointers into it, instead of
<registerBase, offset> tuples.


SunSpider says 0.8% faster.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/DebuggerCallFrame.h

    r34838 r34906  
    4848        } Type;
    4949
    50         DebuggerCallFrame(JSGlobalObject* dynamicGlobalObject, const CodeBlock* codeBlock, ScopeChainNode* scopeChain, JSValue* exception, Register** registerBase, int registerOffset)
     50        DebuggerCallFrame(JSGlobalObject* dynamicGlobalObject, const CodeBlock* codeBlock, ScopeChainNode* scopeChain, Register* r, JSValue* exception)
    5151            : m_dynamicGlobalObject(dynamicGlobalObject)
    5252            , m_codeBlock(codeBlock)
    5353            , m_scopeChain(scopeChain)
     54            , m_registers(r)
    5455            , m_exception(exception)
    55             , m_registerBase(registerBase)
    56             , m_registerOffset(registerOffset)
    5756        {
    5857        }
     
    6766
    6867    private:
    69         Register* r() const;
    7068        Register* callFrame() const;
    7169
     
    7371        const CodeBlock* m_codeBlock;
    7472        ScopeChainNode* m_scopeChain;
     73        Register* m_registers;
    7574        JSValue* m_exception;
    76         Register** m_registerBase;
    77         int m_registerOffset;
    7875    };
    7976
Note: See TracChangeset for help on using the changeset viewer.