diff options
author | Dale Johannesen <dalej@gcc.gnu.org> | 2004-06-22 19:11:43 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@gcc.gnu.org> | 2004-06-22 19:11:43 +0000 |
commit | a91b0033574cf8d647d3dd56708ce3ec787536ba (patch) | |
tree | 065bc649919916b3bb4e97223442b4401f5916a2 | |
parent | 6bb1041efd25b13d412ca201ccdb98461e96799e (diff) | |
download | gcc-a91b0033574cf8d647d3dd56708ce3ec787536ba.zip gcc-a91b0033574cf8d647d3dd56708ce3ec787536ba.tar.gz gcc-a91b0033574cf8d647d3dd56708ce3ec787536ba.tar.bz2 |
Testcases for my rs6000-specific change of this date.
From-SVN: r83511
-rw-r--r-- | gcc/testsuite/gcc.dg/20040622-1.c | 13 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/20040622-2.c | 10 |
2 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/20040622-1.c b/gcc/testsuite/gcc.dg/20040622-1.c new file mode 100644 index 0000000..4562fe6 --- /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 0000000..3297401 --- /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); +} |