ladybird/Userland/Libraries/LibJS/Bytecode
Andreas Kling fb979dcf34 LibJS/Bytecode: Make Bytecode::Interpreter participate in GC marking
Since the relationship between VM and Bytecode::Interpreter is now
clear, we can have VM ask the Interpreter for roots in the GC marking
pass. This avoids having to register and unregister handles and
MarkedVectors over and over.

Since GeneratorObject can also own a RegisterWindow, we share the code
in a RegisterWindow::visit_edges() helper.

~4% speed-up on Kraken/stanford-crypto-ccm.js :^)
2023-07-02 14:50:02 +02:00
..
Pass LibJS: Fix mix-up between assignment and comparison 2023-05-02 07:03:57 -04:00
ASTCodegen.cpp LibJS/Bytecode: Infer name of anonymous exported classes when possible 2023-07-02 12:18:25 +02:00
BasicBlock.cpp Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
BasicBlock.h LibJS/Bytecode: Make Bytecode::Interpreter participate in GC marking 2023-07-02 14:50:02 +02:00
CodeGenerationError.cpp LibJS: Add to_string definitions to CodeGenerationError and ParserError 2023-02-17 09:14:23 -05:00
CodeGenerationError.h LibJS: Remove unused CodeGenerationError::to_deprecated_string 2023-02-17 09:14:23 -05:00
Executable.cpp Everywhere: Stop using NonnullOwnPtrVector 2023-03-06 23:46:35 +01:00
Executable.h Everywhere: Remove NonnullOwnPtr.h includes 2023-03-06 23:46:35 +01:00
Generator.cpp LibJS: Use the IdentifierTable for NewFunction and NewClass lhs names 2023-06-29 05:32:08 +02:00
Generator.h LibJS: Use the IdentifierTable for NewFunction and NewClass lhs names 2023-06-29 05:32:08 +02:00
IdentifierTable.cpp AK+Everywhere: Rename FlyString to DeprecatedFlyString 2023-01-09 23:00:24 +00:00
IdentifierTable.h AK+Everywhere: Rename FlyString to DeprecatedFlyString 2023-01-09 23:00:24 +00:00
Instruction.cpp LibJS: Move Instruction::length() to the Op.h header 2021-06-09 09:24:32 +02:00
Instruction.h LibJS/Bytecode: Throw on destructuring object assignment to nullish LHS 2023-06-25 09:19:53 +02:00
Interpreter.cpp LibJS/Bytecode: Make Bytecode::Interpreter participate in GC marking 2023-07-02 14:50:02 +02:00
Interpreter.h LibJS/Bytecode: Make Bytecode::Interpreter participate in GC marking 2023-07-02 14:50:02 +02:00
Label.h Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
Op.cpp LibJS: Stop using execute_ast_node in NewClass instruction 2023-06-29 07:14:14 +02:00
Op.h LibJS: Use the IdentifierTable for NewFunction and NewClass lhs names 2023-06-29 05:32:08 +02:00
PassManager.h AK: Rename Time to Duration 2023-05-24 23:18:07 +02:00
Register.h LibJS: Make Register comparable 2022-12-03 15:25:05 +00:00
StringTable.cpp AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
StringTable.h AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00