Author: Alex Gaynor <[email protected]>
Branch: jit-settrace
Changeset: r67613:acdbfb92636b
Date: 2013-10-25 12:08 -0700
http://bitbucket.org/pypy/pypy/changeset/acdbfb92636b/
Log: Moved changes over
diff --git a/pypy/interpreter/pyframe.py b/pypy/interpreter/pyframe.py
--- a/pypy/interpreter/pyframe.py
+++ b/pypy/interpreter/pyframe.py
@@ -8,7 +8,7 @@
from rpython.rlib.rarithmetic import intmask, r_uint
from rpython.tool.pairtype import extendabletype
-from pypy.interpreter import eval, pycode, pytraceback
+from pypy.interpreter import pycode, pytraceback
from pypy.interpreter.argument import Arguments
from pypy.interpreter.baseobjspace import W_Root
from pypy.interpreter.error import OperationError, operationerrfmt
@@ -470,15 +470,15 @@
self.w_locals = w_locals
self.locals2fast()
+ @jit.unroll_safe
def fast2locals(self):
# Copy values from the fastlocals to self.w_locals
if self.w_locals is None:
self.w_locals = self.space.newdict()
varnames = self.getcode().getvarnames()
- fastscope_w = self.getfastscope()
- for i in range(min(len(varnames), self.getfastscopelength())):
+ for i in range(min(len(varnames), self.getcode().co_nlocals)):
name = varnames[i]
- w_value = fastscope_w[i]
+ w_value = self.locals_stack_w[i]
w_name = self.space.wrap(name)
if w_value is not None:
self.space.setitem(self.w_locals, w_name, w_value)
@@ -489,11 +489,12 @@
if not e.match(self.space, self.space.w_KeyError):
raise
+ @jit.unroll_safe
def locals2fast(self):
# Copy values from self.w_locals to the fastlocals
assert self.w_locals is not None
varnames = self.getcode().getvarnames()
- numlocals = self.getfastscopelength()
+ numlocals = self.getcode().co_nlocals
new_fastlocals_w = [None] * numlocals
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit