From 3ea394f23d8fa451a069e263c6b424cb59f16d66 Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Wed, 2 Jul 2008 15:41:38 +0000 Subject: [PATCH] nrv3.c (S): Increase size of padding for SPU. * gcc.dg/nrv3.c (S): Increase size of padding for SPU. * g++.dg/opt/temp1.C (struct T): Likewise. From-SVN: r137363 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/opt/temp1.C | 5 +++++ gcc/testsuite/gcc.dg/nrv3.c | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8a51dc0900d..aa4b1152161 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-07-02 Ulrich Weigand + + * gcc.dg/nrv3.c (S): Increase size of padding for SPU. + * g++.dg/opt/temp1.C (struct T): Likewise. + 2008-07-02 Ulrich Weigand * gcc.c-torture/execute/20030222-1.x: New file. diff --git a/gcc/testsuite/g++.dg/opt/temp1.C b/gcc/testsuite/g++.dg/opt/temp1.C index b822dc464fe..dc13f516246 100644 --- a/gcc/testsuite/g++.dg/opt/temp1.C +++ b/gcc/testsuite/g++.dg/opt/temp1.C @@ -24,7 +24,12 @@ void *memcpy (void *dest, const void *src, __SIZE_TYPE__ n) } struct T { +#ifdef __SPU__ + /* SPU returns aggregates up to 1172 bytes in registers. */ + int a[300]; +#else int a[128]; +#endif T &operator+=(T const &v) __attribute__((noinline)); T operator+(T const &v) const { T t = *this; t += v; return t; } }; diff --git a/gcc/testsuite/gcc.dg/nrv3.c b/gcc/testsuite/gcc.dg/nrv3.c index 2b582c3ebe8..c28b8ec570d 100644 --- a/gcc/testsuite/gcc.dg/nrv3.c +++ b/gcc/testsuite/gcc.dg/nrv3.c @@ -3,7 +3,12 @@ /* { dg-do compile } */ /* { dg-options "-O -fdump-tree-optimized" } */ +#ifdef __SPU__ +/* SPU returns aggregates up to 1172 bytes in registers. */ +typedef struct { int x[300]; void *y; } S; +#else typedef struct { int x[20]; void *y; } S; +#endif typedef struct { int a; S b; } T; S nrv_candidate (void); void use_result (S, int); -- 2.30.2