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/34503] Issues with constant/copy propagation implementation in gcse.c



------- Comment #5 from steven at gcc dot gnu dot org  2007-12-17 08:41 -------
find_avail_set() uses a list search to find an available set.  If it is called
multiple times for the same register, quadratic behavior results.  This is part
of the issue for bug 19097.  One fix would be to compute bitmaps of expressions
per set register, and then AND in the available expressions on entry of a basic
block.  At most one bit will be set (or at most two bits if constants and
copies are tracked separately).


-- 


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


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