------- Comment #45 from rguenther at suse dot de  2010-07-08 16:05 -------
Subject: Re:  [4.6 Regression] -fcompare-debug failure for
 C++ i386.c

On Thu, 8 Jul 2010, amylaar at gcc dot gnu dot org wrote:

> ------- Comment #44 from amylaar at gcc dot gnu dot org  2010-07-08 15:54 
> -------
> (In reply to comment #43)
> > Now, I see that in the non-debug case we are copying the LABEL_DECL while
> > copying statements while in the debug case we are copying it while
> > copying the block tree.  We have to preserve used labels in
> > the block tree it's just not trivial to do unless we resort to setting
> > TREE_USED.
> > 
> > Which would be the following, which also fixes the failure.
> 
> I have done a --enable-build-with-cxx bootstrap of trunk trevision 161952
> with this patch applied (with tabs for leading whitespace in the comment).
> The bootstrap finished successfully, and the regression test results
> look reasonable, although I still have to generate baseline results to
> compare this to.

Using TREE_USED isn't really applicable here (we do never re-set it
at least).  So an option would be to unconditionally preserve all
!DECL_INGNORED_P labels in BLOCKs.  Or play fancy with a bitmap
or a pointer-map.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832

Reply via email to