On Wed, Nov 04, 2015 at 08:58:26AM -0500, Nathan Sidwell wrote: > On 11/04/15 05:31, Jakub Jelinek wrote: > >On Tue, Nov 03, 2015 at 11:01:57AM -0500, Nathan Sidwell wrote: > >>On 11/03/15 10:46, Jakub Jelinek wrote: > >>>On Mon, Nov 02, 2015 at 11:18:37AM -0500, Nathan Sidwell wrote: > >>>>This is the core execution bits of OpenACC reductions. > >>>> > >>>>We have a new internal fn 'IFN_GOACC_REDUCTION' and a new target hook > >>>>goacc.reduction, to lower it on the target compiler. > >>> > >>>So, let me start with a few questions: > >>>1) does OpenACC allow UDRs or only the built-in reductions? If it > >>> does not allow UDRs, do you have it covered by testcases that you > >>> disallow parsing of them (e.g. when you have > >> > >>no UDR reductions. Will check test cases for that. > > > >BTW, what about min/max reductions for C/C++? Those were added in OpenMP > >3.1, so perhaps OpenACC copied them. > > OpenACC has min/max, and this is exercised on gomp4. we'll get to porting > more testcases after this rush is done, ok? (Or is there something specific > about min/max?)
No, just wanted to know what you need to disable in the reduction clause parsing... For e.g. C it might be enough to add if (!openacc) { and } around: reduc_id = c_parser_peek_token (parser)->value; break; Jakub