version 1.1, 1999/12/03 07:39:10 |
version 1.2, 2001/04/20 07:39:25 |
|
|
# include "private/gc_priv.h" |
# include "private/gc_priv.h" |
# endif |
# endif |
|
|
/* USE OF THIS FILE IS NOT RECOMMENDED unless the collector has been */ |
/* USE OF THIS FILE IS NOT RECOMMENDED unless GC_all_interior_pointers */ |
/* compiled without -DALL_INTERIOR_POINTERS or with */ |
/* is always set, or the collector has been built with */ |
/* -DDONT_ADD_BYTE_AT_END, or the specified size includes a pointerfree */ |
/* -DDONT_ADD_BYTE_AT_END, or the specified size includes a pointerfree */ |
/* word at the end. In the standard collector configuration, */ |
/* word at the end. In the standard collector configuration, */ |
/* the final word of each object may not be scanned. */ |
/* the final word of each object may not be scanned. */ |
/* This is most useful for compilers that generate C. */ |
/* This iinterface is most useful for compilers that generate C. */ |
/* Manual use is hereby discouraged. */ |
/* Manual use is hereby discouraged. */ |
|
|
/* Allocate n words (NOT BYTES). X is made to point to the result. */ |
/* Allocate n words (NOT BYTES). X is made to point to the result. */ |
/* It is assumed that n < MAXOBJSZ, and */ |
/* It is assumed that n < MAXOBJSZ, and */ |
/* that n > 0. On machines requiring double word alignment of some */ |
/* that n > 0. On machines requiring double word alignment of some */ |
/* data, we also assume that n is 1 or even. This bypasses the */ |
/* data, we also assume that n is 1 or even. */ |
|
/* If the collector is built with -DUSE_MARK_BYTES or -DPARALLEL_MARK, */ |
|
/* the n = 1 case is also disallowed. */ |
|
/* Effectively this means that portable code should make sure n is even.*/ |
|
/* This bypasses the */ |
/* MERGE_SIZES mechanism. In order to minimize the number of distinct */ |
/* MERGE_SIZES mechanism. In order to minimize the number of distinct */ |
/* free lists that are maintained, the caller should ensure that a */ |
/* free lists that are maintained, the caller should ensure that a */ |
/* small number of distinct values of n are used. (The MERGE_SIZES */ |
/* small number of distinct values of n are used. (The MERGE_SIZES */ |