OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [uclinux/] [uClinux-2.0.x/] [include/] [net/] [gc.h] - Blame information for rev 1775

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 199 simons
/*
2
 *      Interface routines assumed by gc()
3
 *
4
 *      Copyright (C) Barak A. Pearlmutter.
5
 *      Released under the GPL version 2 or later.
6
 *
7
 */
8
 
9
typedef struct object *pobj;    /* pointer to a guy of the type we gc */
10
 
11
/*
12
 *      How to mark and unmark objects
13
 */
14
 
15
extern void gc_mark(pobj);
16
extern void gc_unmark(pobj);
17
extern int gc_marked(pobj);
18
 
19
/*
20
 *      How to count and access an object's children
21
 */
22
 
23
extern int n_children(pobj);    /* how many children */
24
extern pobj child_n(pobj, int); /* child i, numbered 0..n-1 */
25
 
26
/*
27
 *      How to access the root set
28
 */
29
 
30
extern int root_size(void);     /* number of things in root set */
31
extern pobj root_elt(int);      /* element i of root set, numbered 0..n-1 */
32
 
33
/*
34
 *      How to access the free list
35
 */
36
 
37
extern void clear_freelist(void);
38
extern void add_to_free_list(pobj);
39
 
40
/*
41
 *      How to iterate through all objects in memory
42
 */
43
 
44
extern int N_OBJS;
45
extern pobj obj_number(int);
46
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.