[pypy-commit] pypy cleanup-llgraph-backend: (fijal, arigo) completely random progress

arigo noreply at buildbot.pypy.org
Wed Oct 17 12:27:54 CEST 2012


Author: Armin Rigo <arigo at tunes.org>
Branch: cleanup-llgraph-backend
Changeset: r58161:80b606bc9e83
Date: 2012-10-17 12:27 +0200
http://bitbucket.org/pypy/pypy/changeset/80b606bc9e83/

Log:	(fijal, arigo) completely random progress

diff --git a/pypy/jit/backend/llgraph/runner.py b/pypy/jit/backend/llgraph/runner.py
--- a/pypy/jit/backend/llgraph/runner.py
+++ b/pypy/jit/backend/llgraph/runner.py
@@ -259,31 +259,39 @@
         array = a._obj.container
         return array.getlength()
 
+    def bh_getarrayitem_gc(self, a, index, descr):
+        array = a._obj.container
+        return support.cast_result(descr.A.OF, array.getitem(index))
+
+    bh_getarrayitem_gc_i = bh_getarrayitem_gc
+    bh_getarrayitem_gc_r = bh_getarrayitem_gc
+    bh_getarrayitem_gc_f = bh_getarrayitem_gc
+
     def bh_setarrayitem_gc(self, a, index, item, descr):
         array = a._obj.container
         array.setitem(index, support.cast_arg(descr.A.OF, item))
 
-    def bh_getarrayitem_gc(self, a, index, descr):
-        array = a._obj.container
-        return support.cast_result(descr.A.OF, array.getitem(index))
+    bh_setarrayitem_gc_i = bh_setarrayitem_gc
+    bh_setarrayitem_gc_r = bh_setarrayitem_gc
+    bh_setarrayitem_gc_f = bh_setarrayitem_gc
 
     def bh_getinteriorfield_gc(self, a, index, descr):
         array = a._obj.container
         return support.cast_result(descr.FIELD,
                           getattr(array.getitem(index), descr.fieldname))
 
-    bh_getinteriorfield_gc_f = bh_getinteriorfield_gc
     bh_getinteriorfield_gc_i = bh_getinteriorfield_gc
     bh_getinteriorfield_gc_r = bh_getinteriorfield_gc
+    bh_getinteriorfield_gc_f = bh_getinteriorfield_gc
 
     def bh_setinteriorfield_gc(self, a, index, item, descr):
         array = a._obj.container
         setattr(array.getitem(index), descr.fieldname,
                 support.cast_arg(descr.FIELD, item))
 
+    bh_setinteriorfield_gc_i = bh_setinteriorfield_gc
+    bh_setinteriorfield_gc_r = bh_setinteriorfield_gc
     bh_setinteriorfield_gc_f = bh_setinteriorfield_gc
-    bh_setinteriorfield_gc_r = bh_setinteriorfield_gc
-    bh_setinteriorfield_gc_i = bh_setinteriorfield_gc
 
     def bh_newstr(self, length):
         return lltype.cast_opaque_ptr(llmemory.GCREF,
diff --git a/pypy/jit/backend/test/runner_test.py b/pypy/jit/backend/test/runner_test.py
--- a/pypy/jit/backend/test/runner_test.py
+++ b/pypy/jit/backend/test/runner_test.py
@@ -2564,13 +2564,13 @@
         A = lltype.GcArray(lltype.Char)
         descr_A = cpu.arraydescrof(A)
         a = lltype.malloc(A, 5)
-        x = cpu.bh_arraylen_gc(descr_A,
-                               lltype.cast_opaque_ptr(llmemory.GCREF, a))
+        x = cpu.bh_arraylen_gc(lltype.cast_opaque_ptr(llmemory.GCREF, a),
+                               descr_A)
         assert x == 5
         #
         a[2] = 'Y'
         x = cpu.bh_getarrayitem_gc_i(
-            descr_A, lltype.cast_opaque_ptr(llmemory.GCREF, a), 2)
+            lltype.cast_opaque_ptr(llmemory.GCREF, a), 2, descr_A)
         assert x == ord('Y')
         #
         B = lltype.GcArray(lltype.Ptr(A))
@@ -2578,7 +2578,7 @@
         b = lltype.malloc(B, 4)
         b[3] = a
         x = cpu.bh_getarrayitem_gc_r(
-            descr_B, lltype.cast_opaque_ptr(llmemory.GCREF, b), 3)
+            lltype.cast_opaque_ptr(llmemory.GCREF, b), 3, descr_B)
         assert lltype.cast_opaque_ptr(lltype.Ptr(A), x) == a
         if self.cpu.supports_floats:
             C = lltype.GcArray(lltype.Float)
@@ -2610,8 +2610,7 @@
         assert x == ord('Z')
         #
         cpu.bh_setfield_gc_i(lltype.cast_opaque_ptr(llmemory.GCREF, s),
-                             descrfld_x,
-                             ord('4'))
+                             ord('4'), descrfld_x)
         assert s.x == '4'
         #
         descrfld_y = cpu.fielddescrof(S, 'y')
@@ -2622,7 +2621,7 @@
         #
         s.y = lltype.nullptr(A)
         cpu.bh_setfield_gc_r(lltype.cast_opaque_ptr(llmemory.GCREF, s),
-                             descrfld_y, x)
+                             x, descrfld_y)
         assert s.y == a
         #
         RS = lltype.Struct('S', ('x', lltype.Char))  #, ('y', lltype.Ptr(A)))
@@ -2685,11 +2684,11 @@
         array = lltype.cast_opaque_ptr(lltype.Ptr(A), x)
         assert len(array) == 7
         #
-        cpu.bh_setarrayitem_gc_i(descr_A, x, 5, ord('*'))
+        cpu.bh_setarrayitem_gc_i(x, 5, ord('*'), descr_A)
         assert array[5] == '*'
         #
         cpu.bh_setarrayitem_gc_r(
-            descr_B, lltype.cast_opaque_ptr(llmemory.GCREF, b), 1, x)
+            lltype.cast_opaque_ptr(llmemory.GCREF, b), 1, x, descr_B)
         assert b[1] == array
         #
         x = cpu.bh_newstr(5)


More information about the pypy-commit mailing list