1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 18:27:35 +00:00

LibJS: Make Bytecode::Executable GC-allocated

This is a step towards making ExecutionContext easier to allocate.
This commit is contained in:
Andreas Kling 2023-11-27 13:23:59 +01:00
parent ece961f882
commit ecfcc9aef3
13 changed files with 34 additions and 19 deletions

View file

@ -6,6 +6,7 @@
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <LibJS/Bytecode/Executable.h>
#include <LibJS/Runtime/ExecutionContext.h>
#include <LibJS/Runtime/FunctionObject.h>
@ -50,6 +51,8 @@ void ExecutionContext::visit_edges(Cell::Visitor& visitor)
visitor.visit(private_environment);
visitor.visit(context_owner);
visitor.visit(this_value);
if (instruction_stream_iterator.has_value())
visitor.visit(const_cast<Bytecode::Executable*>(instruction_stream_iterator.value().executable()));
script_or_module.visit(
[](Empty) {},
[&](auto& script_or_module) {