[pypy-svn] r71334 - in pypy/branch/fix-pfp/pypy: jit/metainterp rlib

arigo at codespeak.net arigo at codespeak.net
Fri Feb 19 17:20:35 CET 2010


Author: arigo
Date: Fri Feb 19 17:20:34 2010
New Revision: 71334

Modified:
   pypy/branch/fix-pfp/pypy/jit/metainterp/codewriter.py
   pypy/branch/fix-pfp/pypy/rlib/jit.py
Log:
Fix codewriter.py.  The goal is to make pypy-c-jit still translate
with this change.


Modified: pypy/branch/fix-pfp/pypy/jit/metainterp/codewriter.py
==============================================================================
--- pypy/branch/fix-pfp/pypy/jit/metainterp/codewriter.py	(original)
+++ pypy/branch/fix-pfp/pypy/jit/metainterp/codewriter.py	Fri Feb 19 17:20:34 2010
@@ -1255,9 +1255,7 @@
             func = getattr(get_funcobj(op.args[0].value), '_callable', None)
             pure = getattr(func, "_pure_function_", False)
             loopinvariant = getattr(func, "_jit_loop_invariant_", False)
-            all_promoted_args = getattr(func,
-                               "_pure_function_with_all_promoted_args_", False)
-            if pure and not all_promoted_args:
+            if pure or loopinvariant:
                 effectinfo = calldescr.get_extra_info()
                 assert (effectinfo is not None and
                         not effectinfo.forces_virtual_or_virtualizable)

Modified: pypy/branch/fix-pfp/pypy/rlib/jit.py
==============================================================================
--- pypy/branch/fix-pfp/pypy/rlib/jit.py	(original)
+++ pypy/branch/fix-pfp/pypy/rlib/jit.py	Fri Feb 19 17:20:34 2010
@@ -29,7 +29,6 @@
 def purefunction_promote(func):
     import inspect
     purefunction(func)
-    func._pure_function_with_all_promoted_args_ = True
     args, varargs, varkw, defaults = inspect.getargspec(func)
     args = ["v%s" % (i, ) for i in range(len(args))]
     assert varargs is None and varkw is None



More information about the Pypy-commit mailing list