summaryrefslogtreecommitdiff
path: root/test/lit/source-map.wast
diff options
context:
space:
mode:
Diffstat (limited to 'test/lit/source-map.wast')
-rw-r--r--test/lit/source-map.wast46
1 files changed, 46 insertions, 0 deletions
diff --git a/test/lit/source-map.wast b/test/lit/source-map.wast
new file mode 100644
index 000000000..a0e969c23
--- /dev/null
+++ b/test/lit/source-map.wast
@@ -0,0 +1,46 @@
+;; RUN: wasm-opt %s -o %t.wasm -osm %t.map -g -q
+;; RUN: wasm-opt %t.wasm -ism %t.map -q -o - -S | filecheck %s
+
+(module
+ (func $foo (param $x i32) (param $y i32)
+ ;;@ src.cpp:10:1
+ (if
+ ;;@ src.cpp:20:1
+ (i32.add
+ ;;@ src.cpp:30:1
+ (local.get $x)
+ ;;@ src.cpp:40:1
+ (local.get $y)
+ )
+ ;;@ src.cpp:50:1
+ (return)
+ )
+ ;;@ src.cpp:60:1
+ (call $foo
+ ;;@ src.cpp:70:1
+ (local.get $x)
+ ;;@ src.cpp:80:1
+ (local.get $y)
+ )
+ )
+)
+
+;; CHECK: (func $foo (param $x i32) (param $y i32)
+;; CHECK-NEXT: ;;@ src.cpp:20:1
+;; CHECK-NEXT: (if
+;; CHECK-NEXT: (i32.add
+;; CHECK-NEXT: ;;@ src.cpp:30:1
+;; CHECK-NEXT: (local.get $x)
+;; CHECK-NEXT: ;;@ src.cpp:40:1
+;; CHECK-NEXT: (local.get $y)
+;; CHECK-NEXT: )
+;; CHECK-NEXT: ;;@ src.cpp:50:1
+;; CHECK-NEXT: (return)
+;; CHECK-NEXT: )
+;; CHECK-NEXT: ;;@ src.cpp:60:1
+;; CHECK-NEXT: (call $foo
+;; CHECK-NEXT: ;;@ src.cpp:70:1
+;; CHECK-NEXT: (local.get $x)
+;; CHECK-NEXT: ;;@ src.cpp:80:1
+;; CHECK-NEXT: (local.get $y)
+;; CHECK-NEXT: )