diff options
author | pinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-01-17 19:48:50 +0000 |
---|---|---|
committer | pinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-01-17 19:48:50 +0000 |
commit | d84c6db892405297a439598cc8b79753996dd2a8 (patch) | |
tree | a0ab8ee208b07c4e48ee3c5ef3d40bc702369877 /libobjc/encoding.c | |
parent | e0a3f3f0baab86b480accb3591d6e39a55c40e49 (diff) | |
download | gcc-d84c6db892405297a439598cc8b79753996dd2a8.tar.gz |
2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
PR target/10781
* config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
Prototype.
* config/rs6000/rs6000.c (rs6000_special_round_type_align):
New function.
* config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Use it.
* config/rs6000/aix.h (ROUND_TYPE_ALIGN): Likewise.
* config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Likewise.
2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
PR target/10781
* encoding.c (rs6000_special_round_type_align): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76043 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libobjc/encoding.c')
-rw-r--r-- | libobjc/encoding.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libobjc/encoding.c b/libobjc/encoding.c index bed0653cff7..17bc8d4e2e1 100644 --- a/libobjc/encoding.c +++ b/libobjc/encoding.c @@ -88,6 +88,17 @@ Boston, MA 02111-1307, USA. */ eliminate the warning. */ static int __attribute__ ((__unused__)) target_flags = 0; + +/* FIXME: while this file has no business including tm.h, this + definitely has no business defining this macro but it + is only way around without really rewritting this file, + should look after the branch of 3.4 to fix this. */ +#define rs6000_special_round_type_align(STRUCT, COMPUTED, SPECIFIED) \ + ((TYPE_FIELDS (STRUCT) != 0 \ + && DECL_MODE (TYPE_FIELDS (STRUCT)) == DFmode) \ + ? MAX (MAX (COMPUTED, SPECIFIED), 64) \ + : MAX (COMPUTED, SPECIFIED)) + /* return the size of an object specified by type */ |