This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: REG_EH_REGION notes and substitutions into insn
- To: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>
- Subject: Re: REG_EH_REGION notes and substitutions into insn
- From: Richard Henderson <rth at redhat dot com>
- Date: Wed, 7 Nov 2001 11:37:43 -0800
- Cc: gcc at gcc dot gnu dot org
- References: <10111071448.AA14141@vlsi1.ultra.nyu.edu>
On Wed, Nov 07, 2001 at 09:48:56AM -0500, Richard Kenner wrote:
> Suppose we have a SET insn from MEM that has a REG_EH_REGION note since
> the address is variable and then suppose CSE or combine makes it a
> constant.
You mean e.g. something of the form
(insn (set (reg)
(mem/u (lo_sum (reg) (symbol_ref ".LC0"))))
(REG_EH_REGION (const_int)
(REG_EQUAL (const_double))))
?
Ideally cse or combine or whatever would have noticed that the
memory doesn't trap -- possibly by the fact that it added a
REG_EQUAL note, as if it doesn't change the form of the mem,
may_trap_p may still return true.
Once the REG_EH_REGION note is removed, the edge removal would
be taken care of by purge_dead_edges.
r~