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 tree-optimization/17549] [4.0 Regression] 10% increase in codesize with C code compared to GCC 3.3


------- Additional Comments From amacleod at redhat dot com  2005-02-08 14:02 -------
(In reply to comment #30)
> Subject: Re:  [4.0 Regression] 10% increase in codesize with C code compared
to GCC 3.3
> 
> On Mon, Feb 07, 2005 at 11:13:27PM -0000, steven at gcc dot gnu dot org wrote:
> >   x = a + b; 
> >   x = x * a; 
> >   x = x * b; 
> ...
> > After Coalescing: 
> ...
> > Partition 2 (x_3 - 3 ) 
> > Partition 3 (x_4 - 4 ) 
> > Partition 4 (x_5 - 5 ) 
> 
> That is curious.  Certainly not the way I'd have expected things to work.
> Why are we not coalescing here?  Do we think that x_4 as an input to the
> same insn that creates x_5 means that the two conflict?  Unless someone
> can convince me otherwise, I'd call this a bug.
> 

No we dont think that, but they are disjoint live ranges, so we want to keep
them seperate. we do live range splitting on the way out of SSA.  there is no
conflict, just reason NOT to coalesce them.  if there was a copy between them,
then we consider coalescing them.




-- 


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


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