LibJS/Bytecode: Move environment coordinate caches to Executable

Moving them out of the respective instructions allows the bytecode
stream to be immutable.
This commit is contained in:
Andreas Kling 2023-10-26 10:39:40 +02:00
parent 5c7e5cc738
commit 2e23f00a2f
Notes: sideshowbarker 2024-07-17 02:14:39 +09:00
7 changed files with 31 additions and 20 deletions

View file

@ -18,6 +18,7 @@ Executable::Executable(
NonnullRefPtr<SourceCode const> source_code,
size_t number_of_property_lookup_caches,
size_t number_of_global_variable_caches,
size_t number_of_environment_variable_caches,
size_t number_of_registers,
Vector<NonnullOwnPtr<BasicBlock>> basic_blocks,
bool is_strict_mode)
@ -31,6 +32,7 @@ Executable::Executable(
{
property_lookup_caches.resize(number_of_property_lookup_caches);
global_variable_caches.resize(number_of_global_variable_caches);
environment_variable_caches.resize(number_of_environment_variable_caches);
}
Executable::~Executable() = default;