Ignore:
Timestamp:
Sep 19, 2008, 8:00:43 PM (17 years ago)
Author:
[email protected]
Message:

Improve peformance of local variable initialisation.

Reviewed by Maciej Stachowiak

Pull local and constant initialisation out of slideRegisterWindowForCall
and into its own opcode. This allows the JIT to generate the initialisation
code for a function directly into the instruction stream and so avoids a few
branches on function entry.

Results a 1% progression in SunSpider, particularly in a number of the bitop
tests where the called functions are very fast.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/VM/CodeGenerator.cpp

    r36660 r36695  
    269269    , m_lastOpcodeID(op_end)
    270270{
     271    emitOpcode(op_initialise_locals);
    271272    codeBlock->globalData = m_globalData;
    272273
     
    317318    , m_lastOpcodeID(op_end)
    318319{
     320    emitOpcode(op_initialise_locals);
    319321    codeBlock->globalData = m_globalData;
    320322
Note: See TracChangeset for help on using the changeset viewer.