[3.3/mainilne] Fix kernel misscopmiilation for hammer
Jan Hubicka
jh@suse.cz
Tue Feb 25 22:50:00 GMT 2003
> On Tue, Feb 25, 2003 at 11:45:32PM +0100, Jan Hubicka wrote:
> > Hmm, I guess problem is that we do not clone constant memory references.
> > case MEM:
> > /* A MEM is allowed to be shared if its address is constant.
> >
> > We used to allow sharing of MEMs which referenced
> > virtual_stack_vars_rtx or virtual_incoming_args_rtx, but
> > that can lose. instantiate_virtual_regs will not unshare
> > the MEMs, and combine may change the structure of the address
> > because it looks safe and profitable in one context, but
> > in some other context it creates unrecognizable RTL. */
> > if (CONSTANT_ADDRESS_P (XEXP (x, 0)))
> > return x;
>
> Ah hah. Let's nuke this fragment, and make mems not shared always.
Still I guess it will get missed as it is shared with DECL_RTL and that
one will not get flag. I will make patch that will add another fragment
comparing with DECL_RTL from MEM_ATTRs tomorrow. That should work, I
guess.
Honza
>
>
> r~
More information about the Gcc-patches
mailing list