Make gimple_phi_arg_def_ptr and gimple_phi_arg_has_location require a gimple_phi
commit75183104c14484cd5e70a8016a7e1c888edc69e9
authorDavid Malcolm <dmalcolm@redhat.com>
Wed, 26 Mar 2014 21:26:46 +0000 (26 17:26 -0400)
committerDavid Malcolm <dmalcolm@redhat.com>
Fri, 24 Oct 2014 21:24:41 +0000 (24 17:24 -0400)
tree359f660a4b5ea055fd514fdf30df1b75808c16f0
parent8021d658d9bf01796baa6b07f08d622ee69e1e99
Make gimple_phi_arg_def_ptr and gimple_phi_arg_has_location require a gimple_phi

This corresponds to:
  [PATCH 48/89] Make gimple_phi_arg_def_ptr and gimple_phi_arg_has_location require a gimple_phi
  https://gcc.gnu.org/ml/gcc-patches/2014-04/msg01197.html
from the original 89-patch kit

That earlier patch was approved by Jeff:
> OK once prerequisites have gone in.
in https://gcc.gnu.org/ml/gcc-patches/2014-05/msg00828.html

gcc/
* gimple.h (gimple_phi_arg_def_ptr): Require a gimple_phi rather
than a plain gimple.
(gimple_phi_arg_has_location): Likewise.

* gimple-streamer-in.c (input_phi): Return a gimple_phi rather
than a plain gimple.
* gimple-streamer-out.c (output_phi): Require a gimple_phi rather
than a plain gimple.
(output_bb): Convert iteration to a gimple_phi_iterator, and local
"phi" to gimple_phi.

* omp-low.c (expand_omp_for_static_chunk): Convert iterator "psi"
to a gimple_phi_iterator; convert locals "phi" and "nphi" to be
gimple_phi.

* tree-cfg.c (gimple_duplicate_sese_tail): Likewise for "psi" and
"phi".
(move_block_to_fn): Introduce new gimple_phi_iterator "psi", using
it in place of "gsi" where necessary.  Convert "phi" to be a
gimple_phi.

* tree-cfgcleanup.c (remove_forwarder_block): Likewise.

* tree-vect-loop-manip.c (vect_loop_versioning): Convert "gsi" to
a gimple_phi_iterator, and "orig_phi" and "new_phi" to be
gimple_phi.

* tree.c (find_decls_types_in_node): Introduce new
gimple_phi_iterator "psi", using it in place of "si" where
necessary.  Convert "phi" to be a gimple_phi.
gcc/ChangeLog.gimple-classes
gcc/gimple-streamer-in.c
gcc/gimple-streamer-out.c
gcc/gimple.h
gcc/omp-low.c
gcc/tree-cfg.c
gcc/tree-cfgcleanup.c
gcc/tree-vect-loop-manip.c
gcc/tree.c