Author: David Schneider <[email protected]>
Branch: arm-backend-2
Changeset: r50937:977efd55f3c6
Date: 2011-12-13 15:42 +0100
http://bitbucket.org/pypy/pypy/changeset/977efd55f3c6/

Log:    (arigo, biab) make sure excetions are saved for call_assembler and
        call_may_force

diff --git a/pypy/jit/backend/arm/opassembler.py 
b/pypy/jit/backend/arm/opassembler.py
--- a/pypy/jit/backend/arm/opassembler.py
+++ b/pypy/jit/backend/arm/opassembler.py
@@ -1079,7 +1079,8 @@
         self.mc.LDR_ri(r.ip.value, r.fp.value)
         self.mc.CMP_ri(r.ip.value, 0)
 
-        self._emit_guard(guard_op, regalloc._prepare_guard(guard_op), c.GE)
+        self._emit_guard(guard_op, regalloc._prepare_guard(guard_op),
+                                                    c.GE, save_exc=True)
         return fcond
 
 
@@ -1098,7 +1099,7 @@
         self.mc.LDR_ri(r.ip.value, r.fp.value)
         self.mc.CMP_ri(r.ip.value, 0)
 
-        self._emit_guard(guard_op, arglocs, c.GE)
+        self._emit_guard(guard_op, arglocs, c.GE, save_exc=True)
         return fcond
 
     emit_guard_call_release_gil = emit_guard_call_may_force
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to