1 static int add(int x, int y) 2 { 3 return x + y; 4 } 5 6 static unsigned int uadd(unsigned int x, unsigned int y) 7 { 8 return x + y; 9 } 10 11 static float fadd(float x, float y) 12 { 13 return x + y; 14 } 15 16 static double dadd(double x, double y) 17 { 18 return x + y; 19 } 20 21 static int sub(int x, int y) 22 { 23 return x - y; 24 } 25 26 static unsigned int usub(unsigned int x, unsigned int y) 27 { 28 return x - y; 29 } 30 31 static float fsub(float x, float y) 32 { 33 return x - y; 34 } 35 36 static double dsub(double x, double y) 37 { 38 return x - y; 39 } 40 41 static int mul(int x, int y) 42 { 43 return x * y; 44 } 45 46 static unsigned int umul(unsigned int x, unsigned int y) 47 { 48 return x * y; 49 } 50 51 static float fmul(float x, float y) 52 { 53 return x * y; 54 } 55 56 static double dmul(double x, double y) 57 { 58 return x * y; 59 } 60 61 static int div(int x, int y) 62 { 63 return x / y; 64 } 65 66 static unsigned int udiv(unsigned int x, unsigned int y) 67 { 68 return x / y; 69 } 70 71 static float fdiv(float x, float y) 72 { 73 return x / y; 74 } 75 76 static double ddiv(double x, double y) 77 { 78 return x / y; 79 } 80 81 static int mod(int x, int y) 82 { 83 return x % y; 84 } 85 86 static unsigned int umod(unsigned int x, unsigned int y) 87 { 88 return x % y; 89 } 90 91 static int neg(int x) 92 { 93 return -x; 94 } 95 96 static unsigned int uneg(unsigned int x) 97 { 98 return -x; 99 } 100 101 static float fneg(float x) 102 { 103 return -x; 104 } 105 106 static double dneg(double x) 107 { 108 return -x; 109 } 110 111 /* 112 * check-name: Arithmetic operator code generation 113 * check-command: sparsec -c $file -o tmp.o 114 */