Ignore:
Timestamp:
Jan 10, 2012, 6:54:06 PM (13 years ago)
Author:
[email protected]
Message:

DFG inlining block linking compares BlockIndex against bytecode index
https://bugs.webkit.org/show_bug.cgi?id=76018
<rdar://problem/10671979>

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseCodeBlock):

LayoutTests:

  • fast/js/dfg-inline-many-blocks-expected.txt: Added.
  • fast/js/dfg-inline-many-blocks.html: Added.
  • fast/js/script-tests/dfg-inline-many-blocks.js: Added.

(stuff):
(foo):
(fuzz):
(baz):
(bar):

File:
1 edited

Legend:

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

    r104630 r104660  
    25572557                    // block in the blockLinkingTargets list. If it's not then the last block will
    25582558                    // have a lower bytecode index that the one we're about to give to this block.
    2559                     if (m_inlineStackTop->m_blockLinkingTargets.isEmpty() || m_inlineStackTop->m_blockLinkingTargets.last() != m_currentIndex) {
     2559                    if (m_inlineStackTop->m_blockLinkingTargets.isEmpty() || m_graph.m_blocks[m_inlineStackTop->m_blockLinkingTargets.last()]->bytecodeBegin != m_currentIndex) {
    25602560                        // Make the block linkable.
    2561                         ASSERT(m_inlineStackTop->m_blockLinkingTargets.isEmpty() || m_inlineStackTop->m_blockLinkingTargets.last() < m_currentIndex);
     2561                        ASSERT(m_inlineStackTop->m_blockLinkingTargets.isEmpty() || m_graph.m_blocks[m_inlineStackTop->m_blockLinkingTargets.last()]->bytecodeBegin < m_currentIndex);
    25622562                        m_inlineStackTop->m_blockLinkingTargets.append(m_graph.m_blocks.size() - 1);
    25632563                    }
Note: See TracChangeset for help on using the changeset viewer.