[pypy-commit] pypy default: Trying a fix for direct users of rlib.rstacklet.

arigo noreply at buildbot.pypy.org
Mon Sep 19 09:48:10 CEST 2011


Author: Armin Rigo <arigo at tunes.org>
Branch: 
Changeset: r47334:a447e39e3eaf
Date: 2011-09-19 09:47 +0200
http://bitbucket.org/pypy/pypy/changeset/a447e39e3eaf/

Log:	Trying a fix for direct users of rlib.rstacklet.

diff --git a/pypy/rlib/rstacklet.py b/pypy/rlib/rstacklet.py
--- a/pypy/rlib/rstacklet.py
+++ b/pypy/rlib/rstacklet.py
@@ -1,4 +1,5 @@
 from pypy.rlib import _rffi_stacklet as _c
+from pypy.rlib import jit
 from pypy.rlib.objectmodel import we_are_translated
 from pypy.rpython.lltypesystem import lltype, llmemory
 
@@ -7,6 +8,7 @@
 
 class StackletThread(object):
 
+    @jit.dont_look_inside
     def __init__(self, config):
         self._gcrootfinder = _getgcrootfinder(config, we_are_translated())
         self._thrd = _c.newthread()
@@ -17,6 +19,7 @@
             assert debug.sthread is None, "multithread debug support missing"
             debug.sthread = self
 
+    @jit.dont_look_inside
     def new(self, callback, arg=llmemory.NULL):
         if DEBUG:
             callback = _debug_wrapper(callback)
@@ -26,6 +29,7 @@
         return h
     new._annspecialcase_ = 'specialize:arg(1)'
 
+    @jit.dont_look_inside
     def switch(self, stacklet):
         if DEBUG:
             debug.remove(stacklet)
@@ -34,6 +38,7 @@
             debug.add(h)
         return h
 
+    @jit.dont_look_inside
     def destroy(self, stacklet):
         if DEBUG:
             debug.remove(stacklet)


More information about the pypy-commit mailing list