Changeset 267062 in webkit for trunk/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
- Timestamp:
- Sep 14, 2020, 6:25:54 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
r266242 r267062 6521 6521 auto bytecode = currentInstruction->as<OpRet>(); 6522 6522 ASSERT(!m_currentBlock->terminal()); 6523 // We have to get the return here even if we know the caller won't use it because the GetLocal may 6524 // be the only thing keeping m_value alive for OSR. 6525 auto returnValue = get(bytecode.m_value); 6526 6523 6527 if (!inlineCallFrame()) { 6524 6528 // Simple case: we are just producing a return 6525 addToGraph(Return, get(bytecode.m_value));6529 addToGraph(Return, returnValue); 6526 6530 flushForReturn(); 6527 6531 LAST_OPCODE(op_ret); … … 6530 6534 flushForReturn(); 6531 6535 if (m_inlineStackTop->m_returnValue.isValid()) 6532 setDirect(m_inlineStackTop->m_returnValue, get(bytecode.m_value), ImmediateSetWithFlush);6536 setDirect(m_inlineStackTop->m_returnValue, returnValue, ImmediateSetWithFlush); 6533 6537 6534 6538 if (!m_inlineStackTop->m_continuationBlock && m_currentIndex.offset() + currentInstruction->size() != m_inlineStackTop->m_codeBlock->instructions().size()) {
Note:
See TracChangeset
for help on using the changeset viewer.