summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--gc.c13
2 files changed, 11 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 2fe565b730..894f4c1f61 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Thu Apr 24 05:38:01 2015 Koichi Sasada <ko1@atdot.net>
+
+ * gc.c (gc_mark_roots): fox to work PRINT_ROOT_TICKS.
+
Fri Apr 24 04:49:05 2015 NARUSE, Yui <naruse@ruby-lang.org>
* win32/Makefile.sub: MSVC14 have struct timespec.
diff --git a/gc.c b/gc.c
index 6b8cd7e0e9..f91d1e3c7a 100644
--- a/gc.c
+++ b/gc.c
@@ -154,7 +154,7 @@ rb_gc_guarded_ptr_val(volatile VALUE *ptr, VALUE val)
#define PRINT_ROOT_TICKS 0
#endif
-#define USE_TICK_T (PRINT_ENTER_EXIT_TICK || PRINT_MEASURE_LINE)
+#define USE_TICK_T (PRINT_ENTER_EXIT_TICK || PRINT_MEASURE_LINE || PRINT_ROOT_TICKS)
#define TICK_TYPE 1
typedef struct {
@@ -4471,11 +4471,6 @@ gc_mark_roots(rb_objspace_t *objspace, const char **categoryp)
{
struct gc_list *list;
rb_thread_t *th = GET_THREAD();
- if (categoryp) *categoryp = "xxx";
-
-#if USE_RGENGC
- objspace->rgengc.parent_object = Qfalse;
-#endif
#if PRINT_ROOT_TICKS
tick_t start_tick = tick();
@@ -4487,6 +4482,12 @@ gc_mark_roots(rb_objspace_t *objspace, const char **categoryp)
}
#endif
+ if (categoryp) *categoryp = "xxx";
+
+#if USE_RGENGC
+ objspace->rgengc.parent_object = Qfalse;
+#endif
+
#if PRINT_ROOT_TICKS
#define MARK_CHECKPOINT_PRINT_TICK(category) do { \
if (prev_category) { \