Ignore:
Timestamp:
Sep 22, 2013, 10:03:59 AM (12 years ago)
Author:
[email protected]
Message:

Get rid of CodeBlock::RareData::callReturnIndexVector and most of the evil that it introduced
https://bugs.webkit.org/show_bug.cgi?id=121766

Reviewed by Andreas Kling.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::shrinkToFit):

  • bytecode/CodeBlock.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileExceptionHandlers):
(JSC::DFG::JITCompiler::link):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/bytecode/CodeBlock.h

    r156184 r156247  
    200200#endif // ENABLE(JIT)
    201201
    202     unsigned bytecodeOffset(ExecState*, ReturnAddressPtr);
    203 
    204202    void unlinkIncomingCalls();
    205203
    206204#if ENABLE(JIT)
    207     unsigned bytecodeOffsetForCallAtIndex(unsigned index)
    208     {
    209         if (!m_rareData)
    210             return 1;
    211         Vector<CallReturnOffsetToBytecodeOffset, 0, UnsafeVectorOverflow>& callIndices = m_rareData->m_callReturnIndexVector;
    212         if (!callIndices.size())
    213             return 1;
    214         // FIXME: Fix places in DFG that call out to C that don't set the CodeOrigin. https://bugs.webkit.org/show_bug.cgi?id=118315
    215         ASSERT(index < m_rareData->m_callReturnIndexVector.size());
    216         if (index >= m_rareData->m_callReturnIndexVector.size())
    217             return 1;
    218         return m_rareData->m_callReturnIndexVector[index].bytecodeOffset;
    219     }
    220 
    221205    void unlinkCalls();
    222206       
     
    581565
    582566    bool hasExpressionInfo() { return m_unlinkedCode->hasExpressionInfo(); }
    583 
    584 #if ENABLE(JIT)
    585     Vector<CallReturnOffsetToBytecodeOffset, 0, UnsafeVectorOverflow>& callReturnIndexVector()
    586     {
    587         createRareDataIfNecessary();
    588         return m_rareData->m_callReturnIndexVector;
    589     }
    590 #endif
    591567
    592568#if ENABLE(DFG_JIT)
     
    11461122        EvalCodeCache m_evalCodeCache;
    11471123
    1148 #if ENABLE(JIT)
    1149         Vector<CallReturnOffsetToBytecodeOffset, 0, UnsafeVectorOverflow> m_callReturnIndexVector;
    1150 #endif
    11511124#if ENABLE(DFG_JIT)
    11521125        SegmentedVector<InlineCallFrame, 4> m_inlineCallFrames;
Note: See TracChangeset for help on using the changeset viewer.