This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Segfault in rtx_varies_p
On Tuesday 17 February 2004 6:11 pm, Mark Mitchell wrote:
> Paul Brook wrote:
> You should check that rtx_varies_p still returns true for the larger
> expression containing the NULL rtx; the (use mem:blk scratch) should
> cause us to believe that the entire expression is variable.
It does.
> In that case, I think your patch is fine for mainline and csl-arm-branch.
Applied.
>>>>(insn (set (reg 103) (mem (plus (reg 101) (reg 102))))
>>>> (expr_list:REG_EQUAL (plus (reg 101) (symbol_ref "digs")))
>>>> (nil))
> For 3.4, we should show that it really is a regression. We're taking a
> risk that we're somehow changing an ICE into wrong-code, and that would
> be worse.
It is a regression from 3.3. On 3.3 we don't recognize (symbol_ref "digs") as
a constant so CSE decides it isn't worth trying to substitute the problematic
equality for (reg 101). It may be possible to construct testcases which
trigger similar failures on 3.3, but I can't find any.
Ok for 3.4 given this?
Paul