ladybird/Userland/Libraries/LibJS/Bytecode
Luke Wilde 125a71d36d LibJS/Bytecode: Define named functions as a variable inside their scope
This allows you to recurse into a named function that is stored in a
variable. For example, this would previously print "wrong" instead of
"right":
```js
function g() { console.log("wrong") }
f = function g(i) { if (i !== 1) g(1); else console.log("right"); }
f()
```
2022-06-13 07:13:03 +04:30
..
Pass LibJS/Bytecode: Replace merged block references before copying them 2022-03-14 22:28:53 +01:00
ASTCodegen.cpp LibJS/Bytecode: Define named functions as a variable inside their scope 2022-06-13 07:13:03 +04:30
BasicBlock.cpp
BasicBlock.h
CodeGenerationError.h LibJS: Make ASTNode::generate_bytecode() fallible 2022-02-13 14:41:33 +00:00
Executable.cpp
Executable.h
Generator.cpp LibJS/Bytecode: Implement break/continue labels 2022-06-13 07:13:03 +04:30
Generator.h LibJS/Bytecode: Implement break/continue labels 2022-06-13 07:13:03 +04:30
IdentifierTable.cpp
IdentifierTable.h
Instruction.cpp
Instruction.h LibJS/Bytecode: Make typeof return "undefined" on unresolvable IDs 2022-06-13 07:13:03 +04:30
Interpreter.cpp LibJS: Avoid copying the frame into the interpreter in BC generators 2022-04-18 23:59:30 +04:30
Interpreter.h LibJS: Avoid copying the frame into the interpreter in BC generators 2022-04-18 23:59:30 +04:30
Label.h
Op.cpp LibJS/Bytecode: Pass contains_direct_call_to_eval into ESFO::create 2022-06-13 07:13:03 +04:30
Op.h LibJS/Bytecode: Make typeof return "undefined" on unresolvable IDs 2022-06-13 07:13:03 +04:30
PassManager.h
Register.h
StringTable.cpp
StringTable.h