1 /* Function definitions that are used by multiple tests. */ 2 3 #define CHECKS(NAME,TYPEM) \ 4 void checkS##NAME##1 (S##NAME##1 x, TYPEM y) \ 5 { if (x.a != y) DEBUG_CHECK } \ 6 void checkS##NAME##2 (S##NAME##2 x, TYPEM y) \ 7 { if (x.a != y || x.b != y+1 ) DEBUG_CHECK } \ 8 void checkS##NAME##3 (S##NAME##3 x, TYPEM y) \ 9 { if (x.a != y || x.b != y+1 || x.c != y+2 ) \ 10 DEBUG_CHECK } \ 11 void checkS##NAME##4 (S##NAME##4 x, TYPEM y) \ 12 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3) \ 13 DEBUG_CHECK } \ 14 void checkS##NAME##5 (S##NAME##5 x, TYPEM y) \ 15 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 16 || x.e != y+4) DEBUG_CHECK } \ 17 void checkS##NAME##6 (S##NAME##6 x, TYPEM y) \ 18 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 19 || x.e != y+4 || x.f != y+5) DEBUG_CHECK } \ 20 void checkS##NAME##7 (S##NAME##7 x, TYPEM y) \ 21 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 22 || x.e != y+4 || x.f != y+5 || x.g != y+6) \ 23 DEBUG_CHECK } \ 24 void checkS##NAME##8 (S##NAME##8 x, TYPEM y) \ 25 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 26 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 27 || x.h != y+7) DEBUG_CHECK } \ 28 void checkS##NAME##9 (S##NAME##9 x, TYPEM y) \ 29 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 30 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 31 || x.h != y+7 || x.i != y+8) DEBUG_CHECK } \ 32 void checkS##NAME##10 (S##NAME##10 x, TYPEM y) \ 33 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 34 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 35 || x.h != y+7 || x.i != y+8 || x.j != y+9) \ 36 DEBUG_CHECK } \ 37 void checkS##NAME##11 (S##NAME##11 x, TYPEM y) \ 38 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 39 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 40 || x.h != y+7 || x.i != y+8 || x.j != y+9 \ 41 || x.k != y+10) DEBUG_CHECK } \ 42 void checkS##NAME##12 (S##NAME##12 x, TYPEM y) \ 43 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 44 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 45 || x.h != y+7 || x.i != y+8 || x.j != y+9 \ 46 || x.k != y+10 || x.l != y+11) DEBUG_CHECK } \ 47 void checkS##NAME##13 (S##NAME##13 x, TYPEM y) \ 48 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 49 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 50 || x.h != y+7 || x.i != y+8 || x.j != y+9 \ 51 || x.k != y+10 || x.l != y+11 || x.m != y+12) \ 52 DEBUG_CHECK } \ 53 void checkS##NAME##14 (S##NAME##14 x, TYPEM y) \ 54 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 55 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 56 || x.h != y+7 || x.i != y+8 || x.j != y+9 \ 57 || x.k != y+10 || x.l != y+11 || x.m != y+12 \ 58 || x.n != y+13) DEBUG_CHECK } \ 59 void checkS##NAME##15 (S##NAME##15 x, TYPEM y) \ 60 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 61 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 62 || x.h != y+7 || x.i != y+8 || x.j != y+9 \ 63 || x.k != y+10 || x.l != y+11 || x.m != y+12 \ 64 || x.n != y+13 || x.o != y+14) DEBUG_CHECK } \ 65 void checkS##NAME##16 (S##NAME##16 x, TYPEM y) \ 66 { if (x.a != y || x.b != y+1 || x.c != y+2 || x.d != y+3 \ 67 || x.e != y+4 || x.f != y+5 || x.g != y+6 \ 68 || x.h != y+7 || x.i != y+8 || x.j != y+9 \ 69 || x.k != y+10 || x.l != y+11 || x.m != y+12 \ 70 || x.n != y+13 || x.o != y+14 || x.p != y+15) \ 71 DEBUG_CHECK } 72