OSDN Git Service

PR target/23539
authordje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 27 Aug 2005 15:44:26 +0000 (15:44 +0000)
committerdje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 27 Aug 2005 15:44:26 +0000 (15:44 +0000)
        * config/rs6000/rs6000.c (expand_block_clear): Use HImode when
        bytes >= 2 not bytes == 2.
        (expand_block_move): Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103564 138bc75d-0d04-0410-961f-82ee72b054a4

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

index c8123f2..d37b25e 100644 (file)
@@ -1,3 +1,10 @@
+2005-08-27  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/23539
+        * config/rs6000/rs6000.c (expand_block_clear): Use HImode when
+        bytes >= 2 not bytes == 2.
+       (expand_block_move): Same.
+
 2005-08-27  Richard Guenther  <rguenther@suse.de>
 
        PR target/23575
index edb3d84..2ec59fa 100644 (file)
@@ -9133,7 +9133,7 @@ expand_block_clear (rtx operands[])
          clear_bytes = 4;
          mode = SImode;
        }
-      else if (bytes == 2 && (align >= 16 || !STRICT_ALIGNMENT))
+      else if (bytes >= 2 && (align >= 16 || !STRICT_ALIGNMENT))
        {                       /* move 2 bytes */
          clear_bytes = 2;
          mode = HImode;
@@ -9269,7 +9269,7 @@ expand_block_move (rtx operands[])
          mode = SImode;
          gen_func.mov = gen_movsi;
        }
-      else if (bytes == 2 && (align >= 16 || !STRICT_ALIGNMENT))
+      else if (bytes >= 2 && (align >= 16 || !STRICT_ALIGNMENT))
        {                       /* move 2 bytes */
          move_bytes = 2;
          mode = HImode;