comparison src/lisp.h @ 2645:e6854ec89f8e

[xemacs-hg @ 2005-03-10 09:12:36 by crestani] KKCC backtrace. 2005-03-01 Marcus Crestani <crestani@informatik.uni-tuebingen.de> * alloc.c: Add functionality for backtracing the KKCC mark algorithm. * alloc.c (kkcc_backtrace): New. * alloc.c (kkcc_bt_push): New. * alloc.c (kkcc_gc_stack_push): * alloc.c (kkcc_gc_stack_push_lisp_object): * alloc.c (mark_object_maybe_checking_free): * alloc.c (mark_struct_contents): * alloc.c (kkcc_marking): * alloc.c (mark_object): * data.c (finish_marking_weak_lists): * data.c (continue_marking_ephemerons): * data.c (finish_marking_ephemerons): * elhash.c (MARK_OBJ): * lisp.h: * profile.c (mark_profiling_info_maphash): Add level (current depth of mark tree) and pos (position within description) as additional arguments to KKCC mark functions.
author crestani
date Thu, 10 Mar 2005 09:12:38 +0000
parents 166ed8151e62
children 6fa9919a9a0b
comparison
equal deleted inserted replaced
2644:0b4097b3552f 2645:e6854ec89f8e
3583 void free_alist (Lisp_Object); 3583 void free_alist (Lisp_Object);
3584 void free_marker (Lisp_Object); 3584 void free_marker (Lisp_Object);
3585 int object_dead_p (Lisp_Object); 3585 int object_dead_p (Lisp_Object);
3586 void mark_object (Lisp_Object obj); 3586 void mark_object (Lisp_Object obj);
3587 #ifdef USE_KKCC 3587 #ifdef USE_KKCC
3588 void kkcc_gc_stack_push_lisp_object (Lisp_Object obj); 3588 #ifdef DEBUG_XEMACS
3589 void kkcc_gc_stack_push_lisp_object_1 (Lisp_Object obj, int level, int pos);
3590 #define kkcc_gc_stack_push_lisp_object(obj, level, pos) \
3591 kkcc_gc_stack_push_lisp_object_1 (obj, level, pos)
3592 void kkcc_backtrace (void);
3593 #else
3594 void kkcc_gc_stack_push_lisp_object_1 (Lisp_Object obj);
3595 #define kkcc_gc_stack_push_lisp_object(obj, level, pos) \
3596 kkcc_gc_stack_push_lisp_object_1 (obj)
3597 #define kkcc_backtrace()
3598 #endif
3589 #endif /* USE_KKCC */ 3599 #endif /* USE_KKCC */
3590 int marked_p (Lisp_Object obj); 3600 int marked_p (Lisp_Object obj);
3591 extern int funcall_allocation_flag; 3601 extern int funcall_allocation_flag;
3592 extern int need_to_garbage_collect; 3602 extern int need_to_garbage_collect;
3593 extern MODULE_API int need_to_check_c_alloca; 3603 extern MODULE_API int need_to_check_c_alloca;