This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/32437] [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
- From: "zadeck at naturalbridge dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 30 Jun 2007 17:24:22 -0000
- Subject: [Bug target/32437] [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
- References: <bug-32437-7151@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #22 from zadeck at naturalbridge dot com 2007-06-30 17:24 -------
Subject: Re: [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
richard at codesourcery dot com wrote:
> ------- Comment #21 from richard at codesourcery dot com 2007-06-30 12:26 -------
> Subject: Re: [4.3 Regression] MIPS: FAIL in gcc.dg/cleanup-[8|9|10|11].c
>
> Richard Sandiford <richard@codesourcery.com> writes:
>
>> Kenneth Zadeck <zadeck@naturalbridge.com> writes:
>>
>>> 2007-06-23 Kenneth Zadeck <zadeck@naturalbridge.com>
>>>
>>> PR middle-end/32437
>>> *dce.c (deletable_insn_p): Add extra parameter and recurse if insn
>>> is a PARALLEL.
>>> (prescan_insns_for_dce): Add extra parameter.
>>>
>> Kenny found that this patch introduced problems on x86 (I think it was)
>> because it applied the special handling for bare CLOBBERs to those
>> inside PARALLELs as well. We don't want that; bare USEs and CLOBBERs
>> are special DF markers, but USEs and CLOBBERs inside PARALLELs are parts
>> of asms or define_insns.
>>
>> Kenny pre-approved the patch below. Bootstrapped & regression-tested
>> on x86_64-linux-gnu. Applied to mainline.
>>
>
> This patch apparently caused 32475 to resurface, so I reverted it.
>
> Richard
>
>
>
The comment #3 of this bug is mostly right, the part that pinskia got
wrong is the fact that it is the dce subpass of dse that is deleting the
insn.
I do not see any obvious reason that this insn should not be deleted
except that
the insn is marked as frame related. Given that dse retains /f insns, I
guess that that is what is needed here.
Iant, is this correct. If so, i will restore richards code but add a
test for frame_relatedness.
Kenny
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32437