[pypy-svn] r64840 - pypy/branch/pyjitpl5/pypy/jit/metainterp

antocuni at codespeak.net antocuni at codespeak.net
Wed Apr 29 20:46:16 CEST 2009


Author: antocuni
Date: Wed Apr 29 20:46:08 2009
New Revision: 64840

Modified:
   pypy/branch/pyjitpl5/pypy/jit/metainterp/warmspot.py
Log:
do not try to catch unwanted exceptions in the JIT when running on ootype (at
least for now), as the default traceback we get is much nicer



Modified: pypy/branch/pyjitpl5/pypy/jit/metainterp/warmspot.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/jit/metainterp/warmspot.py	(original)
+++ pypy/branch/pyjitpl5/pypy/jit/metainterp/warmspot.py	Wed Apr 29 20:46:08 2009
@@ -189,14 +189,19 @@
             raise history.CrashInJIT("crash in JIT")
         crash_in_jit._dont_inline_ = True
 
-        def maybe_enter_jit(*args):
-            try:
+        if self.translator.rtyper.type_system.name == 'lltypesystem':
+            def maybe_enter_jit(*args):
+                try:
+                    state.maybe_compile_and_run(*args)
+                except JitException:
+                    raise     # go through
+                except Exception, e:
+                    crash_in_jit(e)
+            maybe_enter_jit._always_inline_ = True
+        else:
+            def maybe_enter_jit(*args):
                 state.maybe_compile_and_run(*args)
-            except JitException:
-                raise     # go through
-            except Exception, e:
-                crash_in_jit(e)
-        maybe_enter_jit._always_inline_ = True
+            maybe_enter_jit._always_inline_ = True
 
         self.maybe_enter_jit_fn = maybe_enter_jit
 



More information about the Pypy-commit mailing list