ladybird/Libraries/LibJS/Bytecode
Andreas Kling dafd624177 LibJS: Assert asmint call frame ranges
Assert that inline Call frame-top arithmetic does not wrap after adding
the current interpreter stack top, and that raw native frames copy valid
caller lexical and variable environments.

Also check that the raw native ThrowCompletionOr variant index stays in
the expected 0-or-1 range before the asm fast path branches on it.
2026-05-03 13:10:48 +02:00
..
AsmInterpreter LibJS: Assert asmint call frame ranges 2026-05-03 13:10:48 +02: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: Add a String.fromCharCode builtin opcode 2026-04-12 19:15:50 +02:00
Bytecode.def LibJS: Add a String.fromCharCode builtin opcode 2026-04-12 19:15:50 +02:00
ClassBlueprint.h LibJS: Add ClassBlueprint data structures 2026-02-11 23:57:41 +01:00
Debug.h LibJS: Move bytecode interpreter state to VM 2026-04-13 18:29:43 +02:00
Executable.cpp LibJS: Preserve source positions in bytecode source maps 2026-04-22 22:34:54 +02:00
Executable.h LibJS: Tighten the bytecode validator's argument operand bound 2026-05-03 08:43:19 +02: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 AK: Add SentinelOptional 2026-03-20 12:03:36 +01: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: Store pending completion on generator instead of CompletionCell 2026-05-03 12:24:04 +02: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 AK: Add SentinelOptional 2026-03-20 12:03:36 +01: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 AK: Add SentinelOptional 2026-03-20 12:03:36 +01:00
PropertyNameIterator.cpp LibJS: Cache stable for-in iteration at bytecode sites 2026-04-10 15:12:53 +02:00
PropertyNameIterator.h LibJS: Cache stable for-in iteration at bytecode sites 2026-04-10 15:12:53 +02:00
PutKind.h LibJS: Consolidate Put bytecode instructions and reduce code bloat 2026-03-04 18:53:12 +01:00
RegexTable.cpp LibRegex: Add ECMAScriptRegex and migrate callers 2026-03-27 17:32:19 +01:00
RegexTable.h LibRegex: Add ECMAScriptRegex and migrate callers 2026-03-27 17:32:19 +01: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: Add bytecode validator scaffolding driven from Bytecode.def 2026-05-03 08:43:19 +02:00
Validator.cpp LibJS: Range-check enum-typed bytecode fields in the validator 2026-05-03 08:43:19 +02:00
Validator.h LibJS: Add bytecode validator scaffolding driven from Bytecode.def 2026-05-03 08:43:19 +02:00