def raw_malloc_usage(size): if isinstance(size, AddressOffset): # ouah from rpython.memory.lltypelayout import convert_offset_to_int size = convert_offset_to_int(size) return size
def guess_size_obj(obj): TYPE = typeOf(obj) ptr = _ptr(Ptr(TYPE), obj) if TYPE._is_varsize(): arrayfld = getattr(TYPE, '_arrayfld', None) if arrayfld: length = len(getattr(ptr, arrayfld)) else: try: length = len(ptr) except TypeError: if TYPE._hints.get("nolength", False) and hasattr( obj, "items"): length = len(obj.items) else: print "couldn't find size of", ptr return 0 else: length = None if type(TYPE) is llgroup.GroupType: return sum(guess_size_obj(m) for m in obj.members) #print obj, ', length =', length r = convert_offset_to_int(llmemory.sizeof(TYPE, length)) #print '\tr =', r return r
def guess_size_obj(obj): TYPE = typeOf(obj) ptr = _ptr(Ptr(TYPE), obj) if TYPE._is_varsize(): arrayfld = getattr(TYPE, '_arrayfld', None) if arrayfld: length = len(getattr(ptr, arrayfld)) else: try: length = len(ptr) except TypeError: print "couldn't find size of", ptr return 0 else: length = None return convert_offset_to_int(llmemory.sizeof(TYPE, length))
def guess_size_obj(obj): TYPE = typeOf(obj) ptr = _ptr(Ptr(TYPE), obj) if TYPE._is_varsize(): arrayfld = getattr(TYPE, '_arrayfld', None) if arrayfld: length = len(getattr(ptr, arrayfld)) else: try: length = len(ptr) except TypeError: print "couldn't find size of", ptr return 0 else: length = None #print obj, ', length =', length r = convert_offset_to_int(llmemory.sizeof(TYPE, length)) #print '\tr =', r return r
def convert1(symb): if isinstance(symb, int): return symb return convert_offset_to_int(symb)
def raw_malloc_usage(size): if isinstance(size, AddressOffset): # ouah from rpython.memory.lltypelayout import convert_offset_to_int size = convert_offset_to_int(size) return size
def convert1(symb): if isinstance(symb, int): return symb return convert_offset_to_int(symb)