From: Andreas Krebbel Date: Wed, 24 Jun 2015 06:41:10 +0000 (+0000) Subject: S/390: Fix s390_secondary_reload register class check. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=996fcca1ec568bde090772553563f330bfdb6316;p=gcc.git S/390: Fix s390_secondary_reload register class check. gcc/ChangeLog: 2015-06-24 Andreas Krebbel * config/s390/s390.c (s390_secondary_reload): Fix check for GENERAL_REGS register class. From-SVN: r224870 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d9a8a90c1dd..f05e0ae5cba 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-06-24 Andreas Krebbel + + * config/s390/s390.c (s390_secondary_reload): Fix check for + GENERAL_REGS register class. + 2015-06-24 Andreas Krebbel * config/s390/s390.c (s390_support_vector_misalignment): Call diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index b3845f8ac5b..cfb3c337335 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -4036,7 +4036,7 @@ s390_secondary_reload (bool in_p, rtx x, reg_class_t rclass_i, if (MEM_P (x) && s390_loadrelative_operand_p (XEXP (x, 0), NULL, NULL) && (mode == QImode - || !reg_classes_intersect_p (GENERAL_REGS, rclass) + || !reg_class_subset_p (rclass, GENERAL_REGS) || GET_MODE_SIZE (mode) > UNITS_PER_WORD || !s390_check_symref_alignment (XEXP (x, 0), GET_MODE_SIZE (mode))))