diff options
author | Derek Schuff <dschuff@chromium.org> | 2017-07-10 09:47:21 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-10 09:47:21 -0700 |
commit | bcb29e59c92347eebcd138034a4f4c06d042670a (patch) | |
tree | ce51ac4020bacd34c748693d85d70616bf340714 /test | |
parent | 4995132cfaf575e430a7d0e95257b677286171c3 (diff) | |
download | binaryen-bcb29e59c92347eebcd138034a4f4c06d042670a.tar.gz binaryen-bcb29e59c92347eebcd138034a4f4c06d042670a.tar.bz2 binaryen-bcb29e59c92347eebcd138034a4f4c06d042670a.zip |
Add IR, parsing, printing, and binary for atomic cmpxchg (#1083)
Diffstat (limited to 'test')
-rw-r--r-- | test/atomics.wast | 32 | ||||
-rw-r--r-- | test/atomics.wast.from-wast | 32 | ||||
-rw-r--r-- | test/atomics.wast.fromBinary | 34 | ||||
-rw-r--r-- | test/atomics.wast.fromBinary.noDebugInfo | 34 |
4 files changed, 132 insertions, 0 deletions
diff --git a/test/atomics.wast b/test/atomics.wast index 26aebdb0d..6b85c80ef 100644 --- a/test/atomics.wast +++ b/test/atomics.wast @@ -102,4 +102,36 @@ ) ) ) + (func $atomic-cmpxchg (type $0) + (local $0 i32) + (local $1 i32) + (drop + (i32.atomic.rmw.cmpxchg offset=4 + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + (drop + (i32.atomic.rmw8_u.cmpxchg + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + (drop + (i64.atomic.rmw.cmpxchg offset=4 + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + (drop + (i64.atomic.rmw32_u.cmpxchg align=4 + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + ) ) diff --git a/test/atomics.wast.from-wast b/test/atomics.wast.from-wast index ef15de7e2..01735c1fc 100644 --- a/test/atomics.wast.from-wast +++ b/test/atomics.wast.from-wast @@ -102,4 +102,36 @@ ) ) ) + (func $atomic-cmpxchg (type $0) + (local $0 i32) + (local $1 i32) + (drop + (i32.atomic.rmw.cmpxchg offset=4 + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + (drop + (i32.atomic.rmw8_u.cmpxchg + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + (drop + (i64.atomic.rmw.cmpxchg offset=4 + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + (drop + (i64.atomic.rmw32_u.cmpxchg + (get_local $0) + (get_local $0) + (get_local $0) + ) + ) + ) ) diff --git a/test/atomics.wast.fromBinary b/test/atomics.wast.fromBinary index b3bce034a..63809f1ed 100644 --- a/test/atomics.wast.fromBinary +++ b/test/atomics.wast.fromBinary @@ -106,5 +106,39 @@ ) ) ) + (func $atomic-cmpxchg (type $0) + (local $var$0 i32) + (local $var$1 i32) + (block $label$0 + (drop + (i32.atomic.rmw.cmpxchg offset=4 + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + (drop + (i32.atomic.rmw8_u.cmpxchg + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + (drop + (i64.atomic.rmw.cmpxchg offset=4 + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + (drop + (i64.atomic.rmw32_u.cmpxchg + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + ) + ) ) diff --git a/test/atomics.wast.fromBinary.noDebugInfo b/test/atomics.wast.fromBinary.noDebugInfo index 3777417bf..8dcca9d15 100644 --- a/test/atomics.wast.fromBinary.noDebugInfo +++ b/test/atomics.wast.fromBinary.noDebugInfo @@ -106,5 +106,39 @@ ) ) ) + (func $2 (type $0) + (local $var$0 i32) + (local $var$1 i32) + (block $label$0 + (drop + (i32.atomic.rmw.cmpxchg offset=4 + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + (drop + (i32.atomic.rmw8_u.cmpxchg + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + (drop + (i64.atomic.rmw.cmpxchg offset=4 + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + (drop + (i64.atomic.rmw32_u.cmpxchg + (get_local $var$0) + (get_local $var$0) + (get_local $var$0) + ) + ) + ) + ) ) |