1 /* PR middle-end/17894 */ 2 3 extern void abort(void); 4 test1(int x)5int test1(int x) 6 { 7 return x/-10 == 2; 8 } 9 test2(int x)10int test2(int x) 11 { 12 return x/-10 == 0; 13 } 14 test3(int x)15int test3(int x) 16 { 17 return x/-10 != 2; 18 } 19 test4(int x)20int test4(int x) 21 { 22 return x/-10 != 0; 23 } 24 test5(int x)25int test5(int x) 26 { 27 return x/-10 < 2; 28 } 29 test6(int x)30int test6(int x) 31 { 32 return x/-10 < 0; 33 } 34 test7(int x)35int test7(int x) 36 { 37 return x/-10 <= 2; 38 } 39 test8(int x)40int test8(int x) 41 { 42 return x/-10 <= 0; 43 } 44 test9(int x)45int test9(int x) 46 { 47 return x/-10 > 2; 48 } 49 test10(int x)50int test10(int x) 51 { 52 return x/-10 > 0; 53 } 54 test11(int x)55int test11(int x) 56 { 57 return x/-10 >= 2; 58 } 59 test12(int x)60int test12(int x) 61 { 62 return x/-10 >= 0; 63 } 64 65 main()66int main() 67 { 68 if (test1(-30) != 0) 69 abort (); 70 if (test1(-29) != 1) 71 abort (); 72 if (test1(-20) != 1) 73 abort (); 74 if (test1(-19) != 0) 75 abort (); 76 77 if (test2(0) != 1) 78 abort (); 79 if (test2(9) != 1) 80 abort (); 81 if (test2(10) != 0) 82 abort (); 83 if (test2(-1) != 1) 84 abort (); 85 if (test2(-9) != 1) 86 abort (); 87 if (test2(-10) != 0) 88 abort (); 89 90 if (test3(-30) != 1) 91 abort (); 92 if (test3(-29) != 0) 93 abort (); 94 if (test3(-20) != 0) 95 abort (); 96 if (test3(-19) != 1) 97 abort (); 98 99 if (test4(0) != 0) 100 abort (); 101 if (test4(9) != 0) 102 abort (); 103 if (test4(10) != 1) 104 abort (); 105 if (test4(-1) != 0) 106 abort (); 107 if (test4(-9) != 0) 108 abort (); 109 if (test4(-10) != 1) 110 abort (); 111 112 if (test5(-30) != 0) 113 abort (); 114 if (test5(-29) != 0) 115 abort (); 116 if (test5(-20) != 0) 117 abort (); 118 if (test5(-19) != 1) 119 abort (); 120 121 if (test6(0) != 0) 122 abort (); 123 if (test6(9) != 0) 124 abort (); 125 if (test6(10) != 1) 126 abort (); 127 if (test6(-1) != 0) 128 abort (); 129 if (test6(-9) != 0) 130 abort (); 131 if (test6(-10) != 0) 132 abort (); 133 134 if (test7(-30) != 0) 135 abort (); 136 if (test7(-29) != 1) 137 abort (); 138 if (test7(-20) != 1) 139 abort (); 140 if (test7(-19) != 1) 141 abort (); 142 143 if (test8(0) != 1) 144 abort (); 145 if (test8(9) != 1) 146 abort (); 147 if (test8(10) != 1) 148 abort (); 149 if (test8(-1) != 1) 150 abort (); 151 if (test8(-9) != 1) 152 abort (); 153 if (test8(-10) != 0) 154 abort (); 155 156 if (test9(-30) != 1) 157 abort (); 158 if (test9(-29) != 0) 159 abort (); 160 if (test9(-20) != 0) 161 abort (); 162 if (test9(-19) != 0) 163 abort (); 164 165 if (test10(0) != 0) 166 abort (); 167 if (test10(9) != 0) 168 abort (); 169 if (test10(10) != 0) 170 abort (); 171 if (test10(-1) != 0) 172 abort (); 173 if (test10(-9) != 0) 174 abort (); 175 if (test10(-10) != 1) 176 abort (); 177 178 if (test11(-30) != 1) 179 abort (); 180 if (test11(-29) != 1) 181 abort (); 182 if (test11(-20) != 1) 183 abort (); 184 if (test11(-19) != 0) 185 abort (); 186 187 if (test12(0) != 1) 188 abort (); 189 if (test12(9) != 1) 190 abort (); 191 if (test12(10) != 0) 192 abort (); 193 if (test12(-1) != 1) 194 abort (); 195 if (test12(-9) != 1) 196 abort (); 197 if (test12(-10) != 1) 198 abort (); 199 200 return 0; 201 } 202 203