, Nathan) front end maintainers could please
review this, instead of him? (The front end changes as well as the few
other cleanup changes should all be straight forward.) OK for trunk once
bootstrap tested?
commit 9626356d641129381306f2ad5d884d5b7f7a5fc7
Author: Thomas Schwinge
Date: Thu Oct 8 15
Hi!
On Thu, 8 Oct 2015 11:19:05 -0500, James Norris
wrote:
> On 10/07/2015 08:51 AM, David Edelsohn wrote:
> > On Wed, Oct 7, 2015 at 4:02 AM, Thomas Schwinge
> > wrote:
> >
> >> From a quick look at the *_TYPE_SIZE definitions in
> >> gcc/confi
nvptx_ptx_type_from_mode (mode, false));
> }
>
>return "ret;";
> Index: gcc/config/nvptx/nvptx.h
> ===
> --- gcc/config/nvptx/nvptx.h (revision 228617)
> +++ gcc/config/nvptx/nvptx.h (working copy)
> @@ -228,7 +228,7 @@ struct GTY(()) machine_function
>bool has_call_with_varargs;
>bool has_call_with_sc;
>HOST_WIDE_INT outgoing_stdarg_size;
> - int ret_reg_mode;
> + int ret_reg_mode; /* machine_mode not defined yet. */
>int punning_buffer_size;
> };
> #endif
Grüße,
Thomas
signature.asc
Description: PGP signature
;
+ }
+ else if (!openmp_flag && !openacc_flag)
for (i = 0; i < 5; i++)
{
c = next_char ();
diff --git gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
new file mode 100644
index 000..e715673
--- /dev/null
+
Hi!
Thanks to Joseph and you for your review!
On Fri, 9 Oct 2015 08:26:37 -0400, Nathan Sidwell wrote:
> On 10/08/15 12:39, Thomas Schwinge wrote:
> > Some bits extracted out of gomp-4_0-branch, and some other bits
> > rewritten; here is a patch to support OpenACC Combined
Hi Nathan!
On Fri, 9 Oct 2015 09:34:51 -0400, Nathan Sidwell wrote:
> On 10/09/15 09:26, Thomas Schwinge wrote:
> > You mean the cp_parser_oacc_loop and cp_parser_oacc_kernels_parallel
> > functions need documentation? I agree it's a bit terse, but documenting
> >
Hi!
On Wed, 22 Jul 2015 16:39:54 +0200, I wrote:
> [...] cleanup; committed to
> gomp-4_0-branch in r226072: [...]
OK for trunk?
commit a8bd7234d7b6b0111a1e3b3dc032ea5eead7e258
Author: Thomas Schwinge
Date: Fri Oct 9 16:40:56 2015 +0200
libgomp testsuite: Remove some ex
Hi!
On Wed, 22 Jul 2015 16:32:17 +0200, I wrote:
> [...] in r226070, I committed the
> following to gomp-4_0-branch: [...]
OK for trunk?
commit 8ba8b058417afc2e7979ef25fdb943ae4e8838dd
Author: Thomas Schwinge
Date: Fri Oct 9 13:20:52 2015 +0200
[libgomp/66518] Resolve XF
Hi!
On Wed, 22 Jul 2015 16:37:46 +0200, I wrote:
> [...] found an inconsistency in libgomp; committed
> to gomp-4_0-branch in r226071: [...]
OK for trunk?
commit dc0c73e9ac5decf5b36be25497ed5f4b99136fba
Author: Thomas Schwinge
Date: Fri Oct 9 13:22:52 2015 +0200
libgomp: Addi
t; > > t=1 -DACC_MEM_SHARED=1 output pattern test, is , should match
> > > \[[0-9a-fA-FxX]+,2
> > > 56\] is not mapped
> In r224639, now (at least, and at last...) XFAILed
OK to commit?
commit 673e59d5da9f5b003c4dac54b8ef6b1010b3f907
Author: Thomas Schwinge
Date: Fri
profile:gcrt0.o%s;static:crt0.o%s;:crt1.o%s}} \
> + "%{!shared: %{pg|p:gcrt1.o%s;profile:gcrt0.o%s;static:crt0.o%s;:crt1.o%s}}
> \
> crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
> #endif
Grüße,
Thomas
signature.asc
Description: PGP signature
= a[ii] + 1;
> + else
> + b[ii] = a[ii];
> + }
> + }
> +
> +#pragma acc kernels copyin(a[0:N]) copyout(b[0:N])
> + {
> +int ii;
> +
> +for (ii = 0; ii < N; ii++)
> + {
> + if (acc_on_device (acc_device_host))
> + b[ii] = a[ii] + 2;
> + else
> + b[ii] = a[ii];
> + }
> + }
> +}
Grüße,
Thomas
signature.asc
Description: PGP signature
t;header = l0_bb;
new_loop->latch = l2_bb;
add_loop (new_loop, outer_loop);
/* Allocate a loop structure for the original loop unless we already
had one. */
if (!orig_loop_has_loop_struct
&& !gimple_omp_for_combined_p (fd->for_stmt))
{
struct loop *orig_loop = alloc_loop ();
orig_loop->header = l1_bb;
/* The loop may have multiple latches. */
add_loop (orig_loop, new_loop);
}
}
}
Grüße,
Thomas
signature.asc
Description: PGP signature
rge -r 228315:228776 svn+ssh://gcc.gnu.org/svn/gcc/trunk
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@228836
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße,
Thomas
signature.asc
Description: PGP signature
There's still a bit of clean-up and development going on on
gomp-4_0-branch, but what should be the strategy to get it merged into
trunk? Instead of us extracting and submitting individual changes (which
we certainly can do, but which is a huge time-sink if they're then not
handled quickly), would you maybe prefer to do a "whole-branch" review?
Grüße
Thomas
signature.asc
Description: PGP signature
difficult to express the several kinds of changes,
what about simply using GOMP_target_2 and so on? Everyone should then
understand that it's a replacement/successor of GOMP_target.
Grüße,
Thomas
signature.asc
Description: PGP signature
pay attention to data clause at
all (sizes and kinds formal parameters), so you're free to renumber
GOMP_MAP_* if/where that makes sense.
> +/* Decrement usage count and deallocate if zero. */
> +GOMP_MAP_RELEASE = (GOMP_MAP_FLAG_ALWAYS
> + | GOMP_MAP_FORCE_DEA
Hi!
On Mon, 19 Oct 2015 12:34:08 +0200, Jakub Jelinek wrote:
> On Mon, Oct 19, 2015 at 12:20:23PM +0200, Thomas Schwinge wrote:
> > > +/* Decrement usage count and deallocate if zero. */
> > > +GOMP_MAP_RELEASE =
vn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@228972
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße,
Thomas
signature.asc
Description: PGP signature
we be able to drop some of the
OpenACC-specific async implementation in libgomp, and use new/generic
target.c code instead?
Please note that there will be further libgomp changes (target.c, and
other files) coming in later merges from gomp-4_1-branch, so please for
now just work on identifying/resolvi
Hi!
Ping...
On Wed, 30 Sep 2015 17:54:07 +0200, I wrote:
> On Tue, 29 Sep 2015 10:18:14 +0200, Jakub Jelinek wrote:
> > On Mon, Sep 28, 2015 at 11:39:10AM +0200, Thomas Schwinge wrote:
> > > On Fri, 11 Sep 2015 17:43:49 +0200, Jakub Jelinek
> > > wrote:
> >
t_continuation;
> }
>
> - if (!openmp_flag && !openacc_flag)
> + /* In case we have an OpenMP directive continued by OpenACC
> + sentinel, or vice versa, we get both openmp_flag and
> + openacc_flag on. */
> + if (openacc_flag && openmp_flag)
> + {
> + int is_openmp = 0;
> + for (i = 0; i < 5; i++)
> + {
> + c = next_char ();
> + if (gfc_wide_tolower (c) != (unsigned char) "*$acc"[i])
> + is_openmp = 1;
> + }
> + gfc_error (is_openmp ? "Wrong OpenACC continuation at %C: "
> + "expected !$ACC, got !$OMP"
> + : "Wrong OpenMP continuation at %C: "
> + "expected !$OMP, got !$ACC");
> + }
> + else if (!openmp_flag && !openacc_flag)
> for (i = 0; i < 5; i++)
> {
> c = next_char ();
> diff --git gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
> gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
> new file mode 100644
> index 000..e715673
> --- /dev/null
> +++ gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
> @@ -0,0 +1,32 @@
> +! { dg-do compile }
> +! { dg-additional-options "-fopenmp" }
> + SUBROUTINE ICHI
> + INTEGER :: ARGC
> + ARGC = COMMAND_ARGUMENT_COUNT ()
> +
> +!$OMP PARALLEL
> +!$ACC PARALLEL &
> +!$ACC& COPYIN(ARGC) ! { dg-error "directive cannot be specified within" }
> + IF (ARGC .NE. 0) THEN
> + CALL ABORT
> + END IF
> +!$ACC END PARALLEL
> +!$OMP END PARALLEL
> +
> + END SUBROUTINE ICHI
> +
> +
> + SUBROUTINE NI
> + IMPLICIT NONE
> + INTEGER :: I
> +
> +!$ACC PARALLEL &
> +!$OMP& DO ! { dg-error "Wrong OpenACC continuation" }
> + DO I = 1, 10
> + ENDDO
> +
> +!$OMP PARALLEL &
> +!$ACC& LOOP ! { dg-error "Wrong OpenMP continuation" }
> + DO I = 1, 10
> + ENDDO
> + END SUBROUTINE NI
> diff --git gcc/testsuite/gfortran.dg/goacc/omp.f95
> gcc/testsuite/gfortran.dg/goacc/omp.f95
> index 24f639f..339438a 100644
> --- gcc/testsuite/gfortran.dg/goacc/omp.f95
> +++ gcc/testsuite/gfortran.dg/goacc/omp.f95
> @@ -63,4 +63,12 @@ contains
> !$omp end parallel
> !$acc end data
> end subroutine roku
> -end module test
> \ No newline at end of file
> +
> + subroutine nana
> + !$acc parallel &
> + !$omp do ! { dg-error "Wrong OpenACC continuation" }
> +
> + !$omp parallel &
> + !$acc loop ! { dg-error "Wrong OpenMP continuation" }
> + end subroutine nana
> +end module test
Grüße
Thomas
signature.asc
Description: PGP signature
Hi Jakub!
Thanks for the review.
On Tue, 20 Oct 2015 12:02:45 +0200, Jakub Jelinek wrote:
> On Mon, Oct 19, 2015 at 06:44:40PM +0200, Thomas Schwinge wrote:
> > > How's the following (complete patch instead of incremental patch; the
> > > driver changes are still
5.6090200%40acm.org%3E>
(gomp-4_0-branch r228678), and
<http://news.gmane.org/find-root.php?message_id=%3C561AE027.9040601%40acm.org%3E>
(gomp-4_0-branch r228694).
Grüße
Thomas
signature.asc
Description: PGP signature
array->left = NULL;
array->right = NULL;
splay_tree_insert (&devicep->mem_map, array);
diff --cc libgomp/testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c
index d478ce2,22cef6d..f3b490a
--- libgomp/testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c
+++ libgomp/testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c
@@@ -1,4 -1,4 +1,6 @@@
/* { dg-do run { target openacc_nvidia_accel_selected } } */
++/*
<http://news.gmane.org/find-root.php?message_id=%3C87pp0aaksc.fsf%40kepler.schwinge.homeip.net%3E>.
++ { dg-xfail-run-if "TODO" { *-*-* } } */
/* { dg-additional-options "-lcuda" } */
#include
Grüße
Thomas
signature.asc
Description: PGP signature
svn merge -r 224838:225300
svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_1-branch
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@229214
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
Hi!
On Fri, 23 Oct 2015 10:07:49 +0200, Thomas Schwinge
wrote:
> On Mon, 19 Oct 2015 17:54:46 +0200, I wrote:
> > [...] Jakub's big "Merge from
> > gomp-4_1-branch to trunk",
> > <http://news.gmane.org/find-root.php?message_id=%3C20151013191214.GL478%
ct 23 13:26:35 2015 +
svn merge -r 226438:228761
svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_1-branch
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@229255
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
e9a366a655f4c8e4509d50
Merge: 17f04b7 43895be
Author: tschwinge
Date: Fri Oct 23 13:43:20 2015 +
svn merge -r 228776:228777 svn+ssh://gcc.gnu.org/svn/gcc/trunk
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@229257
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
iven
my lack of detailed understanding of this code, I'm not too sure about my
changes.
Here's, briefly, what I did: in gcc/omp-low.c:expand_omp_for_init_counts
extend created_zero_iter_bb handling for fd->ordered; at the end of that
function, individually decide (lame...) whether to use zero_iter1_b
Hi Jakub!
On Fri, 23 Oct 2015 15:58:47 +0200, Jakub Jelinek wrote:
> On Fri, Oct 23, 2015 at 03:38:31PM +0200, Thomas Schwinge wrote:
> > On Fri, 23 Oct 2015 12:48:23 +0200, I wrote:
> > > On Fri, 23 Oct 2015 10:07:49 +0200, I wrote:
> > > > On Mon, 19 Oc
/gcc/branches/gomp-4_0-branch@229286
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
a_dep' [-Werror=unused-variable]
rtx data_dep = expand_normal (gimple_call_arg (stmt, 1));
^
[...]/source-gcc/gcc/internal-fn.c:1988:6: error: unused variable 'axis'
[-Werror=unused-variable]
rtx axis = expand_normal (gimple_call_arg (stmt, 2));
^
Grüße
Thomas
signature.asc
Description: PGP signature
Hi!
On Wed, 14 Oct 2015 14:08:42 +0200, Bernd Schmidt wrote:
> On 10/09/2015 05:14 PM, Thomas Schwinge wrote:
> > On Fri, 19 Jun 2015 09:47:41 +0200, I wrote:
> >> On Tue, 5 May 2015 11:43:20 +0200, I wrote:
> >>> On Mon, 4 May 2015 10:20:14 -0400, John David Ang
Hi!
On Wed, 14 Oct 2015 14:05:49 +0200, Bernd Schmidt wrote:
> On 10/09/2015 05:11 PM, Thomas Schwinge wrote:
> > On Wed, 22 Jul 2015 16:39:54 +0200, I wrote:
> >> [...] cleanup; committed to
> >> gomp-4_0-branch in r226072: [...]
> >
> > OK for trunk?
>
starting at
> <http://news.gmane.org/find-root.php?message_id=%3C87twq4p9f4.fsf%40kepler.schwinge.homeip.net%3E>.
>
> On Tue, 06 Oct 2015 13:55:00 +0200, Andreas Schwab
> wrote:
> > Thomas Schwinge writes:
> >
> > > | The two regressed test cases use __built
xcess errors)
UNRESOLVED: gcc.dg/tree-ssa/operand-equal-2.c scan-tree-dump forwprop2 "v =
. 0, 0, 0, 0 ."
Grüße
Thomas
signature.asc
Description: PGP signature
t and tested
on x86_64-*-freebsd. OK to commit (if not no one has a
better patch)?
OK. And thanks for the patch!
Thomas
d27b5..20fd5ec 100644
--- gcc/ChangeLog
+++ gcc/ChangeLog
@@ -1,3 +1,9 @@
+2015-10-27 Thomas Schwinge
+
+ * tree.h (OACC_PARALLEL_BODY, OACC_PARALLEL_CLAUSES)
+ (OACC_KERNELS_BODY, OACC_KERNELS_CLAUSES, OACC_KERNELS_COMBINED)
+ (OACC_PARALLEL_COMBINED): Don't define macros. Ad
, b, n) private (R::r)
>for (int i = 0; i < 30; i++)
> {
> int q = omp_get_thread_num ();
Could you please review that, and while at it, could there possibly be
any other races of r or R::r, or other objects?
Grüße
Thomas
signature.asc
Description: PGP signature
Hi!
On Tue, 27 Oct 2015 11:08:15 +0100, Jakub Jelinek wrote:
> On Tue, Oct 27, 2015 at 10:15:11AM +0100, Thomas Schwinge wrote:
> > ... looks a bit as if it might need to get the same patch applied that
> > Tom has applied to libgomp.c++/member-2.C:
>
> You're right, m
didn't manage to (in
> a reasonable amount of time, which has not been a lot that I allocated)
> ;-) -- would you please have a look at this (but it's not urgent).
>
> [WIP patch]
That never got resolved, so I've now done it myself, directly for trunk.
OK to commit?
commit 1e0a
Hi!
On Tue, 27 Oct 2015 16:26:54 +0100, Jakub Jelinek wrote:
> On Tue, Oct 27, 2015 at 04:19:49PM +0100, Thomas Schwinge wrote:
> > On Wed, 05 Nov 2014 17:44:58 +0100, I wrote:
> > > On Wed, 05 Nov 2014 17:36:46 +0100, I wrote:
> > > > In r217146, I applied th
sed-variable]
int list;
^
commit 1e53d795ea68bcc7e5d5a7fa21e58c506e557cb4
Author: tschwinge
Date: Wed Oct 28 10:57:45 2015 +
Address -Werror=unused-variable and -Werror=unused-function diagnostics
gcc/cp/
* parser.c (require_positive_expr): Remove
.7fe3eac 100644
--- gcc/fortran/ChangeLog.gomp
+++ gcc/fortran/ChangeLog.gomp
@@ -1,3 +1,8 @@
+2015-10-29 Thomas Schwinge
+
+ * openmp.c (gfc_match_omp_map_clause): Remove allow_sections
+ formal parameter.
+
2015-10-28 Cesar Philippidis
* trans-openmp.c (gfc_filter_oacc_c
Hi!
On Wed, 28 Oct 2015 08:30:56 -0700, Cesar Philippidis
wrote:
> On 10/28/2015 04:00 AM, Thomas Schwinge wrote:
> > On Tue, 27 Oct 2015 11:36:10 -0700, Cesar Philippidis
> > wrote:
> >> This patch contains the following:
> >>
> >> * C fr
Hi!
On Thu, 29 Oct 2015 09:56:18 +0100, I wrote:
> On Wed, 28 Oct 2015 08:30:56 -0700, Cesar Philippidis
> wrote:
> > On 10/28/2015 04:00 AM, Thomas Schwinge wrote:
> > > On Tue, 27 Oct 2015 11:36:10 -0700, Cesar Philippidis
> > > wrote:
> > > With...
&
another ICE. This
patch cures that ICE. The patch simply checks that
the array indices have INTEGER type before calling
GMP routines. Tested om x86_64-*-freebsd.
OK to commit?
OK.
I would also have considered this one obvious.
Thanks for the patch!
Thomas
Hi Tom!
On Tue, 13 Oct 2015 17:49:21 +0200, Tom de Vries wrote:
> On 12/10/15 14:52, Tom de Vries wrote:
> > On 12/10/15 12:49, Thomas Schwinge wrote:
> >> On Sat, 10 Oct 2015 12:49:01 +0200, Tom de
> >> Vries wrote:
> >>> >--- /dev/null
> >>&g
-
2 files changed, 5 insertions(+), 12 deletions(-)
diff --git libgomp/ChangeLog.gomp libgomp/ChangeLog.gomp
index ddbcdee..89f57ef 100644
--- libgomp/ChangeLog.gomp
+++ libgomp/ChangeLog.gomp
@@ -1,3 +1,8 @@
+2015-10-30 Thomas Schwinge
+
+ * testsuite/libgomp.oacc-c-c++-common/acc-on-
g.gomp
index 89f57ef..ba33e02 100644
--- libgomp/ChangeLog.gomp
+++ libgomp/ChangeLog.gomp
@@ -1,5 +1,8 @@
2015-10-30 Thomas Schwinge
+ * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Restore
+ dg-do compile directive.
+
* testsuite/libgomp.oacc-c-c++-common/acc-on-device.c:
neration later & simplify. Merge ifs.
Thanks for clearing that up. When working through merge conflicts of a
recent merge from trunk into gomp-4_0-branch, I had noticed the same
oddities (unreachable "if" condition, too complicated reductions
handling), but at that time couldn
an/ChangeLog.gomp
index 7fe3eac..592dd8d 100644
--- gcc/fortran/ChangeLog.gomp
+++ gcc/fortran/ChangeLog.gomp
@@ -1,3 +1,7 @@
+2015-10-30 Thomas Schwinge
+
+ * openmp.c (resolve_omp_clauses): Add "LINK" to clause_names.
+
2015-10-29 Thomas Schwinge
* openmp.c (gfc_match
30 16:32:01 2015 +
svn merge -r 229177:229562 svn+ssh://gcc.gnu.org/svn/gcc/trunk
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@229589
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
nst.c: Include "md5.h".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@229652
138bc75d-0d04-0410-961f-82ee72b054a4
---
gcc/ChangeLog| 5 +
gcc/fold-const.c | 1 +
2 files changed, 6 insertions(+)
diff --git gcc/ChangeLog gcc/ChangeLog
index d927d35..966a7f9 100644
--- g
at is best.
> >>>> I've bootstrapped the attached patch for an nvptx/x86_64-linux target.
> >>>> I'm still testing that toolchain. If the testing comes back clean, is
> >>>> this patch OK for trunk?
> >> Ah, I see. there is no nvpt
Hi!
The OpenACC atomic directive matches OpenMP's atomic directive (got that
clarified by the OpenACC committee), so they can share the same
implementation. OK for trunk?
commit 826c7022d0e2b9e225215b168a95487823dce925
Author: Thomas Schwinge
Date: Mon Nov 2 10:35:44 2015 +0100
Op
Hi!
On Mon, 2 Nov 2015 14:40:54 +0100, Jakub Jelinek wrote:
> On Mon, Nov 02, 2015 at 02:09:38PM +0100, Thomas Schwinge wrote:
> > The OpenACC atomic directive matches OpenMP's atomic directive (got that
> > clarified by the OpenACC committee), so they can share the same
>
;
> +
> + return 0;
> +}
> +
> +/* Check that the loop has been split off into a function. */
> +/* { dg-final { scan-tree-dump-times "(?n);; Function .*main._omp_fn.0" 1
> "optimized" } } */
This works for both C and C++.
> +
> +/* { dg-final { scan-tree-dump-times "clique 1 base 1" 3 "alias" } } */
> +/* { dg-final { scan-tree-dump-times "clique 1 base 2" 1 "alias" } } */
> +/* { dg-final { scan-tree-dump-times "clique 1 base 3" 1 "alias" } } */
> +/* { dg-final { scan-tree-dump-times "clique 1 base 4" 1 "alias" } } */
> +/* { dg-final { scan-tree-dump-times "(?n)clique .* base .*" 6 "alias" } } */
Grüße
Thomas
signature.asc
Description: PGP signature
oc; oc = oc->next)
> -{
> - for (list = OMP_LIST_LINK; list <= OMP_LIST_LINK; list++)
> - for (n = oc->clauses->lists[list]; n; n = n->next)
> - {
> - if (n->sym->mark)
> - gfc_error ("Symbol %qs present on multiple clauses at %L",
> - n->sym->name, &loc);
> - else
> - n->sym->mark = 1;
> - }
> -}
> + check_array_not_assumed (n->sym, n->where,
> +"DEVICE_RESIDENT");
> + }
>
> - for (oc = ns->oacc_declare; oc; oc = oc->next)
> -{
> - for (list = OMP_LIST_LINK; list <= OMP_LIST_LINK; list++)
> - for (n = oc->clauses->lists[list]; n; n = n->next)
> - n->sym->mark = 0;
> + for (n = oc->clauses->lists[OMP_LIST_MAP]; n; n = n->next)
> + if (n->expr && n->expr->ref->type == REF_ARRAY)
> + gfc_error ("Subarray %qs is not allowed in $!ACC DECLARE at %L",
> + n->sym->name, &n->where);
> }
> +
> + /* Check for duplicate link, device_resident and data clauses. */
> + resolve_oacc_declare_map (ns->oacc_declare, OMP_LIST_LINK);
> + resolve_oacc_declare_map (ns->oacc_declare, OMP_LIST_DEVICE_RESIDENT);
> + resolve_oacc_declare_map (ns->oacc_declare, OMP_LIST_MAP);
> }
Grüße
Thomas
signature.asc
Description: PGP signature
data_enter = true;
> break;
> @@ -324,6 +326,9 @@ GOACC_enter_exit_data (int device, size_t mapnum,
> {
> switch (kind)
> {
> + case GOMP_MAP_ALLOC:
> + acc_present_or_create (hostaddrs[i], sizes[i]);
> + break;
> case GOMP_MAP_POINTER:
> gomp_acc_insert_pointer (1, &hostaddrs[i], &sizes[i],
> &kinds[i]);
> @@ -332,6 +337,7 @@ GOACC_enter_exit_data (int device, size_t mapnum,
> acc_create (hostaddrs[i], sizes[i]);
> break;
> case GOMP_MAP_FORCE_PRESENT:
> + case GOMP_MAP_TO:
> acc_present_or_copyin (hostaddrs[i], sizes[i]);
> break;
> case GOMP_MAP_FORCE_TO:
(As far as I can tell, these three hunks are not related to OpenACC
declare, but a bug fix for OpenACC enter/exit data. Will submit that
later on, with test cases.)
Grüße
Thomas
signature.asc
Description: PGP signature
/gcc/testsuite/gfortran.dg/goacc/parallel-tree.f95
> @@ -37,4 +37,3 @@ end program test
>
> ! { dg-final { scan-tree-dump-times "map\\(force_deviceptr:u\\)" 1
> "original" } }
> ! { dg-final { scan-tree-dump-times "private\\(v\\)" 1 "original" } }
> -! { dg-final { scan-tree-dump-times "firstprivate\\(w\\)" 1 "original" } }
Which of your source code changes does this change related to?
Grüße
Thomas
signature.asc
Description: PGP signature
}
--
upstream/trunk:gcc/cp/parser.c- error_at (pragma_tok->location,
upstream/trunk:gcc/cp/parser.c- "%<#pragma acc update%> must
contain at least one "
upstream/trunk:gcc/cp/parser.c: "% or %
clause");
upstream/trunk:gcc/cp/parser.c- return NULL_TREE;
upstream/trunk:gcc/cp/parser.c-}
Grüße
Thomas
signature.asc
Description: PGP signature
Hi!
On Wed, 4 Nov 2015 18:21:36 +0100, Jakub Jelinek wrote:
> On Wed, Nov 04, 2015 at 06:15:14PM +0100, Thomas Schwinge wrote:
> > > --- a/gcc/fortran/openmp.c
> > > +++ b/gcc/fortran/openmp.c
> >
> > > @@ -3028,6 +3015,22 @@ resolve_omp_clauses (gf
/* Parallel/kernels clauses. */
> +
> default:
> OMP_CLAUSE_CHAIN (clauses) = *not_loop_clauses;
> *not_loop_clauses = clauses;
Contrary to your ChangeLog entry, this is not duplicating but is moving
OMP_CLAUSE_REDUCTION handling. Is that intentional
Hi!
Nathan, question here about clause splitting for combined OpenACC
"parallel loop" and "kernels loop" constructs, in particular:
#pragma acc parallel loop reduction([...])
On Thu, 5 Nov 2015 06:47:58 -0800, Cesar Philippidis
wrote:
> On 11/05/2015 04:14 AM
/branches/gomp-4_0-branch@229821
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
[], bool);
+extern void default_goacc_reduction (gcall *);
/* These are here, and not in hooks.[ch], because not all users of
hooks.h include tm.h, and thus we don't have CUMULATIVE_ARGS. */
Grüße
Thomas
signature.asc
Description: PGP signature
add_phi_arg (phi, var, nop_edge, gimple_location (call));
+
+ /* Reset dominator of dst bb. */
+ set_immediate_dominator (CDI_DOMINATORS, dst_bb, call_bb);
+
+ /* Reset the gsi. */
+ gsi = gsi_for_stmt (call);
}
else
{
Grüße
Thomas
signature.asc
Description: PGP signature
+
.../libgomp.oacc-c-c++-common/loop-red-wv-1.c | 54 ++++
9 files changed, 405 insertions(+)
Grüße
Thomas
signature.asc
Description: PGP signature
3 ++-
libgomp/ChangeLog |5 +
libgomp/testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c |2 ++
libgomp/testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c |2 ++
5 files changed, 15 insertions(+), 1 deletion(-)
diff --git gcc/testsuite/Change
nding on it would probably delay the accelerator efforts. It
| might be simpler to stream code several times to different backends
| using the LTO infrastructure. [...] A third
| option that SuSE is experimenting with is not writing a new backend but
| instead generating code right after the last G
41258a0822da206890e04c7
Author: tschwinge
Date: Fri Nov 6 16:44:35 2015 +
XFAIL testcases regressed after r229814, "Merge from gomp-4_5-branch to
trunk"
gcc/testsuite/
* gfortran.dg/goacc/combined_loop.f90: XFAIL.
git-svn-id: svn+ssh://gcc.gnu.or
worker
> > ^
> > source-gcc/libgomp/testsuite/libgomp.oacc-fortran/reduction-5.f90: In
> > function 'redsub_gang_._omp_fn.3':
> > source-gcc/libgomp/testsuite/libgomp.oacc-fortran/reduction-5.f90:34:0:
> > warning: 'sum.43' may be used uninitialized in this function
> > [-Wmaybe-uninitialized]
> >!$acc loop reduction(+:sum) gang
> > ^
I didn't see anyone explicitly claim to have fixed that; however, the
warnings are gone.
Grüße
Thomas
signature.asc
Description: PGP signature
/c-omp.c:c_oacc_split_loop_clauses remove the
special handling for OMP_CLAUSE_REDUCTION, and move it to "Loop clauses"
section, and in
gcc/fortran/trans-openmp.c:gfc_trans_oacc_combined_directive I don't see
reduction clauses being handled, hmm, maybe the Fortran front end is
doing that differently?
Grüße
Thomas
signature.asc
Description: PGP signature
/branches/gomp-4_0-branch@229929
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
e.org/find-root.php?message_id=%3C563CAEA5.3030007%40codesourcery.com%3E>
and
<http://news.gmane.org/find-root.php?message_id=%3C563E01A4.20607%40acm.org%3E>,
they also disappear when applying the OpenACC firstprivate support patch
on trunk.
> This is much smaller merge than the one fro
p;& size))
+ {
+ tree type = TREE_TYPE (gimple_call_lhs (call));
+ result = build_int_cst (type, size - is_pos);
+ }
+
+ return result;
+ }
+
/* Return true if ARG0 CODE ARG1 in infinite signed precision operation
doesn't fit into TYPE. The test for overflow should be regardless of
-fwrapv, and even for unsigned types. */
Grüße
Thomas
signature.asc
Description: PGP signature
[Forwarding to gcc-patches, doh!]
Best regards,
Thomas
--- Begin Message ---
Hi,
ARM-specific thumb2-slow-flash-data.c testcase shows 2 failures when running
for arm-none-eabi with -mcpu=cortex-m7:
FAIL: gcc.target/arm/thumb2-slow-flash-data.c (test for excess errors)
FAIL: gcc.target/arm
diff --git gcc/testsuite/ChangeLog.gomp gcc/testsuite/ChangeLog.gomp
index a300e38..22f1c74 100644
--- gcc/testsuite/ChangeLog.gomp
+++ gcc/testsuite/ChangeLog.gomp
@@ -1,3 +1,8 @@
+2015-11-09 Thomas Schwinge
+
+ * gcc.dg/gomp/notify-new-function-3.c: Scan "ompexpssa2" instead
+
/branches/gomp-4_0-branch@229996
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
*-* }+} } }
! { dg-final { scan-tree-dump-times "private.z" 2 "gimple" } }
With that, committed to gomp-4_0-branch in r230012:
commit 80ebc1e747e3422e0cc57c4c11387ec26bbf8814
Merge: 175e08b ef014f9
Author: tschwinge
Date: Mon Nov 9 11:10:12 2015 +
svn merge -r 229831:229832 svn+ssh://gcc.gnu.org/svn/gcc/trunk
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@230012
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
de that file:
$ git grep --cached -F cilk.h -- gcc/testsuite/
gcc/testsuite/g++.dg/cilk-plus/CK/pr66326.cc:#include
..., so I guess that's not supported?
Grüße
Thomas
signature.asc
Description: PGP signature
+
gcc/testsuite/gcc.target/i386/addr-space-3.c |2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git gcc/testsuite/ChangeLog gcc/testsuite/ChangeLog
index ca1991b..da4f940 100644
--- gcc/testsuite/ChangeLog
+++ gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2015-11-09 Thomas Schwinge
/gcc/branches/gomp-4_0-branch@230084
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
if (is_reference (ovar))
> talign = TYPE_ALIGN_UNIT (TREE_TYPE (TREE_TYPE (ovar)));
I had put in the "gcc_assert (!is_gimple_omp_oacc (ctx->stmt))" to make
sure we don't ever reach this for OpenACC kernels, which will not "goto
oacc_firstprivate_2" because that's only being done for
"is_oacc_parallel" (but not for "is_oacc_kernels").
Grüße
Thomas
signature.asc
Description: PGP signature
((unused));
> > +
> > + __builtin_printf ("CheCKpOInT\n");
> > +#pragma acc declare present (a)
> > +}
> > +
> > +/* { dg-output "CheCKpOInT" } */
> > +/* { dg-shouldfail "" } */
>
> Are you sure printf will have the buffers flushed before abort on all
> targets?
No, have to print to stderr; see
<http://news.gmane.org/find-root.php?message_id=%3C87pp017fwh.fsf%40kepler.schwinge.homeip.net%3E>.
Grüße
Thomas
signature.asc
Description: PGP signature
/gcc/branches/gomp-4_0-branch@230154
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
ting something concerning accel_compiler from the libgomp
> testsuite is needed?
Use "{ target openacc_nvidia_accel_selected }", as implemented by
libgomp/testsuite/lib/libgomp.exp:check_effective_target_openacc_nvidia_accel_selected
(already present on trunk).
Grüße
Thomas
signature.asc
Description: PGP signature
/gcc/branches/gomp-4_0-branch@230214
138bc75d-0d04-0410-961f-82ee72b054a4
Grüße
Thomas
signature.asc
Description: PGP signature
hat
doesn't matter for C code anyway (no artificial REFERENCE_TYPEs
generated), right? So it must be some other change installed on
gomp-4_0-branch but not on trunk.
Grüße
Thomas
signature.asc
Description: PGP signature
_device etc.
> num_teams/thread_limit, as runtime arguments, you already get on the trunk.
> For compile time decided values, those should go into some data section
> and be somehow attached to what fn is translated into in the AVL tree (which
> you really don't need to use for variables on GOMP_OFF
ons(-)
diff --git gcc/cp/ChangeLog.gomp gcc/cp/ChangeLog.gomp
index 1f19b39..e4d000d 100644
--- gcc/cp/ChangeLog.gomp
+++ gcc/cp/ChangeLog.gomp
@@ -1,3 +1,8 @@
+2015-11-12 Thomas Schwinge
+
+ * semantics.c (finish_omp_clauses): Remove "reference types are
+ not supported in Op
ing this was the intention, just to confirm: the generated
gcc/pass-instances.def files that I looked at did not change after your
recent gcc/gen-pass-instances.awk changes.
Grüße
Thomas
signature.asc
Description: PGP signature
s there is discussion about this (or, at least, what
looks like very similar backtraces) on the mailing lists and in Bugzilla,
I suppose this will be cured soon.
Grüße
Thomas
signature.asc
Description: PGP signature
: Thomas Schwinge
Date: Fri Nov 13 14:36:57 2015 +0100
[OpenACC] C, C++: bind and nohost clauses
-MM-DD Thomas Schwinge
Joseph Myers
gcc/
* tree-core.h (enum omp_clause_code): Add OMP_CLAUSE_BIND and
OMP_CLAUSE_NOHOST.
* tree.c
Hi Dominique,
(1) Why is this block reached when compiling with -ffrontend-optimize, but not
with -fno-frontend-optimize (Thomas)?
The problem here is that gfc_variable_attr is called (indirectly)
during optimize_assignment. In this case, this causes the ICE
because of the existing error
.dg/init/self1.C -std=c++14 [-execution
test-]{+compilation failed to produce executable+}
Grüße
Thomas
signature.asc
Description: PGP signature
scan-rtl-dump mach "Merging
loop .* into "
Here, -fopenacc induces -lgomp. So, we'll either need a (dummy?) libgomp
available to link against in gcc/testsuite/, or come up with a way to do
LTO/offloading compilation without actually linking (libgomp into) the
final executable, or move such tests into libgomp/testsuite/. (Jakub?)
Grüße
Thomas
signature.asc
Description: PGP signature
nk");
> + std::swap (at1, at2);
> + }
> + else
> + id = get_identifier ("omp declare target");
Is it intentional that you didn't add "omp declare target link" to
gcc/c-family/c-common.c:c_common_attribute_table, next to the existing
"omp declare target"?
Grüße
Thomas
signature.asc
Description: PGP signature
1301 - 1400 of 5733 matches
Mail list logo