[PATCH, 6/6] Remove first_pass_instance

David Malcolm dmalcolm@redhat.com
Sun Nov 15 15:24:00 GMT 2015


On Sun, 2015-11-15 at 12:08 +0100, Tom de Vries wrote:
> On 15/11/15 11:55, Tom de Vries wrote:
> > [ was: Re: [PATCH] Remove first_pass_instance from pass_vrp ]
> >
> > This patch series removes first_pass_instance.
> >
> >       1    Remove first_pass_instance from pass_vrp
> >       2    Remove first_pass_instance from pass_reassoc
> >       3    Remove first_pass_instance from pass_dominator
> >       4    Remove first_pass_instance from pass_object_sizes
> >       5    Remove first_pass_instance from pass_ccp
> >       6    Remove first_pass_instance
> >
> > Bootstrapped and reg-tested on x86_64.
> >
> > I will post the individual patches in reply to this email.
> >
> > [ I won't post the first patch though. It was already posted here:
> > https://gcc.gnu.org/ml/gcc-patches/2015-11/msg01701.html . ]
> 
> this patch removes the variable first_pass_instance.

Can we also get rid of TODO_mark_first_instance, or would that be a
followup?


> 
> Thanks,
> - Tom
> 
> differences between files attachment
> (0006-Remove-first_pass_instance.patch)
> Remove first_pass_instance
> 
> 2015-11-15  Tom de Vries  <tom@codesourcery.com>
> 
> 	* passes.c (first_pass_instance): Remove variable.
> 	(execute_todo): Remove setting of first_pass_instance.
> 	* tree-pass.h (first_pass_instance): Remove declaration.
> 
> ---
>  gcc/passes.c    | 4 ----
>  gcc/tree-pass.h | 6 ------
>  2 files changed, 10 deletions(-)
> 
> diff --git a/gcc/passes.c b/gcc/passes.c
> index e634c5c..0e23dcb 100644
> --- a/gcc/passes.c
> +++ b/gcc/passes.c
> @@ -151,7 +151,6 @@ debug_pass (void)
>  
>  /* Global variables used to communicate with passes.  */
>  bool in_gimple_form;
> -bool first_pass_instance;
>  
> 
>  /* This is called from various places for FUNCTION_DECL, VAR_DECL,
> @@ -2005,9 +2004,6 @@ execute_todo (unsigned int flags)
>  
>    timevar_push (TV_TODO);
>  
> -  /* Inform the pass whether it is the first time it is run.  */
> -  first_pass_instance = (flags & TODO_mark_first_instance) != 0;
> -
>    statistics_fini_pass ();
>  
>    if (flags)
> diff --git a/gcc/tree-pass.h b/gcc/tree-pass.h
> index d647e73..dcd2d5e 100644
> --- a/gcc/tree-pass.h
> +++ b/gcc/tree-pass.h
> @@ -629,12 +629,6 @@ extern void ipa_read_optimization_summaries (void);
>  extern void register_one_dump_file (opt_pass *);
>  extern bool function_called_by_processed_nodes_p (void);
>  
> -/* Set to true if the pass is called the first time during compilation of the
> -   current function.  Note that using this information in the optimization
> -   passes is considered not to be clean, and it should be avoided if
> -   possible.  */
> -extern bool first_pass_instance;
> -
>  /* Declare for plugins.  */
>  extern void do_per_function_toporder (void (*) (function *, void *), void *);
>  




More information about the Gcc-patches mailing list