Skip to content
  • oliver@apple.com's avatar
    fourthTier: Rationalize Node::replacement · 6c816f4b
    oliver@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=118774
    
    Reviewed by Oliver Hunt.
    
    - Clearing of replacements is now done in Graph::clearReplacements().
    
    - New nodes now have replacement set to 0.
    
    - Node::replacement is now part of a 'misc' union. I'll be putting at least
      one other field into that union as part of LICM work (see
      https://bugs.webkit.org/show_bug.cgi?id=118749).
    
    * dfg/DFGCPSRethreadingPhase.cpp:
    (JSC::DFG::CPSRethreadingPhase::run):
    (JSC::DFG::CPSRethreadingPhase::freeUnnecessaryNodes):
    (JSC::DFG::CPSRethreadingPhase::canonicalizeGetLocalFor):
    * dfg/DFGCSEPhase.cpp:
    (JSC::DFG::CSEPhase::run):
    (JSC::DFG::CSEPhase::setReplacement):
    (JSC::DFG::CSEPhase::performBlockCSE):
    * dfg/DFGGraph.cpp:
    (DFG):
    (JSC::DFG::Graph::clearReplacements):
    * dfg/DFGGraph.h:
    (JSC::DFG::Graph::performSubstitutionForEdge):
    (Graph):
    * dfg/DFGNode.h:
    (JSC::DFG::Node::Node):
    * dfg/DFGSSAConversionPhase.cpp:
    (JSC::DFG::SSAConversionPhase::run):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153278 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    6c816f4b