Lines Matching refs:stack
154 static void *MsanAllocate(StackTrace *stack, uptr size, uptr alignment, in MsanAllocate() argument
161 ReportAllocationSizeTooBig(size, max_malloc_size, stack); in MsanAllocate()
166 ReportRssLimitExceeded(stack); in MsanAllocate()
182 ReportOutOfMemory(size, stack); in MsanAllocate()
192 stack->tag = StackTrace::TAG_ALLOC; in MsanAllocate()
193 Origin o = Origin::CreateHeapOrigin(stack); in MsanAllocate()
202 void MsanDeallocate(StackTrace *stack, void *p) { in MsanDeallocate() argument
215 stack->tag = StackTrace::TAG_DEALLOC; in MsanDeallocate()
216 Origin o = Origin::CreateHeapOrigin(stack); in MsanDeallocate()
231 static void *MsanReallocate(StackTrace *stack, void *old_p, uptr new_size, in MsanReallocate() argument
241 stack->tag = StackTrace::TAG_ALLOC; in MsanReallocate()
242 PoisonMemory((char *)old_p + old_size, new_size - old_size, stack); in MsanReallocate()
248 void *new_p = MsanAllocate(stack, new_size, alignment, false /*zeroise*/); in MsanReallocate()
250 CopyMemory(new_p, old_p, memcpy_size, stack); in MsanReallocate()
251 MsanDeallocate(stack, old_p); in MsanReallocate()
256 static void *MsanCalloc(StackTrace *stack, uptr nmemb, uptr size) { in MsanCalloc() argument
260 ReportCallocOverflow(nmemb, size, stack); in MsanCalloc()
262 return MsanAllocate(stack, nmemb * size, sizeof(u64), true); in MsanCalloc()
273 void *msan_malloc(uptr size, StackTrace *stack) { in msan_malloc() argument
274 return SetErrnoOnNull(MsanAllocate(stack, size, sizeof(u64), false)); in msan_malloc()
277 void *msan_calloc(uptr nmemb, uptr size, StackTrace *stack) { in msan_calloc() argument
278 return SetErrnoOnNull(MsanCalloc(stack, nmemb, size)); in msan_calloc()
281 void *msan_realloc(void *ptr, uptr size, StackTrace *stack) { in msan_realloc() argument
283 return SetErrnoOnNull(MsanAllocate(stack, size, sizeof(u64), false)); in msan_realloc()
285 MsanDeallocate(stack, ptr); in msan_realloc()
288 return SetErrnoOnNull(MsanReallocate(stack, ptr, size, sizeof(u64))); in msan_realloc()
291 void *msan_reallocarray(void *ptr, uptr nmemb, uptr size, StackTrace *stack) { in msan_reallocarray() argument
296 ReportReallocArrayOverflow(nmemb, size, stack); in msan_reallocarray()
298 return msan_realloc(ptr, nmemb * size, stack); in msan_reallocarray()
301 void *msan_valloc(uptr size, StackTrace *stack) { in msan_valloc() argument
302 return SetErrnoOnNull(MsanAllocate(stack, size, GetPageSizeCached(), false)); in msan_valloc()
305 void *msan_pvalloc(uptr size, StackTrace *stack) { in msan_pvalloc() argument
311 ReportPvallocOverflow(size, stack); in msan_pvalloc()
315 return SetErrnoOnNull(MsanAllocate(stack, size, PageSize, false)); in msan_pvalloc()
318 void *msan_aligned_alloc(uptr alignment, uptr size, StackTrace *stack) { in msan_aligned_alloc() argument
323 ReportInvalidAlignedAllocAlignment(size, alignment, stack); in msan_aligned_alloc()
325 return SetErrnoOnNull(MsanAllocate(stack, size, alignment, false)); in msan_aligned_alloc()
328 void *msan_memalign(uptr alignment, uptr size, StackTrace *stack) { in msan_memalign() argument
333 ReportInvalidAllocationAlignment(alignment, stack); in msan_memalign()
335 return SetErrnoOnNull(MsanAllocate(stack, size, alignment, false)); in msan_memalign()
339 StackTrace *stack) { in msan_posix_memalign() argument
343 ReportInvalidPosixMemalignAlignment(alignment, stack); in msan_posix_memalign()
345 void *ptr = MsanAllocate(stack, size, alignment, false); in msan_posix_memalign()