mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 20:47:45 +00:00
LibJS/JIT: Update "unwind context" stack in JIT code
Until now, the unwind context stack has not been maintained by jitted code, which meant we were unable to support the `with` statement. This is a first step towards supporting that by making jitted code call out to C++ to update the unwind context stack when entering/leaving unwind contexts. We also introduce a new "Catch" bytecode instruction that moves the current exception into the accumulator. It's always emitted at the start of a "catch" block.
This commit is contained in:
parent
298dfa96a4
commit
cfdb8a2756
7 changed files with 60 additions and 7 deletions
|
@ -24,6 +24,7 @@
|
|||
O(BlockDeclarationInstantiation) \
|
||||
O(Call) \
|
||||
O(CallWithArgumentArray) \
|
||||
O(Catch) \
|
||||
O(ConcatString) \
|
||||
O(ContinuePendingUnwind) \
|
||||
O(CopyObjectExcludingProperties) \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue