summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>2008-02-23 00:35:20 +0000
committerfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>2008-02-23 00:35:20 +0000
commitdc3be37211952695cdf7690df2b2caf2be61bc4e (patch)
treef8f0cc6eb6c2b31e7839b29e1ef08eeda07069e6
parent9c1e37614c7049c970ff303e3ad73fc9caf75fdf (diff)
downloadppe42-gcc-dc3be37211952695cdf7690df2b2caf2be61bc4e.tar.gz
ppe42-gcc-dc3be37211952695cdf7690df2b2caf2be61bc4e.zip
* config/rs6000/rs6000.h (CONSTANT_ALIGNMENT): Don't overalign
strings when optimizing for size, unless the target cares about alignment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132566 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d9f0fa46d1c..9f35e8c652a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2008-02-22 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/rs6000/rs6000.h (CONSTANT_ALIGNMENT): Don't overalign
+ strings when optimizing for size, unless the target cares about
+ alignment.
+
2008-02-22 Tom Tromey <tromey@redhat.com>
* regclass.c (current_pass): Remove declaration.
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index 6a64eae3dd9..f5bf7daac1e 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -596,6 +596,7 @@ extern enum rs6000_nop_insertion rs6000_sched_insert_nops;
Make vector constants quadword aligned. */
#define CONSTANT_ALIGNMENT(EXP, ALIGN) \
(TREE_CODE (EXP) == STRING_CST \
+ && (TARGET_STRICT_ALIGN || !optimize_size) \
&& (ALIGN) < BITS_PER_WORD \
? BITS_PER_WORD \
: (ALIGN))
OpenPOWER on IntegriCloud