]> granicus.if.org Git - gc/commitdiff
Export GC_push_all_eager
authorIvan Maidanski <ivmai@mail.ru>
Tue, 23 Jun 2015 12:17:27 +0000 (15:17 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Tue, 23 Jun 2015 12:17:27 +0000 (15:17 +0300)
* include/gc_mark.h (GC_push_all_eager): New API function declaration.
* mark.c (GC_push_all_eager): Add GC_API, GC_CALL; change arguments
type from ptr_t to char*.

include/gc_mark.h
mark.c

index dcadf42ef3e2bbcc7e955514c3c49e5ee8cda788..0b19ea90ab77b68f0a73dfec91ce86fc016e2d75 100644 (file)
@@ -276,6 +276,7 @@ GC_API void GC_CALL GC_set_mark_bit(const void *) GC_ATTR_NONNULL(1);
 /* (GC_push_conditional pushes either all or only dirty pages depending */
 /* on the third argument.)                                              */
 GC_API void GC_CALL GC_push_all(char * /* bottom */, char * /* top */);
+GC_API void GC_CALL GC_push_all_eager(char * /* bottom */, char * /* top */);
 GC_API void GC_CALL GC_push_conditional(char * /* bottom */, char * /* top */,
                                         int /* bool all */);
 
diff --git a/mark.c b/mark.c
index 80d09cf51a9ee5cb28f030d8094a36da3cf34c28..89f64cc7437c1f65522053128188a18143efc61d 100644 (file)
--- a/mark.c
+++ b/mark.c
@@ -1488,7 +1488,7 @@ void GC_print_trace(word gc_no)
  * and scans the entire region immediately, in case the contents
  * change.
  */
-GC_INNER void GC_push_all_eager(ptr_t bottom, ptr_t top)
+GC_API void GC_CALL GC_push_all_eager(char *bottom, char *top)
 {
     word * b = (word *)(((word) bottom + ALIGNMENT-1) & ~(ALIGNMENT-1));
     word * t = (word *)(((word) top) & ~(ALIGNMENT-1));