[pypy-commit] pypy result-in-resops: rename _r to _p to avoid confusion. Fix test_llgraph to new model

fijal noreply at buildbot.pypy.org
Tue Sep 25 13:36:33 CEST 2012


Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: result-in-resops
Changeset: r57567:4b52f698f5a7
Date: 2012-09-25 13:06 +0200
http://bitbucket.org/pypy/pypy/changeset/4b52f698f5a7/

Log:	rename _r to _p to avoid confusion. Fix test_llgraph to new model

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
@@ -113,6 +113,14 @@
             namespace['targettoken'] = TargetToken()
         if 'faildescr' not in namespace:
             namespace['faildescr'] = BasicFailDescr(1)
+        if 'faildescr1' not in namespace:
+            namespace['faildescr1'] = BasicFailDescr(1)
+        if 'faildescr2' not in namespace:
+            namespace['faildescr2'] = BasicFailDescr(2)
+        if 'faildescr3' not in namespace:
+            namespace['faildescr3'] = BasicFailDescr(3)
+        if 'faildescr4' not in namespace:
+            namespace['faildescr4'] = BasicFailDescr(4)
         loop = parse(s, namespace=namespace)
         return loop.inputargs, loop.operations, JitCellToken()
 
@@ -173,7 +181,7 @@
         label(i0, descr=targettoken)
         i1 = int_add(i0, 1)
         i2 = int_le(i1, 9)
-        guard_true(i2) [i1]
+        guard_true(i2, descr=faildescr) [i1]
         jump(i1, descr=targettoken)
         """, namespace={'targettoken': TargetToken()})
         i1 = inputargs[0]
@@ -257,7 +265,7 @@
         inputargs, operations, looptoken = self.parse("""
         [i0]
         guard_false(i0, descr=faildescr1) [i0]
