Ignore:
Timestamp:
Jun 15, 2009, 1:17:50 PM (16 years ago)
Author:
[email protected]
Message:

2009-06-15 Gavin Barraclough <[email protected]>

Reviewed by Geoff Hunt & Oliver Garen.

We are currently generating two copies of the slow path for op_call for no reason. Stop that.

Originally op_call used two slow paths since the first set up the pointer to the CallLinkInfo
for use when linking. However this is now looked up using the return address (as we do for
property accesses) so the two paths are now identical.

No performance impact, reduces memory footprint.

  • bytecode/CodeBlock.h:
  • jit/JIT.cpp: (JSC::JIT::privateCompile): (JSC::JIT::linkCall):
  • jit/JIT.h:
  • jit/JITCall.cpp: (JSC::JIT::compileOpCallSlowCase):
  • jit/JITStubs.cpp: (JSC::JITStubs::DEFINE_STUB_FUNCTION):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/jit/JITStubs.cpp

    r44523 r44693  
    12481248
    12491249    CallLinkInfo* callLinkInfo = &stackFrame.callFrame->callerFrame()->codeBlock()->getCallLinkInfo(stackFrame.args[1].returnAddress());
    1250     JIT::linkCall(callee, codeBlock, jitCode, callLinkInfo, stackFrame.args[2].int32());
     1250    JIT::linkCall(callee, codeBlock, jitCode, callLinkInfo, stackFrame.args[2].int32(), stackFrame.globalData);
    12511251
    12521252    return jitCode.addressForCall().executableAddress();
Note: See TracChangeset for help on using the changeset viewer.