//===- subzero/crosstest/test_sync_atomic.h - Test prototypes ---*- C++ -*-===// // // The Subzero Code Generator // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // This file declares the function prototypes for cross testing atomic // intrinsics. // //===----------------------------------------------------------------------===// #include "test_sync_atomic.def" #define X(inst, type) \ type test_##inst(bool fetch_first, volatile type *ptr, type a); \ type test_alloca_##inst(bool fetch, volatile type *ptr, type a); \ type test_const_##inst(bool fetch, volatile type *ptr, type ignored); FOR_ALL_RMWOP_TYPES(X) #undef X #define X(type) \ type test_val_cmp_swap(volatile type *ptr, type oldval, type newval); \ type test_val_cmp_swap_loop(volatile type *ptr, type oldval, type newval); ATOMIC_TYPE_TABLE #undef X