Add some functionality to the IntrinsicInst class and some comments
[oota-llvm.git] / runtime / libdummy / dummylib.c
index cc43cd9b21841ded9b5f26b5092e865cbe517ca4..aa104f8f8aa930c32ce89e45b5dfb23ad0f3e53f 100644 (file)
@@ -1,7 +1,27 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <time.h>
+#include <stdarg.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
 
+#if 0
+int stat(const char *file_name, struct stat *buf) { return 0; }
+int fstat(int filedes, struct stat *buf) { return 0; }
+int lstat(const char *file_name, struct stat *buf) { return 0; }
+
+// Varargs function definitions
+int ioctl(int d, int request, ...) {return 0; }
+int printf(const char *X) {return 0; }
+int sscanf(const char *X, const char *Y, ...) { return 0; }
+int fprintf(FILE *stream, const char *format, ...) { return 0; }
+
+
+int gettimeofday(struct timeval *tv, void *tz) { return 0; }
+void *xmalloc(size_t X) { return malloc(X); }
+  
 void srand(unsigned x) {}
 double exp(double x) { return 0; }
 double log(double x) { return 0; }
@@ -11,21 +31,36 @@ int puts(const char *x) { return 0; }
 void __main() {}
 int atoi(const char*x) { return 1; }
 char *fgets(char*Ptr, int x, FILE*F) { return Ptr; }
+char *gets(char *C) { return C; }
 int fclose(FILE*F) { return 0; }
 FILE *fopen(const char *n, const char*x) { return malloc(sizeof(FILE)); }
+FILE *freopen(const char *path, const char *mode, FILE *stream) { return 0; }
 int fflush(FILE *F) { return 0; }
 size_t fwrite(const void* str, size_t N, size_t n, FILE *F) { return N; }
 void *memset(void *P, int X, size_t N) { return P; }
+void *memcpy(void *P, void *S, size_t N) { return P; }
+void *memmove(void *P, void *S, size_t N) { return P; }
 char *strcpy(char*Str1, const char *Str) { return Str1; }
+char *strcat(char*Str1, const char *Str) { return Str1; }
+size_t strlen(char *X) { return 0; }
 #undef putchar
 int putchar(int N) { return N; }
 int putc(int c, FILE *stream) { return c; }
 int fputc(int c, FILE *stream) { return c; }
 int fgetc(FILE *S) { return 0; }
+long ftell(FILE *F) { return 0; }
 int getc(FILE *S) { return 0; }
 size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream) { return 0; }
 int fseek(FILE *stream, long offset, int whence) { return 0; }
-int fputs(const char *s, FILE *stream) { return 0; }
+int feof(FILE *stream) { return 0; }
+int fputs(const char *s, char *stream) { return 0; }
+int ferror(FILE *F) { return 0; }
+FILE *fdopen(int fildes, const char *mode) { return 0;}
+FILE *popen(const char *command, const char *type) { return 0; }
+int pclose(FILE *stream) { return 0; }
+int ungetc(int c, FILE *stream) { return 0; }
+int setvbuf(FILE *stream, char *buf, int mode , size_t size) { return 0; }
 void rewind(FILE*F) { }
 int fileno(FILE *stream) { return 1; }
 char *ttyname(int desc) { return 0; }
@@ -47,6 +82,14 @@ pid_t getpid(void) { return 0; }
 pid_t getppid(void) { return 0; }
 void setbuf(FILE *stream, char *buf) {}
 int isatty(int desc) { return 0; }
+int vsprintf(char *str, const char *format, va_list ap) { return 0; }
+char *getcwd(char *buf, size_t size) { return buf; }
+
+void qsort(void *base, size_t nmemb, size_t size,
+           int(*compar)(const void *, const void *)) {
+  compar(base, base);
+}
+
 
 
 #include <sys/times.h>
@@ -73,6 +116,8 @@ char *strncpy(char *s1, const char *s2, size_t n) { return s1; }
 char *strpbrk(const char *s, const char *accept) { return (char*)s; }
 char *strncat(char *dest, const char *src, size_t n) { return dest; }
 
+double atof(const char *C) { return 0; }
+
 
 long clock() { return 0; }
 char *ctime(const time_t *timep) { return 0; }
@@ -80,8 +125,20 @@ time_t time(time_t *t) { return *t = 0; }
 
 double sin(double x) { return x; }
 double cos(double x) { return x; }
+double tan(double x) { return x; }
+double asin(double x) { return x; }
+double acos(double x) { return x; }
 double atan(double x) { return x; }
+double cosh(double x) { return x; }
+double sinh(double x) { return x; }
+double ceil(double x) { return x; }
+double floor(double x) { return x; }
+
+double atan2(double x, double y) { return x; }
+double fmod(double x, double y) { return x; }
 double pow(double x, double y) { return x; }
+
 int tolower(int x) { return x; }
 int toupper(int x) { return x; }
 
+#endif