Files
ftmemsim-valgrind/memcheck/tests/solaris/lsframe2.c
Julian Seward ac60633d65 Bug 345248 - add support for Solaris OS in valgrind
Authors of this port:
    Petr Pavlu         setup@dagobah.cz
    Ivo Raisr          ivosh@ivosh.net
    Theo Schlossnagle  theo@omniti.com
            


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15426
2015-07-21 14:44:28 +00:00

32 lines
742 B
C

/* Demonstrate Memcheck correctly handling chain of 64 recursive
calls, each of which allocates a 1 M array on the stack. Requires
--main-stacksize=67117057 (on amd64-linux) or above, but works fine
if you specify that. */
#include <stdio.h>
#define N_MBYTES 64
#define N_INTS_PER_MBYTE (1048576 / sizeof(int))
int rec(int depth)
{
int i, zzz;
int arr[N_INTS_PER_MBYTE];
if (depth == 0) return 0;
for (i = 0; i < N_INTS_PER_MBYTE; i++)
arr[i] = i * depth;
zzz = rec(depth-1);
for (i = 0; i < N_INTS_PER_MBYTE; i++)
zzz += arr[i];
return zzz;
}
int main(void)
{
int sum;
printf("lsframe2: start\n");
sum = rec(N_MBYTES);
printf("lsframe2: done, result is %d\n", sum);
return 0;
}