Ignore:
Timestamp:
Aug 26, 2014, 9:46:10 AM (11 years ago)
Author:
[email protected]
Message:

Unreviewed, rolling out r172940.
https://bugs.webkit.org/show_bug.cgi?id=136256

Caused assertions on fast/storage/serialized-script-
value.html, and possibly flakiness on more tests (Requested by
ap on #webkit).

Reverted changeset:

"FTL should be able to do polymorphic call inlining"
https://bugs.webkit.org/show_bug.cgi?id=135145
http://trac.webkit.org/changeset/172940

File:
1 edited

Legend:

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

    r172940 r172961  
    143143            }
    144144               
    145             case CheckCell: {
    146                 if (m_state.forNode(node->child1()).value() != node->cellOperand()->value())
     145            case CheckFunction: {
     146                if (m_state.forNode(node->child1()).value() != node->function()->value())
    147147                    break;
    148148                node->convertToPhantom();
     
    385385                break;
    386386            }
    387                
    388             case ProfiledCall:
    389             case ProfiledConstruct: {
    390                 if (!m_state.forNode(m_graph.varArgChild(node, 0)).m_value)
    391                     break;
    392                
    393                 // If we were able to prove that the callee is a constant then the normal call
    394                 // inline cache will record this callee. This means that there is no need to do any
    395                 // additional profiling.
    396                 node->setOp(node->op() == ProfiledCall ? Call : Construct);
    397                 eliminated = true;
    398                 break;
    399             }
    400387
    401388            default:
Note: See TracChangeset for help on using the changeset viewer.