diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2002-02-14 03:43:03 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2002-02-14 03:43:03 +0000 |
commit | b8513691473e0e9c3731fee032ae20571c1db2dc (patch) | |
tree | 28af122d26cb4024415d179117c92b094f922020 /gcc/config | |
parent | 78c875e81a647757c27f729bbef6f4d6820be67f (diff) | |
download | gcc-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.h | 2 | ||||
-rw-r--r-- | gcc/config/rs6000/sysv4.h | 3 |
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 |