def stacklet_destructor(stacklet):
    sscopy = stacklet.s_sscopy
    if sscopy:
        llmemory.raw_free(sscopy)
    h = stacklet.s_handle
    if h:
        _c.destroy(h)
Ejemplo n.º 2
0
def stacklet_destructor(stacklet):
    sscopy = stacklet.s_sscopy
    if sscopy:
        llmemory.raw_free(sscopy)
    h = stacklet.s_handle
    if h:
        _c.destroy(h)
Ejemplo n.º 3
0
 def shadowstack_destructor(shadowstackref):
     if root_walker.stacklet_support:
         from rpython.rlib import _rffi_stacklet as _c
         h = shadowstackref.context
         h = llmemory.cast_adr_to_ptr(h, _c.handle)
         shadowstackref.context = llmemory.NULL
     #
     base = shadowstackref.base
     shadowstackref.base    = llmemory.NULL
     shadowstackref.top     = llmemory.NULL
     llmemory.raw_free(base)
     #
     if root_walker.stacklet_support:
         if h:
             _c.destroy(h)
Ejemplo n.º 4
0
 def shadowstack_destructor(shadowstackref):
     if root_walker.stacklet_support:
         from rpython.rlib import _rffi_stacklet as _c
         h = shadowstackref.context
         h = llmemory.cast_adr_to_ptr(h, _c.handle)
         shadowstackref.context = llmemory.NULL
     #
     base = shadowstackref.base
     shadowstackref.base = llmemory.NULL
     shadowstackref.top = llmemory.NULL
     llmemory.raw_free(base)
     #
     if root_walker.stacklet_support:
         if h:
             _c.destroy(h)
Ejemplo n.º 5
0
 def destroy(thrd, h):
     _c.destroy(thrd._thrd, h)
     if we_are_translated():
         debug.debug_print("not using a framework GC: "
                           "stacklet_destroy() may leak")
Ejemplo n.º 6
0
def suspstack_destructor(suspstack):
    h = suspstack.handle
    if h:
        _c.destroy(h)
Ejemplo n.º 7
0
def suspstack_destructor(suspstack):
    h = suspstack.handle
    if h:
        _c.destroy(h)
Ejemplo n.º 8
0
 def destroy(thrd, h):
     _c.destroy(thrd._thrd, h)
     if objectmodel.we_are_translated():
         debug.debug_print("not using a framework GC: "
                           "stacklet_destroy() may leak")