[pypy-svn] r53512 - in pypy/dist/pypy: config rpython/ootypesystem translator/test

antocuni at codespeak.net antocuni at codespeak.net
Mon Apr 7 11:48:49 CEST 2008


Author: antocuni
Date: Mon Apr  7 11:48:48 2008
New Revision: 53512

Modified:
   pypy/dist/pypy/config/translationoption.py
   pypy/dist/pypy/rpython/ootypesystem/rlist.py
   pypy/dist/pypy/translator/test/test_simplify.py
Log:
disable list comprehension detection for ootype. See
doc/discussion/list_comprehension_ootype.txt



Modified: pypy/dist/pypy/config/translationoption.py
==============================================================================
--- pypy/dist/pypy/config/translationoption.py	(original)
+++ pypy/dist/pypy/config/translationoption.py	Mon Apr  7 11:48:48 2008
@@ -21,6 +21,7 @@
                                 ("translation.backendopt.constfold", False),
                                 ("translation.backendopt.heap2stack", False),
                                 ("translation.backendopt.clever_malloc_removal", False),
+                                ("translation.list_comprehension_operations", False),
                                 ]
                      }),
     ChoiceOption("backend", "Backend to use for code generation",

Modified: pypy/dist/pypy/rpython/ootypesystem/rlist.py
==============================================================================
--- pypy/dist/pypy/rpython/ootypesystem/rlist.py	(original)
+++ pypy/dist/pypy/rpython/ootypesystem/rlist.py	Mon Apr  7 11:48:48 2008
@@ -51,12 +51,9 @@
 
     def rtype_hint(self, hop):
         hints = hop.args_s[-1].const
-        if 'maxlength' in hints:
-            v_list = hop.inputarg(self, arg=0)
-            # XXX give a hint to pre-allocate the list (see lltypesystem/rlist)
-            return v_list
-        if 'fence' in hints:
-            return hop.inputarg(self, arg=0)
+        if 'maxlength' in hints or 'fence' in hints:
+            # see doc/discussion/list_comprehension_ootype.txt
+            assert False, 'TODO'
         return AbstractBaseListRepr.rtype_hint(self, hop)
 
 

Modified: pypy/dist/pypy/translator/test/test_simplify.py
==============================================================================
--- pypy/dist/pypy/translator/test/test_simplify.py	(original)
+++ pypy/dist/pypy/translator/test/test_simplify.py	Mon Apr  7 11:48:48 2008
@@ -337,5 +337,7 @@
         res = interp.eval_graph(graph, [4, 4])
         assert res == 1 + 4 * 17 + 4 * 17
 
-class TestOOSpecializeListComprehension(TestLLSpecializeListComprehension):
-    typesystem = 'ootype'
+## TODO: maxlength and fence hints are not supported by ootype
+## see doc/discussion/list_comprehension_ootype.txt
+##class TestOOSpecializeListComprehension(TestLLSpecializeListComprehension):
+##    typesystem = 'ootype'



More information about the Pypy-commit mailing list