This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [dataflow patch] DCE const/pure calls
- From: Kenneth Zadeck <zadeck at naturalbridge dot com>
- To: bonzini at gnu dot org
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Steven Bosscher <stevenb dot gcc at gmail dot com>
- Date: Tue, 08 May 2007 08:36:10 -0400
- Subject: Re: [dataflow patch] DCE const/pure calls
- References: <4640469D.2050703@lu.unisi.ch>
Paolo Bonzini wrote:
> This patch allows DCE to mark const or pure calls as eliminatable.
> Together with other patches, I can then get rid of libcall notes on
> i386 at least.
>
> Bootstrapped/regtested i686-pc-linux-gnu; ok for branch?
>
Paolo,
It is nice to see that you are back.
This patch looks fine, however, i would like you to hold off on it for a
while.
I am about to commit a patch, that if it fixes certain issues that were
raised by Vlad, I will claim will complete the dataflow branch. I then
plan to close the dataflow branch to further changes unless they remove
regressions or are suggested by reviewers.
In particular, I need to stop the flow of minor improvements so that we
can concentrate on stability.
Kenny
> Paolo
> ------------------------------------------------------------------------
>
> 2007-05-08 Paolo Bonzini <bonzini@gnu.org>
>
> * dce.c (deletable_insn_p): Const or pure calls are deletable.
>
> Index: dce.c
> ===================================================================
> --- dce.c (revision 124539)
> +++ dce.c (working copy)
> @@ -96,16 +96,16 @@ deletable_insn_p (rtx insn, bool fast)
> return false;
>
> default:
> - if (!NONJUMP_INSN_P (insn))
> - return false;
> -
> if (volatile_insn_p (PATTERN (insn)))
> return false;
>
> if (flag_non_call_exceptions && may_trap_p (PATTERN (insn)))
> return false;
>
> - return true;
> + if (CALL_P (insn) && CONST_OR_PURE_CALL_P (insn))
> + return true;
> +
> + return NONJUMP_INSN_P (insn);
> }
> }
>
>