Back to index

lightning-sunbird  0.9+nobinonly
Defines | Typedefs | Functions | Variables
gc.h File Reference
#include <stddef.h>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define __GC
#define GC_API   extern
#define GC_PROTO(args)   ()
#define GC_EXTRAS   __FILE__, __LINE__
#define GC_EXTRA_PARAMS   char * descr_string, int descr_int
#define GC_MALLOC(sz)   GC_malloc(sz)
#define GC_MALLOC_ATOMIC(sz)   GC_malloc_atomic(sz)
#define GC_MALLOC_UNCOLLECTABLE(sz)   GC_malloc_uncollectable(sz)
#define GC_REALLOC(old, sz)   GC_realloc(old, sz)
#define GC_FREE(p)   GC_free(p)
#define GC_REGISTER_FINALIZER(p, f, d, of, od)   GC_register_finalizer(p, f, d, of, od)
#define GC_REGISTER_FINALIZER_IGNORE_SELF(p, f, d, of, od)   GC_register_finalizer_ignore_self(p, f, d, of, od)
#define GC_MALLOC_STUBBORN(sz)   GC_malloc_stubborn(sz)
#define GC_CHANGE_STUBBORN(p)   GC_change_stubborn(p)
#define GC_END_STUBBORN_CHANGE(p)   GC_end_stubborn_change(p)
#define GC_GENERAL_REGISTER_DISAPPEARING_LINK(link, obj)   GC_general_register_disappearing_link(link, obj)
#define GC_REGISTER_DISPLACEMENT(n)   GC_register_displacement(n)
#define GC_NEW(t)   (t *)GC_MALLOC(sizeof (t))
#define GC_NEW_ATOMIC(t)   (t *)GC_MALLOC_ATOMIC(sizeof (t))
#define GC_NEW_STUBBORN(t)   (t *)GC_MALLOC_STUBBORN(sizeof (t))
#define GC_NEW_UNCOLLECTABLE(t)   (t *)GC_MALLOC_UNCOLLECTABLE(sizeof (t))
#define GC_PTR_ADD3(x, n, type_of_result)   ((x)+(n))
#define GC_PTR_ADD(x, n)   ((x)+(n))
#define GC_PRE_INCR3(x, n, type_of_result)   ((x) += (n))
#define GC_PRE_INCR(x, n)   ((x) += (n))
#define GC_POST_INCR2(x, n, type_of_result)   ((x)++)
#define GC_POST_INCR(x, n)   ((x)++)
#define GC_PTR_STORE(p, q)   *((p) = (q))
#define GC_INIT()

Typedefs

typedef char * GC_PTR
typedef unsigned long GC_word
typedef long GC_signed_word
typedef int GC_stop_func GC_PROTO ((void)) = GC_default_oom_fn

Functions

GC_API GC_PTR GC_oom_fn GC_PROTO ((size_t bytes_requested))
GC_API GC_PTR GC_malloc GC_PROTO ((size_t size_in_bytes))
GC_API void GC_free GC_PROTO ((GC_PTR object_addr))
GC_API void GC_change_stubborn GC_PROTO ((GC_PTR))
GC_API GC_PTR GC_base GC_PROTO ((GC_PTR displaced_pointer))
GC_API GC_PTR GC_realloc GC_PROTO ((GC_PTR old_object, size_t new_size_in_bytes))
GC_API int GC_expand_hp GC_PROTO ((size_t number_of_bytes))
GC_API void GC_set_max_heap_size GC_PROTO ((GC_word n))
GC_API void GC_exclude_static_roots GC_PROTO ((GC_PTR start, GC_PTR finish))
GC_API void GC_clear_roots GC_PROTO ((void))
GC_API void GC_add_roots GC_PROTO ((char *low_address, char *high_address_plus_1))
GC_API int GC_try_to_collect GC_PROTO ((GC_stop_func stop_func))
GC_API GC_PTR
GC_malloc_ignore_off_page 
GC_PROTO ((size_t lb))
GC_API GC_PTR GC_debug_malloc GC_PROTO ((size_t size_in_bytes, GC_EXTRA_PARAMS))
GC_API GC_PTR GC_debug_realloc GC_PROTO ((GC_PTR old_object, size_t new_size_in_bytes, GC_EXTRA_PARAMS))
GC_API void GC_register_finalizer GC_PROTO ((GC_PTR obj, GC_finalization_proc fn, GC_PTR cd, GC_finalization_proc *ofn, GC_PTR *ocd))
GC_API int
GC_register_disappearing_link 
GC_PROTO ((GC_PTR *))
GC_API int
GC_general_register_disappearing_link 
GC_PROTO ((GC_PTR *, GC_PTR obj))
GC_API GC_PTR GC_make_closure GC_PROTO ((GC_finalization_proc fn, GC_PTR data))
GC_API void
GC_debug_invoke_finalizer 
GC_PROTO ((GC_PTR obj, GC_PTR data))
GC_API GC_warn_proc
GC_set_warn_proc 
GC_PROTO ((GC_warn_proc p))
GC_API GC_PTR
GC_call_with_alloc_lock 
GC_PROTO ((GC_fn_type fn, GC_PTR client_data))
GC_API GC_PTR GC_same_obj GC_PROTO ((GC_PTR p, GC_PTR q))
GC_API GC_PTR GC_pre_incr GC_PROTO ((GC_PTR *p, size_t how_much))
GC_API GC_PTR GC_is_visible GC_PROTO ((GC_PTR p))

Variables

GC_API GC_word GC_gc_no
GC_API int GC_quiet
GC_API int GC_dont_gc
GC_API int GC_dont_expand
GC_API int GC_full_freq
GC_API GC_word GC_non_gc_bytes
GC_API GC_word GC_free_space_divisor
GC_API GC_word GC_max_retries
GC_API char * GC_stackbottom

