GC_INNER void * GC_generic_malloc_inner(size_t lb, int k);
/* Allocate an object of the given */
/* kind but assuming lock already held. */
-GC_INNER void * GC_generic_malloc_inner_ignore_off_page(size_t lb, int k);
+#if defined(DBG_HDRS_ALL) || defined(GC_GCJ_SUPPORT) \
+ || !defined(GC_NO_FINALIZATION)
+ GC_INNER void * GC_generic_malloc_inner_ignore_off_page(size_t lb, int k);
/* Allocate an object, where */
/* the client guarantees that there */
/* will always be a pointer to the */
/* beginning of the object while the */
/* object is live. */
+#endif
GC_INNER ptr_t GC_allocobj(size_t sz, int kind);
/* Make the indicated */
return op;
}
-/* Allocate a composite object of size n bytes. The caller guarantees */
-/* that pointers past the first page are not relevant. */
-GC_INNER void * GC_generic_malloc_inner_ignore_off_page(size_t lb, int k)
-{
+#if defined(DBG_HDRS_ALL) || defined(GC_GCJ_SUPPORT) \
+ || !defined(GC_NO_FINALIZATION)
+ /* Allocate a composite object of size n bytes. The caller */
+ /* guarantees that pointers past the first page are not relevant. */
+ GC_INNER void * GC_generic_malloc_inner_ignore_off_page(size_t lb, int k)
+ {
word lb_adjusted;
void * op;
op = GC_alloc_large_and_clear(lb_adjusted, k, IGNORE_OFF_PAGE);
GC_bytes_allocd += lb_adjusted;
return op;
-}
+ }
+#endif
#ifdef GC_COLLECT_AT_MALLOC
/* Parameter to force GC at every malloc of size greater or equal to */