DO [,] CONCURRENT forall-header

is a special loop variant with some extra constraints; in particular, it allows
the compiler to run through the loop in any index order.

That's somewhat similar to FORALL (or at least to how FORALL is perceived) but
avoids (a) temporaries (which FORALL often requires), (b) is no assignment
feature (like FORALL) but a real loop, which allows for more things in the
loop.

First step is to implement the syntax and map DO CONCURRENT on a normal loop; I
have a embryonic patch for this.

Next step is to optimize for DO CONCURRENT (possibly thinking of automatic
parallelization during -fopenmp/-ftree-parallelize-loops, etc.)


Interpretation requests (main reason for opening this PR):
  http://j3-fortran.org/doc/meeting/192/10-172.txt
  http://j3-fortran.org/doc/meeting/192/10-173.txt
  http://j3-fortran.org/doc/meeting/192/10-175.txt
  http://j3-fortran.org/doc/meeting/192/10-176.txt


-- 
           Summary: [F2008] Implement DO CONCURRENT
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: burnus at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44646

Reply via email to