-        finish()
+        finish(descr=faildescr3)
         """, namespace=locals())
         self.cpu.compile_loop(inputargs, operations, looptoken)
 
@@ -266,7 +274,7 @@
             bridge_source.append("i%d = int_add(i%d, 1)" % (i + 1, i))
         failargs = ",".join(["i%d" % i for i in range(1000)])
         bridge_source.append("guard_false(i0, descr=faildescr2) [%s]" % failargs)
-        bridge_source.append("finish()")
+        bridge_source.append("finish(descr=faildescr4)")
         inputargs, bridge, _ = self.parse("\n".join(bridge_source),
                                           namespace=locals())
         self.cpu.compile_bridge(faildescr1, inputargs, bridge, looptoken)
@@ -1278,7 +1286,8 @@
                     inputargs = [ib for ib in [ibox1, ibox2]
                                     if isinstance(ib, BoxInt)]
                     op0 = create_resop_2(opname, 0, ibox1, ibox2)
-                    op1 = create_resop_1(opguard, None, op0, descr=faildescr1)
+                    op1 = create_resop_1(opguard, None, op0)
+                    op1.setdescr(faildescr1)
                     op2 = create_resop(rop.FINISH, None, [], descr=faildescr2)
                     op1.set_extra("failargs", [])
                     operations = [op0, op1, op2]
@@ -1331,7 +1340,8 @@
                     inputargs = [fb for fb in [fbox1, fbox2]
                                     if isinstance(fb, BoxFloat)]
                     op0 = create_resop_2(opname, 0, fbox1, fbox2)
-                    op1 = create_resop_1(opguard, None, op0, descr=faildescr1)
+                    op1 = create_resop_1(opguard, None, op0)
+                    op1.setdescr(faildescr1)
                     op1.set_extra("failargs", [])
                     op2 = create_resop(rop.FINISH, None, [], descr=faildescr2)
                     operations = [op0, op1, op2]
@@ -1456,8 +1466,8 @@
                     for guard_opnum, expected_id in [(rop.GUARD_TRUE, 1),
                                                      (rop.GUARD_FALSE, 0)]:
                         op0 = create_resop_2(opnum, 0, *testcase)
-                        op1 = create_resop_1(guard_opnum, None, op0,
-                                             descr=BasicFailDescr(4))
+                        op1 = create_resop_1(guard_opnum, None, op0)
+                        op1.setdescr(BasicFailDescr(4))
                         op2 = create_resop(rop.FINISH, None, [],
                                            descr=BasicFailDescr(5))
                         op1.set_extra("failargs", [])
@@ -1728,8 +1738,8 @@
         [i0]
         i1 = same_as_i(1)
         call_n(ConstClass(fptr), i0, descr=calldescr)
-        p0 = guard_exception(ConstClass(xtp)) [i1]
-        finish(0, p0)
+        p0 = guard_exception(ConstClass(xtp), descr=faildescr2) [i1]
+        finish(0, p0, descr=faildescr1)
         '''
         FPTR = lltype.Ptr(lltype.FuncType([lltype.Signed], lltype.Void))
         fptr = llhelper(FPTR, func)
@@ -1746,6 +1756,8 @@
 
         exc_tp = xtp
         exc_ptr = xptr
+        faildescr1 = BasicFailDescr(1)
+        faildescr2 = BasicFailDescr(2)
         loop = parse(ops, self.cpu, namespace=locals())
         looptoken = JitCellToken()
         self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
@@ -1785,8 +1797,8 @@
         [i0]
         i1 = same_as_i(1)
         call_n(ConstClass(fptr), i0, descr=calldescr)
-        guard_no_exception() [i1]
-        finish(0)
+        guard_no_exception(descr=faildescr1) [i1]
+        finish(0, descr=faildescr2)
         '''
         loop = parse(ops, self.cpu, namespace=locals())
         looptoken = JitCellToken()
@@ -2472,8 +2484,8 @@
         i16 = int_add(i15, i7)
         i17 = int_add(i16, i8)
         i18 = int_add(i17, i9)
-        finish(i18)'''
-        loop = parse(ops)
+        finish(i18, descr=faildescr1)'''
+        loop = parse(ops, namespace={'faildescr1': BasicFailDescr(1)})
         looptoken = JitCellToken()
         looptoken.outermost_jitdriver_sd = FakeJitDriverSD()
         self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
@@ -2489,9 +2501,11 @@
         [i0, i1, i2, i3, i4, i5, i6, i7, i8, i9]
         i10 = int_add(i0, 42)
         i11 = call_assembler_i(i10, i1, i2, i3, i4, i5, i6, i7, i8, i9, descr=looptoken)
-        guard_not_forced()[]
-        finish(i11)
+        guard_not_forced(descr=faildescr1)[]
+        finish(i11, descr=faildescr2)
         '''
+        faildescr1 = BasicFailDescr(1)
+        faildescr2 = BasicFailDescr(2)
         loop = parse(ops, namespace=locals())
         othertoken = JitCellToken()
         self.cpu.compile_loop(loop.inputargs, loop.operations, othertoken)
@@ -2525,8 +2539,8 @@
         ops = '''
         [f0, f1]
         f2 = float_add(f0, f1)
-        finish(f2)'''
-        loop = parse(ops)
+        finish(f2, descr=faildescr)'''
+        loop = parse(ops, namespace={'faildescr': BasicFailDescr(1)})
         done_number = self.cpu.get_fail_descr_number(loop.operations[-1].getdescr())
         looptoken = JitCellToken()
         looptoken.outermost_jitdriver_sd = FakeJitDriverSD()
@@ -2539,9 +2553,11 @@
         ops = '''
         [f4, f5]
         f3 = call_assembler_f(f4, f5, descr=looptoken)
-        guard_not_forced()[]
-        finish(f3)
+        guard_not_forced(descr=faildescr1)[]
+        finish(f3, descr=faildescr2)
         '''
+        faildescr1 = BasicFailDescr(1)
+        faildescr2 = BasicFailDescr(2)
         loop = parse(ops, namespace=locals())
         othertoken = JitCellToken()
         self.cpu.compile_loop(loop.inputargs, loop.operations, othertoken)
@@ -2616,8 +2632,8 @@
         ops = '''
         [f0, f1]
         f2 = float_add(f0, f1)
-        finish(f2)'''
-        loop = parse(ops)
+        finish(f2, descr=faildescr1)'''
+        loop = parse(ops, namespace={'faildescr1': BasicFailDescr(1)})
         looptoken = JitCellToken()
         looptoken.outermost_jitdriver_sd = FakeJitDriverSD()
         self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
@@ -2631,9 +2647,11 @@
         ops = '''
         [f4, f5]
         f3 = call_assembler_f(f4, f5, descr=looptoken)
-        guard_not_forced()[]
-        finish(f3)
+        guard_not_forced(descr=faildescr1)[]
+        finish(f3, descr=faildescr2)
         '''
+        faildescr2 = BasicFailDescr(2)
+        faildescr1 = BasicFailDescr(1)
         loop = parse(ops, namespace=locals())
         othertoken = JitCellToken()
         self.cpu.compile_loop(loop.inputargs, loop.operations, othertoken)
@@ -2651,8 +2669,8 @@
         ops = '''
         [f0, f1]
         f2 = float_sub(f0, f1)
-        finish(f2)'''
-        loop = parse(ops)
+        finish(f2, descr=faildescr)'''
+        loop = parse(ops, namespace={'faildescr': BasicFailDescr(1)})
         looptoken2 = JitCellToken()
         looptoken2.outermost_jitdriver_sd = FakeJitDriverSD()
         self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken2)
@@ -3061,8 +3079,9 @@
         ops = """
         [i0]
         i1 = int_force_ge_zero(i0)    # but forced to be in a register
