From: krebbel Date: Wed, 24 Jun 2015 06:41:10 +0000 (+0000) Subject: S/390: Fix s390_secondary_reload register class check. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a1142483ea07e69c8a522b4e8ec2689f28fa526c;p=thirdparty%2Fgcc.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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@224870 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d9a8a90c1dd4..f05e0ae5cbad 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 b3845f8ac5bd..cfb3c337335d 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))))