3 extern void abort(void);
6 #if __LONG_LONG_MAX__ == 9223372036854775807LL
9 static unsigned long long const data[64] = {
14 0x123456789abcdef0ULL,
15 0x2468acf13579bde0ULL,
16 0x48d159e26af37bc0ULL,
17 0x91a2b3c4d5e6f780ULL,
18 0x23456789abcdef00ULL,
19 0x468acf13579bde00ULL,
20 0x8d159e26af37bc00ULL,
21 0x1a2b3c4d5e6f7800ULL,
22 0x3456789abcdef000ULL,
23 0x68acf13579bde000ULL,
24 0xd159e26af37bc000ULL,
25 0xa2b3c4d5e6f78000ULL,
26 0x456789abcdef0000ULL,
27 0x8acf13579bde0000ULL,
28 0x159e26af37bc0000ULL,
29 0x2b3c4d5e6f780000ULL,
30 0x56789abcdef00000ULL,
31 0xacf13579bde00000ULL,
32 0x59e26af37bc00000ULL,
33 0xb3c4d5e6f7800000ULL,
34 0x6789abcdef000000ULL,
35 0xcf13579bde000000ULL,
36 0x9e26af37bc000000ULL,
37 0x3c4d5e6f78000000ULL,
38 0x789abcdef0000000ULL,
39 0xf13579bde0000000ULL,
40 0xe26af37bc0000000ULL,
41 0xc4d5e6f780000000ULL,
42 0x89abcdef00000000ULL,
43 0x13579bde00000000ULL,
44 0x26af37bc00000000ULL,
45 0x4d5e6f7800000000ULL,
46 0x9abcdef000000000ULL,
47 0x3579bde000000000ULL,
48 0x6af37bc000000000ULL,
49 0xd5e6f78000000000ULL,
50 0xabcdef0000000000ULL,
51 0x579bde0000000000ULL,
52 0xaf37bc0000000000ULL,
53 0x5e6f780000000000ULL,
54 0xbcdef00000000000ULL,
55 0x79bde00000000000ULL,
56 0xf37bc00000000000ULL,
57 0xe6f7800000000000ULL,
58 0xcdef000000000000ULL,
59 0x9bde000000000000ULL,
60 0x37bc000000000000ULL,
61 0x6f78000000000000ULL,
62 0xdef0000000000000ULL,
63 0xbde0000000000000ULL,
64 0x7bc0000000000000ULL,
65 0xf780000000000000ULL,
66 0xef00000000000000ULL,
67 0xde00000000000000ULL,
68 0xbc00000000000000ULL,
69 0x7800000000000000ULL,
70 0xf000000000000000ULL,
71 0xe000000000000000ULL,
72 0xc000000000000000ULL,
76 #elif __LONG_LONG_MAX__ == 2147483647LL
79 static unsigned long long const data[32] = {
115 #error "Update the test case."
118 static unsigned long long
119 variable_shift(unsigned long long x, int i)
124 static unsigned long long
125 constant_shift(unsigned long long x, int i)
129 case 0: x = x << 0; break;
130 case 1: x = x << 1; break;
131 case 2: x = x << 2; break;
132 case 3: x = x << 3; break;
133 case 4: x = x << 4; break;
134 case 5: x = x << 5; break;
135 case 6: x = x << 6; break;
136 case 7: x = x << 7; break;
137 case 8: x = x << 8; break;
138 case 9: x = x << 9; break;
139 case 10: x = x << 10; break;
140 case 11: x = x << 11; break;
141 case 12: x = x << 12; break;
142 case 13: x = x << 13; break;
143 case 14: x = x << 14; break;
144 case 15: x = x << 15; break;
145 case 16: x = x << 16; break;
146 case 17: x = x << 17; break;
147 case 18: x = x << 18; break;
148 case 19: x = x << 19; break;
149 case 20: x = x << 20; break;
150 case 21: x = x << 21; break;
151 case 22: x = x << 22; break;
152 case 23: x = x << 23; break;
153 case 24: x = x << 24; break;
154 case 25: x = x << 25; break;
155 case 26: x = x << 26; break;
156 case 27: x = x << 27; break;
157 case 28: x = x << 28; break;
158 case 29: x = x << 29; break;
159 case 30: x = x << 30; break;
160 case 31: x = x << 31; break;
162 case 32: x = x << 32; break;
163 case 33: x = x << 33; break;
164 case 34: x = x << 34; break;
165 case 35: x = x << 35; break;
166 case 36: x = x << 36; break;
167 case 37: x = x << 37; break;
168 case 38: x = x << 38; break;
169 case 39: x = x << 39; break;
170 case 40: x = x << 40; break;
171 case 41: x = x << 41; break;
172 case 42: x = x << 42; break;
173 case 43: x = x << 43; break;
174 case 44: x = x << 44; break;
175 case 45: x = x << 45; break;
176 case 46: x = x << 46; break;
177 case 47: x = x << 47; break;
178 case 48: x = x << 48; break;
179 case 49: x = x << 49; break;
180 case 50: x = x << 50; break;
181 case 51: x = x << 51; break;
182 case 52: x = x << 52; break;
183 case 53: x = x << 53; break;
184 case 54: x = x << 54; break;
185 case 55: x = x << 55; break;
186 case 56: x = x << 56; break;
187 case 57: x = x << 57; break;
188 case 58: x = x << 58; break;
189 case 59: x = x << 59; break;
190 case 60: x = x << 60; break;
191 case 61: x = x << 61; break;
192 case 62: x = x << 62; break;
193 case 63: x = x << 63; break;
207 for (i = 0; i < BITS; ++i)
209 unsigned long long y = variable_shift (data[0], i);
213 for (i = 0; i < BITS; ++i)
215 unsigned long long y = constant_shift (data[0], i);