[pypy-svn] r66990 - in pypy/branch/pyjitpl5/pypy/translator/backendopt: . test

cfbolz at codespeak.net cfbolz at codespeak.net
Wed Aug 19 18:10:37 CEST 2009


Author: cfbolz
Date: Wed Aug 19 18:10:37 2009
New Revision: 66990

Modified:
   pypy/branch/pyjitpl5/pypy/translator/backendopt/inline.py
   pypy/branch/pyjitpl5/pypy/translator/backendopt/test/test_inline.py
Log:
(mikke, cfbolz): kill jit inlining heuristic, as it was replaced by a new
approach


Modified: pypy/branch/pyjitpl5/pypy/translator/backendopt/inline.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/translator/backendopt/inline.py	(original)
+++ pypy/branch/pyjitpl5/pypy/translator/backendopt/inline.py	Wed Aug 19 18:10:37 2009
@@ -626,18 +626,6 @@
     return (0.9999 * measure_median_execution_cost(graph) +
             count), True
 
-def inlining_heuristic_jit(graph):
-    func = getattr(graph, "func", None)
-    try:
-        oopspec = graph.func.oopspec
-    except AttributeError:
-        if getattr(func, "_pure_function_", False):
-            return (sys.maxint, True)
-        elif not getattr(func, "_look_inside_me_", True):
-            return (sys.maxint, True)
-        return inlining_heuristic(graph)
-    return (sys.maxint, True)
-
 def inlinable_static_callers(graphs):
     ok_to_call = dict.fromkeys(graphs)
     result = []

Modified: pypy/branch/pyjitpl5/pypy/translator/backendopt/test/test_inline.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/translator/backendopt/test/test_inline.py	(original)
+++ pypy/branch/pyjitpl5/pypy/translator/backendopt/test/test_inline.py	Wed Aug 19 18:10:37 2009
@@ -9,7 +9,6 @@
 from pypy.translator.backendopt.inline import collect_called_graphs
 from pypy.translator.backendopt.inline import measure_median_execution_cost
 from pypy.translator.backendopt.inline import instrument_inline_candidates
-from pypy.translator.backendopt.inline import inlining_heuristic_jit
 from pypy.translator.backendopt.checkvirtual import check_virtual_methods
 from pypy.translator.translator import TranslationContext, graphof
 from pypy.rpython.llinterp import LLInterpreter
@@ -628,32 +627,6 @@
         res = eval_func([])
         assert res == 5
 
-    def test_jit_inliner(self):
-        from pypy.rlib.jit import purefunction, dont_look_inside
-        @purefunction
-        def g(x):
-            return x + 1
-        @dont_look_inside
-        def h(x):
-            return x + 2
-
-        def f(x):
-            tot = 0
-            for item in [1,2,g(x),h(x)]:
-                tot += item
-            return tot
-
-        eval_func, t = self.check_auto_inlining(
-            f, [int], heuristic=inlining_heuristic_jit)
-        f_graph = graphof(t, f)
-        called_graphs = collect_called_graphs(f_graph, t, include_oosend=False)
-        print called_graphs
-        assert len(called_graphs) == 6 # g, h, newlist, setitem, getitem, length
-
-        result = eval_func([2])
-        assert result == 10
-
-
 
 class TestInlineOOType(OORtypeMixin, BaseTestInline):
 



More information about the Pypy-commit mailing list