Changeset 194040 in webkit


Ignore:
Timestamp:
Dec 14, 2015 11:39:45 AM (8 years ago)
Author:
mark.lam@apple.com
Message:

We should not employ the snippet code in the DFG if no OSR exit was previously encountered.
https://bugs.webkit.org/show_bug.cgi?id=152255

Reviewed by Saam Barati.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

Location:
trunk/Source/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r194039 r194040  
     12015-12-14  Mark Lam  <mark.lam@apple.com>
     2
     3        We should not employ the snippet code in the DFG if no OSR exit was previously encountered.
     4        https://bugs.webkit.org/show_bug.cgi?id=152255
     5
     6        Reviewed by Saam Barati.
     7
     8        * dfg/DFGFixupPhase.cpp:
     9        (JSC::DFG::FixupPhase::fixupNode):
     10
    1112015-12-14  Filip Pizlo  <fpizlo@apple.com>
    212
  • trunk/Source/JavaScriptCore/dfg/DFGFixupPhase.cpp

    r194036 r194040  
    186186        case ArithSub: {
    187187            if (op == ArithSub
    188                 && (Node::shouldSpeculateUntypedForArithmetic(node->child1().node(), node->child2().node())
    189                     || m_graph.hasExitSite(node->origin.semantic, BadType))) {
     188                && Node::shouldSpeculateUntypedForArithmetic(node->child1().node(), node->child2().node())
     189                && m_graph.hasExitSite(node->origin.semantic, BadType)) {
    190190
    191191                fixEdge<UntypedUse>(node->child1());
     
    231231            Edge& rightChild = node->child2();
    232232            if (Node::shouldSpeculateUntypedForArithmetic(leftChild.node(), rightChild.node())
    233                 || m_graph.hasExitSite(node->origin.semantic, BadType)) {
     233                && m_graph.hasExitSite(node->origin.semantic, BadType)) {
    234234                fixEdge<UntypedUse>(leftChild);
    235235                fixEdge<UntypedUse>(rightChild);
     
    269269            Edge& rightChild = node->child2();
    270270            if (op == ArithDiv
    271                 && (Node::shouldSpeculateUntypedForArithmetic(leftChild.node(), rightChild.node())
    272                     || m_graph.hasExitSite(node->origin.semantic, BadType))) {
     271                && Node::shouldSpeculateUntypedForArithmetic(leftChild.node(), rightChild.node())
     272                && m_graph.hasExitSite(node->origin.semantic, BadType)) {
    273273                fixEdge<UntypedUse>(leftChild);
    274274                fixEdge<UntypedUse>(rightChild);
Note: See TracChangeset for help on using the changeset viewer.