diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 0c32f9f7c94ec8c2bbaaed4aea7dc58f3258d81b..9e9c2b1286d95b86402be2a14df327d96686d7e5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,16 @@
+2006-01-01  Andreas Tobler  <a.tobler@schweiz.ch>
+	    Andrew Pinski <pinskia@physics.uc.edu>
+
+	* gcc.target/powerpc/darwin-abi-3.c: New file.
+	* gcc.target/powerpc/darwin-abi-4.c: Likewise.
+	* gcc.target/powerpc/darwin-abi-5.c: Likewise.
+	* gcc.target/powerpc/darwin-abi-6.c: Likewise.
+	* gcc.target/powerpc/darwin-abi-7.c: Likewise.
+	* gcc.target/powerpc/darwin-abi-8.c: Likewise.
+	* gcc.target/powerpc/darwin-abi-9.c: Likewise.
+	* gcc.target/powerpc/darwin-abi-10.c: Likewise.
+	* gcc.target/powerpc/darwin-abi-11.c: Likewise.
+
 2006-01-01  Daniel Berlin  <dberlin@dberlin.org>
 
 	* gcc.dg/tree-ssa/loadpre1.c: New;
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-10.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-10.c
new file mode 100644
index 0000000000000000000000000000000000000000..0247c476d678c2175cc6960fae32d79b5173b5de
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-10.c
@@ -0,0 +1,26 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-xfail-if "" { powerpc*-*-darwin* } } */
+/* { dg-options "-Wno-long-long" } */
+
+struct b
+{
+  long long t;
+  int i;
+};
+
+struct c
+{
+  double d;
+  int i;
+};
+
+struct n
+{
+  long long ll;
+  int tt;
+  struct c d;
+  struct b h;
+  int t;
+};
+int f[sizeof(struct n)!=48?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-11.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-11.c
new file mode 100644
index 0000000000000000000000000000000000000000..bc5f50140ff52f0d8db92b969603d6e19b5030ab
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-11.c
@@ -0,0 +1,32 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-xfail-if "" { powerpc*-*-darwin* } } */
+/* { dg-options "-Wno-long-long" } */
+
+struct A
+{
+  long long a;
+  unsigned char b;
+};
+
+struct D
+{
+  unsigned char y;
+  struct A x;
+  unsigned char z;
+};
+
+struct E
+{
+  long long d;
+  unsigned char e;
+};
+
+struct y
+{
+  struct A b2;
+  struct D b3;
+  struct E b4;
+};
+
+int f[sizeof(struct y)!=56?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-3.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-3.c
new file mode 100644
index 0000000000000000000000000000000000000000..008ea46d524e1550789a0e9801a1af0ce8b29eb7
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-3.c
@@ -0,0 +1,11 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-xfail-if "" { powerpc*-*-darwin* } } */
+/* { dg-options "-Wno-long-long" } */
+struct f
+{
+  int i;
+  long long ll;
+};
+
+int f[sizeof(struct f)!=12?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-4.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-4.c
new file mode 100644
index 0000000000000000000000000000000000000000..d146c46edf326d3afd6524e23f5d95906f617a31
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-4.c
@@ -0,0 +1,10 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-options "-Wno-long-long" } */
+struct f
+{
+  long long ll;
+  int i;
+};
+
+int f[sizeof(struct f)!=16?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-5.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-5.c
new file mode 100644
index 0000000000000000000000000000000000000000..4965c5bd8d7a327bdeac853f418e7ba13341970d
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-5.c
@@ -0,0 +1,30 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-options "-Wno-long-long" } */
+
+struct A
+{
+  long long a;
+  unsigned char b;
+};
+
+struct B
+{
+  struct A x;
+  unsigned char z;
+};
+
+struct C
+{
+  long d;
+  unsigned char e;
+};
+
+struct z
+{ 
+  struct A b2;
+  struct B b3;
+  struct C b4;
+};
+
+int f[sizeof(struct z)!=48?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-6.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-6.c
new file mode 100644
index 0000000000000000000000000000000000000000..4d80187468e6311912c15ebb86355dc1cc8035e9
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-6.c
@@ -0,0 +1,20 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-xfail-if "" { powerpc*-*-darwin* } } */
+/* { dg-options "-Wno-long-long" } */
+
+struct a
+{
+  int tt;
+  long long t;
+  int i;
+};
+
+struct g
+{
+  int tt;
+  struct a d;
+  int t;
+};
+
+int f[sizeof(struct g)!=24?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-7.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-7.c
new file mode 100644
index 0000000000000000000000000000000000000000..d9ecee97b83720358fb9b36655964c198e6b1744
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-7.c
@@ -0,0 +1,18 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-xfail-if "" { powerpc*-*-darwin* } } */
+/* { dg-options "-Wno-long-long" } */
+
+struct b
+{
+  long long t;
+  int i;
+};
+struct h
+{
+  int tt;
+  struct b d;
+  int t;
+};
+
+int f[sizeof(struct h)!=24?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-8.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-8.c
new file mode 100644
index 0000000000000000000000000000000000000000..b8e0c4d1f3e4690493012e7386b0253fe9925d89
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-8.c
@@ -0,0 +1,18 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-xfail-if "" { powerpc*-*-darwin* } } */
+
+struct c
+{
+  double d;
+  int i;
+};
+
+struct j
+{
+  int tt;
+  struct c d;
+  int t;
+};
+
+int f[sizeof(struct j)!=24?-1:1];
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-abi-9.c b/gcc/testsuite/gcc.target/powerpc/darwin-abi-9.c
new file mode 100644
index 0000000000000000000000000000000000000000..7f215df9bed5429ca49e31d6cf90ed844b410a23
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/darwin-abi-9.c
@@ -0,0 +1,25 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-xfail-if "" { powerpc*-*-darwin* } } */
+/* { dg-options "-Wno-long-long" } */
+
+struct b
+{
+  long long t;
+  int i;
+};
+
+struct l
+{
+  int i;
+  double d;
+};
+struct k
+{
+  int tt;
+  struct l d;
+  struct b h;
+  int t;
+};
+
+int f[sizeof(struct k)!=36?-1:1];