14#define __UCONCAT(a, b) #a b
15#define _UCONCAT(a, b) __UCONCAT(a, b)
16#define UCONCAT(b) _UCONCAT(__USER_LABEL_PREFIX__, b)
28extern void *(*_FP_Mem_Malloc)(
size_t size) __asm__ (UCONCAT(
"Mem_Malloc")) __attribute__((alloc_size(1), warn_unused_result));
38static void *Mem_Malloc(
size_t size) __asm__ (UCONCAT(
"Mem_Malloc_Wrapper")) __attribute__((malloc, alloc_size(1), assume_aligned(4), unused, warn_unused_result));
39void *Mem_Malloc(
size_t size) {
40 return _FP_Mem_Malloc(size);
54extern void *(*Mem_Memcpy)(
void *destination,
const void *source,
size_t num)
56__attribute__((access(read_only, 2, 3), access(write_only, 1, 3)))
72extern void *(*Mem_Memset)(
void *ptr,
int value,
size_t num)
74__attribute__((access(write_only, 1, 3)))
void(* Mem_Free)(void *ptr)