------- Comment #24 from zadeck at naturalbridge dot com 2007-07-01 14:45 ------- Subject: Re: [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
ian at airs dot com wrote: > ------- Comment #23 from ian at airs dot com 2007-06-30 17:57 ------- > The patch in comment #19 of PR 32437 looks clearly correct. That > patch should not be reverted, at least not by itself. I'm not clear > on whether that was the patch that was reverted, but, if it was, I > don't think it should have been. We are not in a time critical > situation here. Let's take the time to figure out the right fix even > if Richard doesn't have time to work on it. > > This is DCE, not DSE. In DSE we can not eliminate frame related > instructions, because the stores into the frame are used by code which > dataflow doesn't see: the exception unwinder. That does not apply to > DCE. In DCE, we should be able to eliminate changes to the stack > pointer when the stack pointer is not used, even though those changes > are frame related. > > So I think this patch should be unreverted, and I don't think you should add a > test for frame relatedness. Then we should fix PR 32475. Further comments > over there. > > > 2007-07-01 Richard Sandiford <[EMAIL PROTECTED]> Unreverting Richard's Revert of: 2007-06-27 Richard Sandiford <[EMAIL PROTECTED]> * dce.c (deletable_insn_p_1): New function, split out from... (deletable_insn_p): ...here. Only treat bare USEs and CLOBBERs specially, not those inside PARALLELs. Remove BODY argument and adjust recursive call accordingly. (prescan_insns_for_dce): Update call to delete_insn_p. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32437