From: Dale Johannesen Date: Tue, 22 Jun 2004 19:11:43 +0000 (+0000) Subject: Testcases for my rs6000-specific change of this date. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a91b0033574cf8d647d3dd56708ce3ec787536ba;p=gcc.git Testcases for my rs6000-specific change of this date. From-SVN: r83511 --- diff --git a/gcc/testsuite/gcc.dg/20040622-1.c b/gcc/testsuite/gcc.dg/20040622-1.c new file mode 100644 index 00000000000..4562fe6eaa1 --- /dev/null +++ b/gcc/testsuite/gcc.dg/20040622-1.c @@ -0,0 +1,13 @@ +/* { dg-options "-Os -mlong-double-128" } */ +/* { dg-do compile { target rs6000-*-* powerpc-*-* } } */ +/* Make sure compiler doesn't generate [reg+reg] address mode + for long doubles. */ +union arg { + int intarg; + long double longdoublearg; +}; +long double d; +int va(int n, union arg **argtable) +{ + (*argtable)[n].longdoublearg = d; +} diff --git a/gcc/testsuite/gcc.dg/20040622-2.c b/gcc/testsuite/gcc.dg/20040622-2.c new file mode 100644 index 00000000000..32974018d54 --- /dev/null +++ b/gcc/testsuite/gcc.dg/20040622-2.c @@ -0,0 +1,10 @@ +/* { dg-do link } */ +/* This validates codegen for [r1+32760] on Darwin. */ +void f(char x[32688], double *y, double *z) __attribute__((noinline)); +void f(char x[32688], double *y, double *z) {} +main() { + char x[32688]; + double y, z; + y = z = 3.0; + f(x, &y, &z); +}