mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-26 11:20:03 +00:00
Everywhere: Hoist the Libraries folder to the top-level
This commit is contained in:
committed by
Andreas Kling
parent
950e819ee7
commit
93712b24bf
40
Libraries/LibJS/Bytecode/BasicBlock.cpp
Normal file
40
Libraries/LibJS/Bytecode/BasicBlock.cpp
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright (c) 2021, Andreas Kling <andreas@ladybird.org>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <AK/String.h>
|
||||
#include <LibJS/Bytecode/BasicBlock.h>
|
||||
#include <LibJS/Bytecode/Op.h>
|
||||
|
||||
namespace JS::Bytecode {
|
||||
|
||||
NonnullOwnPtr<BasicBlock> BasicBlock::create(u32 index, String name)
|
||||
{
|
||||
return adopt_own(*new BasicBlock(index, move(name)));
|
||||
}
|
||||
|
||||
BasicBlock::BasicBlock(u32 index, String name)
|
||||
: m_index(index)
|
||||
, m_name(move(name))
|
||||
{
|
||||
}
|
||||
|
||||
BasicBlock::~BasicBlock()
|
||||
{
|
||||
Bytecode::InstructionStreamIterator it(instruction_stream());
|
||||
while (!it.at_end()) {
|
||||
auto& to_destroy = (*it);
|
||||
++it;
|
||||
Instruction::destroy(const_cast<Instruction&>(to_destroy));
|
||||
}
|
||||
}
|
||||
|
||||
void BasicBlock::grow(size_t additional_size)
|
||||
{
|
||||
m_buffer.grow_capacity(m_buffer.size() + additional_size);
|
||||
m_buffer.resize(m_buffer.size() + additional_size);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user