Bug 1843499 - Part 1: Add ThrowWithStack and ExceptionAndStack opcodes. r=iain
commit2b26436fa9cee5a36dad8e9ad1b33fcdbdf906fa
authorAndré Bargull <andre.bargull@gmail.com>
Mon, 22 Jan 2024 14:29:40 +0000 (22 14:29 +0000)
committerAndré Bargull <andre.bargull@gmail.com>
Mon, 22 Jan 2024 14:29:40 +0000 (22 14:29 +0000)
treea6c9e0b045388aa102ce986ad4a29a604edbb4c7
parent14dff606df4bc927795cd78a94c9d50415721464
Bug 1843499 - Part 1: Add ThrowWithStack and ExceptionAndStack opcodes. r=iain

Add `JSOp::ExceptionAndStack` to retrieve the exception stack in addition to
the exception value. And add `JSOp::ThrowWithStack` to throw an exception with
an exception stack.

The next part will use both new opcodes.

Differential Revision: https://phabricator.services.mozilla.com/D183562
18 files changed:
js/src/debugger/Script.cpp
js/src/jit/BaselineCodeGen.cpp
js/src/jit/BytecodeAnalysis.cpp
js/src/jit/CodeGenerator.cpp
js/src/jit/LIROps.yaml
js/src/jit/Lowering.cpp
js/src/jit/MIR.cpp
js/src/jit/MIROps.yaml
js/src/jit/VMFunctionList-inl.h
js/src/jit/WarpBuilder.cpp
js/src/jit/WarpOracle.cpp
js/src/vm/BytecodeUtil.cpp
js/src/vm/BytecodeUtil.h
js/src/vm/Interpreter.cpp
js/src/vm/Interpreter.h
js/src/vm/JSContext.cpp
js/src/vm/JSContext.h
js/src/vm/Opcodes.h