summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/wasm/backtrace.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/wasm/backtrace.js')
-rw-r--r--js/src/jit-test/tests/wasm/backtrace.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/wasm/backtrace.js b/js/src/jit-test/tests/wasm/backtrace.js
new file mode 100644
index 0000000000..ea3825ab92
--- /dev/null
+++ b/js/src/jit-test/tests/wasm/backtrace.js
@@ -0,0 +1,21 @@
+var code = `(module
+ (import "env" "test" (func $i))
+ (func $t (call $i))
+ (export "test" (func $t))
+)`;
+var mod = wasmEvalText(code, {
+ env: {
+ test: function() {
+ // Expecting 3 lines in the backtrace (plus last empty).
+ // The middle one is for the wasm function.
+ var s = getBacktrace();
+ var frames = s.split('\n');
+ assertEq(frames.length, 4);
+ assertEq(/> WebAssembly.Module":wasm-function\[1\]:0x/.test(frames[1]), true);
+
+ // Let's also run DumpBacktrace() to check if we are not crashing.
+ backtrace();
+ }
+ }
+}).exports;
+mod.test();