ladybird/Userland/Libraries/LibJS/Bytecode
Andreas Kling 9f06e130a2 LibJS/Bytecode: Keep saved return value in call frame register
This fixes an issue where returning inside a `try` block and then
calling a function inside `finally` would clobber the saved return
value from the `try` block.

Note that we didn't need to change the base of register allocation,
since it was already 1 too high.

With this fixed, https://microsoft.com/edge loads in bytecode mode. :^)

Thanks to Luke for reducing the issue!
2023-07-21 19:15:33 +02:00
..
ASTCodegen.cpp LibJS: Make GetIterator's hint parameter required 2023-07-19 06:56:51 +02:00
BasicBlock.cpp LibJS/Bytecode: Use malloc instead of mmap for BasicBlock buffers 2023-07-13 10:19:10 +02:00
BasicBlock.h LibJS/Bytecode: Do not rethrow caught exception from finally 2023-07-14 17:05:29 +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 LibJS/Bytecode: Don't reparse regular expressions on instantiation 2023-07-13 13:30:49 +02:00
Generator.cpp LibJS: Deduplicate labelled continue & break bytecode generation 2023-07-20 07:24:31 +02:00
Generator.h LibJS: Deduplicate labelled continue & break bytecode generation 2023-07-20 07:24:31 +02:00
IdentifierTable.cpp
IdentifierTable.h
Instruction.cpp
Instruction.h LibJS+CI: Remove bytecode optimization passes for now 2023-07-21 19:47:36 +03:30
Interpreter.cpp LibJS/Bytecode: Keep saved return value in call frame register 2023-07-21 19:15:33 +02:00
Interpreter.h LibJS/Bytecode: Keep saved return value in call frame register 2023-07-21 19:15:33 +02:00
Label.h
Op.cpp LibJS+CI: Remove bytecode optimization passes for now 2023-07-21 19:47:36 +03:30
Op.h LibJS+CI: Remove bytecode optimization passes for now 2023-07-21 19:47:36 +03:30
RegexTable.cpp LibJS/Bytecode: Don't reparse regular expressions on instantiation 2023-07-13 13:30:49 +02:00
RegexTable.h LibJS/Bytecode: Don't reparse regular expressions on instantiation 2023-07-13 13:30:49 +02:00
Register.h LibJS/Bytecode: Keep saved return value in call frame register 2023-07-21 19:15:33 +02:00
StringTable.cpp
StringTable.h