Exemple #1
0
 def attach_handle_on_suspstack(self, handle):
     s = self.suspstack
     self.suspstack = NULL_SUSPSTACK
     ll_assert(bool(s.anchor), "s.anchor should not be null")
     s.handle = handle
     llop.gc_assume_young_pointers(lltype.Void, llmemory.cast_ptr_to_adr(s))
     return s
Exemple #2
0
 def attach_handle_on_suspstack(self, handle):
     s = self.suspstack
     self.suspstack = NULL_SUSPSTACK
     ll_assert(bool(s.anchor), "s.anchor should not be null")
     s.handle = handle
     llop.gc_assume_young_pointers(lltype.Void, llmemory.cast_ptr_to_adr(s))
     return s
Exemple #3
0
 def f():
     s = lltype.malloc(S)
     s.x = 42
     llop.bare_setfield(lltype.Void, s0, void('next'), s)
     llop.gc_assume_young_pointers(lltype.Void,
                                   llmemory.cast_ptr_to_adr(s0))
     rgc.collect(0)
     return s0.next.x
Exemple #4
0
 def leave_jitted_hook(self):
     # XXX BIG FAT WARNING XXX
     # At this point, we should not call anyone here, because
     # RPython-level exception might be set. Here be dragons
     i = 0
     while i < self.fail_boxes_ptr.lgt:
         chunk = self.fail_boxes_ptr.chunks[i]
         llop.gc_assume_young_pointers(lltype.Void, llmemory.cast_ptr_to_adr(chunk))
         i += 1
Exemple #5
0
 def leave_jitted_hook(self):
     # XXX BIG FAT WARNING XXX
     # At this point, we should not call anyone here, because
     # RPython-level exception might be set. Here be dragons
     i = 0
     while i < self.fail_boxes_ptr.lgt:
         chunk = self.fail_boxes_ptr.chunks[i]
         llop.gc_assume_young_pointers(lltype.Void,
                                       llmemory.cast_ptr_to_adr(chunk))
         i += 1
Exemple #6
0
 def f():
     llop.gc_assume_young_pointers(lltype.Void,
                                   llmemory.cast_ptr_to_adr(s))
     return True
Exemple #7
0
 def f():
     llop.gc_assume_young_pointers(lltype.Void,
                                   llmemory.cast_ptr_to_adr(s))
     return True