S/390: Fix s390_secondary_reload register class check.
authorAndreas Krebbel <krebbel@linux.vnet.ibm.com>
Wed, 24 Jun 2015 06:41:10 +0000 (06:41 +0000)
committerAndreas Krebbel <krebbel@gcc.gnu.org>
Wed, 24 Jun 2015 06:41:10 +0000 (06:41 +0000)
gcc/ChangeLog:

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * config/s390/s390.c (s390_secondary_reload): Fix check for
    GENERAL_REGS register class.

From-SVN: r224870

gcc/ChangeLog
gcc/config/s390/s390.c

index d9a8a90c1dd4d59fb7bde60a46c7ad0aecc5c52d..f05e0ae5cbad4642265f00ece70db9313548e36c 100644 (file)
@@ -1,3 +1,8 @@
+2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
+
+       * config/s390/s390.c (s390_secondary_reload): Fix check for
+       GENERAL_REGS register class.
+
 2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
 
        * config/s390/s390.c (s390_support_vector_misalignment): Call
index b3845f8ac5bd5ecc2354a3f94db5d5a03d21c699..cfb3c337335d368e28840559e16ca1bb369192dc 100644 (file)
@@ -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))))