This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Non-call exceptions versus cse
> Jan Hubicka writes:
> > Alternate is of course to keep value of destionation on trap undefined
> > and always use the temporary. The transofrmation in question is not
> > CSE, but backward copy propagation. I think CSE handles it by:
> > /* Special handling for (set REG0 REG1) where REG0 is the
> > "cheapest", cheaper than REG1. After cse, REG1 will probably not
> > be used in the sequel, so (if easily done) change this insn to
> > (set REG1 REG0) and replace REG1 with REG0 in the previous insn
> > that computed their value. Then REG1 will become a dead store
> > and won't cloud the situation for later optimizations. */
> > But that code laready checks for basic block boundary via INSN_BASIC_BLOCK
> > note that should be threre.
>
> I just added that code for exactly this case.
>
> > Where exactly in CSE the instruction is transformed?
>
> It doesn't do it any more.
I see. What is the problem then?
Honza
>
> Andrew.