https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70934

            Bug ID: 70934
           Summary: 16-byte atomics are unimplemented on s390x, but
                    __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 is defined
           Product: gcc
           Version: 5.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: koriakin at 0x04 dot net
  Target Milestone: ---

$ cat at128.c
typedef int ti __attribute__((mode(TI)));
ti a, b, c;
int main(void) {
#ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16
        __sync_val_compare_and_swap(&a, b, c);
#endif
}
$ gcc at128.c
/tmp/cc1ezNAw.o: In function `main':
at128.c:(.text+0x66): undefined reference to `__sync_val_compare_and_swap_16'
collect2: error: ld returned 1 exit status

Reply via email to