diff options
author | Michael Meissner <meissner@cygnus.com> | 1998-07-31 17:30:57 +0000 |
---|---|---|
committer | Michael Meissner <meissner@gcc.gnu.org> | 1998-07-31 17:30:57 +0000 |
commit | ef79218343c379b07f84790dab47c1f7ea44ccce (patch) | |
tree | bb559905f39b6786d2b1e9e4296257341c595978 | |
parent | 02c452afe0f71675fa93e16043c4a069ee633f77 (diff) | |
download | gcc-ef79218343c379b07f84790dab47c1f7ea44ccce.zip gcc-ef79218343c379b07f84790dab47c1f7ea44ccce.tar.gz gcc-ef79218343c379b07f84790dab47c1f7ea44ccce.tar.bz2 |
If -Os use load/store multiple instructions
From-SVN: r21511
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a58f781..24132f0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index d4cb695..987c3ad 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -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) |