This is the mail archive of the gcc@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]

Re: CSE not combining equivalent expressions.


On Thursday 18 January 2007 09:31, Jeffrey Law wrote:
> I haven't followed this thread that closely, but it seems to me this
> could be done in the propagation engine.
>
> Basically we keep track of the known zero, sign bit copies and known
> nonzero bits for SSA names, then propagate them in the obvious ways.
> Basically replicating a lot of what combine & cse do in this area,
> but at the tree level.   It's something I've always wanted to see
> implemented, but never bothered to do...

I had this implemented at one point (2 years ago??) and I could not
show any real benefit.  There were almost no opportunities for this
kind of optimization in GCC itself or in some benchmarks I looked at.

There appear to be more bit operations in RTL, so perhaps it is a
better idea to implement a known-bits propagation pass for RTL, with
the new dataflow engine.

Gr.
Steven


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