Ignore:
Timestamp:
Jan 10, 2012, 2:08:47 PM (13 years ago)
Author:
[email protected]
Message:

CodeBlock::m_numParameters should be encapsulated
https://bugs.webkit.org/show_bug.cgi?id=75985
<rdar://problem/10671020>

Reviewed by Oliver Hunt.

Encapsulated CodeBlock::m_numParameters and hooked argument profile creation
into it. This appears to be performance neutral.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::setNumParameters):
(JSC::CodeBlock::addParameter):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::numParameters):
(JSC::CodeBlock::addressOfNumParameters):
(JSC::CodeBlock::offsetOfNumParameters):
(JSC::CodeBlock::numberOfArgumentValueProfiles):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::addParameter):
(JSC::BytecodeGenerator::emitReturn):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::AbstractState):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::predictArgumentTypes):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGOperations.cpp:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArgumentTypes):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::SpeculativeJIT):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::slideRegisterWindowForCall):
(JSC::Interpreter::dumpRegisters):
(JSC::Interpreter::execute):
(JSC::Interpreter::prepareForRepeatCall):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JITStubs.cpp:

(JSC::arityCheckFor):
(JSC::lazyLinkFor):

  • runtime/Executable.cpp:

(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp

    r103981 r104630  
    5454        , m_constant1(UINT_MAX)
    5555        , m_constants(codeBlock->numberOfConstantRegisters())
    56         , m_numArguments(codeBlock->m_numParameters)
     56        , m_numArguments(codeBlock->numParameters())
    5757        , m_numLocals(codeBlock->m_numCalleeRegisters)
    5858        , m_preservedVars(codeBlock->m_numVars)
     
    24792479        inlineCallFrame.callee.set(*byteCodeParser->m_globalData, byteCodeParser->m_codeBlock->ownerExecutable(), callee);
    24802480        inlineCallFrame.caller = byteCodeParser->currentCodeOrigin();
    2481         inlineCallFrame.arguments.resize(codeBlock->m_numParameters); // Set the number of arguments including this, but don't configure the value recoveries, yet.
     2481        inlineCallFrame.arguments.resize(codeBlock->numParameters()); // Set the number of arguments including this, but don't configure the value recoveries, yet.
    24822482        inlineCallFrame.isCall = isCall(kind);
    24832483        byteCodeParser->m_codeBlock->inlineCallFrames().append(inlineCallFrame);
Note: See TracChangeset for help on using the changeset viewer.