-        finish(i1, descr=1)
+        finish(i1, descr=faildescr1)
         """
+        faildescr1 = BasicFailDescr(1)
         loop = parse(ops, self.cpu, namespace=locals())
         descr = loop.operations[-1].getdescr()
         looptoken = JitCellToken()
@@ -3201,7 +3220,7 @@
             ops = """
             [i0, i1]
             i2 = raw_load_i(i0, i1, descr=arraydescr)
-            finish(i2)
+            finish(i2, descr=faildescr1)
             """
             arraydescr = self.cpu.arraydescrof(rffi.CArray(T))
             p = rawstorage.alloc_raw_storage(31)
@@ -3209,6 +3228,7 @@
                 p[i] = '\xDD'
             value = rffi.cast(T, 0x4243444546474849)
             rawstorage.raw_storage_setitem(p, 16, value)
+            faildescr1 = BasicFailDescr(1)
             loop = parse(ops, self.cpu, namespace=locals())
             looptoken = JitCellToken()
             self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
@@ -3226,7 +3246,7 @@
             ops = """
             [i0, i1]
             f2 = raw_load_f(i0, i1, descr=arraydescr)
-            finish(f2)
+            finish(f2, descr=faildescr1)
             """
             arraydescr = self.cpu.arraydescrof(rffi.CArray(T))
             p = rawstorage.alloc_raw_storage(31)
@@ -3234,6 +3254,7 @@
                 p[i] = '\xDD'
             value = rffi.cast(T, 1.12e20)
             rawstorage.raw_storage_setitem(p, 16, value)
+            faildescr1 = BasicFailDescr(1)
             loop = parse(ops, self.cpu, namespace=locals())
             looptoken = JitCellToken()
             self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
@@ -3253,13 +3274,14 @@
             ops = """
             [i0, i1, i2]
             raw_store(i0, i1, i2, descr=arraydescr)
-            finish()
+            finish(descr=faildescr1)
             """
             arraydescr = self.cpu.arraydescrof(rffi.CArray(T))
             p = rawstorage.alloc_raw_storage(31)
             for i in range(31):
                 p[i] = '\xDD'
             value = 0x4243444546474849 & sys.maxint
+            faildescr1 = BasicFailDescr(1)
             loop = parse(ops, self.cpu, namespace=locals())
             looptoken = JitCellToken()
             self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
@@ -3277,13 +3299,14 @@
             ops = """
             [i0, i1, f2]
             raw_store(i0, i1, f2, descr=arraydescr)
