[PATCH] Perform frame_pointer_needed hfp -> cfa replacements even if fp setter is not in the first bb (PR debug/54402)

Ian Lance Taylor iant@google.com
Mon Oct 29 22:49:00 GMT 2012


On Mon, Oct 29, 2012 at 1:43 PM, Jakub Jelinek <jakub@redhat.com> wrote:
>
> The following patch should fix the var-tracking slowness on the
> reflect/check testcases where one of the test routines was compiling for
> almost 50 minutes.  The problem was that there is a huge routine that is
> shrink wrapped (or perhaps just the split stack prologue is multi-bb),
> and I was trying to be too conservative when adding frame_pointer_needed
> hard_frame_pointer_rtx VTA replacements.  Without those replacements we
> weren't using DW_OP_fbreg for the hard frame pointer based mem accesses (so
> unnecessarily large debug info), but what's worse is that on the hfp VALUE
> we got almost 1200 reverse ops in the locs chain, so find_base_term as well
> as get_addr has been quite costly.

Thanks for working on this.

The patch looks fine to me but I don't know this code well.

Ian



More information about the Gcc-patches mailing list