[PATCH] Misc Fortran OpenMP 4.0 changes (PR fortran/60928)

Tobias Burnus burnus@net-b.de
Mon Jun 9 21:49:00 GMT 2014


Jakub Jelinek wrote:
> This patch deals with various smaller things:
> 1) -fopenmp-simd fortran support
> 2) ALLOCATABLE handling fixes (e.g. copyin can't assume in OpenMP 4.0
>     that what it copies to has the same bounds and allocation status)
> 3) support for scalar ALLOCATABLE in various clauses
> 4) support for allocatable components
> 5) support for ASSOCIATE names (predetermined in OpenMP 4.0)
> 6) diagnostics of procedure pointers in reduction, and intent(in)
>     pointers in various clauses that don't allow them in OpenMP 4.0

I lost a bit track. Is this now complete in terms of F2003 and the only 
missing bits is the support for devices and the test case for alignment? 
Or is something else pending?

> Bootstrapped/regtested on x86_64-linux and i686-linux.  Does this look
> ok to Fortran maintainers?

I browsed the patch and didn't spot something which I don't like. Thanks 
for the patch!

> +		if (n->sym->attr.pointer && n->sym->attr.intent == INTENT_IN)
> +		  switch (list)
> +		    {
> +		    case OMP_LIST_PRIVATE:
> +		    case OMP_LIST_LASTPRIVATE:
> +		    case OMP_LIST_LINEAR:
> +		    /* case OMP_LIST_REDUCTION: */
> +		      gfc_error ("INTENT(IN) POINTER '%s' in %s clause at %L",
> +				 n->sym->name, name, where);

Why is OMP_LIST_REDUCTION commented?

> @@ -822,6 +825,8 @@ struct GTY(()) lang_decl {
>     tree span;
>     /* For assumed-shape coarrays.  */
>     tree token, caf_offset;
> +  unsigned int scalar_allocatable : 1;
> +  unsigned int scalar_pointer : 1;
>   };

I think this flag can also be used in dwarf2out for to set 
DW_AT_allocated/DW_AT_associated [cf. PR59438 (a)], which would be nice. 
Does one need to take any care with LTO for either OpenMP or DWARF 
symbols? (I think one don't as it comes later, but I might have missed 
some fine print.)

Tobias

PS: gdb is about to get proper support for Fortran arrays with 
descriptor, see patch set at 
https://sourceware.org/ml/gdb-patches/2014-06/msg00108.html [Joel 
intents to review it tomorrow or on Wednesday].



More information about the Fortran mailing list