This is the mail archive of the gcc-patches@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: [PATCH] Fix DCE REG_LIBCALL note moving from noop move insns (PR rtl-optimization/33644)


Eric Botcazou wrote:
If you don't see the practical advantage of being able to determine
whether an insn is part of a libcall without having to walk the entire
function to figure out whether you are allowed to touch an insn,
please just remove it.

I've posted a patch to that effect. It restores the correct interpretation of libcall notes as optimization helpers rather than optimization barriers as far as DCE is concerned and, thus, eliminates the need for being able to determine whether an insn is part of a libcall in dce.c.


But I won't install it myself, given how controversial this issue has become.
I therefore propose that a 3rd party decides here, and I'd suggest Jakub.

I agree that Jakub has a good hold of DCE but, if a DF reviewer is needed, I'm happy to help.


I'm not extremely tied to REG_LIBCALL_ID, though in the long run I think it is a better solution than REG_LIBCALL/REG_RETVAL. However, it looks like there is no clean design for a new representation (for example, might the best thing be REG_LIBCALL_ID/REG_RETVAL?) that is also usable *for the entire transition* (covering the whole RTL pipeline). Also, we're in stage3. For all these reasons, I'm happy to ditch it at least momentarily.

Paolo


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