17dc08edc2
This adds support for __sync_val_compare_and_swap and __sync_bool_compare_and_swap for 1-byte and 2-byte long values, which are not natively supported on nvptx. Build and reg-tested on nvptx. Build and reg-tested libgomp on x86_64 with nvptx accelerator. 2020-07-16 Kwok Cheung Yeung <kcy@codesourcery.com> libgcc/ * config/nvptx/atomic.c: New. * config/nvptx/t-nvptx (LIB2ADD): Add atomic.c. gcc/testsuite/ * gcc.target/nvptx/ia64-sync-5.c: New. libgomp/ * testsuite/libgomp.c-c++-common/reduction-16.c: New.
15 lines
413 B
Plaintext
15 lines
413 B
Plaintext
LIB2ADD=$(srcdir)/config/nvptx/reduction.c \
|
|
$(srcdir)/config/nvptx/mgomp.c \
|
|
$(srcdir)/config/nvptx/atomic.c
|
|
|
|
LIB2ADDEH=
|
|
LIB2FUNCS_EXCLUDE=__main
|
|
|
|
crt0.o: $(srcdir)/config/nvptx/crt0.c
|
|
$(crt_compile) -c $<
|
|
|
|
# Prevent building "advanced" stuff (for example, gcov support). We don't
|
|
# support it, and it may cause the build to fail, because of alloca usage, for
|
|
# example.
|
|
INHIBIT_LIBC_CFLAGS = -Dinhibit_libc
|