blob: e5e255de3ef5f1f1da8ae899f245514af41a2415 [file] [log] [blame]
Chris Lattnerf3cffa12003-01-17 19:09:29 +00001#include <stdio.h>
2#include <stdlib.h>
3#include <time.h>
Chris Lattnercbf2a3e2003-02-01 04:51:12 +00004#include <stdarg.h>
5#include <sys/time.h>
Chris Lattnerf3cffa12003-01-17 19:09:29 +00006
Chris Lattnercbf2a3e2003-02-01 04:51:12 +00007int gettimeofday(struct timeval *tv, void *tz) { return 0; }
8
Chris Lattnerf3cffa12003-01-17 19:09:29 +00009void srand(unsigned x) {}
10double exp(double x) { return 0; }
11double log(double x) { return 0; }
12double sqrt(double x) { return 0; }
13void exit(int x) {}
14int puts(const char *x) { return 0; }
15void __main() {}
16int atoi(const char*x) { return 1; }
17char *fgets(char*Ptr, int x, FILE*F) { return Ptr; }
18int fclose(FILE*F) { return 0; }
19FILE *fopen(const char *n, const char*x) { return malloc(sizeof(FILE)); }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +000020FILE *freopen(const char *path, const char *mode, FILE *stream) { return 0; }
Chris Lattnerf3cffa12003-01-17 19:09:29 +000021int fflush(FILE *F) { return 0; }
22size_t fwrite(const void* str, size_t N, size_t n, FILE *F) { return N; }
23void *memset(void *P, int X, size_t N) { return P; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +000024void *memcpy(void *P, void *S, size_t N) { return P; }
25void *memmove(void *P, void *S, size_t N) { return P; }
Chris Lattnerf3cffa12003-01-17 19:09:29 +000026char *strcpy(char*Str1, const char *Str) { return Str1; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +000027char *strcat(char*Str1, const char *Str) { return Str1; }
28size_t strlen(char *X) { return 0; }
Chris Lattnerf3cffa12003-01-17 19:09:29 +000029#undef putchar
30int putchar(int N) { return N; }
31int putc(int c, FILE *stream) { return c; }
32int fputc(int c, FILE *stream) { return c; }
33int fgetc(FILE *S) { return 0; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +000034long ftell(FILE *F) { return 0; }
Chris Lattnerf3cffa12003-01-17 19:09:29 +000035int getc(FILE *S) { return 0; }
36size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream) { return 0; }
37int fseek(FILE *stream, long offset, int whence) { return 0; }
38int fputs(const char *s, FILE *stream) { return 0; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +000039int ferror(FILE *F) { return 0; }
40FILE *fdopen(int fildes, const char *mode) { return 0;}
41int ungetc(int c, FILE *stream) { return 0; }
42int setvbuf(FILE *stream, char *buf, int mode , size_t size) { return 0; }
Chris Lattnerf3cffa12003-01-17 19:09:29 +000043void rewind(FILE*F) { }
44int fileno(FILE *stream) { return 1; }
45char *ttyname(int desc) { return 0; }
46long sysconf(int name) { return 0; }
47char *tmpnam(char *s) { return s; }
48
49void *calloc(size_t A, size_t B) { return malloc(A*B); }
50void *realloc(void *ptr, size_t N) { return ptr; }
51const char *strerror(int N) { return 0; }
52int unlink(const char *path) { return 0; }
53void perror(const char *err) {}
54char *strrchr(const char *S, int C) { return (char*)S; }
55int memcmp(const char *A, const char *B, size_t N) { return 0; }
56ssize_t read(int fildes, void *buf, size_t nbyte) { return nbyte; }
57int close(int FD) { return 0; }
58int rename(const char *oldpath, const char *newpath) { return 0; }
59ssize_t write(int fd, const void *buf, size_t count) { return 0; }
60pid_t getpid(void) { return 0; }
61pid_t getppid(void) { return 0; }
62void setbuf(FILE *stream, char *buf) {}
63int isatty(int desc) { return 0; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +000064int vsprintf(char *str, const char *format, va_list ap) { return 0; }
65char *getcwd(char *buf, size_t size) { return buf; }
66
67void qsort(void *base, size_t nmemb, size_t size,
68 int(*compar)(const void *, const void *)) {
69 compar(base, base);
70}
71
Chris Lattnerf3cffa12003-01-17 19:09:29 +000072
73
74#include <sys/times.h>
75clock_t times(struct tms *buf) { return 0; }
76
77
78#include <setjmp.h>
79int setjmp(jmp_buf env) { return 0; }
80void longjmp(jmp_buf env, int val) {}
81int kill(pid_t pid, int sig) { return 0; }
82int system(const char *string) { return 0; }
83char *getenv(const char *name) { return 0; }
84typedef void (*sighandler_t)(int);
85
86sighandler_t signal(int signum, sighandler_t handler) { return handler; }
87
88
89
90
91char *strchr(const char *s, int c) { return (char*)s; }
92int strcmp(const char *s1, const char *s2) { return 0; }
93int strncmp(const char *s1, const char *s2, size_t n) { return 0; }
94char *strncpy(char *s1, const char *s2, size_t n) { return s1; }
95char *strpbrk(const char *s, const char *accept) { return (char*)s; }
96char *strncat(char *dest, const char *src, size_t n) { return dest; }
97
Chris Lattnercbf2a3e2003-02-01 04:51:12 +000098double atof(const char *C) { return 0; }
99
Chris Lattnerf3cffa12003-01-17 19:09:29 +0000100
101long clock() { return 0; }
102char *ctime(const time_t *timep) { return 0; }
103time_t time(time_t *t) { return *t = 0; }
104
105double sin(double x) { return x; }
106double cos(double x) { return x; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +0000107double tan(double x) { return x; }
108double asin(double x) { return x; }
109double acos(double x) { return x; }
Chris Lattnerf3cffa12003-01-17 19:09:29 +0000110double atan(double x) { return x; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +0000111double cosh(double x) { return x; }
112double sinh(double x) { return x; }
113double ceil(double x) { return x; }
114double floor(double x) { return x; }
115
116double atan2(double x, double y) { return x; }
117double fmod(double x, double y) { return x; }
Chris Lattnerf3cffa12003-01-17 19:09:29 +0000118double pow(double x, double y) { return x; }
Chris Lattnercbf2a3e2003-02-01 04:51:12 +0000119
Chris Lattnerf3cffa12003-01-17 19:09:29 +0000120int tolower(int x) { return x; }
121int toupper(int x) { return x; }
122