aboutsummaryrefslogtreecommitdiff
path: root/tests/runner.py
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-01-16 21:12:48 -0800
committerAlon Zakai <alonzakai@gmail.com>2012-01-16 21:12:48 -0800
commit8a9fa2c6d739a53221ee717121c6f4d318abd3dd (patch)
treeb30a0a6095f00d536dff87b418bc99943fa30d27 /tests/runner.py
parent7cef5581ebb35cc90448e54cf0ac3d531d051ee6 (diff)
add TODO test for atomic builtins
Diffstat (limited to 'tests/runner.py')
-rw-r--r--tests/runner.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/runner.py b/tests/runner.py
index 3650c667..d0056400 100644
--- a/tests/runner.py
+++ b/tests/runner.py
@@ -3820,6 +3820,34 @@ def process(filename):
self.do_run(src, expected)
CORRECT_SIGNS = 0
+ def test_atomic_builtins(self): # XXX TODO
+ src = '''
+ type __sync_fetch_and_add (type *ptr, type value, ...)
+ type __sync_fetch_and_sub (type *ptr, type value, ...)
+ type __sync_fetch_and_or (type *ptr, type value, ...)
+ type __sync_fetch_and_and (type *ptr, type value, ...)
+ type __sync_fetch_and_xor (type *ptr, type value, ...)
+ type __sync_fetch_and_nand (type *ptr, type value, ...)
+
+ type __sync_add_and_fetch (type *ptr, type value, ...)
+ type __sync_sub_and_fetch (type *ptr, type value, ...)
+ type __sync_or_and_fetch (type *ptr, type value, ...)
+ type __sync_and_and_fetch (type *ptr, type value, ...)
+ type __sync_xor_and_fetch (type *ptr, type value, ...)
+ type __sync_nand_and_fetch (type *ptr, type value, ...)
+
+ bool __sync_bool_compare_and_swap (type *ptr, type oldval type newval, ...)
+ type __sync_val_compare_and_swap (type *ptr, type oldval type newval, ...)
+
+ __sync_synchronize (...)
+
+ type __sync_lock_test_and_set (type *ptr, type value, ...)
+
+ void __sync_lock_release (type *ptr, ...)
+ '''
+
+ self.do_run(src, 'hello world\n77.\n',
+
# libc++ tests
def test_iostream(self):