ladybird/Libraries/LibJS/Bytecode
Andreas Kling bc4379983f LibJS: Improve bytecode executable dump format
Add a metadata header showing register count, block count, local
variable names, and the constants table. Resolve jump targets to
block labels (e.g. "block1") instead of raw hex addresses, and add
visual separation between basic blocks.

Make identifier and property key formatting more concise by using
backtick quoting and showing base_identifier as a trailing
parenthetical hint that joins the base and property names.

Generate a stable name for each executable by hashing the source
text it covers (stable across codegen changes). Named functions
show as "foo$9beb91ec", anonymous ones as "$43362f3f". Also show
the source filename, line, and column.
2026-03-20 00:51:23 -05:00
..
AsmInterpreter LibJS: Remove dead C++ bytecode compilation functions 2026-03-19 21:55:10 -05:00
BasicBlock.cpp LibJS: Stop worrying about Instruction destructors 2025-11-21 09:46:03 +01:00
BasicBlock.h LibJS: Remove remaining C++ pipeline artifacts 2026-03-19 21:55:10 -05:00
BuiltinAbstractOperationsEnabled.h LibJS: Introduce NativeJavaScriptBackedFunction 2025-11-30 11:54:54 +01:00
Builtins.h LibJS: Remove remaining C++ pipeline artifacts 2026-03-19 21:55:10 -05:00
Bytecode.def LibJS: Add Mov2/Mov3 instructions to reduce dispatch overhead 2026-03-11 17:04:32 +01:00
ClassBlueprint.h LibJS: Add ClassBlueprint data structures 2026-02-11 23:57:41 +01:00
Executable.cpp LibJS: Improve bytecode executable dump format 2026-03-20 00:51:23 -05:00
Executable.h LibJS: Move source range cache from ExecutionContext to Executable 2026-03-11 13:33:47 +01:00
FormatOperand.h LibJS: Improve bytecode executable dump format 2026-03-20 00:51:23 -05:00
IdentifierTable.cpp LibJS+LibWeb+WebContent: Port JS::PropertyKey to UTF-16 2025-08-05 07:07:15 -04:00
IdentifierTable.h LibJS: Give Interpreter a direct pointer to the identifier table 2025-10-07 23:50:51 +02:00
Instruction.cpp LibJS: Flatten Operand to 32-bit index in bytecode instruction stream 2025-12-09 21:44:13 -06:00
Instruction.h Meta: Reformat QtCreator file-listing script for readability 2026-02-23 13:10:03 +01:00
Interpreter.cpp LibJS: Remove C++ AST 2026-03-19 21:55:10 -05:00
Interpreter.h LibJS: Remove dead C++ bytecode compilation functions 2026-03-19 21:55:10 -05:00
Label.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Label.h LibJS: Revert Enable EXPLICIT_SYMBOL_EXPORT 2025-07-22 11:51:29 -04:00
Operand.h LibJS: Flatten Operand to 32-bit index in bytecode instruction stream 2025-12-09 21:44:13 -06:00
PropertyAccess.h LibJS: Remove dead C++ bytecode compilation functions 2026-03-19 21:55:10 -05:00
PropertyKeyTable.cpp LibJS: Cache fully-formed PropertyKeys in Executable 2025-12-11 14:34:45 -06:00
PropertyKeyTable.h LibJS+LibWeb: Add missing GC marking visits 2026-01-07 12:48:58 +01:00
PutKind.h LibJS: Consolidate Put bytecode instructions and reduce code bloat 2026-03-04 18:53:12 +01:00
RegexTable.cpp LibJS: Don't rerun regexp optimizer every time a regexp literal is used 2025-12-12 11:43:35 -06:00
RegexTable.h LibJS: Don't rerun regexp optimizer every time a regexp literal is used 2025-12-12 11:43:35 -06:00
Register.h LibJS: Replace implicit environment stack with explicit registers 2026-02-09 16:35:39 +01:00
StringTable.cpp LibJS+LibWeb: Port interned bytecode strings to UTF-16 2025-08-14 10:27:08 +02:00
StringTable.h LibJS+LibWeb: Port interned bytecode strings to UTF-16 2025-08-14 10:27:08 +02:00