summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorjgravelle-google <jgravelle@google.com>2017-06-05 09:34:15 -0700
committerGitHub <noreply@github.com>2017-06-05 09:34:15 -0700
commit3f0db5a7aafaaa4de713ff3ba3c3bbeb59fe566e (patch)
tree17ff1b4155b6ce4c01c7911e20a406df910bec3f /scripts
parent4eb81f6cf14b02e77f84f6a5a89d926d4eac535f (diff)
downloadbinaryen-3f0db5a7aafaaa4de713ff3ba3c3bbeb59fe566e.tar.gz
binaryen-3f0db5a7aafaaa4de713ff3ba3c3bbeb59fe566e.tar.bz2
binaryen-3f0db5a7aafaaa4de713ff3ba3c3bbeb59fe566e.zip
S2wasm runtime funcs (#1027)
* Generate stackSave function in s2wasm * Generate stackAlloc in s2wasm * Generate stackRestore in s2wasm * Update dot_s tests for runtime functions * Add s2wasm check for exporting runtime functions * Fix flake8 for s2wasm.py * Rename wasmBuilder to builder
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/test/s2wasm.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/scripts/test/s2wasm.py b/scripts/test/s2wasm.py
index bf7c97fbe..e89a65099 100755
--- a/scripts/test/s2wasm.py
+++ b/scripts/test/s2wasm.py
@@ -94,14 +94,21 @@ def test_linker():
# bar should be linked from the archive
fail_if_not_contained(output, '(func $bar')
- # Test exporting memory growth function
+ # Test exporting memory growth function and emscripten runtime functions
cmd = S2WASM + [
os.path.join(options.binaryen_test, 'linker', 'main.s'),
'--emscripten-glue', '--allow-memory-growth']
output = run_command(cmd)
- fail_if_not_contained(
- output, '(export "__growWasmMemory" (func $__growWasmMemory))')
- fail_if_not_contained(output, '(func $__growWasmMemory (param $newSize i32)')
+ expected_funcs = [
+ ('__growWasmMemory', '(param $newSize i32)'),
+ ('stackSave', '(result i32)'),
+ ('stackAlloc', '(param $0 i32) (result i32)'),
+ ('stackRestore', '(param $0 i32)'),
+ ]
+ for name, extra in expected_funcs:
+ space = ' ' if extra else ''
+ fail_if_not_contained(output, '(export "{0}" (func ${0}))'.format(name))
+ fail_if_not_contained(output, '(func ${0}'.format(name + space + extra))
if __name__ == '__main__':