[Bug rtl-optimization/33928] [4.3/4.4/4.5 Regression] 30% performance slowdown in floating-point code caused by r118475
bonzini at gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri May 15 10:36:00 GMT 2009
------- Comment #84 from bonzini at gnu dot org 2009-05-15 10:35 -------
Ok, I am working on a patch to add a multiple-definitions DF problem and use
that together with a domwalk to find the single definitions (instead of
reaching-definitions, which is the remaining slow part). The new problem has a
bitvector sized by the number of registers rather than the number of defs (that
is sized like the bitvectors for liveness), which means it will be fast. It is
defined as follows:
MDkill (B) = regs that have a def in B
MDinit (B) = (union of MDkill (P) for every P : B \in DomFrontier(P) \cap
LRin(B)
MDin (B) = MDinit (B) \cup (union of MDout (P) for every predecessor P of B)
MDout (B) = MDin (B) - MDkill (B)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33928
More information about the Gcc-bugs
mailing list