Author: Maciej Fijalkowski <fij...@gmail.com> Branch: optresult Changeset: r75244:f5bc3c7a6d3d Date: 2015-01-05 16:05 +0200 http://bitbucket.org/pypy/pypy/changeset/f5bc3c7a6d3d/
Log: fix the test. unskip test that shows problem with our infrastructure (and let it fail for now) diff --git a/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py b/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py --- a/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py +++ b/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py @@ -2732,7 +2732,6 @@ """ self.optimize_loop(ops, expected) self.loop.inputargs[0].setref_base(self.nodeaddr) - py.test.skip("opt boxes don't inherit values, modify the test?") self.check_expanded_fail_descr(''' p1.nextdescr = p2 where p2 is a node_vtable, valuedescr=i2 diff --git a/rpython/jit/metainterp/optimizeopt/vstring.py b/rpython/jit/metainterp/optimizeopt/vstring.py --- a/rpython/jit/metainterp/optimizeopt/vstring.py +++ b/rpython/jit/metainterp/optimizeopt/vstring.py @@ -415,9 +415,14 @@ # if the original 'op' did not have a ConstInt as argument, # build a new one with the ConstInt argument if not isinstance(op.getarg(0), ConstInt): - op = self.replace_op_with(op, mode.NEWSTR, [length_box]) + old_op = op + op = op.copy_and_change(mode.NEWSTR, [length_box]) + else: + old_op = None vvalue = self.make_vstring_plain(op, mode) vvalue.setup(length_box.getint()) + if old_op is not None: + self.optimizer.make_equal_to(old_op, vvalue) else: self.getvalue(op).ensure_nonnull() self.emit_operation(op) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit