On 24/09/15 08:23, Thomas Schwinge wrote:
Hi Tom!

On Tue, 11 Aug 2015 20:53:39 +0200, Tom de Vries <tom_devr...@mentor.com> wrote:
Don't create superfluous parm in expand_omp_taskreg

2015-08-11  Tom de Vries  <t...@codesourcery.com>

        * omp-low.c (expand_omp_taskreg): If in ssa, set rhs of parcopy stmt to
        parm_decl, rather than generating a dummy default def in cfun.
        * tree-cfg.c (replace_ssa_name): Assume no default defs.  Make sure
        ssa_name from cfun and child_fn do not share a stmt as def stmt.
        (move_stmt_op): Handle PARM_DECl.
        (gather_ssa_name_hash_map_from): New function.
        (move_sese_region_to_fn): Add default defs for function params, and add
        them to vars_map.  Release copied ssa names.
        * tree-cfg.h (gather_ssa_name_hash_map_from): Declare.

Do I understand correct that with this change present on trunk (which I'm
currently merging into gomp-4_0-branch), the changes you've earlier done
on gomp-4_0-branch to gcc/omp-low.c:release_dangling_ssa_names,
gcc/tree-cfg.c:replace_ssa_name, should now be reverted?  That is, how
much of the following patches can be reverted now (listed backwards in
time)?


Hi Thomas,

indeed, in the above commit we release the dangling ssa names in move_sese_region_to_fn. So after committing this patch to the gomp-4_0-branch, the call to release_dangling_ssa_names is no longer necessary, and the function release_dangling_ssa_names can be removed.

Thanks,
- Tom

commit 6befb84f4c0157a4cdf66cfaf64e457180f9a7fa
Author: vries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Wed Aug 5 06:01:08 2015 +0000

     Fix release_dangling_ssa_names

     2015-08-05  Tom de Vries  <t...@codesourcery.com>

         * omp-low.c (release_dangling_ssa_names): Release SSA_NAMEs with NULL
         def stmt.
         * tree-cfg.c (replace_ssa_name): Don't move default def nops.  Set def
         stmt of unused SSA_NAME to NULL.

     git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@226608 
138bc75d-0d04-0410-961f-82ee72b054a4

commit 0cf67438bd87e5a6ec063e90da0ea20801bda54c
Author: vries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Thu Jun 4 15:47:09 2015 +0000

     Add release_dangling_ssa_names

     2015-06-04  Tom de Vries  <t...@codesourcery.com>

         * omp-low.c (release_dangling_ssa_names): Factor out of ...
         (pass_expand_omp_ssa::execute): ... here.

     git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@224130 
138bc75d-0d04-0410-961f-82ee72b054a4

commit 93557ac5e30c26ee1a3d1255e31265b287171a0d
Author: tschwinge <tschwinge@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Tue Apr 21 19:37:19 2015 +0000

     Expand oacc kernels after pass_fre

         gcc/
         * omp-low.c: Include gimple-pretty-print.h.
         (release_first_vuse_in_edge_dest): New function.
         (expand_omp_target): When not in ssa, don't split off oacc kernels
         region, clear PROP_gimple_eomp in cfun->curr_properties to force later
         expanssion, and add GOACC_kernels_internal call.
         When in ssa, split off oacc kernels and convert GOACC_kernels_internal
         into GOACC_kernels call.  Handle ssa-code.
         (pass_data_expand_omp): Don't set PROP_gimple_eomp unconditionally in
         properties_provided field.
         (pass_expand_omp::execute): Set PROP_gimple_eomp in
         cfun->curr_properties tentatively.
         (pass_data_expand_omp_ssa): Add TODO_remove_unused_locals to
         todo_flags_finish field.
         (pass_expand_omp_ssa::execute): Release dangling SSA_NAMEs after 
calling
         execute_expand_omp.
         (gimple_stmt_ssa_operand_references_var_p)
         (gimple_stmt_omp_data_i_init_p): New function.
         * omp-low.h (gimple_stmt_omp_data_i_init_p): Declare.
         * passes.def: Add pass_expand_omp_ssa after pass_fre.  Add
         pass_expand_omp_ssa after pass_all_early_optimizations.
         * tree-ssa-ccp.c: Include omp-low.h.
         (surely_varying_stmt_p, ccp_visit_stmt): Handle .omp_data_i init
         conservatively.
         * tree-ssa-forwprop.c: Include omp-low.h.
         (pass_forwprop::execute): Handle .omp_data_i init conservatively.
         * tree-ssa-sccvn.c: Include omp-low.h.
         (visit_use): Handle .omp_data_i init conservatively.
         * cgraph.c (cgraph_node::release_body): Don't release offloadable
         functions.

     git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@222279 
138bc75d-0d04-0410-961f-82ee72b054a4


Grüße,
  Thomas


Reply via email to