Changeset 260549 in webkit
- Timestamp:
- Apr 22, 2020 7:14:22 PM (4 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r260522 r260549 1 2020-04-22 Saam Barati <sbarati@apple.com> 2 3 Edge use kind asserts are wrong for BigInt32 on ValueBitLShift 4 https://bugs.webkit.org/show_bug.cgi?id=210872 5 6 Reviewed by Yusuke Suzuki, Mark Lam, and Robin Morisset. 7 8 This is already covered by the v8 tests Yusuke checked in. 9 10 * dfg/DFGSpeculativeJIT.cpp: 11 (JSC::DFG::SpeculativeJIT::emitUntypedOrAnyBigIntBitOp): 12 * ftl/FTLLowerDFGToB3.cpp: 13 (JSC::FTL::DFG::LowerDFGToB3::compileValueBitLShift): 14 (JSC::FTL::DFG::LowerDFGToB3::emitBinaryBitOpSnippet): 15 1 16 2020-04-22 Yusuke Suzuki <ysuzuki@apple.com> 2 17 -
trunk/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
r260490 r260549 3620 3620 Edge& rightChild = node->child2(); 3621 3621 3622 ASSERT(leftChild.useKind() == UntypedUse || leftChild.useKind() == AnyBigIntUse || rightChild.useKind() == UntypedUse || rightChild.useKind() == AnyBigIntUse);3622 DFG_ASSERT(m_jit.graph(), node, node->isBinaryUseKind(UntypedUse) || node->isBinaryUseKind(AnyBigIntUse) || node->isBinaryUseKind(HeapBigIntUse) || node->isBinaryUseKind(BigInt32Use)); 3623 3623 3624 3624 if (isKnownNotNumber(leftChild.node()) || isKnownNotNumber(rightChild.node())) { -
trunk/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
r260517 r260549 3471 3471 } 3472 3472 3473 ASSERT(m_node->isBinaryUseKind(UntypedUse));3473 DFG_ASSERT(m_graph, m_node, m_node->isBinaryUseKind(UntypedUse) || m_node->isBinaryUseKind(AnyBigIntUse) || m_node->isBinaryUseKind(BigInt32Use)); 3474 3474 emitBinaryBitOpSnippet<JITLeftShiftGenerator>(operationValueBitLShift); 3475 3475 } … … 14753 14753 Node* node = m_node; 14754 14754 14755 ASSERT(node->isBinaryUseKind(UntypedUse) || node->isBinaryUseKind(AnyBigIntUse));14755 DFG_ASSERT(m_graph, node, node->isBinaryUseKind(UntypedUse) || node->isBinaryUseKind(AnyBigIntUse) || node->isBinaryUseKind(BigInt32Use)); 14756 14756 LValue left = lowJSValue(node->child1(), ManualOperandSpeculation); 14757 14757 LValue right = lowJSValue(node->child2(), ManualOperandSpeculation);
Note: See TracChangeset
for help on using the changeset viewer.