summaryrefslogtreecommitdiff
path: root/test/binaryen.js/debug-info.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/binaryen.js/debug-info.js')
-rw-r--r--test/binaryen.js/debug-info.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/test/binaryen.js/debug-info.js b/test/binaryen.js/debug-info.js
new file mode 100644
index 000000000..ea7dd4fa4
--- /dev/null
+++ b/test/binaryen.js/debug-info.js
@@ -0,0 +1,40 @@
+var wast = `
+(module
+ (type $v (func))
+ (memory $0 0)
+ (export "test" (func $test))
+ (func $test (; 0 ;) (type $v))
+)
+`;
+
+// Use defaults (should not emit debug info)
+console.log("=== default ===");
+console.log("debugInfo=" + Binaryen.getDebugInfo());
+var module = Binaryen.parseText(wast);
+var binary = module.emitBinary();
+module.dispose();
+module = Binaryen.readBinary(binary);
+console.log(module.emitText());
+module.dispose();
+
+// With debug info
+console.log("=== with debug info ===");
+Binaryen.setDebugInfo(true);
+console.log("debugInfo=" + Binaryen.getDebugInfo());
+module = Binaryen.parseText(wast);
+binary = module.emitBinary();
+module.dispose();
+module = Binaryen.readBinary(binary);
+console.log(module.emitText());
+module.dispose();
+
+// Without debug info
+console.log("=== without debug info ===");
+Binaryen.setDebugInfo(false);
+console.log("debugInfo=" + Binaryen.getDebugInfo());
+module = Binaryen.parseText(wast);
+binary = module.emitBinary();
+module.dispose();
+module = Binaryen.readBinary(binary);
+console.log(module.emitText());
+module.dispose();