Viewing file: pr64659-0.h (1.3 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* Check that atomic ops utilize insns with immediate values. */
#define emitfuncs(name)\ void test_ ## name ## _0 (char* mem)\ {\ name (mem, 1, __ATOMIC_ACQ_REL);\ }\ void test_ ## name ## _1 (short* mem)\ {\ name (mem, 1, __ATOMIC_ACQ_REL);\ }\ void test_ ## name ##_2 (int* mem)\ {\ name (mem, 1, __ATOMIC_ACQ_REL);\ }\
emitfuncs (__atomic_add_fetch) emitfuncs (__atomic_fetch_add)
emitfuncs (__atomic_sub_fetch) emitfuncs (__atomic_fetch_sub)
emitfuncs (__atomic_and_fetch) emitfuncs (__atomic_fetch_and)
emitfuncs (__atomic_or_fetch) emitfuncs (__atomic_fetch_or)
emitfuncs (__atomic_xor_fetch) emitfuncs (__atomic_fetch_xor)
emitfuncs (__atomic_nand_fetch) emitfuncs (__atomic_fetch_nand)
void test___atomic_compare_exchange_0 (char* mem) { char expected = 1; char desired = 5; __atomic_compare_exchange (mem, &expected, &desired, 0, __ATOMIC_ACQ_REL, __ATOMIC_RELAXED); }
void test___atomic_compare_exchange_1 (short* mem) { short expected = 1; short desired = 5; __atomic_compare_exchange (mem, &expected, &desired, 0, __ATOMIC_ACQ_REL, __ATOMIC_RELAXED); }
void test___atomic_compare_exchange_2 (int* mem) { int expected = 1; int desired = 5; __atomic_compare_exchange (mem, &expected, &desired, 0, __ATOMIC_ACQ_REL, __ATOMIC_RELAXED); }
|