[PATCH 5/6] [GOMP4] OpenACC 1.0+ support in fortran front-end

Tobias Burnus burnus@net-b.de
Mon Feb 10 23:13:00 GMT 2014


Hi!

Thomas Schwinge wrote:
> Please see
> [...]
>      $ git diff --stat 765faa80eda3bb75aa044ad015e2e5214bf02c6d origin/gomp-4_0-branch | grep -v ChangeLog

I am now browsing through the changes. Remarks:

1) I think you also want to set in gcc/fortran/options.c
      gfc_option.flag_recursive = -1
for OpenACC as it is done for OpenMP. That should be also mentioned in 
fortran/invoke.texi - without -frecursive, local array variables might 
be allocated in static memory, which should be incompatible with 
concurrent invocation. [At least with OpenACC 2.0's $acc routine.]

2) I think OpenACC should also be mentioned at 
http://gcc.gnu.org/onlinedocs/gfortran/Standards.html and, maybe, at 
http://gcc.gnu.org/onlinedocs/gfortran/Project-Status.html - however, I 
suggest not to put the version number there.

3) I think it would be useful to document the constants and the still 
lacking functions/procedures of openacc.h, openacc_lib.h and the openacc 
module; maybe you should start with a stub documentation - either by 
adding it into a separate chapter in libgomp.texi or in an extra 
document. In any case, there should be some reference to that document 
from http://gcc.gnu.org/onlinedocs/gfortran/Intrinsic-Modules.html 
(fortran/intrinsic.texi)


>> Can't you? I am not sure whether -fdump-parse-tree is needed; on the
>> other hand, it just clutters the *log files.
> Yes, I think that should just be in the test case files that actually
> need it?

I think the parse tree is never really needed - it just dumps the 
gfortran AST in a somewhat readable form to stdout. Hence, it mainly 
tests that the compiler doesn't ICE, unless one tries to do pattern 
matching.

(As -fdump-parse-tree is only rarely used, one keeps forgetting about it 
when extending the AST. Consequently, ICEs aren't that rare.)

Tobias



More information about the Fortran mailing list