aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2008-03-09 14:37:52 +0100
committerUros Bizjak <uros@gcc.gnu.org>2008-03-09 14:37:52 +0100
commitbe3d47899e7cb4631032a36de11a4cc8bcde7bcb (patch)
tree9ebfb5f7fb9040dd9242eb40324cda0b3b26a358
parente83a75a793e317d6e35ae124084e5af1c415e764 (diff)
downloadgcc-be3d47899e7cb4631032a36de11a4cc8bcde7bcb.zip
gcc-be3d47899e7cb4631032a36de11a4cc8bcde7bcb.tar.gz
gcc-be3d47899e7cb4631032a36de11a4cc8bcde7bcb.tar.bz2
re PR target/35496 (test failures between revs. 132950 and 132974)
PR target/35496 * config/i386/i386.c (ix86_constant_algnment): Compute alignment using ALIGN_MODE_128 for VECTOR_CST and INTEGER_CST in addition to REAL_CST. From-SVN: r133052
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e907310..8265c51 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2008-03-09 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/35496
+ * config/i386/i386.c (ix86_constant_algnment): Compute alignment using
+ ALIGN_MODE_128 for VECTOR_CST and INTEGER_CST in addition to REAL_CST.
+
2008-03-09 Ira Rosen <irar@il.ibm.com>
* config/rs6000/rs6000.c (builtin_description): Rename vector
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index f1618e6..74b2be2 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -16789,7 +16789,8 @@ ia32_multipass_dfa_lookahead (void)
int
ix86_constant_alignment (tree exp, int align)
{
- if (TREE_CODE (exp) == REAL_CST)
+ if (TREE_CODE (exp) == REAL_CST || TREE_CODE (exp) == VECTOR_CST
+ || TREE_CODE (exp) == INTEGER_CST)
{
if (TYPE_MODE (TREE_TYPE (exp)) == DFmode && align < 64)
return 64;