[pypy-svn] r72867 - pypy/branch/kill-asm-call/pypy/jit/backend/llsupport

fijal at codespeak.net fijal at codespeak.net
Fri Mar 26 02:06:00 CET 2010


Author: fijal
Date: Fri Mar 26 02:05:54 2010
New Revision: 72867

Modified:
   pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py
Log:
Fix the translated version


Modified: pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py
==============================================================================
--- pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py	(original)
+++ pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py	Fri Mar 26 02:05:54 2010
@@ -13,6 +13,7 @@
 from pypy.jit.backend.llsupport.descr import get_field_descr, BaseFieldDescr
 from pypy.jit.backend.llsupport.descr import get_array_descr, BaseArrayDescr
 from pypy.jit.backend.llsupport.descr import get_call_descr,  BaseCallDescr
+from pypy.rpython.annlowlevel import cast_instance_to_base_ptr
 
 empty_int_box = BoxInt(0)
 
@@ -487,7 +488,10 @@
                                                               e.args[1])
                 self.saved_exception = rffi.cast(lltype.Signed, e.args[0])
             else:
-                xxx
+                ptr = cast_instance_to_base_ptr(e)
+                self.saved_exc_value = lltype.cast_opaque_ptr(llmemory.GCREF,
+                                                              ptr)
+                self.saved_exception = rffi.cast(lltype.Signed, ptr.typeptr)
             if calldescr.returns_a_void():
                 return None
             # we need a box to put in env. This is harmless since nobody



More information about the Pypy-commit mailing list