diff options
author | Jakub Jelinek <jakub@gcc.gnu.org> | 2018-12-12 23:47:55 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2018-12-12 23:47:55 +0100 |
commit | a6ef2ac9d92d85ff03ecc40c4aa80269289fbbd6 (patch) | |
tree | 6c920b965a377bf127357cecb4fb2e0ee962e407 | |
parent | 77a242860085d70b33d12302ca8c729f0c060905 (diff) | |
download | gcc-a6ef2ac9d92d85ff03ecc40c4aa80269289fbbd6.zip gcc-a6ef2ac9d92d85ff03ecc40c4aa80269289fbbd6.tar.gz gcc-a6ef2ac9d92d85ff03ecc40c4aa80269289fbbd6.tar.bz2 |
omp-builtins.def (BUILT_IN_GOMP_LOOP_NONMONOTONIC_RUNTIME_START, [...]): Fix up function types - remove one argument.
* omp-builtins.def (BUILT_IN_GOMP_LOOP_NONMONOTONIC_RUNTIME_START,
BUILT_IN_GOMP_LOOP_MAYBE_NONMONOTONIC_RUNTIME_START,
BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_RUNTIME_START,
BUILT_IN_GOMP_LOOP_ULL_MAYBE_NONMONOTONIC_RUNTIME_START,
BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_RUNTIME,
BUILT_IN_GOMP_PARALLEL_LOOP_MAYBE_NONMONOTONIC_RUNTIME): Fix up
function types - remove one argument.
* testsuite/libgomp.c-c++-common/for-16.c: New test.
From-SVN: r267067
-rw-r--r-- | gcc/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/omp-builtins.def | 12 | ||||
-rw-r--r-- | libgomp/ChangeLog | 4 | ||||
-rw-r--r-- | libgomp/testsuite/libgomp.c-c++-common/for-16.c | 114 |
4 files changed, 135 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 02be9cf..bce500d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,14 @@ +2018-12-12 Tom de Vries <tdevries@suse.de> + Jakub Jelinek <jakub@redhat.com> + + * omp-builtins.def (BUILT_IN_GOMP_LOOP_NONMONOTONIC_RUNTIME_START, + BUILT_IN_GOMP_LOOP_MAYBE_NONMONOTONIC_RUNTIME_START, + BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_RUNTIME_START, + BUILT_IN_GOMP_LOOP_ULL_MAYBE_NONMONOTONIC_RUNTIME_START, + BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_RUNTIME, + BUILT_IN_GOMP_PARALLEL_LOOP_MAYBE_NONMONOTONIC_RUNTIME): Fix up + function types - remove one argument. + 2018-12-12 Martin Sebor <msebor@redhat.com> * doc/extend.texi (attribute copy): Fix typos. diff --git a/gcc/omp-builtins.def b/gcc/omp-builtins.def index 7005163..1872680 100644 --- a/gcc/omp-builtins.def +++ b/gcc/omp-builtins.def @@ -126,11 +126,11 @@ DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_NONMONOTONIC_GUIDED_START, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_NONMONOTONIC_RUNTIME_START, "GOMP_loop_nonmonotonic_runtime_start", - BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, + BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_MAYBE_NONMONOTONIC_RUNTIME_START, "GOMP_loop_maybe_nonmonotonic_runtime_start", - BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, + BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_STATIC_START, "GOMP_loop_ordered_static_start", @@ -234,11 +234,11 @@ DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_GUIDED_START, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_RUNTIME_START, "GOMP_loop_ull_nonmonotonic_runtime_start", - BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, + BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_MAYBE_NONMONOTONIC_RUNTIME_START, "GOMP_loop_ull_maybe_nonmonotonic_runtime_start", - BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, + BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_STATIC_START, "GOMP_loop_ull_ordered_static_start", @@ -349,11 +349,11 @@ DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_GUIDED, ATTR_NOTHROW_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_RUNTIME, "GOMP_parallel_loop_nonmonotonic_runtime", - BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT, + BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_UINT, ATTR_NOTHROW_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_MAYBE_NONMONOTONIC_RUNTIME, "GOMP_parallel_loop_maybe_nonmonotonic_runtime", - BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT, + BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_UINT, ATTR_NOTHROW_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END, "GOMP_loop_end", BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 06d9464..b8f508f 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,7 @@ +2018-12-12 Jakub Jelinek <jakub@redhat.com> + + * testsuite/libgomp.c-c++-common/for-16.c: New test. + 2018-12-12 Andreas Schwab <schwab@suse.de> * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as diff --git a/libgomp/testsuite/libgomp.c-c++-common/for-16.c b/libgomp/testsuite/libgomp.c-c++-common/for-16.c new file mode 100644 index 0000000..5649ba9 --- /dev/null +++ b/libgomp/testsuite/libgomp.c-c++-common/for-16.c @@ -0,0 +1,114 @@ +extern +#ifdef __cplusplus +"C" +#endif +void abort (void); + +unsigned long long int k = 16; +#pragma omp declare target to (k) + +int +main () +{ + unsigned char a[144], b[144], c[144]; + int l; + #pragma omp target map(from:a, b, c) + { + int i; + unsigned long long int j; + #pragma omp parallel for schedule (runtime) + for (i = 0; i < 16; i++) + a[i] = i; + #pragma omp parallel for schedule (monotonic: runtime) + for (i = 0; i < 16; i++) + a[i + 16] = i + 16; + #pragma omp parallel for schedule (nonmonotonic: runtime) + for (i = 0; i < 16; i++) + a[i + 32] = i + 32; + #pragma omp parallel + { + #pragma omp for schedule (runtime) + for (i = 0; i < 16; i++) + a[i + 48] = i + 48; + #pragma omp for schedule (monotonic: runtime) + for (i = 0; i < 16; i++) + a[i + 64] = i + 64; + #pragma omp for schedule (nonmonotonic: runtime) + for (i = 0; i < 16; i++) + a[i + 80] = i + 80; + #pragma omp for schedule (runtime) + for (j = 0; j < k; j++) + a[j + 96] = j + 96; + #pragma omp for schedule (monotonic: runtime) + for (j = 0; j < k; j++) + a[j + 112] = j + 112; + #pragma omp for schedule (nonmonotonic: runtime) + for (j = 0; j < k; j++) + a[j + 128] = j + 128; + } + #pragma omp parallel for schedule (dynamic) + for (i = 0; i < 16; i++) + b[i] = i; + #pragma omp parallel for schedule (monotonic: dynamic) + for (i = 0; i < 16; i++) + b[i + 16] = i + 16; + #pragma omp parallel for schedule (nonmonotonic: dynamic) + for (i = 0; i < 16; i++) + b[i + 32] = i + 32; + #pragma omp parallel + { + #pragma omp for schedule (dynamic) + for (i = 0; i < 16; i++) + b[i + 48] = i + 48; + #pragma omp for schedule (monotonic: dynamic) + for (i = 0; i < 16; i++) + b[i + 64] = i + 64; + #pragma omp for schedule (nonmonotonic: dynamic) + for (i = 0; i < 16; i++) + b[i + 80] = i + 80; + #pragma omp for schedule (dynamic) + for (j = 0; j < k; j++) + b[j + 96] = j + 96; + #pragma omp for schedule (monotonic: dynamic) + for (j = 0; j < k; j++) + b[j + 112] = j + 112; + #pragma omp for schedule (nonmonotonic: dynamic) + for (j = 0; j < k; j++) + b[j + 128] = j + 128; + } + #pragma omp parallel for schedule (guided) + for (i = 0; i < 16; i++) + c[i] = i; + #pragma omp parallel for schedule (monotonic: guided) + for (i = 0; i < 16; i++) + c[i + 16] = i + 16; + #pragma omp parallel for schedule (nonmonotonic: guided) + for (i = 0; i < 16; i++) + c[i + 32] = i + 32; + #pragma omp parallel + { + #pragma omp for schedule (guided) + for (i = 0; i < 16; i++) + c[i + 48] = i + 48; + #pragma omp for schedule (monotonic: guided) + for (i = 0; i < 16; i++) + c[i + 64] = i + 64; + #pragma omp for schedule (nonmonotonic: guided) + for (i = 0; i < 16; i++) + c[i + 80] = i + 80; + #pragma omp for schedule (guided) + for (j = 0; j < k; j++) + c[j + 96] = j + 96; + #pragma omp for schedule (monotonic: guided) + for (j = 0; j < k; j++) + c[j + 112] = j + 112; + #pragma omp for schedule (nonmonotonic: guided) + for (j = 0; j < k; j++) + c[j + 128] = j + 128; + } + } + for (l = 0; l < 144; ++l) + if (a[l] != l || b[l] != l || c[l] != l) + abort (); + return 0; +} |