-            finish()
+            finish(descr=faildescr1)
             """
             arraydescr = self.cpu.arraydescrof(rffi.CArray(T))
             p = rawstorage.alloc_raw_storage(31)
             for i in range(31):
                 p[i] = '\xDD'
             value = 1.23e20
+            faildescr1 = BasicFailDescr(1)
             loop = parse(ops, self.cpu, namespace=locals())
             looptoken = JitCellToken()
             self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
diff --git a/pypy/jit/metainterp/blackhole.py b/pypy/jit/metainterp/blackhole.py
--- a/pypy/jit/metainterp/blackhole.py
+++ b/pypy/jit/metainterp/blackhole.py
@@ -1012,28 +1012,28 @@
 
     @arguments("cpu", "r", "d", "d", "i", returns="i")
     def bhimpl_getlistitem_gc_i(cpu, lst, itemsdescr, arraydescr, index):
-        items = cpu.bh_getfield_gc_r(lst, itemsdescr)
+        items = cpu.bh_getfield_gc_p(lst, itemsdescr)
         return cpu.bh_getarrayitem_gc_i(arraydescr, items, index)
     @arguments("cpu", "r", "d", "d", "i", returns="r")
     def bhimpl_getlistitem_gc_r(cpu, lst, itemsdescr, arraydescr, index):
-        items = cpu.bh_getfield_gc_r(lst, itemsdescr)
-        return cpu.bh_getarrayitem_gc_r(arraydescr, items, index)
+        items = cpu.bh_getfield_gc_p(lst, itemsdescr)
+        return cpu.bh_getarrayitem_gc_p(arraydescr, items, index)
     @arguments("cpu", "r", "d", "d", "i", returns="f")
     def bhimpl_getlistitem_gc_f(cpu, lst, itemsdescr, arraydescr, index):
-        items = cpu.bh_getfield_gc_r(lst, itemsdescr)
+        items = cpu.bh_getfield_gc_p(lst, itemsdescr)
         return cpu.bh_getarrayitem_gc_f(arraydescr, items, index)
 
     @arguments("cpu", "r", "d", "d", "i", "i")
     def bhimpl_setlistitem_gc_i(cpu, lst, itemsdescr, arraydescr, index, nval):
-        items = cpu.bh_getfield_gc_r(lst, itemsdescr)
+        items = cpu.bh_getfield_gc_p(lst, itemsdescr)
         cpu.bh_setarrayitem_gc_i(arraydescr, items, index, nval)
     @arguments("cpu", "r", "d", "d", "i", "r")
     def bhimpl_setlistitem_gc_r(cpu, lst, itemsdescr, arraydescr, index, nval):
-        items = cpu.bh_getfield_gc_r(lst, itemsdescr)
+        items = cpu.bh_getfield_gc_p(lst, itemsdescr)
         cpu.bh_setarrayitem_gc_r(arraydescr, items, index, nval)
     @arguments("cpu", "r", "d", "d", "i", "f")
     def bhimpl_setlistitem_gc_f(cpu, lst, itemsdescr, arraydescr, index, nval):
-        items = cpu.bh_getfield_gc_r(lst, itemsdescr)
+        items = cpu.bh_getfield_gc_p(lst, itemsdescr)
         cpu.bh_setarrayitem_gc_f(arraydescr, items, index, nval)
 
     # ----------
@@ -1123,14 +1123,14 @@
     def bhimpl_getarrayitem_gc_i(cpu, array, index, arraydescr):
         return cpu.bh_getarrayitem_gc_i(arraydescr, array, index)
     @arguments("cpu", "r", "i", "d", returns="r")
-    def bhimpl_getarrayitem_gc_r(cpu, array, index, arraydescr):
-        return cpu.bh_getarrayitem_gc_r(arraydescr, array, index)
+    def bhimpl_getarrayitem_gc_p(cpu, array, index, arraydescr):
+        return cpu.bh_getarrayitem_gc_p(arraydescr, array, index)
     @arguments("cpu", "r", "i", "d", returns="f")
     def bhimpl_getarrayitem_gc_f(cpu, array, index, arraydescr):
         return cpu.bh_getarrayitem_gc_f(arraydescr, array, index)
 
     bhimpl_getarrayitem_gc_i_pure = bhimpl_getarrayitem_gc_i
-    bhimpl_getarrayitem_gc_r_pure = bhimpl_getarrayitem_gc_r
+    bhimpl_getarrayitem_gc_p_pure = bhimpl_getarrayitem_gc_p
     bhimpl_getarrayitem_gc_f_pure = bhimpl_getarrayitem_gc_f
 
     @arguments("cpu", "i", "i", "d", returns="i")
@@ -1168,41 +1168,41 @@
 
     @arguments("cpu", "r", "d", "d", "i", returns="i")
     def bhimpl_getarrayitem_vable_i(cpu, vable, fielddescr, arraydescr, index):
-        array = cpu.bh_getfield_gc_r(vable, fielddescr)
+        array = cpu.bh_getfield_gc_p(vable, fielddescr)
         return cpu.bh_getarrayitem_gc_i(arraydescr, array, index)
     @arguments("cpu", "r", "d", "d", "i", returns="r")
     def bhimpl_getarrayitem_vable_r(cpu, vable, fielddescr, arraydescr, index):
-        array = cpu.bh_getfield_gc_r(vable, fielddescr)
-        return cpu.bh_getarrayitem_gc_r(arraydescr, array, index)
+        array = cpu.bh_getfield_gc_p(vable, fielddescr)
+        return cpu.bh_getarrayitem_gc_p(arraydescr, array, index)
     @arguments("cpu", "r", "d", "d", "i", returns="f")
     def bhimpl_getarrayitem_vable_f(cpu, vable, fielddescr, arraydescr, index):
-        array = cpu.bh_getfield_gc_r(vable, fielddescr)
+        array = cpu.bh_getfield_gc_p(vable, fielddescr)
         return cpu.bh_getarrayitem_gc_f(arraydescr, array, index)
 
     @arguments("cpu", "r", "d", "d", "i", "i")
     def bhimpl_setarrayitem_vable_i(cpu, vable, fdescr, adescr, index, newval):
-        array = cpu.bh_getfield_gc_r(vable, fdescr)
+        array = cpu.bh_getfield_gc_p(vable, fdescr)
         cpu.bh_setarrayitem_gc_i(adescr, array, index, newval)
     @arguments("cpu", "r", "d", "d", "i", "r")
     def bhimpl_setarrayitem_vable_r(cpu, vable, fdescr, adescr, index, newval):
-        array = cpu.bh_getfield_gc_r(vable, fdescr)
+        array = cpu.bh_getfield_gc_p(vable, fdescr)
         cpu.bh_setarrayitem_gc_r(adescr, array, index, newval)
     @arguments("cpu", "r", "d", "d", "i", "f")
     def bhimpl_setarrayitem_vable_f(cpu, vable, fdescr, adescr, index, newval):
-        array = cpu.bh_getfield_gc_r(vable, fdescr)
+        array = cpu.bh_getfield_gc_p(vable, fdescr)
         cpu.bh_setarrayitem_gc_f(adescr, array, index, newval)
 
     @arguments("cpu", "r", "d", "d", returns="i")
     def bhimpl_arraylen_vable(cpu, vable, fdescr, adescr):
-        array = cpu.bh_getfield_gc_r(vable, fdescr)
+        array = cpu.bh_getfield_gc_p(vable, fdescr)
         return cpu.bh_arraylen_gc(adescr, array)
 
     @arguments("cpu", "r", "i", "d", returns="i")
     def bhimpl_getinteriorfield_gc_i(cpu, array, index, descr):
         return cpu.bh_getinteriorfield_gc_i(array, index, descr)
     @arguments("cpu", "r", "i", "d", returns="r")
-    def bhimpl_getinteriorfield_gc_r(cpu, array, index, descr):
-        return cpu.bh_getinteriorfield_gc_r(array, index, descr)
+    def bhimpl_getinteriorfield_gc_p(cpu, array, index, descr):
+        return cpu.bh_getinteriorfield_gc_p(array, index, descr)
     @arguments("cpu", "r", "i", "d", returns="f")
     def bhimpl_getinteriorfield_gc_f(cpu, array, index, descr):
         return cpu.bh_getinteriorfield_gc_f(array, index, descr)
@@ -1221,22 +1221,22 @@
     def bhimpl_getfield_gc_i(cpu, struct, fielddescr):
         return cpu.bh_getfield_gc_i(struct, fielddescr)
     @arguments("cpu", "r", "d", returns="r")
-    def bhimpl_getfield_gc_r(cpu, struct, fielddescr):
-        return cpu.bh_getfield_gc_r(struct, fielddescr)
+    def bhimpl_getfield_gc_p(cpu, struct, fielddescr):
+        return cpu.bh_getfield_gc_p(struct, fielddescr)
     @arguments("cpu", "r", "d", returns="f")
     def bhimpl_getfield_gc_f(cpu, struct, fielddescr):
         return cpu.bh_getfield_gc_f(struct, fielddescr)
 
     bhimpl_getfield_gc_i_pure = bhimpl_getfield_gc_i
-    bhimpl_getfield_gc_r_pure = bhimpl_getfield_gc_r
+    bhimpl_getfield_gc_p_pure = bhimpl_getfield_gc_p
     bhimpl_getfield_gc_f_pure = bhimpl_getfield_gc_f
 
     bhimpl_getfield_vable_i = bhimpl_getfield_gc_i
-    bhimpl_getfield_vable_r = bhimpl_getfield_gc_r
+    bhimpl_getfield_vable_p = bhimpl_getfield_gc_p
     bhimpl_getfield_vable_f = bhimpl_getfield_gc_f
 
     bhimpl_getfield_gc_i_greenfield = bhimpl_getfield_gc_i
-    bhimpl_getfield_gc_r_greenfield = bhimpl_getfield_gc_r
+    bhimpl_getfield_gc_p_greenfield = bhimpl_getfield_gc_p
     bhimpl_getfield_gc_f_greenfield = bhimpl_getfield_gc_f
 
     @arguments("cpu", "i", "d", returns="i")
diff --git a/pypy/jit/metainterp/executor.py b/pypy/jit/metainterp/executor.py
--- a/pypy/jit/metainterp/executor.py
+++ b/pypy/jit/metainterp/executor.py
@@ -219,8 +219,10 @@
         z = 0
     return create_resop_2(rop.INT_MUL_OVF, z, box1, box2)
 
-def do_same_as(cpu, _, box):
+def do_same_as_i(cpu, _, box):
     return box.clonebox()
+do_same_as_f = do_same_as_i
+do_same_as_p = do_same_as_i
 
 def do_copystrcontent(cpu, _, srcbox, dstbox,
                       srcstartbox, dststartbox, lengthbox):
@@ -276,6 +278,7 @@
 def _make_execute_list():
     execute_by_num_args = {}
     for key, value in rop.__dict__.items():
+        orig_key = key
         if not key.startswith('_'):
             if (rop._FINAL_FIRST <= value <= rop._FINAL_LAST or
                 rop._GUARD_FIRST <= value <= rop._GUARD_LAST):
@@ -301,8 +304,8 @@
                 continue
             #
             # Maybe the same without the _PURE suffix?
-            if key.endswith('_PURE'):
-                key = key[:-5]
+            if key[-7:-2] == '_PURE':
+                key = key[:-7] + key[-2:]
                 name = 'do_' + key.lower()
                 if name in globals():
                     execute[value] = globals()[name]
@@ -344,9 +347,24 @@
                          rop.CALL_MALLOC_GC,
                          rop.CALL_MALLOC_NURSERY,
                          rop.LABEL,
+                         rop.GETARRAYITEM_RAW_PURE_N,
+                         rop.GETFIELD_RAW_p,
+                         rop.GETARRAYITEM_RAW_PURE_p,
+                         rop.SAME_AS_N,
+                         rop.GETINTERIORFIELD_GC_N,
+                         rop.GETFIELD_RAW_N,
+                         rop.GETFIELD_RAW_PURE_N,
+                         rop.GETFIELD_RAW_PURE_p,
+                         rop.GETARRAYITEM_RAW_N,
+                         rop.GETFIELD_GC_PURE_N,
+                         rop.GETARRAYITEM_GC_PURE_N,
+                         rop.GETARRAYITEM_GC_N,
+                         rop.GETFIELD_GC_N,
+                         rop.GETARRAYITEM_RAW_p,
+                         rop.RAW_LOAD_N,
                          ):      # list of opcodes never executed by pyjitpl
                 continue
-            #raise AssertionError("missing %r" % (key,))
+            raise AssertionError("missing %r" % (orig_key,))
     return execute_by_num_args
 
 def make_execute_function_with_boxes(opnum, name, func):
diff --git a/pypy/jit/tool/oparser.py b/pypy/jit/tool/oparser.py
--- a/pypy/jit/tool/oparser.py
+++ b/pypy/jit/tool/oparser.py
@@ -115,6 +115,7 @@
                 tt = self.model.TargetToken(token)
                 self._consts[poss_descr] = tt
                 return tt
+            raise
 
     def box_for_var(self, elem):
         try:
@@ -284,7 +285,10 @@
         if opnum == FORCE_SPILL.OPNUM:
             return FORCE_SPILL(opnum, args, result, descr)
         else:
-            return create_resop_dispatch(opnum, result, args, descr)
+            r = create_resop_dispatch(opnum, result, args)
+            if descr is not None:
+                r.setdescr(descr)
+            return r
 
     def parse_result_op(self, line, num):
         res, op = line.split("=", 1)
@@ -305,7 +309,7 @@
 
     def parse_op_no_result(self, line):
         opnum, args, descr, fail_args = self.parse_op(line)
-        res = self.create_op(opnum, self._example_for(opnum), args, descr)
+        res = self.create_op(opnum, None, args, descr)
         if fail_args is not None:
             res.set_extra("failargs", fail_args)
         return res


More information about the pypy-commit mailing list