summaryrefslogtreecommitdiff
path: root/libobjc/encoding.c
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2006-11-01 05:28:41 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2006-11-01 05:28:41 +0000
commitc8dfb8efd61184617d8964d424fd6a9edba95aa6 (patch)
tree74f939bf9675730feae0078a642eb4da864c5ce5 /libobjc/encoding.c
parent154db13d9dd66114ec4845308146f4f993b6696c (diff)
downloadgcc-c8dfb8efd61184617d8964d424fd6a9edba95aa6.tar.gz
In gcc/:
PR 23067 * c-decl.c (start_struct): Don't create self-containing structures. * config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align): New. * config/rs6000/rs6000-protos.h (darwin_rs6000_special_round_type_align): New. * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Rewrite. (ROUND_TYPE_ALIGN): Use darwin_rs6000_special_round_type_align. In gcc/testsuite/: PR 23067 * gcc.target/powerpc/darwin-abi-3.c: Remove XFAIL. * gcc.target/powerpc/darwin-abi-6.c: Remove XFAIL. * gcc.target/powerpc/darwin-abi-7.c: Remove XFAIL. * gcc.target/powerpc/darwin-abi-8.c: Remove XFAIL. * gcc.target/powerpc/darwin-abi-9.c: Remove XFAIL. * gcc.target/powerpc/darwin-abi-10.c: Remove XFAIL. * gcc.target/powerpc/darwin-abi-11.c: Remove XFAIL. In libobjc/: * encoding.c (darwin_rs6000_special_round_type_align): New. In libffi/: * src/powerpc/ffi_darwin.c (darwin_adjust_aggregate_sizes): New. (ffi_prep_cif_machdep): Call darwin_adjust_aggregate_sizes for Darwin. * testsuite/libffi.call/nested_struct4.c: Remove Darwin XFAIL. * testsuite/libffi.call/nested_struct6.c: Remove Darwin XFAIL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118365 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libobjc/encoding.c')
-rw-r--r--libobjc/encoding.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libobjc/encoding.c b/libobjc/encoding.c
index 21a785814dc..e65634103aa 100644
--- a/libobjc/encoding.c
+++ b/libobjc/encoding.c
@@ -120,6 +120,10 @@ static int __attribute__ ((__unused__)) not_target_flags = 0;
: TREE_TYPE (_fields)) == DFmode) \
? MAX (MAX (COMPUTED, SPECIFIED), 64) \
: MAX (COMPUTED, SPECIFIED));})
+/* FIXME: The word 'fixme' is insufficient to explain the wrong-ness
+ of this next macro definition. */
+#define darwin_rs6000_special_round_type_align(S,C,S2) \
+ rs6000_special_round_type_align(S,C,S2)
/*
return the size of an object specified by type