Define Documentation

Definition at line 31 of file gc.h.

#define GC_API   extern

Definition at line 55 of file gc.h.

Definition at line 380 of file gc.h.

Definition at line 381 of file gc.h.

#define GC_EXTRA_PARAMS   char * descr_string, int descr_int

Definition at line 332 of file gc.h.

#define GC_EXTRAS   __FILE__, __LINE__

Definition at line 331 of file gc.h.

#define GC_FREE (   p)    GC_free(p)

Definition at line 374 of file gc.h.

Definition at line 382 of file gc.h.

Definition at line 723 of file gc.h.

#define GC_MALLOC (   sz)    GC_malloc(sz)

Definition at line 370 of file gc.h.

Definition at line 371 of file gc.h.

Definition at line 379 of file gc.h.

Definition at line 372 of file gc.h.

#define GC_NEW (   t)    (t *)GC_MALLOC(sizeof (t))

Definition at line 390 of file gc.h.

#define GC_NEW_ATOMIC (   t)    (t *)GC_MALLOC_ATOMIC(sizeof (t))

Definition at line 391 of file gc.h.

#define GC_NEW_STUBBORN (   t)    (t *)GC_MALLOC_STUBBORN(sizeof (t))

Definition at line 392 of file gc.h.

Definition at line 393 of file gc.h.

#define GC_POST_INCR (   x,
  n 
)    ((x)++)

Definition at line 608 of file gc.h.

#define GC_POST_INCR2 (   x,
  n,
  type_of_result 
)    ((x)++)

Definition at line 607 of file gc.h.

#define GC_PRE_INCR (   x,
  n 
)    ((x) += (n))

Definition at line 606 of file gc.h.

#define GC_PRE_INCR3 (   x,
  n,
  type_of_result 
)    ((x) += (n))

Definition at line 605 of file gc.h.

#define GC_PROTO (   args)    ()

Definition at line 62 of file gc.h.

#define GC_PTR_ADD (   x,
  n 
)    ((x)+(n))

Definition at line 604 of file gc.h.

#define GC_PTR_ADD3 (   x,
  n,
  type_of_result 
)    ((x)+(n))

Definition at line 603 of file gc.h.

#define GC_PTR_STORE (   p,
 
)    *((p) = (q))

Definition at line 621 of file gc.h.

#define GC_REALLOC (   old,
  sz 
)    GC_realloc(old, sz)

Definition at line 373 of file gc.h.

Definition at line 384 of file gc.h.

#define GC_REGISTER_FINALIZER (   p,
  f,
  d,
  of,
  od 
)    GC_register_finalizer(p, f, d, of, od)

Definition at line 375 of file gc.h.

#define GC_REGISTER_FINALIZER_IGNORE_SELF (   p,
  f,
  d,
  of,
  od 
)    GC_register_finalizer_ignore_self(p, f, d, of, od)

Definition at line 377 of file gc.h.


Typedef Documentation

void GC_enable_incremental GC_PROTO = GC_default_oom_fn

Definition at line 277 of file gc.h.

typedef char* GC_PTR

Definition at line 63 of file gc.h.

Definition at line 80 of file gc.h.

typedef unsigned long GC_word

Definition at line 79 of file gc.h.


Function Documentation

GC_API GC_PTR GC_oom_fn GC_PROTO ( (size_t bytes_requested)  )

Definition at line 78 of file misc.c.

{
    return(0);
}
GC_API GC_PTR GC_malloc GC_PROTO ( (size_t size_in_bytes)  )
GC_API void GC_free GC_PROTO ( (GC_PTR object_addr)  )
GC_API GC_PTR GC_base GC_PROTO ( (GC_PTR displaced_pointer)  )
GC_API GC_PTR GC_realloc GC_PROTO ( (GC_PTR old_object, size_t new_size_in_bytes)  )
GC_API int GC_expand_hp GC_PROTO ( (size_t number_of_bytes)  )
GC_API void GC_clear_roots GC_PROTO ( (void )

Definition at line 90 of file alloc.c.

{ return(0); }
GC_API void GC_add_roots GC_PROTO ( (char *low_address, char *high_address_plus_1)  )
GC_API int GC_try_to_collect GC_PROTO ( (GC_stop_func stop_func)  )
GC_API GC_PTR GC_debug_malloc GC_PROTO ( (size_t size_in_bytes, GC_EXTRA_PARAMS )
GC_API GC_PTR GC_debug_realloc GC_PROTO ( (GC_PTR old_object, size_t new_size_in_bytes, GC_EXTRA_PARAMS )
GC_API void GC_register_finalizer GC_PROTO ( (GC_PTR obj, GC_finalization_proc fn, GC_PTR cd, GC_finalization_proc *ofn, GC_PTR *ocd)  )
GC_API GC_PTR GC_make_closure GC_PROTO ( (GC_finalization_proc fn, GC_PTR data )
GC_API GC_warn_proc GC_set_warn_proc GC_PROTO ( (GC_warn_proc p )
GC_API GC_PTR GC_call_with_alloc_lock GC_PROTO ( (GC_fn_type fn, GC_PTR client_data)  )
GC_API GC_PTR GC_pre_incr GC_PROTO ( (GC_PTR *p, size_t how_much)  )

Variable Documentation

Definition at line 107 of file gc.h.

Definition at line 104 of file gc.h.

Definition at line 119 of file gc.h.

Definition at line 111 of file gc.h.

Definition at line 84 of file gc.h.

Definition at line 132 of file gc.h.

Definition at line 115 of file gc.h.

Definition at line 99 of file gc.h.

Definition at line 138 of file gc.h.