Author: Maciej Fijalkowski <fij...@gmail.com> Branch: Changeset: r76755:97dab258e764 Date: 2015-04-09 14:02 +0200 http://bitbucket.org/pypy/pypy/changeset/97dab258e764/
Log: pass jitdriver_sd instead of is_portal to jitcode diff --git a/rpython/jit/codewriter/call.py b/rpython/jit/codewriter/call.py --- a/rpython/jit/codewriter/call.py +++ b/rpython/jit/codewriter/call.py @@ -143,7 +143,7 @@ def grab_initial_jitcodes(self): for jd in self.jitdrivers_sd: jd.mainjitcode = self.get_jitcode(jd.portal_graph) - jd.mainjitcode.is_portal = True + jd.mainjitcode.jitdriver_sd = jd def enum_pending_graphs(self): while self.unfinished_graphs: diff --git a/rpython/jit/codewriter/jitcode.py b/rpython/jit/codewriter/jitcode.py --- a/rpython/jit/codewriter/jitcode.py +++ b/rpython/jit/codewriter/jitcode.py @@ -12,7 +12,7 @@ self.name = name self.fnaddr = fnaddr self.calldescr = calldescr - self.is_portal = False + self.jitdriver_sd = None # None for non-portals self._called_from = called_from # debugging self._ssarepr = None # debugging diff --git a/rpython/jit/metainterp/blackhole.py b/rpython/jit/metainterp/blackhole.py --- a/rpython/jit/metainterp/blackhole.py +++ b/rpython/jit/metainterp/blackhole.py @@ -1624,7 +1624,7 @@ def _handle_jitexception(blackholeinterp, exc): # See comments in _handle_jitexception_in_portal(). - while not blackholeinterp.jitcode.is_portal: + while blackholeinterp.jitcode.jitdriver_sd is None: blackholeinterp.builder.release_interp(blackholeinterp) blackholeinterp = blackholeinterp.nextblackholeinterp if blackholeinterp.nextblackholeinterp is None: diff --git a/rpython/jit/metainterp/pyjitpl.py b/rpython/jit/metainterp/pyjitpl.py --- a/rpython/jit/metainterp/pyjitpl.py +++ b/rpython/jit/metainterp/pyjitpl.py @@ -1778,7 +1778,7 @@ return self.jitdriver_sd is not None and jitcode is self.jitdriver_sd.mainjitcode def newframe(self, jitcode, greenkey=None): - if jitcode.is_portal: + if jitcode.jitdriver_sd: self.portal_call_depth += 1 self.call_ids.append(self.current_call_id) self.current_call_id += 1 @@ -1796,7 +1796,7 @@ def popframe(self): frame = self.framestack.pop() jitcode = frame.jitcode - if jitcode.is_portal: + if jitcode.jitdriver_sd: self.portal_call_depth -= 1 self.call_ids.pop() if frame.greenkey is not None and self.is_main_jitcode(jitcode): @@ -1860,17 +1860,14 @@ portal_call_depth = -1 for frame in self.framestack: jitcode = frame.jitcode - assert jitcode.is_portal == len([ - jd for jd in self.staticdata.jitdrivers_sd - if jd.mainjitcode is jitcode]) - if jitcode.is_portal: + if jitcode.jitdriver_sd: portal_call_depth += 1 if portal_call_depth != self.portal_call_depth: print "portal_call_depth problem!!!" print portal_call_depth, self.portal_call_depth for frame in self.framestack: jitcode = frame.jitcode - if jitcode.is_portal: + if jitcode.jitdriver_sd: print "P", else: print " ", diff --git a/rpython/jit/metainterp/test/test_blackhole.py b/rpython/jit/metainterp/test/test_blackhole.py --- a/rpython/jit/metainterp/test/test_blackhole.py +++ b/rpython/jit/metainterp/test/test_blackhole.py @@ -119,7 +119,7 @@ "\x01\x02", # int_return/i [], num_regs_i=3, num_regs_r=0, num_regs_f=0) - jitcode.is_portal = True + jitcode.jitdriver_sd = "foo" # not none pc = 1 registers_i = [history.BoxInt(40), history.ConstInt(2), None] class MyMetaInterp: _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit