diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/runner.py | 28 |
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): |