11bb92983SJerome Forissier /* SPDX-License-Identifier: BSD-2-Clause */ 2b0104773SPascal Brand /* 3b0104773SPascal Brand * Copyright (c) 2014, STMicroelectronics International N.V. 4b0104773SPascal Brand */ 5b0104773SPascal Brand 6b0104773SPascal Brand /* 7b0104773SPascal Brand * This file provides what C99 standard requires for <stdlib.h> in 8b0104773SPascal Brand * 7.20.3 Memory management functions 9b0104773SPascal Brand */ 10b0104773SPascal Brand 11*7eaed3a3SEtienne Carriere #ifndef __STDLIB_H 12*7eaed3a3SEtienne Carriere #define __STDLIB_H 13b0104773SPascal Brand 14c113066fSJens Wiklander #include <compiler.h> 15b0104773SPascal Brand #include <stddef.h> 16b0104773SPascal Brand #include <malloc.h> 17b0104773SPascal Brand 18b0104773SPascal Brand void 19b0104773SPascal Brand qsort(void *aa, size_t n, size_t es, int (*cmp)(const void *, const void *)); 20b0104773SPascal Brand 21c113066fSJens Wiklander void abort(void) __noreturn; 22c113066fSJens Wiklander 23a31f13fbSJens Wiklander int abs(int i); 24a31f13fbSJens Wiklander 25433c4257SJens Wiklander /* The largest number returned by rand() */ 26433c4257SJens Wiklander #define RAND_MAX __INT_MAX__ 27433c4257SJens Wiklander int rand(void); 28433c4257SJens Wiklander 29b38854bdSBryan O'Donoghue unsigned long _strtoul (const char *nptr, char **endptr, int base); 30b38854bdSBryan O'Donoghue unsigned long strtoul (const char *s, char **ptr, int base); 31b38854bdSBryan O'Donoghue 32*7eaed3a3SEtienne Carriere #endif /* __STDLIB_H */ 33