mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-30 23:55:56 +08:00
20010122-1.c: Don't assume alloca() is enough to avoid inlining.
* gcc.c-torture/execute/20010122-1.c: Don't assume alloca() is enough to avoid inlining. From-SVN: r46024
This commit is contained in:
parent
d4e4baa995
commit
8d5463d486
@ -1,3 +1,8 @@
|
||||
2001-10-05 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* gcc.c-torture/execute/20010122-1.c: Don't assume alloca() is
|
||||
enough to avoid inlining.
|
||||
|
||||
2001-10-04 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
|
||||
|
||||
* lib/g77.exp: set libg2c_dir correctly.
|
||||
|
@ -78,15 +78,14 @@ void *test6a (char * p)
|
||||
|
||||
void *(*func1[6])(void) = { test1, test2, test3, test4, test5, test6 };
|
||||
|
||||
char * call_func1 (int i)
|
||||
char * call_func1_ (int i)
|
||||
{
|
||||
char * save = (char*) alloca (4);
|
||||
|
||||
save_ret1[i] = func1[i] ();
|
||||
|
||||
return save;
|
||||
}
|
||||
|
||||
/* We dont' want call_func1_ to be inlined, so call it through a
|
||||
pointer. */
|
||||
void (*call_func1)(int) = call_func1_;
|
||||
|
||||
static void *ret_addr;
|
||||
void *save_ret2[6];
|
||||
@ -164,16 +163,16 @@ char * dummy (void)
|
||||
|
||||
void (*func2[6])(void) = { test7, test8, test9, test10, test11, test12 };
|
||||
|
||||
char * call_func2 (int i)
|
||||
void call_func2_ (int i)
|
||||
{
|
||||
char * save = (char*) alloca (4);
|
||||
|
||||
func2[i] ();
|
||||
save_ret2[i] = ret_addr;
|
||||
|
||||
return save;
|
||||
}
|
||||
|
||||
/* We dont' want call_func2_ to be inlined, so call it through a
|
||||
pointer. */
|
||||
void (*call_func2)(int) = call_func2_;
|
||||
|
||||
int main (void)
|
||||
{
|
||||
int i;
|
||||
|
Loading…
Reference in New Issue
Block a user