On Thu, Jul 26, 2018 at 10:13:28AM +0100, Alan Hayward wrote: > --- a/gcc/rtl.c > +++ b/gcc/rtl.c > @@ -304,6 +304,10 @@ copy_rtx (rtx orig) > return orig; > break; > > + case CLOBBER_HIGH: > + gcc_assert (REG_P (XEXP (orig, 0))); > + return orig;
Wrong formatting (indented too much). More importantly, do you want it to be shareable always (e.g. CLOBBER is sharedable only if if (REG_P (XEXP (orig, 0)) && REGNO (XEXP (orig, 0)) < FIRST_PSEUDO_REGISTER && ORIGINAL_REGNO (XEXP (orig, 0)) == REGNO (XEXP (orig, 0))) You require CLOBBER_HIGH argument to be REG_P, so that parts goes away, but what about the rest? And, any reason something similar has not been added to cleanup_auto_inc_dec? Have you grepped for all other case CLOBBER: spots? Jakub