[pypy-commit] pypy default: more exception handling fixes

bivab noreply at buildbot.pypy.org
Sun Apr 21 10:30:49 CEST 2013


Author: David Schneider <david.schneider at picle.org>
Branch: 
Changeset: r63540:52932ddf3852
Date: 2013-04-21 10:29 +0200
http://bitbucket.org/pypy/pypy/changeset/52932ddf3852/

Log:	more exception handling fixes

diff --git a/rpython/jit/backend/arm/assembler.py b/rpython/jit/backend/arm/assembler.py
--- a/rpython/jit/backend/arm/assembler.py
+++ b/rpython/jit/backend/arm/assembler.py
@@ -94,7 +94,7 @@
         ofs = self.cpu.get_ofs_of_frame_field('jf_descr')
         # make sure ofs fits into a register
         assert check_imm_arg(ofs)
-        mc.gen_load_int(r.r1.value, propagate_exception_descr)
+        mc.gen_load_int(r.r0.value, propagate_exception_descr)
         self.store_reg(mc, r.r0, r.fp, ofs)
         mc.MOV_rr(r.r0.value, r.fp.value)
         self.gen_func_epilog(mc)
@@ -117,7 +117,8 @@
             # store exc_value in JITFRAME
             ofs = self.cpu.get_ofs_of_frame_field('jf_guard_exc')
             assert check_imm_arg(ofs)
-            self.store_reg(mc, r.ip, r.fp, ofs)
+            self.load_reg(mc, r.ip, r.ip, helper=tmpreg)
+            self.store_reg(mc, r.ip, r.fp, ofs, helper=tmpreg)
         if exctploc is not None:
             # store pos_exception in exctploc
             assert exctploc.is_reg()


More information about the pypy-commit mailing list