diff options
Diffstat (limited to 'test/FrontendC/2002-07-14-MiscTests3.c')
-rw-r--r-- | test/FrontendC/2002-07-14-MiscTests3.c | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/test/FrontendC/2002-07-14-MiscTests3.c b/test/FrontendC/2002-07-14-MiscTests3.c deleted file mode 100644 index 7ef7e232d9..0000000000 --- a/test/FrontendC/2002-07-14-MiscTests3.c +++ /dev/null @@ -1,187 +0,0 @@ -// RUN: %llvmgcc -w -S %s -o - | llvm-as -o /dev/null - - - -void *malloc(unsigned); - -//#include <stdio.h> -int puts(const char *s); - -struct FunStructTest { - int Test1; - char *Pointer; - int Array[12]; -}; - -struct SubStruct { - short X, Y; -}; - -struct Quad { - int w; - struct SubStruct SS; - struct SubStruct *SSP; - char c; - int y; -}; - -struct Quad GlobalQuad = { 4, {1, 2}, 0, 3, 156 }; - -typedef int (*FuncPtr)(int); - -unsigned PtrFunc(int (*Func)(int), int X) { - return Func(X); -} - -char PtrFunc2(FuncPtr FuncTab[30], int Num) { - return FuncTab[Num]('b'); -} - -extern char SmallArgs2(char w, char x, long long Zrrk, char y, char z); -extern int SomeFunc(void); -char SmallArgs(char w, char x, char y, char z) { - SomeFunc(); - return SmallArgs2(w-1, x+1, y, z, w); -} - -static int F0(struct Quad Q, int i) { /* Pass Q by value */ - struct Quad R; - if (i) R.SS = Q.SS; - Q.SSP = &R.SS; - Q.w = Q.y = Q.c = 1; - return Q.SS.Y + i + R.y - Q.c; -} - -int F1(struct Quad *Q, int i) { /* Pass Q by address */ - struct Quad R; -#if 0 - if (i) R.SS = Q->SS; -#else - if (i) R = *Q; -#endif - Q->w = Q->y = Q->c = 1; - return Q->SS.Y+i+R.y-Q->c; -} - - -int BadFunc(float Val) { - int Result; - if (Val > 12.345) Result = 4; - return Result; /* Test use of undefined value */ -} - -int RealFunc(void) { - return SomeUndefinedFunction(1, 4, 5); -} - -extern int EF1(int *, char *, int *); - -int Func(int Param, long long Param2) { - int Result = Param; - - {{{{ - char c; int X; - EF1(&Result, &c, &X); - }}} - - { // c & X are duplicate names! - char c; int X; - EF1(&Result, &c, &X); - } - - } - return Result; -} - - -short FunFunc(long long x, char z) { - return x+z; -} - -unsigned castTest(int X) { return X; } - -double TestAdd(double X, float Y) { - return X+Y+.5; -} - -int func(int i, int j) { - while (i != 20) - i += 2; - - j += func(2, i); - return (i * 3 + j*2)*j; -} - -int SumArray(int Array[], int Num) { - int i, Result = 0; - for (i = 0; i < Num; ++i) - Result += Array[i]; - - return Result; -} - -int ArrayParam(int Values[100]) { - return EF1((int*)Values[50], (char*)1, &Values[50]); -} - -int ArrayToSum(void) { - int A[100], i; - for (i = 0; i < 100; ++i) - A[i] = i*4; - - return A[A[0]]; //SumArray(A, 100); -} - - -int ExternFunc(long long, unsigned*, short, unsigned char); - -int main(int argc, char *argv[]) { - unsigned i; - puts("Hello world!\n"); - - ExternFunc(-1, 0, (short)argc, 2); - //func(argc, argc); - - for (i = 0; i < 10; i++) - puts(argv[3]); - return 0; -} - -double MathFunc(double X, double Y, double Z, - double AA, double BB, double CC, double DD, - double EE, double FF, double GG, double HH, - double aAA, double aBB, double aCC, double aDD, - double aEE, double aFF) { - return X + Y + Z + AA + BB + CC + DD + EE + FF + GG + HH - + aAA + aBB + aCC + aDD + aEE + aFF; -} - - - -void strcpy(char *s1, char *s2) { - while (*s1++ = *s2++); -} - -void strcat(char *s1, char *s2) { - while (*s1++); - s1--; - while (*s1++ = *s2++); -} - -int strcmp(char *s1, char *s2) { - while (*s1++ == *s2++); - if (*s1 == 0) { - if (*s2 == 0) { - return 0; - } else { - return -1; - } - } else { - if (*s2 == 0) { - return 1; - } else { - return (*(--s1) - *(--s2)); - } - } -} - |