i386.c (ix86_cannot_change_mode_class): Remove GET_MODE_SIZE (to) < GET_MODE_SIZE...
authorRichard Sandiford <richard.sandiford@arm.com>
Mon, 22 Sep 2014 07:38:46 +0000 (07:38 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Mon, 22 Sep 2014 07:38:46 +0000 (07:38 +0000)
gcc/
* config/i386/i386.c (ix86_cannot_change_mode_class): Remove
GET_MODE_SIZE (to) < GET_MODE_SIZE (from) test.

From-SVN: r215450

gcc/ChangeLog
gcc/config/i386/i386.c

index 5f6d4a3545053b4d965bbd8f64a136c3be14ecd8..e4ca9792217c8912e282258d3f3cd070e2bdd1bb 100644 (file)
@@ -1,3 +1,8 @@
+2014-09-22  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * config/i386/i386.c (ix86_cannot_change_mode_class): Remove
+       GET_MODE_SIZE (to) < GET_MODE_SIZE (from) test.
+
 2014-09-22  Richard Sandiford  <richard.sandiford@arm.com>
 
        * hard-reg-set.h: Include hash-table.h.
index c9324367c2b0ef3f831b325f320eae93a1595faa..ed3d85eba5a62ce5f7b6ca685c27b96023db271e 100644 (file)
@@ -37522,13 +37522,6 @@ ix86_cannot_change_mode_class (enum machine_mode from, enum machine_mode to,
         the vec_dupv4hi pattern.  */
       if (GET_MODE_SIZE (from) < 4)
        return true;
-
-      /* Vector registers do not support subreg with nonzero offsets, which
-        are otherwise valid for integer registers.  Since we can't see
-        whether we have a nonzero offset from here, prohibit all
-         nonparadoxical subregs changing size.  */
-      if (GET_MODE_SIZE (to) < GET_MODE_SIZE (from))
-       return true;
     }
 
   return false;