-
Notifications
You must be signed in to change notification settings - Fork 408
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Define GC_return_addr_t to hold return address info instead of GC_word
Issue #627 (bdwgc). GC_return_addr_t is a type to hold a function return address (pointer). Never used for calling a function. * dbg_mlc.c [GC_ADD_CALLER && HAVE_DLADDR && GC_HAVE_RETURN_ADDR_PARENT] (GC_caller_func_offset): Define if macro unless FUNCPTR_IS_DATAPTR. * dbg_mlc.c [GC_ADD_CALLER && HAVE_DLADDR && FUNCPTR_IS_DATAPTR && GC_HAVE_RETURN_ADDR_PARENT] (GC_caller_func_offset): Rename ad to ra an change its type from word to GC_return_addr_t; replace char* casts to ptr_t ones. * include/gc/gc.h [(GC_CAN_SAVE_CALL_STACKS || GC_ADD_CALLER) && !GC_RETURN_ADDR_T_DEFINED] (GC_return_addr_t): New type. * include/gc/gc.h [(GC_CAN_SAVE_CALL_STACKS || GC_ADD_CALLER) && !GC_RETURN_ADDR_T_DEFINED] (GC_RETURN_ADDR_T_DEFINED): Define macro. * include/gc/gc.h [GC_ADD_CALLER] (GC_EXTRA_PARAMS): Change type of ra from GC_word to GC_return_addr_t. * include/gc/gc_config_macros.h (GC_RETURN_ADDR): Cast to GC_return_addr_t. * include/private/gc_priv.h [NEED_CALLINFO] (callinfo.ci_pc): Change type from word to GC_return_addr_t. * os_dep.c [SAVE_CALL_CHAIN] (GC_save_callers_no_unlock, GC_save_callers): Cast value stored to ci_pc field to GC_return_addr_t instead of word. * os_dep.c [SAVE_CALL_CHAIN] (GC_save_callers): Do not cast fp->fr_arg[i] to signed_word. * os_dep.c [NEED_CALLINFO && GC_HAVE_BUILTIN_BACKTRACE && !GC_BACKTRACE_SYMBOLS_BROKEN] (GC_print_callers): Do not call backtrace_symbols() and free() unless FUNCPTR_IS_DATAPTR.
- Loading branch information
Showing
5 changed files
with
35 additions
and
24 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters