[pypy-svn] r62217 - in pypy/branch/pyjitpl5/pypy/jit/metainterp: . test
arigo at codespeak.net
arigo at codespeak.net
Fri Feb 27 12:15:10 CET 2009
Author: arigo
Date: Fri Feb 27 12:15:10 2009
New Revision: 62217
Modified:
pypy/branch/pyjitpl5/pypy/jit/metainterp/optimize.py
pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_send.py
Log:
Fix test_indirect_call_unknown_object_1.
Modified: pypy/branch/pyjitpl5/pypy/jit/metainterp/optimize.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/jit/metainterp/optimize.py (original)
+++ pypy/branch/pyjitpl5/pypy/jit/metainterp/optimize.py Fri Feb 27 12:15:10 2009
@@ -435,8 +435,10 @@
elif opname == 'guard_value':
instnode = self.getnode(op.args[0])
assert isinstance(op.args[1], Const)
- self.nodes[instnode.source] = InstanceNode(op.args[1],
- const=True)
+ # XXX need to think more about the 'const' attribute
+ # (see test_send.test_indirect_call_unknown_object_1)
+ #self.nodes[instnode.source] = InstanceNode(op.args[1],
+ # const=True)
continue
elif opname == 'guard_nonvirtualized':
instnode = self.getnode(op.args[0])
@@ -669,14 +671,14 @@
if opname == 'guard_true' or opname == 'guard_false':
if self.nodes[op.args[0]].const:
continue
- if (opname == 'guard_no_exception' or
- opname == 'guard_exception'):
+ elif (opname == 'guard_no_exception' or
+ opname == 'guard_exception'):
if not exception_might_have_happened:
continue
exception_might_have_happened = False
- if opname == 'guard_value':
- if (self.nodes[op.args[0]].const and
- self.nodes[op.args[1]].const):
+ elif opname == 'guard_value':
+ if self.nodes[op.args[0]].const:
+ assert isinstance(op.args[1], Const)
continue
op = self.optimize_guard(op)
newoperations.append(op)
Modified: pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_send.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_send.py (original)
+++ pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_send.py Fri Feb 27 12:15:10 2009
@@ -287,7 +287,6 @@
self.check_loops(int_add=0, int_mul=1, guard_class=0)
def test_indirect_call_unknown_object_1(self):
- py.test.skip("XXX fix me")
myjitdriver = JitDriver(greens = [], reds = ['x', 'y'])
def getvalue2():
return 2
More information about the Pypy-commit
mailing list