1/* >>>> Generated by mkmark.rkt from mzmarksrc.c <<<< */
2
3static int mark_finalization_SIZE(void *p, struct NewGC *gc) {
4#ifndef GC_NO_SIZE_NEEDED_FROM_PROCS
5  gcBYTES_TO_WORDS(sizeof(Finalization));
6#else
7  return 0;
8#endif
9}
10
11static int mark_finalization_MARK(void *p, struct NewGC *gc) {
12#ifndef GC_NO_MARK_PROCEDURE_NEEDED
13  Finalization *f = (Finalization *)p;
14
15  gcMARK2(f->data, gc);
16  gcMARK2(f->next, gc);
17  gcMARK2(f->prev, gc);
18
19# ifdef GC_NO_SIZE_NEEDED_FROM_PROCS
20  return 0;
21# else
22  return
23  gcBYTES_TO_WORDS(sizeof(Finalization));
24# endif
25#endif
26}
27
28static int mark_finalization_FIXUP(void *p, struct NewGC *gc) {
29#ifndef GC_NO_FIXUP_PROCEDURE_NEEDED
30  Finalization *f = (Finalization *)p;
31
32  gcFIXUP2(f->data, gc);
33  gcFIXUP2(f->next, gc);
34  gcFIXUP2(f->prev, gc);
35
36# ifdef GC_NO_SIZE_NEEDED_FROM_PROCS
37  return 0;
38# else
39  return
40  gcBYTES_TO_WORDS(sizeof(Finalization));
41# endif
42#endif
43}
44
45#define mark_finalization_IS_ATOMIC 0
46#define mark_finalization_IS_CONST_SIZE 1
47
48
49static int mark_finalizations_SIZE(void *p, struct NewGC *gc) {
50#ifndef GC_NO_SIZE_NEEDED_FROM_PROCS
51  gcBYTES_TO_WORDS(sizeof(Finalizations));
52#else
53  return 0;
54#endif
55}
56
57static int mark_finalizations_MARK(void *p, struct NewGC *gc) {
58#ifndef GC_NO_MARK_PROCEDURE_NEEDED
59  Finalizations *f = (Finalizations *)p;
60
61  gcMARK2(f->scheme_first, gc);
62  gcMARK2(f->scheme_last, gc);
63  gcMARK2(f->prim_first, gc);
64  gcMARK2(f->prim_last, gc);
65  gcMARK2(f->ext_data, gc);
66
67# ifdef GC_NO_SIZE_NEEDED_FROM_PROCS
68  return 0;
69# else
70  return
71  gcBYTES_TO_WORDS(sizeof(Finalizations));
72# endif
73#endif
74}
75
76static int mark_finalizations_FIXUP(void *p, struct NewGC *gc) {
77#ifndef GC_NO_FIXUP_PROCEDURE_NEEDED
78  Finalizations *f = (Finalizations *)p;
79
80  gcFIXUP2(f->scheme_first, gc);
81  gcFIXUP2(f->scheme_last, gc);
82  gcFIXUP2(f->prim_first, gc);
83  gcFIXUP2(f->prim_last, gc);
84  gcFIXUP2(f->ext_data, gc);
85
86# ifdef GC_NO_SIZE_NEEDED_FROM_PROCS
87  return 0;
88# else
89  return
90  gcBYTES_TO_WORDS(sizeof(Finalizations));
91# endif
92#endif
93}
94
95#define mark_finalizations_IS_ATOMIC 0
96#define mark_finalizations_IS_CONST_SIZE 1
97
98
99