diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 51d65e75896..9f011b00809 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-06-01 Kazu Hirata + + * gcc.dg/builtin-return-1.c (g): New. + (main): Allocate at least 64 bytes on the stack. + 2007-05-31 Mark Mitchell * g++.dg/init/cleanup3.C: New test. diff --git a/gcc/testsuite/gcc.dg/builtin-return-1.c b/gcc/testsuite/gcc.dg/builtin-return-1.c index d22891589dd..75c9acdf72a 100644 --- a/gcc/testsuite/gcc.dg/builtin-return-1.c +++ b/gcc/testsuite/gcc.dg/builtin-return-1.c @@ -17,8 +17,16 @@ int bar(int n) __builtin_return(__builtin_apply((void (*)(void))foo, __builtin_apply_args(), 64)); } +char *g; + int main(void) { + /* Allocate 64 bytes on the stack to make sure that __builtin_apply + can read at least 64 bytes above the return address. */ + char dummy[64]; + + g = dummy; + if (bar(1) != 2) abort();