rs6000.c (rs6000_emit_le_vsx_move): Relax assert to permit subregs.
authorBill Schmidt <wschmidt@linux.vnet.ibm.com>
Sun, 23 Feb 2014 16:28:32 +0000 (16:28 +0000)
committerWilliam Schmidt <wschmidt@gcc.gnu.org>
Sun, 23 Feb 2014 16:28:32 +0000 (16:28 +0000)
2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_emit_le_vsx_move): Relax assert
to permit subregs.

From-SVN: r208052

gcc/ChangeLog
gcc/config/rs6000/rs6000.c

index af67073..7830f3b 100644 (file)
@@ -1,5 +1,10 @@
 2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
 
+       * config/rs6000/rs6000.c (rs6000_emit_le_vsx_move): Relax assert
+       to permit subregs.
+
+2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
+
         * config/rs6000/altivec.md (altivec_lve<VI_char>x): Replace
         define_insn with define_expand and new define_insn
         *altivec_lve<VI_char>x_internal.
index 2dff39e..55e209a 100644 (file)
@@ -8040,7 +8040,7 @@ rs6000_emit_le_vsx_move (rtx dest, rtx source, enum machine_mode mode)
 
   if (MEM_P (source))
     {
-      gcc_assert (REG_P (dest));
+      gcc_assert (REG_P (dest) || GET_CODE (dest) == SUBREG);
       rs6000_emit_le_vsx_load (dest, source, mode);
     }
   else