Title: [226379] trunk/Source/_javascript_Core
- Revision
- 226379
- Author
- sbar...@apple.com
- Date
- 2018-01-03 16:44:37 -0800 (Wed, 03 Jan 2018)
Log Message
Fix BytecodeParser op_catch assert to work with useProfiler=1
https://bugs.webkit.org/show_bug.cgi?id=181260
Reviewed by Keith Miller.
op_catch was asserting that the current block was empty. This is only true
if the profiler isn't enabled. When the profiler is enabled, we will
insert a CountExecution node before each bytecode. This patch fixes the
assert to work with the profiler.
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (226378 => 226379)
--- trunk/Source/_javascript_Core/ChangeLog 2018-01-04 00:42:21 UTC (rev 226378)
+++ trunk/Source/_javascript_Core/ChangeLog 2018-01-04 00:44:37 UTC (rev 226379)
@@ -1,3 +1,18 @@
+2018-01-03 Saam Barati <sbar...@apple.com>
+
+ Fix BytecodeParser op_catch assert to work with useProfiler=1
+ https://bugs.webkit.org/show_bug.cgi?id=181260
+
+ Reviewed by Keith Miller.
+
+ op_catch was asserting that the current block was empty. This is only true
+ if the profiler isn't enabled. When the profiler is enabled, we will
+ insert a CountExecution node before each bytecode. This patch fixes the
+ assert to work with the profiler.
+
+ * dfg/DFGByteCodeParser.cpp:
+ (JSC::DFG::ByteCodeParser::parseBlock):
+
2018-01-03 Per Arne Vollan <pvol...@apple.com>
[Win][Debug] testapi link error.
Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (226378 => 226379)
--- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2018-01-04 00:42:21 UTC (rev 226378)
+++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2018-01-04 00:44:37 UTC (rev 226379)
@@ -5410,7 +5410,7 @@
NEXT_OPCODE(op_catch);
}
- RELEASE_ASSERT(!m_currentBlock->size());
+ RELEASE_ASSERT(!m_currentBlock->size() || (m_graph.compilation() && m_currentBlock->size() == 1 && m_currentBlock->at(0)->op() == CountExecution));
ValueProfileAndOperandBuffer* buffer = static_cast<ValueProfileAndOperandBuffer*>(currentInstruction[3].u.pointer);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes