90 #define dB10 (-aB10+1)
91 #define dB11 (-aB11+1)
92 #define dB12 (-aB12+1)
93 #define dB13 (-aB13+1)
94 #define dB14 (-aB14+1)
95 #define dB15 (-aB15+1)
96 #define dB16 (-aB16+1)
97 #define dB17 (-aB17+1)
98 #define dB18 (-aB18+1)
99 #define dB19 (-aB19+1)
100 #define dB20 (-aB20+1)
101 #define dB21 (-aB21+1)
102 #define dB22 (-aB22+1)
103 #define dB23 (-aB23+1)
104 #define dB24 (-aB24+1)
105 #define dB25 (-aB25+1)
106 #define dB26 (-aB26+1)
108 #define add(a, b) $(a + b)
109 #define sub(a, b) $(a - b)
110 #define rsb(a, b) $(b - a)
111 #define mul(a, b) $(a * b)
112 #define div(a, b) $(a / b)
113 #define rem(a, b) $(a % b)
114 #define and(a, b) $(a & b)
115 #define or(a, b) $(a | b)
116 #define xor(a, b) $(a ^ b)
118 #define alu2(N, X, L, R, V) \
125 alu2(N, N##M##1, 3, $(M##1), N(3, M##1)) \
126 alu2(N, N##M##2, 3, $(M##2), N(3, M##2)) \
127 alu2(N, N##M##3, 3, $(M##3), N(3, M##3)) \
128 alu2(N, N##M##4, 3, $(M##4), N(3, M##4)) \
129 alu2(N, N##M##5, 3, $(M##5), N(3, M##5)) \
130 alu2(N, N##M##6, 3, $(M##6), N(3, M##6)) \
131 alu2(N, N##M##7, 3, $(M##7), N(3, M##7)) \
132 alu2(N, N##M##8, 3, $(M##8), N(3, M##8)) \
133 alu2(N, N##M##9, 3, $(M##9), N(3, M##9)) \
134 alu2(N, N##M##10, 3, $(M##10), N(3, M##10)) \
135 alu2(N, N##M##11, 3, $(M##11), N(3, M##11)) \
136 alu2(N, N##M##12, 3, $(M##12), N(3, M##12)) \
137 alu2(N, N##M##13, 3, $(M##13), N(3, M##13)) \
138 alu2(N, N##M##14, 3, $(M##14), N(3, M##14)) \
139 alu2(N, N##M##15, 3, $(M##15), N(3, M##15)) \
140 alu2(N, N##M##16, 3, $(M##16), N(3, M##16)) \
141 alu2(N, N##M##17, 3, $(M##17), N(3, M##17)) \
142 alu2(N, N##M##18, 3, $(M##18), N(3, M##18)) \
143 alu2(N, N##M##19, 3, $(M##19), N(3, M##19)) \
144 alu2(N, N##M##20, 3, $(M##20), N(3, M##20)) \
145 alu2(N, N##M##21, 3, $(M##21), N(3, M##21)) \
146 alu2(N, N##M##22, 3, $(M##22), N(3, M##22)) \
147 alu2(N, N##M##23, 3, $(M##23), N(3, M##23)) \
148 alu2(N, N##M##24, 3, $(M##24), N(3, M##24)) \
149 alu2(N, N##M##25, 3, $(M##25), N(3, M##25)) \
150 alu2(N, N##M##26, 3, $(M##26), N(3, M##26))
159 alu2(lsh, L##N, 3, N, $(3<<N))
161 alu2(rsh, R##N, $(1<<63), N, $((1<<63)>>N))
164 # define xsh64(X) /**/
245 pushargi $(M64 + 8) \
248 #define stx(T, N, O, V) \
251 #define stx8(T, M, V) \
252 stx(T, 3, $(M##B3), V) \
253 stx(T, 4, $(M##B4), V) \
254 stx(T, 5, $(M##B5), V) \
255 stx(T, 6, $(M##B6), V) \
256 stx(T, 7, $(M##B7), V) \
257 stx(T, 8, $(M##B8), V) \
258 stx(T, 9, $(M##B9), V) \
259 stx(T, 10, $(M##B10), V) \
260 stx(T, 11, $(M##B11), V) \
261 stx(T, 12, $(M##B12), V) \
262 stx(T, 13, $(M##B13), V) \
263 stx(T, 14, $(M##B14), V) \
264 stx(T, 15, $(M##B15), V) \
265 stx(T, 16, $(M##B16), V) \
266 stx(T, 17, $(M##B17), V) \
267 stx(T, 18, $(M##B18), V) \
268 stx(T, 19, $(M##B19), V) \
269 stx(T, 20, $(M##B20), V) \
270 stx(T, 21, $(M##B21), V) \
271 stx(T, 22, $(M##B22), V) \
272 stx(T, 23, $(M##B23), V) \
273 stx(T, 24, $(M##B24), V) \
274 stx(T, 25, $(M##B25), V) \
275 stx(T, 26, $(M##B26), V)
276 #define stx4(T, M, V) \
277 stx(T, 2, $(M##B2), V) \
279 #define stx2(T, M, V) \
280 stx(T, 1, $(M##B1), V) \
282 #define ldx(T, N, M, O, V) \
285 beqi ldx##T##N##M %r0 V \
288 #define ldx8(T, M, V) \
289 ldx(T, 3, M, $(M##B3), V) \
290 ldx(T, 4, M, $(M##B4), V) \
291 ldx(T, 5, M, $(M##B5), V) \
292 ldx(T, 6, M, $(M##B6), V) \
293 ldx(T, 7, M, $(M##B7), V) \
294 ldx(T, 8, M, $(M##B8), V) \
295 ldx(T, 9, M, $(M##B9), V) \
296 ldx(T, 10, M, $(M##B10), V) \
297 ldx(T, 11, M, $(M##B11), V) \
298 ldx(T, 12, M, $(M##B12), V) \
299 ldx(T, 13, M, $(M##B13), V) \
300 ldx(T, 14, M, $(M##B14), V) \
301 ldx(T, 15, M, $(M##B15), V) \
302 ldx(T, 16, M, $(M##B16), V) \
303 ldx(T, 17, M, $(M##B17), V) \
304 ldx(T, 18, M, $(M##B18), V) \
305 ldx(T, 19, M, $(M##B19), V) \
306 ldx(T, 20, M, $(M##B20), V) \
307 ldx(T, 21, M, $(M##B21), V) \
308 ldx(T, 22, M, $(M##B22), V) \
309 ldx(T, 23, M, $(M##B23), V) \
310 ldx(T, 24, M, $(M##B24), V) \
311 ldx(T, 25, M, $(M##B25), V) \
312 ldx(T, 26, M, $(M##B26), V)
313 #define ldx4(T, M, V) \
314 ldx(T, 2, M, $(M##B2), V) \
316 #define ldx2(T, M, V) \
317 ldx(T, 1, M, $(M##B1), V) \
320 #define stf(T, N, O, V) \
323 #define stf8(T, M, V) \
324 stf(T, 3, $(M##B3), V) \
325 stf(T, 4, $(M##B4), V) \
326 stf(T, 5, $(M##B5), V) \
327 stf(T, 6, $(M##B6), V) \
328 stf(T, 7, $(M##B7), V) \
329 stf(T, 8, $(M##B8), V) \
330 stf(T, 9, $(M##B9), V) \
331 stf(T, 10, $(M##B10), V) \
332 stf(T, 11, $(M##B11), V) \
333 stf(T, 12, $(M##B12), V) \
334 stf(T, 13, $(M##B13), V) \
335 stf(T, 14, $(M##B14), V) \
336 stf(T, 15, $(M##B15), V) \
337 stf(T, 16, $(M##B16), V) \
338 stf(T, 17, $(M##B17), V) \
339 stf(T, 18, $(M##B18), V) \
340 stf(T, 19, $(M##B19), V) \
341 stf(T, 20, $(M##B20), V) \
342 stf(T, 21, $(M##B21), V) \
343 stf(T, 22, $(M##B22), V) \
344 stf(T, 23, $(M##B23), V) \
345 stf(T, 24, $(M##B24), V) \
346 stf(T, 25, $(M##B25), V) \
347 stf(T, 26, $(M##B26), V)
348 #define stf4(T, M, V) \
349 stf(T, 2, $(M##B2), V) \
351 #define ldf(T, N, M, O, V) \
354 beqi##T ldf##T##N##M %f0 V \
357 #define ldf8(T, M, V) \
358 ldf(T, 3, M, $(M##B3), V) \
359 ldf(T, 4, M, $(M##B4), V) \
360 ldf(T, 5, M, $(M##B5), V) \
361 ldf(T, 6, M, $(M##B6), V) \
362 ldf(T, 7, M, $(M##B7), V) \
363 ldf(T, 8, M, $(M##B8), V) \
364 ldf(T, 9, M, $(M##B9), V) \
365 ldf(T, 10, M, $(M##B10), V) \
366 ldf(T, 11, M, $(M##B11), V) \
367 ldf(T, 12, M, $(M##B12), V) \
368 ldf(T, 13, M, $(M##B13), V) \
369 ldf(T, 14, M, $(M##B14), V) \
370 ldf(T, 15, M, $(M##B15), V) \
371 ldf(T, 16, M, $(M##B16), V) \
372 ldf(T, 17, M, $(M##B17), V) \
373 ldf(T, 18, M, $(M##B18), V) \
374 ldf(T, 19, M, $(M##B19), V) \
375 ldf(T, 20, M, $(M##B20), V) \
376 ldf(T, 21, M, $(M##B21), V) \
377 ldf(T, 22, M, $(M##B22), V) \
378 ldf(T, 23, M, $(M##B23), V) \
379 ldf(T, 24, M, $(M##B24), V) \
380 ldf(T, 25, M, $(M##B25), V) \
381 ldf(T, 26, M, $(M##B26), V)
382 #define ldf4(T, M, V) \
383 ldf(T, 2, M, $(M##B2), V) \
392 movi %v0 $(buf + M64) \
400 movi %v0 $(buf + M64) \
406 stx2(_s, a, 0x5a5a) \
407 ldx2(_s, a, 0x5a5a) \
409 movi %v0 $(buf + M64) \
410 stx2(_s, b, 0x5a5a) \
415 stx2(_s, a, 0x5a5a) \
416 ldx2(_us, a, 0x5a5a) \
418 movi %v0 $(buf + M64) \
419 stx2(_s, b, 0x5a5a) \
424 stx4(_i, a, 0x5a5a5a5a) \
425 ldx4(_i, a, 0x5a5a5a5a) \
427 movi %v0 $(buf + M64) \
428 stx4(_i, b, 0x5a5a5a5a) \
429 ldx4(_i, b, 0x5a5a5a5a)
433 stx4(_i, a, 0x5a5a5a5a) \
434 ldx4(_ui, a, 0x5a5a5a5a) \
436 movi %v0 $(buf + M64) \
437 stx4(_i, b, 0x5a5a5a5a) \
438 ldx4(_ui, b, 0x5a5a5a5a)
442 stx8(_l, a, 0x5a5a5a5a5a5a5a5a) \
443 ldx8(_l, a, 0x5a5a5a5a5a5a5a5a) \
445 movi %v0 $(buf + M64) \
446 stx8(_l, b, 0x5a5a5a5a5a5a5a5a) \
447 ldx8(_l, b, 0x5a5a5a5a5a5a5a5a)
454 movi %v0 $(buf + M64) \
463 movi %v0 $(buf + M64) \