Ignore:
Timestamp:
Feb 17, 2015, 1:41:25 PM (10 years ago)
Author:
[email protected]
Message:

StackLayoutPhase should use CodeBlock::usesArguments rather than FunctionExecutable::usesArguments
https://bugs.webkit.org/show_bug.cgi?id=141721
rdar://problem/17198633

Reviewed by Michael Saboff.

I've seen cases where the two are out of sync. We know we can trust the CodeBlock::usesArguments because
we use it everywhere else.

No test because I could never reproduce the crash.

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::usesArguments):

  • dfg/DFGStackLayoutPhase.cpp:

(JSC::DFG::StackLayoutPhase::run):

File:
1 edited

Legend:

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

    r179863 r180237  
    107107        for (InlineCallFrameSet::iterator iter = m_graph.m_plan.inlineCallFrames->begin(); !!iter; ++iter) {
    108108            InlineCallFrame* inlineCallFrame = *iter;
    109             if (!inlineCallFrame->executable->usesArguments())
     109            if (!m_graph.usesArguments(inlineCallFrame))
    110110                continue;
    111111           
     
    176176            InlineCallFrame* inlineCallFrame = data.inlineCallFrame;
    177177           
    178             if (inlineCallFrame->executable->usesArguments()) {
     178            if (m_graph.usesArguments(inlineCallFrame)) {
    179179                inlineCallFrame->argumentsRegister = virtualRegisterForLocal(
    180180                    allocation[m_graph.argumentsRegisterFor(inlineCallFrame).toLocal()]);
Note: See TracChangeset for help on using the changeset viewer.