[pypy-svn] r64991 - pypy/branch/pyjitpl5/pypy/jit/backend/test

fijal at codespeak.net fijal at codespeak.net
Sun May 3 04:22:36 CEST 2009


Author: fijal
Date: Sun May  3 04:22:34 2009
New Revision: 64991

Modified:
   pypy/branch/pyjitpl5/pypy/jit/backend/test/test_ll_random.py
Log:
support raising calls. x86 backend is a bit confused though


Modified: pypy/branch/pyjitpl5/pypy/jit/backend/test/test_ll_random.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/jit/backend/test/test_ll_random.py	(original)
+++ pypy/branch/pyjitpl5/pypy/jit/backend/test/test_ll_random.py	Sun May  3 04:22:34 2009
@@ -187,7 +187,7 @@
         
         code = py.code.Source("""
         def f(%s):
-            raise LLException(ptr, vtable)
+            raise LLException(vtable, ptr)
         """ % funcargs).compile()
         vtableptr = v._hints['vtable']._as_ptr()
         d = {
@@ -228,6 +228,8 @@
         descr = builder.cpu.calldescrof(TP, TP.ARGS, TP.RESULT)
         self.put(builder, args, descr)
         exc_box = ConstAddr(llmemory.cast_ptr_to_adr(exc), builder.cpu)
+        assert builder.cpu.get_exception()
+        builder.cpu.clear_exception()
         op = ResOperation(rop.GUARD_EXCEPTION, [exc_box], BoxPtr())
         op.suboperations = [ResOperation(rop.FAIL, [], None)]
         builder.loop.operations.append(op)        
@@ -245,7 +247,7 @@
 
     OPERATIONS.append(GuardClassOperation(rop.GUARD_CLASS))
     OPERATIONS.append(CallOperation(rop.CALL))
-#    OPERATIONS.append(RaisingCallOperation(rop.CALL))
+    OPERATIONS.append(RaisingCallOperation(rop.CALL))
 
 LLtypeOperationBuilder.OPERATIONS = OPERATIONS
 



More information about the Pypy-commit mailing list