0.7.13.5
[sbcl/lichteblau.git] / src / runtime / gencgc-alloc-region.h
blob8e9dbed98e2dc98eee394931b6176cabb956192a
1 #ifndef _GENCGC_ALLOC_REGION_H_
2 #define _GENCGC_ALLOC_REGION_H_
3 /* Abstract out the data for an allocation region allowing a single
4 * routine to be used for allocation and closing. */
5 struct alloc_region {
7 /* These two are needed for quick allocation. */
8 void *free_pointer;
9 void *end_addr; /* pointer to the byte after the last usable byte */
11 /* These are needed when closing the region. */
12 int first_page;
13 int last_page;
14 void *start_addr;
17 extern struct alloc_region boxed_region;
18 extern struct alloc_region unboxed_region;
19 extern int from_space, new_space;
20 extern struct weak_pointer *weak_pointers;
22 extern void *current_region_free_pointer;
23 extern void *current_region_end_addr;
25 #endif /* _GENCGC_ALLOC_REGION_H_ */