combine.c (simplify_set): Avoid calling LOAD_EXTEND_OP on non-integer modes.
authorJoseph Myers <joseph@codesourcery.com>
Mon, 13 Oct 2008 21:31:47 +0000 (22:31 +0100)
committerJoseph Myers <jsm28@gcc.gnu.org>
Mon, 13 Oct 2008 21:31:47 +0000 (22:31 +0100)
* combine.c (simplify_set): Avoid calling LOAD_EXTEND_OP on
non-integer modes.

From-SVN: r141096

gcc/ChangeLog
gcc/combine.c

index ef4ce0b27b61b659d42fb903ca7d5362fcc6d5a9..7cdbe4489b81aa9ff2d9baebc4d8f3d215f82ddb 100644 (file)
@@ -1,3 +1,8 @@
+2008-10-13  Joseph Myers  <joseph@codesourcery.com>
+
+       * combine.c (simplify_set): Avoid calling LOAD_EXTEND_OP on
+       non-integer modes.
+
 2008-10-13  Matthias Klose  <doko@ubuntu.com>
 
        * gcc/config/pa/linux-atomic.c: Work around missing header file
index 5821301d72cdf7753597a1fad86ff82e5080af4c..55baf37149ad15b0710926d7fbecf739e3367ccc 100644 (file)
@@ -5843,6 +5843,7 @@ simplify_set (rtx x)
      zero_extend to avoid the reload that would otherwise be required.  */
 
   if (GET_CODE (src) == SUBREG && subreg_lowpart_p (src)
+      && INTEGRAL_MODE_P (GET_MODE (SUBREG_REG (src)))
       && LOAD_EXTEND_OP (GET_MODE (SUBREG_REG (src))) != UNKNOWN
       && SUBREG_BYTE (src) == 0
       && (GET_MODE_SIZE (GET_MODE (src))