On Wed, Nov 11, 2015 at 11:51:02AM +0100, Richard Biener wrote: > > The option -foffload-alias=pointer instructs the compiler to assume that > > objects references in an offload region do not alias. > > > > The option -foffload-alias=all instructs the compiler to make no > > assumptions about aliasing in offload regions. > > > > The default value is -foffload-alias=none. > > I think global options for this is nonsense. Please follow what > we do for #pragma GCC ivdep for example, thus allow the alias > behavior to be specified per "region" (whatever makes sense here > in the context of offloading).
Yeah, completely agreed. I don't see why the offloaded region would be in any way special, they are C/C++/Fortran code as any other. What we can and should improve is teach IPA aliasing/points to analysis about the way we lower the host vs. offloading region boundary, so that if alias analysis on the caller of GOMP_target_ext/GOACC_parallel_keyed determines something it can be used on the offloaded function side and vice versa, but a switch like the above is just wrong. Jakub