[pypy-svn] r25489 - in pypy/dist/pypy/translator: backendopt c
cfbolz at codespeak.net
cfbolz at codespeak.net
Fri Apr 7 12:25:52 CEST 2006
Author: cfbolz
Date: Fri Apr 7 12:25:51 2006
New Revision: 25489
Modified:
pypy/dist/pypy/translator/backendopt/all.py
pypy/dist/pypy/translator/c/exceptiontransform.py
Log:
remove superfluous keepalives after inlining and the excpetion transform
Modified: pypy/dist/pypy/translator/backendopt/all.py
==============================================================================
--- pypy/dist/pypy/translator/backendopt/all.py (original)
+++ pypy/dist/pypy/translator/backendopt/all.py Fri Apr 7 12:25:51 2006
@@ -1,5 +1,5 @@
from pypy.translator.backendopt.raisingop2direct_call import raisingop2direct_call
-from pypy.translator.backendopt.removenoops import remove_same_as
+from pypy.translator.backendopt.removenoops import remove_same_as, remove_superfluous_keep_alive
from pypy.translator.backendopt.inline import auto_inlining
from pypy.translator.backendopt.malloc import remove_simple_mallocs
from pypy.translator.backendopt.ssa import SSI_to_SSA
@@ -44,6 +44,8 @@
# inline functions in each other
if inline_threshold:
auto_inlining(translator, inline_threshold)
+ for graph in translator.graphs:
+ remove_superfluous_keep_alive(graph)
if PRINT_STATISTICS:
print "after inlining:"
Modified: pypy/dist/pypy/translator/c/exceptiontransform.py
==============================================================================
--- pypy/dist/pypy/translator/c/exceptiontransform.py (original)
+++ pypy/dist/pypy/translator/c/exceptiontransform.py Fri Apr 7 12:25:51 2006
@@ -1,6 +1,6 @@
from pypy.translator.simplify import join_blocks, cleanup_graph
from pypy.translator.unsimplify import copyvar, split_block
-from pypy.translator.backendopt import canraise, inline, support
+from pypy.translator.backendopt import canraise, inline, support, removenoops
from pypy.objspace.flow.model import Block, Constant, Variable, Link, \
c_last_exception, SpaceOperation, checkgraph, FunctionGraph
from pypy.rpython.lltypesystem import lltype, llmemory
@@ -131,6 +131,7 @@
self.transform_block(graph, block)
self.transform_except_block(graph, graph.exceptblock)
cleanup_graph(graph)
+ removenoops.remove_superfluous_keep_alive(graph)
def transform_block(self, graph, block):
if block is graph.exceptblock:
More information about the Pypy-commit
mailing list