This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Implementing OpenMP pragmas for the C front end
Neil Booth <neil@daikokuya.co.uk> writes:
> David Edelsohn wrote:-
>
> > Unfortunately, this is a public standard. Somehow we need to be
> > compatible.
> >
> > What we really want is some way of converting
> >
> > #pragma omp flush (x)
> >
> > to
> >
> > __builtin_omp_flush (x);
> >
> > which is a more natural way of implementing this and would allow semantic
> > error checking.
>
> On second thoughts it's possibly not as bad as I thought. I had in mind
> that the #pragma callbacks would be conditional on parser state; of
> course that needn't be the implementation. The callbacks should happen
> regardless, and the front end should ignore/reject appropriately.
All you really want is a way for the #pragma callback to respond with
"please pass #pragma to the parser as a token"; then the parser can
handle it.
[Mind, I'm a bit worried about what this might make the parser look
like; maybe we would really prefer to use another preprocessor before
the code actually gets to the compiler, not try to handle the pragmas
in the compiler itself.]
--
- Geoffrey Keating <geoffk@geoffk.org>