I removed the XMM6/7 registers from the register list because they are not used on Win64 however they are necessary for parameter passing on x86-64. I have now restored them but not marked them with RC_FLOAT so they will not be used except for parameter passing.
Showing the changes to include (1 of 10 files). Show all
Unified · Split
| @@ -1,78 +0,0 @@ | ||
| 1 | −/* Simple libc header for TCC | |
| 2 | − * | |
| 3 | − * Add any function you want from the libc there. This file is here | |
| 4 | − * only for your convenience so that you do not need to put the whole | |
| 5 | − * glibc include files on your floppy disk | |
| 6 | − */ | |
| 7 | −#ifndef _TCCLIB_H | |
| 8 | −#define _TCCLIB_H | |
| 9 | − | |
| 10 | −#include <stddef.h> | |
| 11 | −#include <stdarg.h> | |
| 12 | − | |
| 13 | −/* stdlib.h */ | |
| 14 | −void *calloc(size_t nmemb, size_t size); | |
| 15 | −void *malloc(size_t size); | |
| 16 | −void free(void *ptr); | |
| 17 | −void *realloc(void *ptr, size_t size); | |
| 18 | −int atoi(const char *nptr); | |
| 19 | −long int strtol(const char *nptr, char **endptr, int base); | |
| 20 | −unsigned long int strtoul(const char *nptr, char **endptr, int base); | |
| 21 | −void exit(int); | |
| 22 | − | |
| 23 | −/* stdio.h */ | |
| 24 | −typedef struct __FILE FILE; | |
| 25 | −#define EOF (-1) | |
| 26 | −extern FILE *stdin; | |
| 27 | −extern FILE *stdout; | |
| 28 | −extern FILE *stderr; | |
| 29 | −FILE *fopen(const char *path, const char *mode); | |
| 30 | −FILE *fdopen(int fildes, const char *mode); | |
| 31 | −FILE *freopen(const char *path, const char *mode, FILE *stream); | |
| 32 | −int fclose(FILE *stream); | |
| 33 | −size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream); | |
| 34 | −size_t fwrite(void *ptr, size_t size, size_t nmemb, FILE *stream); | |
| 35 | −int fgetc(FILE *stream); | |
| 36 | −char *fgets(char *s, int size, FILE *stream); | |
| 37 | −int getc(FILE *stream); | |
| 38 | −int getchar(void); | |
| 39 | −char *gets(char *s); | |
| 40 | −int ungetc(int c, FILE *stream); | |
| 41 | −int fflush(FILE *stream); | |
| 42 | − | |
| 43 | −int printf(const char *format, ...); | |
| 44 | −int fprintf(FILE *stream, const char *format, ...); | |
| 45 | −int sprintf(char *str, const char *format, ...); | |
| 46 | −int snprintf(char *str, size_t size, const char *format, ...); | |
| 47 | −int asprintf(char **strp, const char *format, ...); | |
| 48 | −int dprintf(int fd, const char *format, ...); | |
| 49 | −int vprintf(const char *format, va_list ap); | |
| 50 | −int vfprintf(FILE *stream, const char *format, va_list ap); | |
| 51 | −int vsprintf(char *str, const char *format, va_list ap); | |
| 52 | −int vsnprintf(char *str, size_t size, const char *format, va_list ap); | |
| 53 | −int vasprintf(char **strp, const char *format, va_list ap); | |
| 54 | −int vdprintf(int fd, const char *format, va_list ap); | |
| 55 | − | |
| 56 | −void perror(const char *s); | |
| 57 | − | |
| 58 | −/* string.h */ | |
| 59 | −char *strcat(char *dest, const char *src); | |
| 60 | −char *strchr(const char *s, int c); | |
| 61 | −char *strrchr(const char *s, int c); | |
| 62 | −char *strcpy(char *dest, const char *src); | |
| 63 | −void *memcpy(void *dest, const void *src, size_t n); | |
| 64 | −void *memmove(void *dest, const void *src, size_t n); | |
| 65 | −void *memset(void *s, int c, size_t n); | |
| 66 | −char *strdup(const char *s); | |
| 67 | − | |
| 68 | −/* dlfcn.h */ | |
| 69 | −#define RTLD_LAZY 0x001 | |
| 70 | −#define RTLD_NOW 0x002 | |
| 71 | −#define RTLD_GLOBAL 0x100 | |
| 72 | − | |
| 73 | −void *dlopen(const char *filename, int flag); | |
| 74 | −const char *dlerror(void); | |
| 75 | −void *dlsym(void *handle, char *symbol); | |
| 76 | −int dlclose(void *handle); | |
| 77 | − | |
| 78 | −#endif /* _TCCLIB_H */ | |