diff options
Diffstat (limited to 'test/lit/wasm-emscripten-finalize/em_asm.wat')
-rw-r--r-- | test/lit/wasm-emscripten-finalize/em_asm.wat | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/lit/wasm-emscripten-finalize/em_asm.wat b/test/lit/wasm-emscripten-finalize/em_asm.wat new file mode 100644 index 000000000..43dbfb9ae --- /dev/null +++ b/test/lit/wasm-emscripten-finalize/em_asm.wat @@ -0,0 +1,29 @@ +;; Test that em_asm string are extracted correctly when the __start_em_asm +;; and __stop_em_asm globals are exported. + +;; RUN: wasm-emscripten-finalize %s -S | filecheck %s + +;; Check that the data segment that contains only EM_ASM strings resized to +;; zero, and that the string are extracted into the metadata. + +;; CHECK: (data (i32.const 100) "normal data") +;; CHECK-NEXT: (data (i32.const 512) "") +;; CHECK-NEXT: (data (i32.const 1024) "more data") + +;; CHECK: "asmConsts": { +;; CHECK-NEXT: "512": "{ console.log('JS hello'); }", +;; CHECK-NEXT: "541": "{ console.log('hello again'); }" +;; CHECK-NEXT: }, + +;; Check that the exports are removed +;; CHECK-NOT: export + +(module + (memory 1 1) + (global (export "__start_em_asm") i32 (i32.const 512)) + (global (export "__stop_em_asm") i32 (i32.const 573)) + + (data (i32.const 100) "normal data") + (data (i32.const 512) "{ console.log('JS hello'); }\00{ console.log('hello again'); }\00") + (data (i32.const 1024) "more data") +) |