summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/wasm/fence.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/wasm/fence.js')
-rw-r--r--js/src/jit-test/tests/wasm/fence.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/wasm/fence.js b/js/src/jit-test/tests/wasm/fence.js
new file mode 100644
index 0000000000..1b839bb9f9
--- /dev/null
+++ b/js/src/jit-test/tests/wasm/fence.js
@@ -0,0 +1,24 @@
+// |jit-test| skip-if: !wasmThreadsEnabled()
+
+// Test that `atomic.fence` is a valid instruction of type `[] -> []`
+wasmFullPass(
+`(module
+ (func atomic.fence)
+ (export "run" (func 0))
+)`);
+
+// Test that `atomic.fence` works with non-shared memory
+wasmFullPass(
+`(module
+ (memory 1)
+ (func atomic.fence)
+ (export "run" (func 0))
+)`);
+
+// Test that `atomic.fence` works with shared memory
+wasmFullPass(
+`(module
+ (memory 1 1 shared)
+ (func atomic.fence)
+ (export "run" (func 0))
+)`);