Function stack requirements

Table 1 lists the stack frame requirements for each Metal C runtime function. All sizes are in bytes.

Table 1. Stack frame requirements for Metal C runtime functions
Function AMODE 31 stack size AMODE 64 stack size
abs 256 512
atoi 256 512
atol 256 512
atoll 1280 1536
calloc 1024 1536
__cinit 512 512
__cterm 1024 1024
div 256 512
free 512 1536
isalnum 256 512
isalpha 256 512
isblank 256 512
iscntrl 256 512
isdigit 256 512
isgraph 256 512
islower 256 512
isprint 256 512
ispunct 256 512
isspace 256 512
isupper 256 512
isxdigit 256 512
labs 256 512
ldiv 256 512
llabs 512 512
lldiv 512 512
malloc 768 1024
__malloc31 768 1024
memccpy 512 512
memchr 512 512
memcmp 512 512
memcpy 512 512
memmove 512 512
memset 256 512
qsort 12801 17921
rand 256 512
rand_r 256 512
realloc 1024 2048
snprintf 3072 3584
snprintf when using e, E, f, F, g, G conversion specifiers 32000 32768
snprintf when using e, E, f, F, g, G conversion specifiers with the L conversion prefix 48896 49920
sprintf 3072 3584
sprintf when using e, E, f, F, g, G conversion specifiers 32000 32768
sprintf when using e, E, f, F, g, G conversion specifiers with the L conversion prefix 48896 49920
srand 256 512
sscanf 2304 2560
sscanf when using e, E, f, F, g, G conversion specifiers 4864 5632
sscanf when using e, E, f, F, g, G conversion specifiers 5888 6656
sscanf when using e, E, f, F, g, G conversion specifiers with the L conversion prefix 23040 23552
strcat 512 512
strchr 512 512
strcmp 512 512
strcpy 512 512
strcspn 768 768
strdup 1024 1536
strlen 512 512
strncat 512 512
strncmp 512 512
strncpy 512 512
strpbrk 768 768
strrchr 512 512
strspn 768 768
strstr 512 512
strtod 4096 4352
strtof 3072 3328
strtok 768 1024
strtok_r 1024 1536
strtol 1024 1024
strtold 21248 21248
strtoll 1024 1024
strtoul 1024 1024
strtoull 768 1024
tolower 256 512
toupper 256 512
vsnprintf 3072 3584
vsnprintf when using e, E, f, F, g, G conversion specifiers 32000 32768
vsnprintf when using e, E, f, F, g, G conversion specifiers with the L conversion prefix 48896 49920
vsprintf 3072 3584
vsprintf when using e, E, f, F, g, G conversion specifiers 32000 32768
vsprintf when using e, E, f, F, g, G conversion specifiers with the L conversion prefix 48896 49920
vsscanf 2304 2560
vsscanf when using e, E, f, F, g, G conversion specifiers 4864 5632
vsscanf when using e, E, f, F, g, G conversion specifiers with the l conversion prefix 5888 6656
vsscanf when using e, E, f, F, g, G conversion specifiers with the L conversion prefix 23040 23552
Note: You must add the stack size of the comparison function you supply to the base value.