[pypy-commit] pypy jit-optimizeopt-cleanups: move optimize_CAST_OPAQUE_PTR to rewrite
hakanardo
noreply at buildbot.pypy.org
Sun Sep 25 09:59:47 CEST 2011
Author: Hakan Ardo <hakan at debian.org>
Branch: jit-optimizeopt-cleanups
Changeset: r47596:a79b95b95ca8
Date: 2011-09-23 16:57 +0200
http://bitbucket.org/pypy/pypy/changeset/a79b95b95ca8/
Log: move optimize_CAST_OPAQUE_PTR to rewrite
diff --git a/pypy/jit/metainterp/optimizeopt/optimizer.py b/pypy/jit/metainterp/optimizeopt/optimizer.py
--- a/pypy/jit/metainterp/optimizeopt/optimizer.py
+++ b/pypy/jit/metainterp/optimizeopt/optimizer.py
@@ -591,11 +591,6 @@
def optimize_DEBUG_MERGE_POINT(self, op):
self.emit_operation(op)
- def optimize_CAST_OPAQUE_PTR(self, op):
- value = self.getvalue(op.getarg(0))
- self.opaque_pointers[value] = True
- self.make_equal_to(op.result, value)
-
def optimize_GETARRAYITEM_GC_PURE(self, op):
indexvalue = self.getvalue(op.getarg(1))
if indexvalue.is_constant():
diff --git a/pypy/jit/metainterp/optimizeopt/rewrite.py b/pypy/jit/metainterp/optimizeopt/rewrite.py
--- a/pypy/jit/metainterp/optimizeopt/rewrite.py
+++ b/pypy/jit/metainterp/optimizeopt/rewrite.py
@@ -468,6 +468,10 @@
args = [op.getarg(0), ConstInt(highest_bit(val))])
self.emit_operation(op)
+ def optimize_CAST_OPAQUE_PTR(self, op):
+ value = self.getvalue(op.getarg(0))
+ self.optimizer.opaque_pointers[value] = True
+ self.make_equal_to(op.result, value)
dispatch_opt = make_dispatcher_method(OptRewrite, 'optimize_',
default=OptRewrite.emit_operation)
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
@@ -431,7 +431,7 @@
class BaseTestBridges(BaseTest):
- enable_opts = "intbounds:rewrite:virtualize:string:heap:unroll"
+ enable_opts = "intbounds:rewrite:virtualize:string:pure:heap:unroll"
def _do_optimize_bridge(self, bridge, call_pure_results):
from pypy.jit.metainterp.optimizeopt import optimize_bridge_1, build_opt_chain
More information about the pypy-commit
mailing list