diff options
Diffstat (limited to 'test/threads.fromasm')
-rw-r--r-- | test/threads.fromasm | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/test/threads.fromasm b/test/threads.fromasm new file mode 100644 index 000000000..5114d985a --- /dev/null +++ b/test/threads.fromasm @@ -0,0 +1,69 @@ +(module + (import "env" "memory" (memory $0 256 256 shared)) + (import "env" "table" (table 0 0 anyfunc)) + (import "env" "memoryBase" (global $memoryBase i32)) + (import "env" "tableBase" (global $tableBase i32)) + (data (get_global $memoryBase) "threads.asm.js") + (export "test" (func $test)) + (func $test + (local $0 i32) + (drop + (i32.atomic.load + (i32.const 4916) + ) + ) + (drop + (i32.atomic.rmw.xor + (i32.atomic.rmw.or + (i32.atomic.rmw.and + (i32.atomic.rmw.sub + (i32.atomic.rmw.add + (i32.atomic.rmw.cmpxchg + (block (result i32) + (i32.atomic.store + (i32.atomic.load16_u + (i32.const 2458) + ) + (tee_local $0 + (i32.const 0) + ) + ) + (i32.atomic.rmw.xchg + (get_local $0) + (i32.const 1) + ) + ) + (i32.const 1) + (i32.const 2) + ) + (i32.const 0) + ) + (i32.const 0) + ) + (i32.const 0) + ) + (i32.const 0) + ) + (i32.const 0) + ) + ) + (drop + (i32.atomic.rmw.xor + (i32.const 4096) + (i32.const 0) + ) + ) + (drop + (i32.atomic.rmw16_u.xor + (i32.const 2048) + (i32.const 0) + ) + ) + (drop + (i32.atomic.rmw8_u.xor + (i32.const 1024) + (i32.const 0) + ) + ) + ) +) |