2 lshrdi-1.c from the execute part of the gcc torture tests.
9 #if !(defined (__SDCC_pdk15) && defined(__SDCC_STACK_AUTO)) // Lack of code memory
10 #if !(defined(__SDCC_mcs51) && (defined(__SDCC_MODEL_SMALL) || defined(__SDCC_MODEL_MEDIUM) || defined(__SDCC_MODEL_LARGE) && defined(__SDCC_STACK_AUTO))) && !defined(__SDCC_pdk13) && !defined(__SDCC_pdk14) // Lack of memory
12 #if LLONG_MAX == 9223372036854775807LL
15 static unsigned long long const zext
[64] = {
16 0x87654321fedcba90ULL
,
17 0x43b2a190ff6e5d48ULL
,
18 0x21d950c87fb72ea4ULL
,
19 0x10eca8643fdb9752ULL
,
82 #elif LLONG_MAX == 2147483647LL
85 static unsigned long long const zext
[32] = {
121 #error "Update the test case."
124 static unsigned long long
125 variable_shift(unsigned long long x
, int i
)
130 static unsigned long long
131 constant_shift(unsigned long long x
, int i
)
135 case 0: x
= x
>> 0; break;
136 case 1: x
= x
>> 1; break;
137 case 2: x
= x
>> 2; break;
138 case 3: x
= x
>> 3; break;
139 case 4: x
= x
>> 4; break;
140 case 5: x
= x
>> 5; break;
141 case 6: x
= x
>> 6; break;
142 case 7: x
= x
>> 7; break;
143 case 8: x
= x
>> 8; break;
144 case 9: x
= x
>> 9; break;
145 case 10: x
= x
>> 10; break;
146 case 11: x
= x
>> 11; break;
147 case 12: x
= x
>> 12; break;
148 case 13: x
= x
>> 13; break;
149 case 14: x
= x
>> 14; break;
150 case 15: x
= x
>> 15; break;
151 case 16: x
= x
>> 16; break;
152 case 17: x
= x
>> 17; break;
153 case 18: x
= x
>> 18; break;
154 case 19: x
= x
>> 19; break;
155 case 20: x
= x
>> 20; break;
156 case 21: x
= x
>> 21; break;
157 case 22: x
= x
>> 22; break;
158 case 23: x
= x
>> 23; break;
159 case 24: x
= x
>> 24; break;
160 case 25: x
= x
>> 25; break;
161 case 26: x
= x
>> 26; break;
162 case 27: x
= x
>> 27; break;
163 case 28: x
= x
>> 28; break;
164 case 29: x
= x
>> 29; break;
165 case 30: x
= x
>> 30; break;
166 case 31: x
= x
>> 31; break;
168 case 32: x
= x
>> 32; break;
169 case 33: x
= x
>> 33; break;
170 case 34: x
= x
>> 34; break;
171 case 35: x
= x
>> 35; break;
172 case 36: x
= x
>> 36; break;
173 case 37: x
= x
>> 37; break;
174 case 38: x
= x
>> 38; break;
175 case 39: x
= x
>> 39; break;
176 case 40: x
= x
>> 40; break;
177 case 41: x
= x
>> 41; break;
178 case 42: x
= x
>> 42; break;
179 case 43: x
= x
>> 43; break;
180 case 44: x
= x
>> 44; break;
181 case 45: x
= x
>> 45; break;
182 case 46: x
= x
>> 46; break;
183 case 47: x
= x
>> 47; break;
184 case 48: x
= x
>> 48; break;
185 case 49: x
= x
>> 49; break;
186 case 50: x
= x
>> 50; break;
187 case 51: x
= x
>> 51; break;
188 case 52: x
= x
>> 52; break;
189 case 53: x
= x
>> 53; break;
190 case 54: x
= x
>> 54; break;
191 case 55: x
= x
>> 55; break;
192 case 56: x
= x
>> 56; break;
193 case 57: x
= x
>> 57; break;
194 case 58: x
= x
>> 58; break;
195 case 59: x
= x
>> 59; break;
196 case 60: x
= x
>> 60; break;
197 case 61: x
= x
>> 61; break;
198 case 62: x
= x
>> 62; break;
199 case 63: x
= x
>> 63; break;
211 testTortureExecute (void)
213 #if !(defined(__SDCC_mcs51) && (defined(__SDCC_MODEL_SMALL) || defined(__SDCC_MODEL_MEDIUM) || defined(__SDCC_MODEL_LARGE) && defined(__SDCC_STACK_AUTO))) && !defined(__SDCC_pdk13) && !defined(__SDCC_pdk14) // Lack of memory
214 #if !(defined (__SDCC_pdk15) && defined(__SDCC_STACK_AUTO)) // Lack of code memory
217 for (i
= 0; i
< BITS
; ++i
)
219 unsigned long long y
= variable_shift (zext
[0], i
);
223 for (i
= 0; i
< BITS
; ++i
)
225 unsigned long long y
= constant_shift (zext
[0], i
);