Supported runtime functions

The following standard runtime functions are supported:

Memory management

void free(void *arg)
void *malloc(size_t size)
void *calloc(size_t nmemb, size_t size)
void *realloc(void *ptr, size_t size)
void *memcpy(void *destination, const void *source, size_t num)
void *memset(void *s, int c, size_t n)
int memcmp(const void *s1, const void *s2, size_t n)
void *memmove(void *dest, const void *src, size_t n)
void *operator new(size_t size)
void operator delete(void *arg)

Math (double)

double acos(double x)
double asin(double x)
double atan(double x)
double atan2(double y, double x)
double ceil(double x)
double cos(double x)
double cosh(double x)
double exp(double x)
double fabs(double x)
double floor(double x)
double fmax(double x, double y)
double fmin(double x, double y)
double fmod(double x, double y)
double log(double v)
double log10(double x)
double pow(double x, double y)
double round(double x)
double sin(double x)
double sqrt(double x)
double tan(double x)
double tanh(double x)
double trunc(double x)
double ldexp(double arg, int exp)
double frexp(double arg, int *exp)

Math (float)

float acosf(float x)
float asinf(float x)
float atan2f(float y, float x)
float ceilf(float x)
float cosf(float x)
float fabsf(float x)
float floorf(float x)
float fmaxf(float x, float y)
float fminf(float x, float y)
float fmodf(float x, float y)
float logf(float v)
float log10f(float x)
float powf(float x, float y)
float roundf(float x)
float sinf(float x)
float sqrtf(float x)
float truncf(float x)

Miscellaneous algorithms

int rand(void)
void srand(unsigned int seed)
void qsort(void *base, size_t nmemb, size_t size, int (*compar)(const void*, const void*))

Write data

int printf(const char *format, ...)
int sprintf(char *str, const char *format, ...)
int vsprintf(char *str, const char *format, va_list ap)
int vprintf(const char *format, va_list ap)

String manipulation

int putchar(int c)
int puts(const char *s)
char *strcat(char *dest, const char *src)
char *strcpy(char *dest, const char *src)
int strcmp(const char *s1, const char *s2)
size_t strlen(const char *s)
int strncmp(const char *s1, const char *s2, size_t n)
char *strncpy(char *dest, const char *src, size_t n)