This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Generalizing existing OpenMP infrastructure (was: Cleanup patches, mostly in the realm of OpenMP)


On Mon, Dec 16, 2013 at 05:49:26PM +0100, Thomas Schwinge wrote:
> > > --- gcc/gimplify.c
> > > +++ gcc/gimplify.c
> > > @@ -129,6 +129,8 @@ struct gimplify_ctx
> > >    bool in_cleanup_point_expr;
> > >  };
> > >  
> > > +/* Variable remapping context.  */
> > 
> > Please mention there OpenMP (and after OpenACC support is added, you can
> > tweak that to OpenMP/ACC or similar (in comments, not in diagnostics of
> > course).
> 
> > > -/* Create a new omp construct that deals with variable remapping.  */
> > > +/* Create a new variable remapping context for REGION_TYPE.  */
> > 
> > Ditto, removing omp here loses important information, if you eventually
> > make it omp/oacc, it will be clear what you are talking about.
> 
> This has been a tiny first attempt to follow up with what has been
> discussed at the GNU Tools Cauldron, that we intend to generalize the
> existing code, originally implemented for OpenMP, to be suitable not only
> for OpenMP but also OpenACC, Cilk Plus, and whichever other
> acceleration/parallelization scheme (general name yet to be found...).

Variable remapping context isn't the right name for it, the infrastructure
still has tons of OpenMP (or similar language extensions) specifics, and
will continue to have those.  So just making it sound too generic is IMHO
wrong, it is really about OpenMP and OpenMP inspired extensions (or
extensions that can be mapped on top of the OpenMP extensions).
OpenACC I certainly regard as OpenMP inspired extensions, they copied tons
of things from the OpenMP standard related to how the pragmas look like,
parsing rules etc.  And, while Cilk+ is kind of weird mixed bag of various
extensions, some of which have OpenMP like syntax (#pragma simd), some
look like attributes, but with weird specifics (simd clones), some are
keyword based, but often it is just a different syntax for the OpenMP 4.0
additions there were pushed into OpenMP by pretty much the same people that
designed the Cilk+ extensions.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]