[PATCH] Fix DCE REG_LIBCALL note moving from noop move insns (PR rtl-optimization/33644)

Eric Botcazou ebotcazou@libertysurf.fr
Sun Oct 14 12:54:00 GMT 2007


> > I think this demonstrates that REG_LIBCALL_ID is a bad idea: we now have
> > insns between REG_LIBCALL and REG_RETVAL notes that don't seem to be part
> > of the libcall sequence.
>
> Which is simply a bug, not indicitative bad idea.

Properly fixing the bug would mean adding code all over the RTL middle-end to 
propagate REG_LIBCALL_ID .  The semantics of libcalls is clear: all insns 
between REG_LIBCALL and REG_RETVAL are part of the libcall sequence.

> It's only a bad idea if you think doing linear walks all the time to
> figure out whether an INSN is part of a libcall is a good idea.

Can't we just do it only one time?  I'll give it a try.

> IMHO, REG_LIBCALL and REG_RETVAL is the real bad idea.

Possibly, but I think that trying to undo it with REG_LIBCALL_ID doesn't help.

-- 
Eric Botcazou



More information about the Gcc-patches mailing list