diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2018-07-05 20:00:49 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2018-07-05 20:00:49 +0300 |
commit | aefc738c17164e4756abe2152ba8728ea722837d (patch) | |
tree | 76615b0d2c74d02a64422a794f19c34233614e3f /finalize.c | |
parent | 0dfe3cc3b4fd7428aeb94966df6496659ae52f16 (diff) | |
download | bdwgc-aefc738c17164e4756abe2152ba8728ea722837d.tar.gz |
Remove PUSH_OBJ multi-line macro
(code refactoring)
* finalize.c (GC_normal_finalize_mark_proc): Call GC_push_obj instead
of PUSH_OBJ.
* include/private/gc_pmark.h (PUSH_CONTENTS_HDR): Likewise.
* mark.c (GC_push_marked): Likewise.
* mark.c [ENABLE_DISCLAIM] (GC_push_unconditionally): Likewise.
* finalize.c (GC_normal_finalize_mark_proc): Remove hhdr local
variable.
* include/private/gc_pmark.h (PUSH_OBJ): Transform macro to inline
function; rename to GC_push_obj; update comment; return mark_stack_top.
Diffstat (limited to 'finalize.c')
-rw-r--r-- | finalize.c | 6 |
1 files changed, 2 insertions, 4 deletions
@@ -634,10 +634,8 @@ GC_API GC_await_finalize_proc GC_CALL GC_get_await_finalize_proc(void) /* overflow is handled by the caller, and is not a disaster. */ STATIC void GC_normal_finalize_mark_proc(ptr_t p) { - hdr * hhdr = HDR(p); - - PUSH_OBJ(p, hhdr, GC_mark_stack_top, - &(GC_mark_stack[GC_mark_stack_size])); + GC_mark_stack_top = GC_push_obj(p, HDR(p), GC_mark_stack_top, + GC_mark_stack + GC_mark_stack_size); } /* This only pays very partial attention to the mark descriptor. */ |