Ignore:
Timestamp:
Aug 21, 2014, 10:30:02 PM (11 years ago)
Author:
[email protected]
Message:

r171362 accidentally increased the size of InlineCallFrame.
<https://webkit.org/b/136141>

Reviewed by Filip Pizlo.

r171362 increased the size of InlineCallFrame::kind to 2 bits. This increased
the size of InlineCallFrame from 72 to 80 though not intentionally. The fix
is to reduce the size of InlineCallFrame::stackOffset to 29 bits.

Also added an assert to ensure that we never set a value that exceeds the size
of InlineCallFrame::stackOffset.

  • bytecode/CodeOrigin.h:

(JSC::InlineCallFrame::setStackOffset):

  • dfg/DFGByteCodeParser.cpp:

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

File:
1 edited

Legend:

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

    r172808 r172853  
    34043404            byteCodeParser->m_codeBlock->ownerExecutable(),
    34053405            codeBlock->ownerExecutable());
    3406         m_inlineCallFrame->stackOffset = inlineCallFrameStart.offset() - JSStack::CallFrameHeaderSize;
     3406        m_inlineCallFrame->setStackOffset(inlineCallFrameStart.offset() - JSStack::CallFrameHeaderSize);
    34073407        if (callee) {
    34083408            m_inlineCallFrame->calleeRecovery = ValueRecovery::constant(callee);
Note: See TracChangeset for help on using the changeset viewer.