boehm-gc: revert all CACAO-specific modifications; this is now an exact copy of the...
[cacao.git] / src / mm / boehm-gc / tests / trace_test.c
1 #include <stdio.h>
2
3 #ifndef GC_DEBUG
4 # define GC_DEBUG
5 #endif
6
7 #include "gc.h"
8 #include "gc_backptr.h"
9
10 struct treenode {
11     struct treenode *x;
12     struct treenode *y;
13 } * root[10];
14
15 struct treenode * mktree(int i) {
16   struct treenode * r = GC_MALLOC(sizeof(struct treenode));
17   if (0 == i) return 0;
18   if (1 == i) r = GC_MALLOC_ATOMIC(sizeof(struct treenode));
19   r -> x = mktree(i-1);
20   r -> y = mktree(i-1);
21   return r;
22 }
23
24 int main(void)
25 {
26   int i;
27   GC_INIT();
28   for (i = 0; i < 10; ++i) {
29     root[i] = mktree(12);
30   }
31   GC_generate_random_backtrace();
32   GC_generate_random_backtrace();
33   GC_generate_random_backtrace();
34   GC_generate_random_backtrace();
35   return 0;
36 }