def sizeof(ctype, count): ctype = to_type(ctype) if count: size = simple.sizeof_a(ctype, count.value) else: size = simple.sizeof(ctype) return Integer(size)
def sizeof(argv): ctype = argument(argv, 0, Type) if len(argv) >= 2: n = argument(argv, 1, Integer) size = simple.sizeof_a(ctype, n.value) else: size = simple.sizeof(ctype) return Integer(size)
def automem(argv): ctype = argument(argv, 0, Type) if len(argv) >= 2: n = argument(argv, 1, Integer).value size = simple.sizeof_a(ctype, n) else: n = 1 size = simple.sizeof(ctype) pointer = lltype.malloc(rffi.VOIDP.TO, size, flavor='raw') return systemv.AutoMem(systemv.Pointer(ctype), pointer, n)
def automem(ctype, count, clear): ctype = to_type(ctype) if count: n = count.value size = simple.sizeof_a(ctype, n) else: n = 1 size = simple.sizeof(ctype) pointer = lltype.malloc(rffi.VOIDP.TO, size, flavor='raw') if is_true(clear): rffi.c_memset(pointer, 0, size) return systemv.AutoMem(systemv.Pointer(ctype), pointer, n)