This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]