[Bug middle-end/84955] [7/8 Regression] Incorrect OpenACC tile expansion

2018-04-16 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84955

--- Comment #8 from Tom de Vries  ---
Author: vries
Date: Mon Apr 16 18:01:09 2018
New Revision: 259406

URL: https://gcc.gnu.org/viewcvs?rev=259406=gcc=rev
Log:
[openacc] Fix ICE when compiling tile loop containing infinite loop

2018-04-16  Cesar Philippidis  
Tom de Vries  

PR middle-end/84955
* omp-expand.c (expand_oacc_for): Add dummy false branch for
tiled basic blocks without omp continue statements.

* testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
* testsuite/libgomp.oacc-fortran/pr84955.f90: New test.

Added:
trunk/libgomp/testsuite/libgomp.oacc-c-c++-common/pr84955.c
trunk/libgomp/testsuite/libgomp.oacc-fortran/pr84955.f90
Modified:
trunk/gcc/ChangeLog
trunk/gcc/omp-expand.c
trunk/libgomp/ChangeLog

[Bug middle-end/84955] [7/8 Regression] Incorrect OpenACC tile expansion

2018-04-16 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84955

--- Comment #7 from Tom de Vries  ---
(In reply to cesar from comment #6)
> It should be noted that GCC also chokes with any empty OpenACC loop in
> general.

Filed as PR85422 - [openacc] ICE at cfgloop.c:468: segfault in flow_loops_find

[Bug middle-end/84955] [7/8 Regression] Incorrect OpenACC tile expansion

2018-04-12 Thread cesar at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84955

--- Comment #6 from cesar at gcc dot gnu.org ---
I reverted that patch from trunk, and will revisit this issue during stage1.

It should be noted that GCC also chokes with any empty OpenACC loop in general.

[Bug middle-end/84955] [7/8 Regression] Incorrect OpenACC tile expansion

2018-04-12 Thread cesar at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84955

--- Comment #5 from cesar at gcc dot gnu.org ---
Author: cesar
Date: Thu Apr 12 13:15:45 2018
New Revision: 259346

URL: https://gcc.gnu.org/viewcvs?rev=259346=gcc=rev
Log:
PR middle-end/84955

gcc/
* lto-streamer-out.c (output_function): Fix CFG loop state before
streaming out.
* omp-expand.c (expand_oacc_for): Handle calls to internal
functions like regular functions.

libgomp/
* testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
* testsuite/libgomp.oacc-fortran/pr84955.f90: New test.

Added:
trunk/libgomp/testsuite/libgomp.oacc-c-c++-common/pr84955.c
trunk/libgomp/testsuite/libgomp.oacc-fortran/pr84955.f90
Modified:
trunk/gcc/ChangeLog
trunk/gcc/lto-streamer-out.c
trunk/gcc/omp-expand.c
trunk/gcc/testsuite/ChangeLog

[Bug middle-end/84955] [7/8 Regression] Incorrect OpenACC tile expansion

2018-04-09 Thread tschwinge at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84955

Thomas Schwinge  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |cesar at gcc dot gnu.org

[Bug middle-end/84955] [7/8 Regression] Incorrect OpenACC tile expansion

2018-03-23 Thread cesar at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84955

--- Comment #4 from cesar at gcc dot gnu.org ---
It fails in C with this:

#pragma acc parallel loop tile(2,3)
  for (i = 1; i < 10; i++)
for (j = 1; j < 10; j++)
  for (;;)
;

It must be that empty loop that tripping up the oacc tile lowering code.