aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/darwin-abi-1.c
diff options
context:
space:
mode:
authorGeoffrey Keating <geoffk@apple.com>2003-09-23 21:37:32 +0000
committerGeoffrey Keating <geoffk@gcc.gnu.org>2003-09-23 21:37:32 +0000
commitfff2cb99c987f4e9f0a8dffc0c3acd363f8a097f (patch)
tree9941b421b5d06bb02a64dfe48d6f1ec11d0330c7 /gcc/testsuite/gcc.dg/darwin-abi-1.c
parente5f1132858753ef5c8857323dbef71018fe65822 (diff)
downloadgcc-fff2cb99c987f4e9f0a8dffc0c3acd363f8a097f.zip
gcc-fff2cb99c987f4e9f0a8dffc0c3acd363f8a097f.tar.gz
gcc-fff2cb99c987f4e9f0a8dffc0c3acd363f8a097f.tar.bz2
rs6000.c (function_arg_pass_by_reference): Don't pass zero-size arrays by reference.
2003-09-23 Geoffrey Keating <geoffk@apple.com> * config/rs6000/rs6000.c (function_arg_pass_by_reference): Don't pass zero-size arrays by reference. (rs6000_va_arg): Likewise. 2003-09-23 Geoffrey Keating <geoffk@apple.com> * gcc.dg/darwin-abi-1.c: New file. From-SVN: r71698
Diffstat (limited to 'gcc/testsuite/gcc.dg/darwin-abi-1.c')
-rw-r--r--gcc/testsuite/gcc.dg/darwin-abi-1.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/darwin-abi-1.c b/gcc/testsuite/gcc.dg/darwin-abi-1.c
new file mode 100644
index 0000000..c7c0288
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/darwin-abi-1.c
@@ -0,0 +1,12 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-options "-O" } */
+/* { dg-final { scan-assembler "li r3,12345\n\tbl " } } */
+
+/* Check that zero-size structures don't affect parameter passing. */
+
+struct empty { };
+extern void foo (struct empty e, int a);
+void bar (void) {
+ struct empty e;
+ foo (e, 12345);
+}