Author: Hakan Ardo <[email protected]>
Branch: jit-duplicated_short_boxes
Changeset: r47054:767b8639a9c2
Date: 2011-09-04 10:06 +0200
http://bitbucket.org/pypy/pypy/changeset/767b8639a9c2/
Log: with equal priority either can occure
diff --git a/pypy/jit/metainterp/test/test_virtualstate.py
b/pypy/jit/metainterp/test/test_virtualstate.py
--- a/pypy/jit/metainterp/test/test_virtualstate.py
+++ b/pypy/jit/metainterp/test/test_virtualstate.py
@@ -1073,7 +1073,26 @@
getfield = [op for op in sb.short_boxes.values()
if op and op.result == int_neg.getarg(0)]
assert len(getfield) == 1
- assert getfield[0].getarg(0) == self.p1
+ assert getfield[0].getarg(0) in [self.p1, self.p2]
+
+ def test_prioritize1bis(self):
+ class Optimizer(FakeOptimizer):
+ def produce_potential_short_preamble_ops(_self, sb):
+ sb.add_potential(ResOperation(rop.GETFIELD_GC, [self.p1],
self.i1),
+ synthetic=True)
+ sb.add_potential(ResOperation(rop.GETFIELD_GC, [self.p2],
self.i1),
+ synthetic=True)
+ sb.add_potential(ResOperation(rop.INT_NEG, [self.i1], self.i2))
+ sb = ShortBoxes(Optimizer(), [self.p1, self.p2])
+ assert len(sb.short_boxes.values()) == 5
+ int_neg = [op for op in sb.short_boxes.values()
+ if op and op.getopnum() == rop.INT_NEG]
+ assert len(int_neg) == 1
+ int_neg = int_neg[0]
+ getfield = [op for op in sb.short_boxes.values()
+ if op and op.result == int_neg.getarg(0)]
+ assert len(getfield) == 1
+ assert getfield[0].getarg(0) in [self.p1, self.p2]
def test_prioritize2(self):
class Optimizer(FakeOptimizer):
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit