]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Revert:
authorUros Bizjak <ubizjak@gmail.com>
Wed, 3 Nov 2010 22:44:04 +0000 (23:44 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Wed, 3 Nov 2010 22:44:04 +0000 (23:44 +0100)
2010-10-30  Uros Bizjak  <ubizjak@gmail.com>

PR middle-end/44569
* lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.

From-SVN: r166282

gcc/ChangeLog
gcc/lower-subreg.c

index e5c1b7832c79678ddb6774c60fd9ced2e118bbca..73ce585d92b2fca36bd5f1b5495d2f3236cff7a9 100644 (file)
@@ -1,3 +1,12 @@
+2010-11-04  Uros Bizjak  <ubizjak@gmail.com>
+
+       Revert:
+       2010-10-30  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR middle-end/44569
+       * lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
+       determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
+
 2010-11-04  Alan Modra  <amodra@gmail.com>
 
        * config/rs6000/rs6000.c (rs6000_pic_labelno): Make static.
index 933524d1d23961f3420df0876baae09b5bcf940a..ea9c6a0d3477914b711df46eeac5f6a4cee0ff18 100644 (file)
@@ -388,7 +388,7 @@ simplify_subreg_concatn (enum machine_mode outermode, rtx op,
                         unsigned int byte)
 {
   unsigned int inner_size;
-  enum machine_mode innermode, partmode;
+  enum machine_mode innermode;
   rtx part;
   unsigned int final_offset;
 
@@ -401,19 +401,11 @@ simplify_subreg_concatn (enum machine_mode outermode, rtx op,
 
   inner_size = GET_MODE_SIZE (innermode) / XVECLEN (op, 0);
   part = XVECEXP (op, 0, byte / inner_size);
-  partmode = GET_MODE (part);
-
-  if (partmode == VOIDmode)
-    {
-      gcc_assert (VECTOR_MODE_P (innermode));
-      partmode = GET_MODE_INNER (innermode);
-    }
-
   final_offset = byte % inner_size;
   if (final_offset + GET_MODE_SIZE (outermode) > inner_size)
     return NULL_RTX;
 
-  return simplify_gen_subreg (outermode, part, partmode, final_offset);
+  return simplify_gen_subreg (outermode, part, GET_MODE (part), final_offset);
 }
 
 /* Wrapper around simplify_gen_subreg which handles CONCATN.  */