Re: var-tracking wrt. leaf regs on sparc

2013-02-07 Thread David Miller
From: Jakub Jelinek Date: Thu, 7 Feb 2013 20:43:32 +0100 > This and earlier patch are ok, if it bootstraps/regtests fine, and suitable > ChangeLog entry is provided. > Running gdb testsuite before and after wouldn't hurt though. I've done all of this, and committed to trunk and the gcc-4.7 branc

Re: var-tracking wrt. leaf regs on sparc

2013-02-07 Thread David Miller
From: David Miller Date: Thu, 07 Feb 2013 14:38:18 -0500 (EST) > From: Jakub Jelinek > Date: Thu, 7 Feb 2013 18:22:32 +0100 > >> Then supposedly somewhere in dwarf2out we do some adjustment, >> but still end up with d/e loclist of: >> .LLST2: >> .uaxword.LVL0-.Ltext0 ! Locatio

Re: var-tracking wrt. leaf regs on sparc

2013-02-07 Thread Jakub Jelinek
On Thu, Feb 07, 2013 at 02:38:18PM -0500, David Miller wrote: > The fix for this is trivial, just a missing leaf renumbering in dwarf2out.c: > > diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c > index 06cfb18..765d5c5 100644 > --- a/gcc/dwarf2out.c > +++ b/gcc/dwarf2out.c > @@ -10864,7 +10864,16 @@

Re: var-tracking wrt. leaf regs on sparc

2013-02-07 Thread David Miller
From: Jakub Jelinek Date: Thu, 7 Feb 2013 18:22:32 +0100 > Then supposedly somewhere in dwarf2out we do some adjustment, > but still end up with d/e loclist of: > .LLST2: > .uaxword.LVL0-.Ltext0 ! Location list begin address > (*.LLST2) > .uaxword.LVL1-.Ltext0

Re: var-tracking wrt. leaf regs on sparc

2013-02-07 Thread Jakub Jelinek
On Wed, Feb 06, 2013 at 03:18:27PM -0500, David Miller wrote: > From: Eric Botcazou > Date: Wed, 06 Feb 2013 11:13:30 +0100 > > > I think testing crtl->uses_only_leaf_regs is sufficient here (and > > while you're at it, you could also test the value of > > HAVE_window_save, which can be 0 if -mfl

Re: var-tracking wrt. leaf regs on sparc

2013-02-06 Thread Eric Botcazou
> Yes, this works perfectly, Jakub any objections? > > gcc/ > > 2013-02-06 David S. Miller > > * var-tracking.c (vt_add_function_parameter): Test the presence of > HAVE_window_save properly and do not remap argument registers when > we have a leaf function. Please put it on

Re: var-tracking wrt. leaf regs on sparc

2013-02-06 Thread David Miller
From: Jakub Jelinek Date: Wed, 6 Feb 2013 07:56:44 +0100 > so achieving zero failures might be too hard I don't believe this, all the sparc failures I see look like a similar bug just showing up in multiple tests.

Re: var-tracking wrt. leaf regs on sparc

2013-02-06 Thread David Miller
From: Eric Botcazou Date: Wed, 06 Feb 2013 11:13:30 +0100 > I think testing crtl->uses_only_leaf_regs is sufficient here (and > while you're at it, you could also test the value of > HAVE_window_save, which can be 0 if -mflat is passed on the SPARC), > so > > #ifdef HAVE_window_save > if (HA

Re: var-tracking wrt. leaf regs on sparc

2013-02-06 Thread Eric Botcazou
> Now that I understand fully what we're trying to accomplish with the > DT_OP_GNU_entry_value and DT_OP_GNU_call_site_parameter extensions, it > does in fact seem like we will need to do leaf register remapping in > var-tracking.c > > Here below is a patch I'm playing with. It's a rough draft bu

Re: var-tracking wrt. leaf regs on sparc

2013-02-05 Thread Jakub Jelinek
On Tue, Feb 05, 2013 at 06:18:39PM -0500, David Miller wrote: > Hello Eric, this is in regards to your HAVE_window_save code in > var-tracking.c and elsewhere added for PR target/48220. > > I'm trying to fix all of the guality failures on sparc and this issue > below is the first one I was able to

Re: var-tracking wrt. leaf regs on sparc

2013-02-05 Thread David Miller
From: David Miller Date: Tue, 05 Feb 2013 18:18:39 -0500 (EST) > The only other alternative I can see would be to get everything in > var-tracking.c and the other subsystems it uses to do leaf register > remapping, but that seems completely like the wrong way to handle > this. Following up to my

var-tracking wrt. leaf regs on sparc

2013-02-05 Thread David Miller
Hello Eric, this is in regards to your HAVE_window_save code in var-tracking.c and elsewhere added for PR target/48220. I'm trying to fix all of the guality failures on sparc and this issue below is the first one I was able to comprehend. All of this special register window debugging handling in