[pypy-svn] r13307 - in pypy/dist/pypy: rpython translator
pedronis at codespeak.net
pedronis at codespeak.net
Sat Jun 11 23:08:40 CEST 2005
Author: pedronis
Date: Sat Jun 11 23:08:39 2005
New Revision: 13307
Modified:
pypy/dist/pypy/rpython/rtyper.py
pypy/dist/pypy/translator/transform.py
Log:
always annotator simplify before specializing, made transform_dead_code idempotent
Modified: pypy/dist/pypy/rpython/rtyper.py
==============================================================================
--- pypy/dist/pypy/rpython/rtyper.py (original)
+++ pypy/dist/pypy/rpython/rtyper.py Sat Jun 11 23:08:39 2005
@@ -61,6 +61,8 @@
def specialize(self):
"""Main entry point: specialize all annotated blocks of the program."""
+ # specialize depends on annotator simplifications
+ self.annotator.simplify()
# first make sure that all functions called in a group have exactly
# the same signature, by hacking their flow graphs if needed
perform_normalizations(self.annotator)
Modified: pypy/dist/pypy/translator/transform.py
==============================================================================
--- pypy/dist/pypy/translator/transform.py (original)
+++ pypy/dist/pypy/translator/transform.py Sat Jun 11 23:08:39 2005
@@ -303,6 +303,8 @@
c2 = Constant(AssertionError(msg))
errlink = Link([c1, c2], graph.exceptblock)
block.recloseblock(errlink, *block.exits)
+ # record new link to make the transformation idempotent
+ self.links_followed[errlink] = True
# fix the annotation of the exceptblock.inputargs
etype, evalue = graph.exceptblock.inputargs
s_type = annmodel.SomeObject()
More information about the Pypy-commit
mailing list