]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
If -Os use load/store multiple instructions
authorMichael Meissner <meissner@cygnus.com>
Fri, 31 Jul 1998 17:28:14 +0000 (17:28 +0000)
committerMichael Meissner <meissner@gcc.gnu.org>
Fri, 31 Jul 1998 17:28:14 +0000 (17:28 +0000)
From-SVN: r21510

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

index 769ea8cdd44679900b13051e6a5433898269b97a..309c6aa5c475c315ea8bb1da284eee4498969aef 100644 (file)
@@ -1,3 +1,8 @@
+Fri Jul 31 20:22:02 1998  Michael Meissner  <meissner@cygnus.com>
+
+       * rs6000.c (rs6000_override_options): If big endian and -Os, use
+       load/store multiple instructions unless user overrides.
+
 Fri Jul 31 17:08:59 1998  Jeffrey A Law  (law@cygnus.com)
 
        * ns32k/netbsd.h: Fix typo.
index d4cb695575b8665f28435e5a51dd6924bcf2a737..987c3adeabdbe3726d3a64aa72fc2d1ebc1bed03 100644 (file)
@@ -276,6 +276,11 @@ rs6000_override_options (default_cpu)
        }
     }
 
+  /* If we are optimizing big endian systems for space, use the
+     store multiple instructions.  */
+  if (BYTES_BIG_ENDIAN && optimize_size)
+    target_flags |= MASK_MULTIPLE;
+
   /* If -mmultiple or -mno-multiple was explicitly used, don't
      override with the processor default */
   if (TARGET_MULTIPLE_SET)