summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2002-02-14 03:43:03 +0000
committerAldy Hernandez <aldyh@gcc.gnu.org>2002-02-14 03:43:03 +0000
commitb8513691473e0e9c3731fee032ae20571c1db2dc (patch)
tree28af122d26cb4024415d179117c92b094f922020 /gcc/config
parent78c875e81a647757c27f729bbef6f4d6820be67f (diff)
downloadgcc-b8513691473e0e9c3731fee032ae20571c1db2dc.tar.gz
darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors.
2002-02-13 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors. * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Add MAX. From-SVN: r49758
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/rs6000/darwin.h2
-rw-r--r--gcc/config/rs6000/sysv4.h3
2 files changed, 4 insertions, 1 deletions
diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h
index cb6b4b77e64..3daf18c63fa 100644
--- a/gcc/config/rs6000/darwin.h
+++ b/gcc/config/rs6000/darwin.h
@@ -218,6 +218,8 @@ Boston, MA 02111-1307, USA. */
&& TYPE_FIELDS (STRUCT) != 0 \
&& DECL_MODE (TYPE_FIELDS (STRUCT)) == DFmode \
? MAX (MAX ((COMPUTED), (SPECIFIED)), 64) \
+ : (TARGET_ALTIVEC && TREE_CODE (STRUCT) == VECTOR_TYPE) \
+ ? MAX (MAX ((COMPUTED), (SPECIFIED)), 128) \
: MAX ((COMPUTED), (SPECIFIED)))
/* XXX: Darwin supports neither .quad, or .llong, but it also doesn't
support 64 bit powerpc either, so this just keeps things happy. */
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index c20eaa0101f..5b0befeb16b 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -397,7 +397,8 @@ do { \
SPECIFIED. */
#define ROUND_TYPE_ALIGN(TYPE, COMPUTED, SPECIFIED) \
((TARGET_ALTIVEC && TREE_CODE (TYPE) == VECTOR_TYPE) \
- ? 128 : MAX (COMPUTED, SPECIFIED))
+ ? MAX (MAX ((COMPUTED), (SPECIFIED)), 128) \
+ : MAX (COMPUTED, SPECIFIED))
#undef BIGGEST_FIELD_ALIGNMENT
#undef ADJUST_FIELD_ALIGN