[Bug rtl-optimization/52417] [4.7 Regression] Infinite recursion in DSE/alias.c

aoliva at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Mar 1 13:42:00 GMT 2012


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

Alexandre Oliva <aoliva at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #26796|0                           |1
        is obsolete|                            |

--- Comment #5 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-03-01 13:41:47 UTC ---
Created attachment 26803
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26803
Here's a patch I'm happier with

This patch fully restores the get_addr behavior from before my patch in case
permanent equivalences aren't in use (e.g., for any passes other than
var-tracking), enabling the heuristics that breaks equivalence cycles only when
there are equivalences in the first place.  It looks like the expensive,
seemingly exponential computational cost exhibited in dse doesn't occur with
var-tracking.  Indeed, for this particular testcase, compile time with and
without -g is pretty much the same after the patch, wth or without dse.



More information about the Gcc-bugs mailing list