[pypy-commit] pypy optresult: make more tests pass
fijal
noreply at buildbot.pypy.org
Fri Mar 6 17:13:30 CET 2015
Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: optresult
Changeset: r76256:443a81259c45
Date: 2015-03-06 17:24 +0200
http://bitbucket.org/pypy/pypy/changeset/443a81259c45/
Log: make more tests pass
diff --git a/rpython/jit/metainterp/optimizeopt/intbounds.py b/rpython/jit/metainterp/optimizeopt/intbounds.py
--- a/rpython/jit/metainterp/optimizeopt/intbounds.py
+++ b/rpython/jit/metainterp/optimizeopt/intbounds.py
@@ -521,14 +521,14 @@
b1.make_gt(IntBound(0, 0))
self.propagate_bounds_backward(op.getarg(0))
elif r.getint() == valzero:
- XXX
- v1 = self.getvalue(op.getarg(0))
+ b1 = self.getintbound(op.getarg(0))
+ # XXX remove this hack maybe?
# Clever hack, we can't use self.make_constant_int yet because
# the args aren't in the values dictionary yet so it runs into
# an assert, this is a clever way of expressing the same thing.
- v1.getintbound().make_ge(IntBound(0, 0))
- v1.getintbound().make_lt(IntBound(1, 1))
- self.propagate_bounds_backward(op.getarg(0), v1)
+ b1.make_ge(IntBound(0, 0))
+ b1.make_lt(IntBound(1, 1))
+ self.propagate_bounds_backward(op.getarg(0))
def propagate_bounds_INT_IS_TRUE(self, op):
self._propagate_int_is_true_or_zero(op, 1, 0)
diff --git a/rpython/jit/metainterp/optimizeopt/rewrite.py b/rpython/jit/metainterp/optimizeopt/rewrite.py
--- a/rpython/jit/metainterp/optimizeopt/rewrite.py
+++ b/rpython/jit/metainterp/optimizeopt/rewrite.py
@@ -437,8 +437,7 @@
def optimize_INT_IS_TRUE(self, op):
if self.getintbound(op.getarg(0)).is_bool():
- xxx
- self.make_equal_to(op, self.getvalue(op.getarg(0)))
+ self.make_equal_to(op, op.getarg(0))
return
self._optimize_nullness(op, op.getarg(0), True)
More information about the pypy-commit
mailing list