[pypy-commit] pypy stmgc-c7: import stmgc/7660960de054 (branch "marker")

arigo noreply at buildbot.pypy.org
Sat Apr 19 21:56:44 CEST 2014


Author: Armin Rigo <arigo at tunes.org>
Branch: stmgc-c7
Changeset: r70784:d8ac085e3922
Date: 2014-04-19 21:27 +0200
http://bitbucket.org/pypy/pypy/changeset/d8ac085e3922/

Log:	import stmgc/7660960de054 (branch "marker")

diff --git a/rpython/translator/stm/src_stm/revision b/rpython/translator/stm/src_stm/revision
--- a/rpython/translator/stm/src_stm/revision
+++ b/rpython/translator/stm/src_stm/revision
@@ -1,1 +1,1 @@
-8bd21f95eb8a
+7660960de054
diff --git a/rpython/translator/stm/src_stm/stm/marker.c b/rpython/translator/stm/src_stm/stm/marker.c
--- a/rpython/translator/stm/src_stm/stm/marker.c
+++ b/rpython/translator/stm/src_stm/stm/marker.c
@@ -8,6 +8,9 @@
                             object_t *following_object,
                             char *outputbuf, size_t outputbufsize);
 
+void (*stmcb_debug_print)(const char *cause, double time,
+                          const char *marker);
+
 
 static void marker_fetch_expand(struct stm_priv_segment_info_s *pseg)
 {
@@ -56,6 +59,9 @@
        earlier than now (some objects may be GCed), but we only know
        here the total time it gets attributed.
     */
+    if (stmcb_debug_print) {
+        stmcb_debug_print(timer_names[attribute_to], time, pseg->marker_self);
+    }
     if (time * 0.99 > tl->longest_marker_time) {
         tl->longest_marker_state = attribute_to;
         tl->longest_marker_time = time;
diff --git a/rpython/translator/stm/src_stm/stmgc.h b/rpython/translator/stm/src_stm/stmgc.h
--- a/rpython/translator/stm/src_stm/stmgc.h
+++ b/rpython/translator/stm/src_stm/stmgc.h
@@ -382,6 +382,8 @@
 extern void (*stmcb_expand_marker)(char *segment_base, uintptr_t odd_number,
                                    object_t *following_object,
                                    char *outputbuf, size_t outputbufsize);
+extern void (*stmcb_debug_print)(const char *cause, double time,
+                                 const char *marker);
 
 /* Conventience macros to push the markers into the shadowstack */
 #define STM_PUSH_MARKER(tl, odd_num, p)   do {  \


More information about the pypy-commit mailing list