[pypy-svn] r77596 - pypy/trunk/pypy/jit/metainterp

fijal at codespeak.net fijal at codespeak.net
Tue Oct 5 11:47:56 CEST 2010


Author: fijal
Date: Tue Oct  5 11:47:55 2010
New Revision: 77596

Modified:
   pypy/trunk/pypy/jit/metainterp/simple_optimize.py
Log:
CALL_LOOPINVARIANT is a normal call (unlike CALL_PURE)


Modified: pypy/trunk/pypy/jit/metainterp/simple_optimize.py
==============================================================================
--- pypy/trunk/pypy/jit/metainterp/simple_optimize.py	(original)
+++ pypy/trunk/pypy/jit/metainterp/simple_optimize.py	Tue Oct  5 11:47:55 2010
@@ -9,12 +9,13 @@
 
 def transform(op):
     from pypy.jit.metainterp.history import AbstractDescr
-    # Rename CALL_PURE and CALL_INVARIANT to CALL.
+    # Rename CALL_PURE and CALL_LOOPINVARIANT to CALL.
     # Simplify the VIRTUAL_REF_* so that they don't show up in the backend.
-    if (op.getopnum() == rop.CALL_PURE or
-        op.getopnum() == rop.CALL_LOOPINVARIANT):
+    if op.getopnum() == rop.CALL_PURE:
         op = ResOperation(rop.CALL, op.getarglist()[1:], op.result,
                           op.getdescr())
+    elif op.getopnum() == rop.CALL_LOOPINVARIANT:
+        op = op.copy_and_change(rop.CALL)
     elif op.getopnum() == rop.VIRTUAL_REF:
         op = ResOperation(rop.SAME_AS, [op.getarg(0)], op.result)
     elif op.getopnum() == rop.VIRTUAL_REF_FINISH:



More information about the Pypy-commit mailing list