2 ashrdi-1.c from the execute part of the gcc torture tests.
9 #if !(defined(__SDCC_mcs51) && (defined(__SDCC_MODEL_SMALL) || defined(__SDCC_MODEL_MEDIUM) || defined(__SDCC_MODEL_LARGE) && defined(__SDCC_STACK_AUTO))) && !defined(__SDCC_pdk14) // Lack of memory// Lack of memory
10 #if !(defined (__SDCC_pdk15) && defined(__SDCC_STACK_AUTO)) // Lack of code memory
12 #if LLONG_MAX == 9223372036854775807LL
15 static long long const zext
[64] = {
82 static long long const sext
[64] = {
100 0xffffc76e5d4fbb2aLL
,
101 0xffffe3b72ea7dd95LL
,
102 0xfffff1db9753eecaLL
,
103 0xfffff8edcba9f765LL
,
104 0xfffffc76e5d4fbb2LL
,
105 0xfffffe3b72ea7dd9LL
,
106 0xffffff1db9753eecLL
,
107 0xffffff8edcba9f76LL
,
108 0xffffffc76e5d4fbbLL
,
109 0xffffffe3b72ea7ddLL
,
110 0xfffffff1db9753eeLL
,
111 0xfffffff8edcba9f7LL
,
112 0xfffffffc76e5d4fbLL
,
113 0xfffffffe3b72ea7dLL
,
114 0xffffffff1db9753eLL
,
115 0xffffffff8edcba9fLL
,
116 0xffffffffc76e5d4fLL
,
117 0xffffffffe3b72ea7LL
,
118 0xfffffffff1db9753LL
,
119 0xfffffffff8edcba9LL
,
120 0xfffffffffc76e5d4LL
,
121 0xfffffffffe3b72eaLL
,
122 0xffffffffff1db975LL
,
123 0xffffffffff8edcbaLL
,
124 0xffffffffffc76e5dLL
,
125 0xffffffffffe3b72eLL
,
126 0xfffffffffff1db97LL
,
127 0xfffffffffff8edcbLL
,
128 0xfffffffffffc76e5LL
,
129 0xfffffffffffe3b72LL
,
130 0xffffffffffff1db9LL
,
131 0xffffffffffff8edcLL
,
132 0xffffffffffffc76eLL
,
133 0xffffffffffffe3b7LL
,
134 0xfffffffffffff1dbLL
,
135 0xfffffffffffff8edLL
,
136 0xfffffffffffffc76LL
,
137 0xfffffffffffffe3bLL
,
138 0xffffffffffffff1dLL
,
139 0xffffffffffffff8eLL
,
140 0xffffffffffffffc7LL
,
141 0xffffffffffffffe3LL
,
142 0xfffffffffffffff1LL
,
143 0xfffffffffffffff8LL
,
144 0xfffffffffffffffcLL
,
145 0xfffffffffffffffeLL
,
149 #elif LLONG_MAX == 2147483647LL
152 static long long const zext
[32] = {
187 static long long const sext
[64] = {
223 #error "Update the test case."
227 variable_shift(long long x
, int i
)
233 constant_shift(long long x
, int i
)
237 case 0: x
= x
>> 0; break;
238 case 1: x
= x
>> 1; break;
239 case 2: x
= x
>> 2; break;
240 case 3: x
= x
>> 3; break;
241 case 4: x
= x
>> 4; break;
242 case 5: x
= x
>> 5; break;
243 case 6: x
= x
>> 6; break;
244 case 7: x
= x
>> 7; break;
245 case 8: x
= x
>> 8; break;
246 case 9: x
= x
>> 9; break;
247 case 10: x
= x
>> 10; break;
248 case 11: x
= x
>> 11; break;
249 case 12: x
= x
>> 12; break;
250 case 13: x
= x
>> 13; break;
251 case 14: x
= x
>> 14; break;
252 case 15: x
= x
>> 15; break;
253 case 16: x
= x
>> 16; break;
254 case 17: x
= x
>> 17; break;
255 case 18: x
= x
>> 18; break;
256 case 19: x
= x
>> 19; break;
257 case 20: x
= x
>> 20; break;
258 case 21: x
= x
>> 21; break;
259 case 22: x
= x
>> 22; break;
260 case 23: x
= x
>> 23; break;
261 case 24: x
= x
>> 24; break;
262 case 25: x
= x
>> 25; break;
263 case 26: x
= x
>> 26; break;
264 case 27: x
= x
>> 27; break;
265 case 28: x
= x
>> 28; break;
266 case 29: x
= x
>> 29; break;
267 case 30: x
= x
>> 30; break;
268 case 31: x
= x
>> 31; break;
270 case 32: x
= x
>> 32; break;
271 case 33: x
= x
>> 33; break;
272 case 34: x
= x
>> 34; break;
273 case 35: x
= x
>> 35; break;
274 case 36: x
= x
>> 36; break;
275 case 37: x
= x
>> 37; break;
276 case 38: x
= x
>> 38; break;
277 case 39: x
= x
>> 39; break;
278 case 40: x
= x
>> 40; break;
279 case 41: x
= x
>> 41; break;
280 case 42: x
= x
>> 42; break;
281 case 43: x
= x
>> 43; break;
282 case 44: x
= x
>> 44; break;
283 case 45: x
= x
>> 45; break;
284 case 46: x
= x
>> 46; break;
285 case 47: x
= x
>> 47; break;
286 case 48: x
= x
>> 48; break;
287 case 49: x
= x
>> 49; break;
288 case 50: x
= x
>> 50; break;
289 case 51: x
= x
>> 51; break;
290 case 52: x
= x
>> 52; break;
291 case 53: x
= x
>> 53; break;
292 case 54: x
= x
>> 54; break;
293 case 55: x
= x
>> 55; break;
294 case 56: x
= x
>> 56; break;
295 case 57: x
= x
>> 57; break;
296 case 58: x
= x
>> 58; break;
297 case 59: x
= x
>> 59; break;
298 case 60: x
= x
>> 60; break;
299 case 61: x
= x
>> 61; break;
300 case 62: x
= x
>> 62; break;
301 case 63: x
= x
>> 63; break;
313 testTortureExecute (void)
315 #if !(defined(__SDCC_mcs51) && (defined(__SDCC_MODEL_SMALL) || defined(__SDCC_MODEL_MEDIUM) || defined(__SDCC_MODEL_LARGE) && defined(__SDCC_STACK_AUTO))) && !defined(__SDCC_pdk14) && !defined(__SDCC_pdk15) // Lack of memory// Lack of memory
316 #if !(defined (__SDCC_pdk15) && defined(__SDCC_STACK_AUTO)) // Lack of code memory
319 for (i
= 0; i
< BITS
; ++i
)
321 long long y
= variable_shift (zext
[0], i
);
325 for (i
= 0; i
< BITS
; ++i
)
327 long long y
= variable_shift (sext
[0], i
);
331 for (i
= 0; i
< BITS
; ++i
)
333 long long y
= constant_shift (zext
[0], i
);
337 for (i
= 0; i
< BITS
; ++i
)
339 long long y
= constant_shift (sext
[0], i
);