Author: Remi Meier <[email protected]>
Branch: nogil-unsafe-2
Changeset: r90510:8137acf8c43a
Date: 2017-03-03 15:47 +0100
http://bitbucket.org/pypy/pypy/changeset/8137acf8c43a/
Log: add missing pieces for debug prints
diff --git a/rpython/rlib/debug.py b/rpython/rlib/debug.py
--- a/rpython/rlib/debug.py
+++ b/rpython/rlib/debug.py
@@ -1,6 +1,6 @@
import sys
import time
-
+import thread
from rpython.rtyper.extregistry import ExtRegistryEntry
from rpython.rlib.objectmodel import we_are_translated
from rpython.rlib.rarithmetic import is_valid_int
@@ -44,10 +44,16 @@
_log = None # patched from tests to be an object of class DebugLog
# or compatible
+_thread_numbering = {}
+def _get_thread_num():
+ thid = thread.get_ident()
+ if thid not in _thread_numbering:
+ _thread_numbering[thid] = len(_thread_numbering)
+ return _thread_numbering[thid]
+
def debug_print(*args):
- for arg in args:
- print >> sys.stderr, arg,
- print >> sys.stderr
+ msg = " ".join(map(str, args))
+ sys.stderr.write("%s# %s\n" % (_get_thread_num(), msg))
if _log is not None:
_log.debug_print(*args)
@@ -76,15 +82,17 @@
def debug_start(category):
c = int(time.clock() * 100)
- print >> sys.stderr, '%s[%x] {%s%s' % (_start_colors_1, c,
- category, _stop_colors)
+ sys.stderr.write('%s%s# [%x] {%s%s\n' % (_start_colors_1,
+ _get_thread_num(), c,
+ category, _stop_colors))
if _log is not None:
_log.debug_start(category)
def debug_stop(category):
c = int(time.clock() * 100)
- print >> sys.stderr, '%s[%x] %s}%s' % (_start_colors_2, c,
- category, _stop_colors)
+ sys.stderr.write('%s%s# [%x] %s}%s\n' % (_start_colors_2,
+ _get_thread_num(), c,
+ category, _stop_colors))
if _log is not None:
_log.debug_stop(category)
@@ -441,7 +449,7 @@
except OSError as e:
os.write(2, "Could not start GDB: %s" % (
os.strerror(e.errno)))
- os._exit(1)
+ raise SystemExit
else:
time.sleep(1) # give the GDB time to attach
diff --git a/rpython/translator/c/funcgen.py b/rpython/translator/c/funcgen.py
--- a/rpython/translator/c/funcgen.py
+++ b/rpython/translator/c/funcgen.py
@@ -737,8 +737,8 @@
def OP_DEBUG_PRINT(self, op):
# XXX
from rpython.rtyper.lltypesystem.rstr import STR
- format = []
- argv = []
+ format = ['%s']
+ argv = ['pypy_debug_threadid']
free_line = ""
for arg in op.args:
T = arg.concretetype
diff --git a/rpython/translator/c/src/debug_print.c
b/rpython/translator/c/src/debug_print.c
--- a/rpython/translator/c/src/debug_print.c
+++ b/rpython/translator/c/src/debug_print.c
@@ -236,10 +236,9 @@
color, (int)counter);
sprintf(debug_start_colors_2, "\033[%dm%d# ",
color, (int)counter);
-#ifdef RPY_STM
+
sprintf(pypy_debug_threadid, "\033[%dm%d#\033[0m",
color, (int)counter);
-#endif
}
}
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit