summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authork0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-03-29 13:24:56 +0000
committerk0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-03-29 13:24:56 +0000
commit017cb09eb6d40b3d7f7ca08db4aa16cfb91012f2 (patch)
tree7b5917a38f4f39e477b75b6ea9abb12acb664c44
parent26d56f7b6f68058ca2321d797f86d1edd510644b (diff)
Add debug counter for rb_mjit_unit_list
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--debug_counter.h5
-rw-r--r--mjit.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/debug_counter.h b/debug_counter.h
index e569b18983..daa46fdcbf 100644
--- a/debug_counter.h
+++ b/debug_counter.h
@@ -263,6 +263,11 @@ RB_DEBUG_COUNTER(mjit_exec_not_added_add_iseq)
RB_DEBUG_COUNTER(mjit_exec_not_ready)
RB_DEBUG_COUNTER(mjit_exec_not_compiled)
+/* rb_mjit_unit_list length */
+RB_DEBUG_COUNTER(mjit_length_unit_queue)
+RB_DEBUG_COUNTER(mjit_length_active_units)
+RB_DEBUG_COUNTER(mjit_length_compact_units)
+
/* load (not implemented yet) */
/*
RB_DEBUG_COUNTER(load_files)
diff --git a/mjit.c b/mjit.c
index a1c8f238c2..710f370947 100644
--- a/mjit.c
+++ b/mjit.c
@@ -781,6 +781,12 @@ mjit_finish(bool close_handle_p)
if (!mjit_enabled)
return;
+#if USE_DEBUG_COUNTER
+ rb_debug_counter_add(RB_DEBUG_COUNTER_mjit_length_unit_queue, unit_queue.length, 1);
+ rb_debug_counter_add(RB_DEBUG_COUNTER_mjit_length_active_units, active_units.length, 1);
+ rb_debug_counter_add(RB_DEBUG_COUNTER_mjit_length_compact_units, compact_units.length, 1);
+#endif
+
/* Wait for pch finish */
verbose(2, "Stopping worker thread");
CRITICAL_SECTION_START(3, "in mjit_finish to wakeup from pch");