scheme48heap.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. * Externally visible objects defined in scheme48heap.c.
  3. */
  4. /* initialize top-level variables */
  5. extern void s48_heap_init(void);
  6. /* heap-init interface */
  7. extern char * s48_initialize_heap(long, long, char *);
  8. extern void s48_register_static_areas(long, char **, long *,
  9. long, char **, long *);
  10. /* heap interface */
  11. extern long s48_available(void);
  12. extern long s48_heap_size(void);
  13. extern long s48_find_all(long);
  14. extern long s48_find_allint(long);
  15. extern long s48_find_all_records(long);
  16. /* for writing images */
  17. extern char * s48_heap_begin(void);
  18. extern char * s48_heap_pointer(void);
  19. extern char * s48_oldspace_begin(void);
  20. extern char * s48_oldspace_end(void);
  21. /* used by the space checking and allocation macros in scheme48mv-prelude.h */
  22. extern char * s48_ShpS;
  23. extern char * s48_SlimitS;
  24. /* gc interface */
  25. extern void s48_collect();
  26. extern long s48_trace_value(long);
  27. extern void s48_trace_locationsB(char *, char *);
  28. extern void s48_trace_stob_contentsB(long);
  29. extern void s48_trace_continuation_contentsB(char *, char *, long);
  30. extern char s48_extantP(long);
  31. extern long s48_gc_count(void);
  32. /* allocation interface */
  33. extern void s48_make_availableAgc(long);
  34. extern char * s48_allocate_small(long);
  35. extern char * s48_allocate_tracedAgc(long);
  36. extern char * s48_allocate_untracedAgc(long);
  37. /* debugging */
  38. extern char s48_check_heap(long);