On Thu, 14 Jan 2016, Thomas Schwinge wrote: > Hi! > > On Fri, 8 Jan 2016 09:16:55 +0100, Richard Biener <rguent...@suse.de> wrote: > > On Wed, 16 Dec 2015, Tom de Vries wrote: > > > On 10/12/15 14:14, Tom de Vries wrote: > > > > > On Thu, 3 Dec 2015, Tom de Vries wrote: > > > > > > Essentially we have two situations: > > > > > > - in the host compiler, there is no need for the forced_output flag, > > > > > > and it inhibits optimization > > > > > > - in the accelerator compiler, it (or some equivalent) is needed > > > > > > > > Actually, things are slightly more complicated, I realize now. There's > > > > also the distinction between: > > > > - symbols declared as offloadable in the source code, and > > > > - symbols create by the compiler and marked offloadable > > > > > > > > > > I wonder if setting the force_output flag only when streaming the > > > > > > bytecode for > > > > > > offloading would work. That way, it wouldn't be set in the host > > > > > > compiler, > > > > > > while being set in the accelerator compiler. > > > > > > > > > > Yeah, that was my original thinking btw. > > > > > > > > FTR, I've tried that approach, as attached. It fixed the > > > > goacc/kernels-alias-ipa-pta*.c failures. > > Confirmed. And, no change in offloading testing when applying the patch > to gomp-4_0-branch (where these FAILs didn't appear to begin with). > > > > > And I ran target-libgomp (also > > > > using an accelerator configuration) without any regressions. > > Confirmed. > > > > How about this patch? > > > > > > We remove the setting of force_output when: > > > - encountering offloadable symbols in the frontend, or > > > - creating offloadable symbols in expand-omp. > > > > > > Instead, we set force_output in input_offload_tables. > > > > > > This is an improvement because: > > > - it moves the force_output setting to a single location > > > - it does the force_output setting ALAP > > > > Works for me. > > Do we need review from Jakub or is this good for trunk?
It's good for trunk. Richard.