| #ifndef BIOS_STRING_H |
| #define BIOS_STRING_H |
| |
| #include <stddef.h> |
| |
| unsigned long strlen(const char *buf); |
| char *strcat(char *dest, const char *src); |
| char *strcpy(char *dest, const char *src); |
| int strcmp(const char *a, const char *b); |
| char *strchr(const char *s, int c); |
| char *strstr(const char *s1, const char *s2); |
| int memcmp(const void *s1, const void *s2, size_t n); |
| void *memmove(void *dest, const void *src, size_t n); |
| void *memchr(const void *s, int c, size_t n); |
| |
| static inline void *memset(void *s, int c, size_t n) |
| { |
| return __builtin_memset(s, c, n); |
| } |
| |
| static inline void *memcpy(void *dest, const void *src, size_t n) |
| { |
| return __builtin_memcpy(dest, src, n); |
| } |
| |
| void *malloc_align(int n, int align); |
| void *malloc_fseg_align(int n, int align); |
| |
| static inline void *malloc(int n) |
| { |
| return malloc_align(n, 16); |
| } |
| |
| static inline void *malloc_fseg(int n) |
| { |
| return malloc_fseg_align(n, 16); |
| } |
| #endif |