mirror of
https://github.com/Samsung/escargot.git
synced 2026-06-22 10:01:50 +00:00
Implement general tail call optimization
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
This commit is contained in:
parent
65558531f8
commit
023b7ea014
27 changed files with 368 additions and 89 deletions
|
|
@ -297,7 +297,7 @@ void CodeCacheWriter::storeByteCodeBlock(ByteCodeBlock* block)
|
|||
m_buffer.ensureSize(2 * sizeof(bool) + 2 * sizeof(uint16_t));
|
||||
m_buffer.put(block->m_shouldClearStack);
|
||||
m_buffer.put(block->m_isOwnerMayFreed);
|
||||
m_buffer.put(block->m_needsExtendedExectuionState);
|
||||
m_buffer.put(block->m_needsExtendedExecutionState);
|
||||
m_buffer.put((uint16_t)block->m_requiredOperandRegisterNumber);
|
||||
m_buffer.put((uint16_t)block->m_requiredTotalRegisterNumber);
|
||||
|
||||
|
|
@ -859,7 +859,7 @@ ByteCodeBlock* CodeCacheReader::loadByteCodeBlock(Context* context, InterpretedC
|
|||
|
||||
block->m_shouldClearStack = m_buffer.get<bool>();
|
||||
block->m_isOwnerMayFreed = m_buffer.get<bool>();
|
||||
block->m_needsExtendedExectuionState = m_buffer.get<bool>();
|
||||
block->m_needsExtendedExecutionState = m_buffer.get<bool>();
|
||||
block->m_requiredOperandRegisterNumber = m_buffer.get<uint16_t>();
|
||||
block->m_requiredTotalRegisterNumber = m_buffer.get<uint16_t>();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue