[pypy-svn] r63929 - pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp

fijal at codespeak.net fijal at codespeak.net
Fri Apr 10 08:21:49 CEST 2009


Author: fijal
Date: Fri Apr 10 08:21:46 2009
New Revision: 63929

Modified:
   pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/pyjitpl.py
Log:
remove the hack. I'm still not sure if it's correct or not.


Modified: pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/pyjitpl.py
==============================================================================
--- pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/pyjitpl.py	(original)
+++ pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/pyjitpl.py	Fri Apr 10 08:21:46 2009
@@ -811,8 +811,6 @@
 # ____________________________________________________________
 
 class MetaInterp(object):
-    original_boxes = None
-    
     def __init__(self, staticdata):
         self.staticdata = staticdata
         self.cpu = staticdata.cpu
@@ -1141,41 +1139,12 @@
             self._initialize_from_start(original_boxes, num_green_args-1,
                                         *args[1:])
 
-    def _initialize_values_from_start(self, original_boxes, num_green_args, i,
-                                      *args):
-        if args:
-            if num_green_args <= 0:
-                value = args[0]
-                box = original_boxes[i]
-                if isinstance(lltype.typeOf(value), lltype.Ptr):
-                    if lltype.typeOf(value).TO._gckind == 'gc':
-                        value = lltype.cast_opaque_ptr(llmemory.GCREF, value)
-                        assert isinstance(box, BoxPtr)
-                        box.value = value
-                    else:
-                        adr = llmemory.cast_ptr_to_adr(value)
-                        value = self.cpu.cast_adr_to_int(adr)
-                        assert isinstance(box, BoxInt)
-                        box.value = value
-                else:
-                    value = intmask(value)
-                    assert isinstance(box, BoxInt)
-                    box.value = value
-            self._initialize_values_from_start(original_boxes, num_green_args-1,
-                                               i + 1, *args[1:])
-
     def initialize_state_from_start(self, *args):
         self.staticdata._recompute_class_sizes()
         self.create_empty_history()
         num_green_args = self.staticdata.num_green_args
-        if self.original_boxes is None:
-            original_boxes = []
-            self._initialize_from_start(original_boxes, num_green_args, *args)
-            self.original_boxes = original_boxes
-        else:
-            original_boxes = self.original_boxes
-            self._initialize_values_from_start(original_boxes, num_green_args,
-                                               0, *args)
+        original_boxes = []
+        self._initialize_from_start(original_boxes, num_green_args, *args)
         # ----- make a new frame -----
         self.framestack = []
         f = self.newframe(self.staticdata.portal_code)



More information about the Pypy-commit mailing list