Re: [PATCH 3/5] omp-offload: implement SIMT privatization, part 2

2017-03-23 Thread Jakub Jelinek
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

Re: [PATCH 3/5] omp-offload: implement SIMT privatization, part 2

2017-03-23 Thread Alexander Monakov
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

Re: [PATCH 3/5] omp-offload: implement SIMT privatization, part 2

2017-03-23 Thread Jakub Jelinek
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 () >

[PATCH 3/5] omp-offload: implement SIMT privatization, part 2

2017-03-22 Thread Alexander Monakov
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