This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: fix incorrect debug temp added by df-problems
- From: Alexandre Oliva <aoliva at redhat dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 13 Apr 2012 13:00:45 -0300
- Subject: Re: fix incorrect debug temp added by df-problems
- References: <ormxcm361t.fsf@livre.localdomain> <orfwcde74w.fsf@livre.localdomain>
On Apr 9, 2012, Jakub Jelinek <jakub@redhat.com> wrote, in response to
my posting to the wrong thread (now fixed):
> On Mon, Apr 09, 2012 at 03:29:05AM -0300, Alexandre Oliva wrote:
>> + && (!df_ignore_stack_reg (uregno)))
> Please remove the extra () around this line,
> && !df_ignore_stack_reg (uregno))
> Ok for trunk with that change, thanks.
Thanks, here's what I've just installed.
This fixes a bug in pr43165.c with -Os -g.
for gcc/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* df-problems.c (df_note_bb_compute): Do not take note of
debug uses for whose REGs we won't emit DEAD or UNUSED notes.
Index: gcc/df-problems.c
===================================================================
--- gcc/df-problems.c.orig 2012-04-13 05:18:28.604788011 -0300
+++ gcc/df-problems.c 2012-04-13 06:58:42.053258184 -0300
@@ -3453,7 +3453,12 @@ df_note_bb_compute (unsigned int bb_inde
{
if (debug_insn > 0)
{
- dead_debug_add (&debug, use, uregno);
+ /* We won't add REG_UNUSED or REG_DEAD notes for
+ these, so we don't have to mess with them in
+ debug insns either. */
+ if (!bitmap_bit_p (artificial_uses, uregno)
+ && !df_ignore_stack_reg (uregno))
+ dead_debug_add (&debug, use, uregno);
continue;
}
break;
--
Alexandre Oliva, freedom fighter http://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/ FSF Latin America board member
Free Software Evangelist Red Hat Brazil Compiler Engineer