After Y is never used anymore with SImode operands we can finally disallow SImode (if != Pmode) in s390_decompose_address. In fact that was the whole point of the patch series.
gcc/ChangeLog: * config/s390/s390.c (s390_decompose_address): Don't accept SImode anymore. --- gcc/config/s390/s390.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index 43219dd..8924367 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -2817,9 +2817,7 @@ s390_decompose_address (rtx addr, struct s390_address *out) return false; } - if (!REG_P (base) - || (GET_MODE (base) != SImode - && GET_MODE (base) != Pmode)) + if (!REG_P (base) || GET_MODE (base) != Pmode) return false; if (REGNO (base) == STACK_POINTER_REGNUM @@ -2865,9 +2863,7 @@ s390_decompose_address (rtx addr, struct s390_address *out) return false; } - if (!REG_P (indx) - || (GET_MODE (indx) != SImode - && GET_MODE (indx) != Pmode)) + if (!REG_P (indx) || GET_MODE (indx) != Pmode) return false; if (REGNO (indx) == STACK_POINTER_REGNUM -- 1.9.1