summaryrefslogtreecommitdiff
path: root/test/lit/passes/separate-data-segments.wast
diff options
context:
space:
mode:
authorSam Clegg <sbc@chromium.org>2023-11-08 10:28:10 -0800
committerGitHub <noreply@github.com>2023-11-08 18:28:10 +0000
commit784960180eac208a34eb33415267d977034971df (patch)
tree6b88bd5bc62bd4d5af5405fd52161a3a3aae1405 /test/lit/passes/separate-data-segments.wast
parent9627c8360d179c2cae168f8bca3bf1b7216c34a8 (diff)
downloadbinaryen-784960180eac208a34eb33415267d977034971df.tar.gz
binaryen-784960180eac208a34eb33415267d977034971df.tar.bz2
binaryen-784960180eac208a34eb33415267d977034971df.zip
Move --separate-data-segments into a pass so it can be run from wasm-opt (#6088)
Because we currently strip some data segments (i.e. EM_JS strings) during `--post-emscripten` this is too late as `--separate-data-segments` always runs in `wasm-emscripten-finalize`. Once emscripten switches over to using the pass directly we can remove the support from `wasm-emscripten-finalize`
Diffstat (limited to 'test/lit/passes/separate-data-segments.wast')
-rw-r--r--test/lit/passes/separate-data-segments.wast22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/lit/passes/separate-data-segments.wast b/test/lit/passes/separate-data-segments.wast
new file mode 100644
index 000000000..ad921df79
--- /dev/null
+++ b/test/lit/passes/separate-data-segments.wast
@@ -0,0 +1,22 @@
+;; RUN: wasm-opt %s --separate-data-segments=%t.data --pass-arg=separate-data-segments-global-base@1024 -S -o - | filecheck %s
+;; RUN: cat %t.data | filecheck %s --check-prefix=CHECK-DATA
+
+(module
+ ;; CHECK: (memory $0 1 1)
+ (memory 1 1)
+
+ ;; CHECK-NOT (data
+ (data (i32.const 1024) "hello world\n")
+
+ ;; CHECK: (func $foo
+ (func $foo
+ (call $bar)
+ )
+
+ ;; CHECK: (func $bar
+ (func $bar
+ (call $foo)
+ )
+)
+
+;; CHECK-DATA: {{^}}hello world{{$}}