[pypy-svn] r67001 - pypy/branch/pyjitpl5/pypy/jit/metainterp

arigo at codespeak.net arigo at codespeak.net
Wed Aug 19 19:53:30 CEST 2009


Author: arigo
Date: Wed Aug 19 19:53:28 2009
New Revision: 67001

Modified:
   pypy/branch/pyjitpl5/pypy/jit/metainterp/optimizeopt.py
Log:
Fix tests depending on a precise order here
(failures occur very rarely, for some reason).


Modified: pypy/branch/pyjitpl5/pypy/jit/metainterp/optimizeopt.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/jit/metainterp/optimizeopt.py	(original)
+++ pypy/branch/pyjitpl5/pypy/jit/metainterp/optimizeopt.py	Wed Aug 19 19:53:28 2009
@@ -155,7 +155,12 @@
             newoperations = self.optimizer.newoperations
             newoperations.append(self.source_op)
             self.box = box = self.source_op.result
-            for ofs, value in self._fields.iteritems():
+            #
+            iteritems = self._fields.iteritems()
+            if not we_are_translated(): #random order is fine, except for tests
+                iteritems = list(iteritems)
+                iteritems.sort(key = lambda (x,y): x.sort_key())
+            for ofs, value in iteritems:
                 subbox = value.force_box()
                 op = ResOperation(rop.SETFIELD_GC, [box, subbox], None,
                                   descr=ofs)



More information about the Pypy-commit mailing list