On 9/2/20 12:22 PM, Tom de Vries wrote:
Tobias, can you try on powerpc?
Testcase now compiles and runs w/o error message. On 9/2/20 12:44 PM, Jakub Jelinek wrote:
I guess the normal answer would be use libatomic, but it isn't ported for nvptx. I guess at least temporarily this is ok,though I'm wondering why you need __sync_*_16 rather than __atomic_*_16, or perhaps both __sync_* and __atomic_*. What happens if you try unsigned __int128 v;
... I had to change "unsigned __int128" and "unsigned __int128v" to "__uint128_t" and "expected" to "exp". Result without offloading configured on x86-64-gnu-linux: aotmic.c:(.text+0x84): undefined reference to `__atomic_fetch_add_16' /usr/bin/ld: aotmic.c:(.text+0xa3): undefined reference to `__atomic_fetch_add_16' /usr/bin/ld: aotmic.c:(.text+0xda): undefined reference to `__atomic_compare_exchange_16' And on PowerPC with nvptx (without the RFC patch): atomic.c: In function 'main._omp_fn.0': atomic.c:6:11: internal compiler error: in write_fn_proto, at config/nvptx/nvptx.c:913 6 | #pragma omp target | ^ Tobias ----------------- Mentor Graphics (Deutschland) GmbH, Arnulfstraße 201, 80634 München / Germany Registergericht München HRB 106955, Geschäftsführer: Thomas Heurung, Alexander Walter