This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: egcs-2.92.02 19980905 (m68k-next-nextstep3): Address of hoisted load clobbered
- To: Richard Henderson <rth at cygnus dot com>
- Subject: Re: egcs-2.92.02 19980905 (m68k-next-nextstep3): Address of hoisted load clobbered
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Wed, 09 Sep 1998 23:08:50 -0600
- cc: Toon Moene <toon at moene dot indiv dot nluug dot nl>, egcs at cygnus dot com, egcs-patches at cygnus dot com
- Reply-To: law at cygnus dot com
In message <19980909220742.A1052@dot.cygnus.com>you write:
> On Wed, Sep 09, 1998 at 09:45:01PM -0600, Jeffrey A Law wrote:
> > > * loop.c (load_mems): Copy rtx for output mem.
> > Can you say a little bit more about why the shared rtl is causing a
> > problem?
>
> (insn 238 233 277 (set:DF (reg/v:DF 100)
> (mem/s:DF (reg:SI 66))) 60 {movdf+1} (insn_list 229 (nil))
> (nil))
>
> [the loop]
>
> (insn 240 239 192 (set:DF (mem/s:DF (reg:SI 66))
> (reg/v:DF 100)) 60 {movdf+1} (nil)
> (expr_list:REG_DEAD (reg/v:DF 100)
> (expr_list:REG_DEAD (reg:SI 66)
> (nil))))
>
>
> Reload spilled reg 66 in the load. Since the mem was shared, that
> modified the mem in the store such that it no longer needed reloading.
> Of course the reload register involved was reused in the meantime.
Ah. Yes, we need to unshare that one :-)
jeff