summaryrefslogtreecommitdiffstats
path: root/js/src/gdb/tests/test-Interpreter.py
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/gdb/tests/test-Interpreter.py')
-rw-r--r--js/src/gdb/tests/test-Interpreter.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/js/src/gdb/tests/test-Interpreter.py b/js/src/gdb/tests/test-Interpreter.py
new file mode 100644
index 000000000..c1cf87c66
--- /dev/null
+++ b/js/src/gdb/tests/test-Interpreter.py
@@ -0,0 +1,14 @@
+# Test printing interpreter internal data structures.
+
+assert_subprinter_registered('SpiderMonkey', 'js::InterpreterRegs')
+
+run_fragment('Interpreter.Regs')
+
+assert_pretty('regs', '{ fp_ = , sp = fp_.slots() + 2, pc = (JSOP_IFEQ) }')
+
+run_fragment('Interpreter.AbstractFramePtr')
+
+assert_pretty('sfidptr', 'AbstractFramePtr ((js::ScriptFrameIter::Data *) ) = {ptr_ = 913072}')
+assert_pretty('ifptr', 'AbstractFramePtr ((js::InterpreterFrame *) ) = {ptr_ = 146464513}')
+assert_pretty('bfptr', 'AbstractFramePtr ((js::jit::BaselineFrame *) ) = {ptr_ = 3135025122}')
+assert_pretty('rfptr', 'AbstractFramePtr ((js::jit::RematerializedFrame *) ) = {ptr_ = 3669732611}')