On Thu, Mar 23, 2017 at 01:53:37PM +0300, Alexander Monakov wrote:
> On Thu, 23 Mar 2017, Jakub Jelinek wrote:
> > > + if (vf != 1)
> > > + continue;
> > > + unlink_stmt_vdef (stmt);
> >
> > This is weird. AFAIK unlink_stmt_vdef just replaces the uses of the vdef
> > of that stmt wi
On Thu, 23 Mar 2017, Jakub Jelinek wrote:
> > + if (vf != 1)
> > + continue;
> > + unlink_stmt_vdef (stmt);
>
> This is weird. AFAIK unlink_stmt_vdef just replaces the uses of the vdef
> of that stmt with the vuse, but it still keeps the vdef (and vuse) around
> on the stmt, t
On Wed, Mar 22, 2017 at 06:46:33PM +0300, Alexander Monakov wrote:
> @@ -1669,6 +1672,93 @@ make_pass_oacc_device_lower (gcc::context *ctxt)
>return new pass_oacc_device_lower (ctxt);
> }
>
> +
> +
I'd avoid the empty line after ^L.
> @@ -1694,6 +1785,20 @@ execute_omp_device_lower ()
>
This patch implements rewriting of SIMT private variables as fields of a
struct by setting DECL_VALUE_EXPR on them and regimplifying statements.
* omp-offload.c: Include langhooks.h, tree-nested.h, stor-layout.h.
(ompdevlow_adjust_simt_enter): New.
(find_simtpriv_var_op): N