Lines Matching defs:stack
185 static void *MsanAllocate(BufferedStackTrace *stack, uptr size, uptr alignment,
192 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
193 ReportAllocationSizeTooBig(size, max_malloc_size, stack);
198 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
199 ReportRssLimitExceeded(stack);
215 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
216 ReportOutOfMemory(size, stack);
228 stack->tag = StackTrace::TAG_ALLOC;
229 Origin o = Origin::CreateHeapOrigin(stack);
238 void __msan::MsanDeallocate(BufferedStackTrace *stack, void *p) {
252 stack->tag = StackTrace::TAG_DEALLOC;
253 Origin o = Origin::CreateHeapOrigin(stack);
267 static void *MsanReallocate(BufferedStackTrace *stack, void *old_p,
277 stack->tag = StackTrace::TAG_ALLOC;
278 PoisonMemory((char *)old_p + old_size, new_size - old_size, stack);
284 void *new_p = MsanAllocate(stack, new_size, alignment, false);
286 CopyMemory(new_p, old_p, memcpy_size, stack);
287 MsanDeallocate(stack, old_p);
292 static void *MsanCalloc(BufferedStackTrace *stack, uptr nmemb, uptr size) {
296 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
297 ReportCallocOverflow(nmemb, size, stack);
299 return MsanAllocate(stack, nmemb * size, sizeof(u64), true);
329 void *__msan::msan_malloc(uptr size, BufferedStackTrace *stack) {
330 return SetErrnoOnNull(MsanAllocate(stack, size, sizeof(u64), false));
333 void *__msan::msan_calloc(uptr nmemb, uptr size, BufferedStackTrace *stack) {
334 return SetErrnoOnNull(MsanCalloc(stack, nmemb, size));
337 void *__msan::msan_realloc(void *ptr, uptr size, BufferedStackTrace *stack) {
339 return SetErrnoOnNull(MsanAllocate(stack, size, sizeof(u64), false));
341 MsanDeallocate(stack, ptr);
344 return SetErrnoOnNull(MsanReallocate(stack, ptr, size, sizeof(u64)));
348 BufferedStackTrace *stack) {
353 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
354 ReportReallocArrayOverflow(nmemb, size, stack);
356 return msan_realloc(ptr, nmemb * size, stack);
359 void *__msan::msan_valloc(uptr size, BufferedStackTrace *stack) {
360 return SetErrnoOnNull(MsanAllocate(stack, size, GetPageSizeCached(), false));
363 void *__msan::msan_pvalloc(uptr size, BufferedStackTrace *stack) {
369 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
370 ReportPvallocOverflow(size, stack);
374 return SetErrnoOnNull(MsanAllocate(stack, size, PageSize, false));
378 BufferedStackTrace *stack) {
383 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
384 ReportInvalidAlignedAllocAlignment(size, alignment, stack);
386 return SetErrnoOnNull(MsanAllocate(stack, size, alignment, false));
390 BufferedStackTrace *stack) {
395 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
396 ReportInvalidAllocationAlignment(alignment, stack);
398 return SetErrnoOnNull(MsanAllocate(stack, size, alignment, false));
402 BufferedStackTrace *stack) {
406 GET_FATAL_STACK_TRACE_IF_EMPTY(stack);
407 ReportInvalidPosixMemalignAlignment(alignment, stack);
409 void *ptr = MsanAllocate(stack, size, alignment, false);