CSE optimization question

Steve Ellcey sje@cup.hp.com
Thu Jan 10 10:52:00 GMT 2002


> > I asked this before, but why isn't GCSE making that obsolete now? It isn't,
> > but I don't understand *why* it isn't.

> IRC, the main reason was that CSE eliminates dead stores. GCSE.
> 
> The actual *CSE* portion of CSE is made obsolete by our GCSE.
> I did analysis to that showed this somewhere, i can try to dig it up if 
> you like.

Actually, I am not sure this is true (at least in my case).  In GCSE
there is a comment:

| /* Process INSN and add hash table entries as appropriate.
| 
|    Only available expressions that set a single pseudo-reg are recorded.
| 
|    Single sets in a PARALLEL could be handled, but it's an extra complication
|    that isn't dealt with right now.  The trick is handling the CLOBBERs that
|    are also in the PARALLEL.  Later.

My CSE's include accesses that are PARALLEL because the IA64 global
variable access is done with a parallel that USES r1 (gp) and CLOBBERS a
scratch register (that may or may not be actually used).

Steve Ellcey
sje@cup.hp.com



More information about the Gcc mailing list