From b8513691473e0e9c3731fee032ae20571c1db2dc Mon Sep 17 00:00:00 2001 From: Aldy Hernandez Date: Thu, 14 Feb 2002 03:43:03 +0000 Subject: [PATCH] darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors. 2002-02-13 Aldy Hernandez * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors. * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Add MAX. From-SVN: r49758 --- gcc/ChangeLog | 6 ++++++ gcc/config/rs6000/darwin.h | 2 ++ gcc/config/rs6000/sysv4.h | 3 ++- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ccd976548dd..ff2c4c3d441 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-02-14 Aldy Hernandez + + * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors. + + * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Add MAX. + 2002-02-14 Aldy Hernandez * config/rs6000/rs6000.md ("*movv4si_internal"): Add m<-r and r<-r 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