Author: Armin Rigo <[email protected]>
Branch: py3.5-reverse-debugger
Changeset: r94663:9e3c05dbb3fd
Date: 2018-05-23 20:13 +0200
http://bitbucket.org/pypy/pypy/changeset/9e3c05dbb3fd/
Log: hg merge reverse-debugger
diff --git a/pypy/interpreter/app_main.py b/pypy/interpreter/app_main.py
--- a/pypy/interpreter/app_main.py
+++ b/pypy/interpreter/app_main.py
@@ -88,17 +88,24 @@
run_protected() handles details like forwarding exceptions to
sys.excepthook(), catching SystemExit, etc.
"""
+ # don't use try:except: here, otherwise the exception remains
+ # visible in user code. Make sure revdb_stop is a callable, so
+ # that we can call it immediately after finally: below. Doing
+ # so minimizes the number of "blind" lines that we need to go
+ # back from, with "bstep", after we do "continue" in revdb.
if '__pypy__' in sys.builtin_module_names:
from __pypy__ import revdb_stop
else:
revdb_stop = None
+ if revdb_stop is None:
+ revdb_stop = lambda: None
+
try:
# run it
try:
f(*fargs, **fkwds)
finally:
- if revdb_stop:
- revdb_stop()
+ revdb_stop()
sys.settrace(None)
sys.setprofile(None)
except SystemExit as e:
diff --git a/rpython/rlib/rsiphash.py b/rpython/rlib/rsiphash.py
--- a/rpython/rlib/rsiphash.py
+++ b/rpython/rlib/rsiphash.py
@@ -123,6 +123,8 @@
def compute_result_annotation(self):
translator = self.bookkeeper.annotator.translator
+ if translator.config.translation.reverse_debugger:
+ return # ignore and use the regular hash, with reverse-debugger
if hasattr(translator, 'll_hash_string'):
assert translator.ll_hash_string == ll_hash_string_siphash24
else:
@@ -134,6 +136,9 @@
def specialize_call(self, hop):
hop.exception_cannot_occur()
+ translator = hop.rtyper.annotator.translator
+ if translator.config.translation.reverse_debugger:
+ return # ignore and use the regular hash, with reverse-debugger
bk = hop.rtyper.annotator.bookkeeper
s_callable = bk.immutablevalue(initialize_from_env)
r_callable = hop.rtyper.getrepr(s_callable)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit