[pypy-svn] r41307 - in pypy/dist/pypy: jit/hintannotator translator translator/goal

arigo at codespeak.net arigo at codespeak.net
Mon Mar 26 09:15:27 CEST 2007


Author: arigo
Date: Mon Mar 26 09:15:24 2007
New Revision: 41307

Modified:
   pypy/dist/pypy/jit/hintannotator/annotator.py
   pypy/dist/pypy/translator/driver.py
   pypy/dist/pypy/translator/goal/translate.py
Log:
A hack for translate.py: if we look at the graphs just after --hintannotate,
show the red/green colors of the hint annotations.


Modified: pypy/dist/pypy/jit/hintannotator/annotator.py
==============================================================================
--- pypy/dist/pypy/jit/hintannotator/annotator.py	(original)
+++ pypy/dist/pypy/jit/hintannotator/annotator.py	Mon Mar 26 09:15:24 2007
@@ -61,6 +61,9 @@
         flowgraph = desc.specialize(input_args_hs)
         return self.build_graph_types(flowgraph, input_args_hs)
 
+    def getuserclassdefinitions(self):
+        return []
+
     def consider_op_malloc(self, hs_TYPE):
         TYPE = hs_TYPE.const
         if self.policy.novirtualcontainer:

Modified: pypy/dist/pypy/translator/driver.py
==============================================================================
--- pypy/dist/pypy/translator/driver.py	(original)
+++ pypy/dist/pypy/translator/driver.py	Mon Mar 26 09:15:24 2007
@@ -359,6 +359,7 @@
         self.portal_graph = graphof(t, PORTAL)
 
         hannotator = HintAnnotator(base_translator=t, policy=POLICY)
+        self.hint_translator = hannotator.translator
         hs = hannotator.build_types(self.portal_graph,
                                     [SomeLLAbstractConstant(v.concretetype,
                                                             {OriginFlags(): True})
@@ -388,6 +389,7 @@
         else:
             raise Exception('Unsuported cpu %r'%cpu)
 
+        del self.hint_translator
         ha = self.hannotator
         t = self.translator
         # make the timeshifted graphs

Modified: pypy/dist/pypy/translator/goal/translate.py
==============================================================================
--- pypy/dist/pypy/translator/goal/translate.py	(original)
+++ pypy/dist/pypy/translator/goal/translate.py	Mon Mar 26 09:15:24 2007
@@ -214,15 +214,19 @@
         async_server = None
         
         def __call__(self, port=None, async_only=False):
+            try:
+                t1 = drv.hint_translator
+            except (NameError, AttributeError):
+                t1 = t
             if self.async_server is not None:
                 return self.async_server
             elif port is not None:
                 from pypy.translator.tool.graphserver import run_async_server
-                serv_start, serv_show, serv_stop = self.async_server = run_async_server(t, translateconfig, port)
+                serv_start, serv_show, serv_stop = self.async_server = run_async_server(t1, translateconfig, port)
                 return serv_start, serv_show, serv_stop
             elif not async_only:
                 from pypy.translator.tool.graphserver import run_server_for_inprocess_client
-                return run_server_for_inprocess_client(t, translateconfig)
+                return run_server_for_inprocess_client(t1, translateconfig)
 
     server_setup = ServerSetup()
     server_setup(translateconfig.graphserve, async_only=True)



More information about the Pypy-commit mailing list