OSDN Git Service

* config/rs6000/rs6000.md (movti_power): Collapse case 1 and 2
authordje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Sep 2003 19:32:46 +0000 (19:32 +0000)
committerdje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Sep 2003 19:32:46 +0000 (19:32 +0000)
        together.  Protect load string instruction with TARGET_STRING.
        (movti_string): Collapse case 1 and 2 together.

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

gcc/ChangeLog
gcc/config/rs6000/rs6000.md

index f4721ce..638c11d 100644 (file)
@@ -1,3 +1,9 @@
+2003-09-24  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.md (movti_power): Collapse case 1 and 2
+       together.  Protect load string instruction with TARGET_STRING.
+       (movti_string): Collapse case 1 and 2 together.
+
 2003-09-24  Nathan Sidwell  <nathan@codesourcery.com>
 
        * c-common.c (c_common_type_for_mode): Check for VOIDmode.
index d1264c6..d4e88c7 100644 (file)
       if (TARGET_STRING)
         return \"{stsi|stswi} %1,%P0,16\";
     case 1:
-      return \"#\";
     case 2:
       return \"#\";
     case 3:
       /* If the address is not used in the output, we can use lsi.  Otherwise,
         fall through to generating four loads.  */
-      if (! reg_overlap_mentioned_p (operands[0], operands[1]))
+      if (TARGET_STRING
+         && ! reg_overlap_mentioned_p (operands[0], operands[1]))
        return \"{lsi|lswi} %0,%P1,16\";
       /* ... fall through ...  */
     case 4:
       if (TARGET_STRING)
         return \"{stsi|stswi} %1,%P0,16\";
     case 1:
-      return \"#\";
     case 2:
       return \"#\";
     case 3: