Changeset 192993 in webkit for trunk/Source/JavaScriptCore/dfg/DFGFixupPhase.cpp
- Timestamp:
- Dec 2, 2015, 9:42:56 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/dfg/DFGFixupPhase.cpp
r192882 r192993 228 228 229 229 case ArithMul: { 230 Edge& leftChild = node->child1(); 231 Edge& rightChild = node->child2(); 232 if (Node::shouldSpeculateUntypedForArithmetic(leftChild.node(), rightChild.node()) 233 || m_graph.hasExitSite(node->origin.semantic, BadType)) { 234 fixEdge<UntypedUse>(leftChild); 235 fixEdge<UntypedUse>(rightChild); 236 node->setResult(NodeResultJS); 237 break; 238 } 230 239 if (m_graph.mulShouldSpeculateInt32(node, FixupPass)) { 231 fixIntOrBooleanEdge( node->child1());232 fixIntOrBooleanEdge( node->child2());240 fixIntOrBooleanEdge(leftChild); 241 fixIntOrBooleanEdge(rightChild); 233 242 if (bytecodeCanTruncateInteger(node->arithNodeFlags())) 234 243 node->setArithMode(Arith::Unchecked); … … 240 249 } 241 250 if (m_graph.mulShouldSpeculateMachineInt(node, FixupPass)) { 242 fixEdge<Int52RepUse>( node->child1());243 fixEdge<Int52RepUse>( node->child2());251 fixEdge<Int52RepUse>(leftChild); 252 fixEdge<Int52RepUse>(rightChild); 244 253 if (bytecodeCanIgnoreNegativeZero(node->arithNodeFlags())) 245 254 node->setArithMode(Arith::CheckOverflow); … … 249 258 break; 250 259 } 251 fixDoubleOrBooleanEdge( node->child1());252 fixDoubleOrBooleanEdge( node->child2());260 fixDoubleOrBooleanEdge(leftChild); 261 fixDoubleOrBooleanEdge(rightChild); 253 262 node->setResult(NodeResultDouble); 254 263 break;
Note:
See TracChangeset
for help on using the changeset viewer.