diff options
Diffstat (limited to 'vendor/github.com/minio/md5-simd/md5block_amd64.s')
-rw-r--r-- | vendor/github.com/minio/md5-simd/md5block_amd64.s | 714 |
1 files changed, 714 insertions, 0 deletions
diff --git a/vendor/github.com/minio/md5-simd/md5block_amd64.s b/vendor/github.com/minio/md5-simd/md5block_amd64.s new file mode 100644 index 0000000..fbc4a21 --- /dev/null +++ b/vendor/github.com/minio/md5-simd/md5block_amd64.s | |||
@@ -0,0 +1,714 @@ | |||
1 | // Code generated by command: go run gen.go -out ../md5block_amd64.s -stubs ../md5block_amd64.go -pkg=md5simd. DO NOT EDIT. | ||
2 | |||
3 | // +build !appengine | ||
4 | // +build !noasm | ||
5 | // +build gc | ||
6 | |||
7 | // func blockScalar(dig *[4]uint32, p []byte) | ||
8 | TEXT ·blockScalar(SB), $0-32 | ||
9 | MOVQ p_len+16(FP), AX | ||
10 | MOVQ dig+0(FP), CX | ||
11 | MOVQ p_base+8(FP), DX | ||
12 | SHRQ $0x06, AX | ||
13 | SHLQ $0x06, AX | ||
14 | LEAQ (DX)(AX*1), AX | ||
15 | CMPQ DX, AX | ||
16 | JEQ end | ||
17 | MOVL (CX), BX | ||
18 | MOVL 4(CX), BP | ||
19 | MOVL 8(CX), SI | ||
20 | MOVL 12(CX), CX | ||
21 | MOVL $0xffffffff, DI | ||
22 | |||
23 | loop: | ||
24 | MOVL (DX), R8 | ||
25 | MOVL CX, R9 | ||
26 | MOVL BX, R10 | ||
27 | MOVL BP, R11 | ||
28 | MOVL SI, R12 | ||
29 | MOVL CX, R13 | ||
30 | |||
31 | // ROUND1 | ||
32 | XORL SI, R9 | ||
33 | ADDL $0xd76aa478, BX | ||
34 | ADDL R8, BX | ||
35 | ANDL BP, R9 | ||
36 | XORL CX, R9 | ||
37 | MOVL 4(DX), R8 | ||
38 | ADDL R9, BX | ||
39 | ROLL $0x07, BX | ||
40 | MOVL SI, R9 | ||
41 | ADDL BP, BX | ||
42 | XORL BP, R9 | ||
43 | ADDL $0xe8c7b756, CX | ||
44 | ADDL R8, CX | ||
45 | ANDL BX, R9 | ||
46 | XORL SI, R9 | ||
47 | MOVL 8(DX), R8 | ||
48 | ADDL R9, CX | ||
49 | ROLL $0x0c, CX | ||
50 | MOVL BP, R9 | ||
51 | ADDL BX, CX | ||
52 | XORL BX, R9 | ||
53 | ADDL $0x242070db, SI | ||
54 | ADDL R8, SI | ||
55 | ANDL CX, R9 | ||
56 | XORL BP, R9 | ||
57 | MOVL 12(DX), R8 | ||
58 | ADDL R9, SI | ||
59 | ROLL $0x11, SI | ||
60 | MOVL BX, R9 | ||
61 | ADDL CX, SI | ||
62 | XORL CX, R9 | ||
63 | ADDL $0xc1bdceee, BP | ||
64 | ADDL R8, BP | ||
65 | ANDL SI, R9 | ||
66 | XORL BX, R9 | ||
67 | MOVL 16(DX), R8 | ||
68 | ADDL R9, BP | ||
69 | ROLL $0x16, BP | ||
70 | MOVL CX, R9 | ||
71 | ADDL SI, BP | ||
72 | XORL SI, R9 | ||
73 | ADDL $0xf57c0faf, BX | ||
74 | ADDL R8, BX | ||
75 | ANDL BP, R9 | ||
76 | XORL CX, R9 | ||
77 | MOVL 20(DX), R8 | ||
78 | ADDL R9, BX | ||
79 | ROLL $0x07, BX | ||
80 | MOVL SI, R9 | ||
81 | ADDL BP, BX | ||
82 | XORL BP, R9 | ||
83 | ADDL $0x4787c62a, CX | ||
84 | ADDL R8, CX | ||
85 | ANDL BX, R9 | ||
86 | XORL SI, R9 | ||
87 | MOVL 24(DX), R8 | ||
88 | ADDL R9, CX | ||
89 | ROLL $0x0c, CX | ||
90 | MOVL BP, R9 | ||
91 | ADDL BX, CX | ||
92 | XORL BX, R9 | ||
93 | ADDL $0xa8304613, SI | ||
94 | ADDL R8, SI | ||
95 | ANDL CX, R9 | ||
96 | XORL BP, R9 | ||
97 | MOVL 28(DX), R8 | ||
98 | ADDL R9, SI | ||
99 | ROLL $0x11, SI | ||
100 | MOVL BX, R9 | ||
101 | ADDL CX, SI | ||
102 | XORL CX, R9 | ||
103 | ADDL $0xfd469501, BP | ||
104 | ADDL R8, BP | ||
105 | ANDL SI, R9 | ||
106 | XORL BX, R9 | ||
107 | MOVL 32(DX), R8 | ||
108 | ADDL R9, BP | ||
109 | ROLL $0x16, BP | ||
110 | MOVL CX, R9 | ||
111 | ADDL SI, BP | ||
112 | XORL SI, R9 | ||
113 | ADDL $0x698098d8, BX | ||
114 | ADDL R8, BX | ||
115 | ANDL BP, R9 | ||
116 | XORL CX, R9 | ||
117 | MOVL 36(DX), R8 | ||
118 | ADDL R9, BX | ||
119 | ROLL $0x07, BX | ||
120 | MOVL SI, R9 | ||
121 | ADDL BP, BX | ||
122 | XORL BP, R9 | ||
123 | ADDL $0x8b44f7af, CX | ||
124 | ADDL R8, CX | ||
125 | ANDL BX, R9 | ||
126 | XORL SI, R9 | ||
127 | MOVL 40(DX), R8 | ||
128 | ADDL R9, CX | ||
129 | ROLL $0x0c, CX | ||
130 | MOVL BP, R9 | ||
131 | ADDL BX, CX | ||
132 | XORL BX, R9 | ||
133 | ADDL $0xffff5bb1, SI | ||
134 | ADDL R8, SI | ||
135 | ANDL CX, R9 | ||
136 | XORL BP, R9 | ||
137 | MOVL 44(DX), R8 | ||
138 | ADDL R9, SI | ||
139 | ROLL $0x11, SI | ||
140 | MOVL BX, R9 | ||
141 | ADDL CX, SI | ||
142 | XORL CX, R9 | ||
143 | ADDL $0x895cd7be, BP | ||
144 | ADDL R8, BP | ||
145 | ANDL SI, R9 | ||
146 | XORL BX, R9 | ||
147 | MOVL 48(DX), R8 | ||
148 | ADDL R9, BP | ||
149 | ROLL $0x16, BP | ||
150 | MOVL CX, R9 | ||
151 | ADDL SI, BP | ||
152 | XORL SI, R9 | ||
153 | ADDL $0x6b901122, BX | ||
154 | ADDL R8, BX | ||
155 | ANDL BP, R9 | ||
156 | XORL CX, R9 | ||
157 | MOVL 52(DX), R8 | ||
158 | ADDL R9, BX | ||
159 | ROLL $0x07, BX | ||
160 | MOVL SI, R9 | ||
161 | ADDL BP, BX | ||
162 | XORL BP, R9 | ||
163 | ADDL $0xfd987193, CX | ||
164 | ADDL R8, CX | ||
165 | ANDL BX, R9 | ||
166 | XORL SI, R9 | ||
167 | MOVL 56(DX), R8 | ||
168 | ADDL R9, CX | ||
169 | ROLL $0x0c, CX | ||
170 | MOVL BP, R9 | ||
171 | ADDL BX, CX | ||
172 | XORL BX, R9 | ||
173 | ADDL $0xa679438e, SI | ||
174 | ADDL R8, SI | ||
175 | ANDL CX, R9 | ||
176 | XORL BP, R9 | ||
177 | MOVL 60(DX), R8 | ||
178 | ADDL R9, SI | ||
179 | ROLL $0x11, SI | ||
180 | MOVL BX, R9 | ||
181 | ADDL CX, SI | ||
182 | XORL CX, R9 | ||
183 | ADDL $0x49b40821, BP | ||
184 | ADDL R8, BP | ||
185 | ANDL SI, R9 | ||
186 | XORL BX, R9 | ||
187 | MOVL 4(DX), R8 | ||
188 | ADDL R9, BP | ||
189 | ROLL $0x16, BP | ||
190 | MOVL CX, R9 | ||
191 | ADDL SI, BP | ||
192 | |||
193 | // ROUND2 | ||
194 | MOVL CX, R9 | ||
195 | MOVL CX, R14 | ||
196 | XORL DI, R9 | ||
197 | ADDL $0xf61e2562, BX | ||
198 | ADDL R8, BX | ||
199 | ANDL BP, R14 | ||
200 | ANDL SI, R9 | ||
201 | MOVL 24(DX), R8 | ||
202 | ORL R9, R14 | ||
203 | MOVL SI, R9 | ||
204 | ADDL R14, BX | ||
205 | MOVL SI, R14 | ||
206 | ROLL $0x05, BX | ||
207 | ADDL BP, BX | ||
208 | XORL DI, R9 | ||
209 | ADDL $0xc040b340, CX | ||
210 | ADDL R8, CX | ||
211 | ANDL BX, R14 | ||
212 | ANDL BP, R9 | ||
213 | MOVL 44(DX), R8 | ||
214 | ORL R9, R14 | ||
215 | MOVL BP, R9 | ||
216 | ADDL R14, CX | ||
217 | MOVL BP, R14 | ||
218 | ROLL $0x09, CX | ||
219 | ADDL BX, CX | ||
220 | XORL DI, R9 | ||
221 | ADDL $0x265e5a51, SI | ||
222 | ADDL R8, SI | ||
223 | ANDL CX, R14 | ||
224 | ANDL BX, R9 | ||
225 | MOVL (DX), R8 | ||
226 | ORL R9, R14 | ||
227 | MOVL BX, R9 | ||
228 | ADDL R14, SI | ||
229 | MOVL BX, R14 | ||
230 | ROLL $0x0e, SI | ||
231 | ADDL CX, SI | ||
232 | XORL DI, R9 | ||
233 | ADDL $0xe9b6c7aa, BP | ||
234 | ADDL R8, BP | ||
235 | ANDL SI, R14 | ||
236 | ANDL CX, R9 | ||
237 | MOVL 20(DX), R8 | ||
238 | ORL R9, R14 | ||
239 | MOVL CX, R9 | ||
240 | ADDL R14, BP | ||
241 | MOVL CX, R14 | ||
242 | ROLL $0x14, BP | ||
243 | ADDL SI, BP | ||
244 | XORL DI, R9 | ||
245 | ADDL $0xd62f105d, BX | ||
246 | ADDL R8, BX | ||
247 | ANDL BP, R14 | ||
248 | ANDL SI, R9 | ||
249 | MOVL 40(DX), R8 | ||
250 | ORL R9, R14 | ||
251 | MOVL SI, R9 | ||
252 | ADDL R14, BX | ||
253 | MOVL SI, R14 | ||
254 | ROLL $0x05, BX | ||
255 | ADDL BP, BX | ||
256 | XORL DI, R9 | ||
257 | ADDL $0x02441453, CX | ||
258 | ADDL R8, CX | ||
259 | ANDL BX, R14 | ||
260 | ANDL BP, R9 | ||
261 | MOVL 60(DX), R8 | ||
262 | ORL R9, R14 | ||
263 | MOVL BP, R9 | ||
264 | ADDL R14, CX | ||
265 | MOVL BP, R14 | ||
266 | ROLL $0x09, CX | ||
267 | ADDL BX, CX | ||
268 | XORL DI, R9 | ||
269 | ADDL $0xd8a1e681, SI | ||
270 | ADDL R8, SI | ||
271 | ANDL CX, R14 | ||
272 | ANDL BX, R9 | ||
273 | MOVL 16(DX), R8 | ||
274 | ORL R9, R14 | ||
275 | MOVL BX, R9 | ||
276 | ADDL R14, SI | ||
277 | MOVL BX, R14 | ||
278 | ROLL $0x0e, SI | ||
279 | ADDL CX, SI | ||
280 | XORL DI, R9 | ||
281 | ADDL $0xe7d3fbc8, BP | ||
282 | ADDL R8, BP | ||
283 | ANDL SI, R14 | ||
284 | ANDL CX, R9 | ||
285 | MOVL 36(DX), R8 | ||
286 | ORL R9, R14 | ||
287 | MOVL CX, R9 | ||
288 | ADDL R14, BP | ||
289 | MOVL CX, R14 | ||
290 | ROLL $0x14, BP | ||
291 | ADDL SI, BP | ||
292 | XORL DI, R9 | ||
293 | ADDL $0x21e1cde6, BX | ||
294 | ADDL R8, BX | ||
295 | ANDL BP, R14 | ||
296 | ANDL SI, R9 | ||
297 | MOVL 56(DX), R8 | ||
298 | ORL R9, R14 | ||
299 | MOVL SI, R9 | ||
300 | ADDL R14, BX | ||
301 | MOVL SI, R14 | ||
302 | ROLL $0x05, BX | ||
303 | ADDL BP, BX | ||
304 | XORL DI, R9 | ||
305 | ADDL $0xc33707d6, CX | ||
306 | ADDL R8, CX | ||
307 | ANDL BX, R14 | ||
308 | ANDL BP, R9 | ||
309 | MOVL 12(DX), R8 | ||
310 | ORL R9, R14 | ||
311 | MOVL BP, R9 | ||
312 | ADDL R14, CX | ||
313 | MOVL BP, R14 | ||
314 | ROLL $0x09, CX | ||
315 | ADDL BX, CX | ||
316 | XORL DI, R9 | ||
317 | ADDL $0xf4d50d87, SI | ||
318 | ADDL R8, SI | ||
319 | ANDL CX, R14 | ||
320 | ANDL BX, R9 | ||
321 | MOVL 32(DX), R8 | ||
322 | ORL R9, R14 | ||
323 | MOVL BX, R9 | ||
324 | ADDL R14, SI | ||
325 | MOVL BX, R14 | ||
326 | ROLL $0x0e, SI | ||
327 | ADDL CX, SI | ||
328 | XORL DI, R9 | ||
329 | ADDL $0x455a14ed, BP | ||
330 | ADDL R8, BP | ||
331 | ANDL SI, R14 | ||
332 | ANDL CX, R9 | ||
333 | MOVL 52(DX), R8 | ||
334 | ORL R9, R14 | ||
335 | MOVL CX, R9 | ||
336 | ADDL R14, BP | ||
337 | MOVL CX, R14 | ||
338 | ROLL $0x14, BP | ||
339 | ADDL SI, BP | ||
340 | XORL DI, R9 | ||
341 | ADDL $0xa9e3e905, BX | ||
342 | ADDL R8, BX | ||
343 | ANDL BP, R14 | ||
344 | ANDL SI, R9 | ||
345 | MOVL 8(DX), R8 | ||
346 | ORL R9, R14 | ||
347 | MOVL SI, R9 | ||
348 | ADDL R14, BX | ||
349 | MOVL SI, R14 | ||
350 | ROLL $0x05, BX | ||
351 | ADDL BP, BX | ||
352 | XORL DI, R9 | ||
353 | ADDL $0xfcefa3f8, CX | ||
354 | ADDL R8, CX | ||
355 | ANDL BX, R14 | ||
356 | ANDL BP, R9 | ||
357 | MOVL 28(DX), R8 | ||
358 | ORL R9, R14 | ||
359 | MOVL BP, R9 | ||
360 | ADDL R14, CX | ||
361 | MOVL BP, R14 | ||
362 | ROLL $0x09, CX | ||
363 | ADDL BX, CX | ||
364 | XORL DI, R9 | ||
365 | ADDL $0x676f02d9, SI | ||
366 | ADDL R8, SI | ||
367 | ANDL CX, R14 | ||
368 | ANDL BX, R9 | ||
369 | MOVL 48(DX), R8 | ||
370 | ORL R9, R14 | ||
371 | MOVL BX, R9 | ||
372 | ADDL R14, SI | ||
373 | MOVL BX, R14 | ||
374 | ROLL $0x0e, SI | ||
375 | ADDL CX, SI | ||
376 | XORL DI, R9 | ||
377 | ADDL $0x8d2a4c8a, BP | ||
378 | ADDL R8, BP | ||
379 | ANDL SI, R14 | ||
380 | ANDL CX, R9 | ||
381 | MOVL 20(DX), R8 | ||
382 | ORL R9, R14 | ||
383 | MOVL CX, R9 | ||
384 | ADDL R14, BP | ||
385 | MOVL CX, R14 | ||
386 | ROLL $0x14, BP | ||
387 | ADDL SI, BP | ||
388 | |||
389 | // ROUND3 | ||
390 | MOVL SI, R9 | ||
391 | ADDL $0xfffa3942, BX | ||
392 | ADDL R8, BX | ||
393 | MOVL 32(DX), R8 | ||
394 | XORL CX, R9 | ||
395 | XORL BP, R9 | ||
396 | ADDL R9, BX | ||
397 | ROLL $0x04, BX | ||
398 | MOVL BP, R9 | ||
399 | ADDL BP, BX | ||
400 | ADDL $0x8771f681, CX | ||
401 | ADDL R8, CX | ||
402 | MOVL 44(DX), R8 | ||
403 | XORL SI, R9 | ||
404 | XORL BX, R9 | ||
405 | ADDL R9, CX | ||
406 | ROLL $0x0b, CX | ||
407 | MOVL BX, R9 | ||
408 | ADDL BX, CX | ||
409 | ADDL $0x6d9d6122, SI | ||
410 | ADDL R8, SI | ||
411 | MOVL 56(DX), R8 | ||
412 | XORL BP, R9 | ||
413 | XORL CX, R9 | ||
414 | ADDL R9, SI | ||
415 | ROLL $0x10, SI | ||
416 | MOVL CX, R9 | ||
417 | ADDL CX, SI | ||
418 | ADDL $0xfde5380c, BP | ||
419 | ADDL R8, BP | ||
420 | MOVL 4(DX), R8 | ||
421 | XORL BX, R9 | ||
422 | XORL SI, R9 | ||
423 | ADDL R9, BP | ||
424 | ROLL $0x17, BP | ||
425 | MOVL SI, R9 | ||
426 | ADDL SI, BP | ||
427 | ADDL $0xa4beea44, BX | ||
428 | ADDL R8, BX | ||
429 | MOVL 16(DX), R8 | ||
430 | XORL CX, R9 | ||
431 | XORL BP, R9 | ||
432 | ADDL R9, BX | ||
433 | ROLL $0x04, BX | ||
434 | MOVL BP, R9 | ||
435 | ADDL BP, BX | ||
436 | ADDL $0x4bdecfa9, CX | ||
437 | ADDL R8, CX | ||
438 | MOVL 28(DX), R8 | ||
439 | XORL SI, R9 | ||
440 | XORL BX, R9 | ||
441 | ADDL R9, CX | ||
442 | ROLL $0x0b, CX | ||
443 | MOVL BX, R9 | ||
444 | ADDL BX, CX | ||
445 | ADDL $0xf6bb4b60, SI | ||
446 | ADDL R8, SI | ||
447 | MOVL 40(DX), R8 | ||
448 | XORL BP, R9 | ||
449 | XORL CX, R9 | ||
450 | ADDL R9, SI | ||
451 | ROLL $0x10, SI | ||
452 | MOVL CX, R9 | ||
453 | ADDL CX, SI | ||
454 | ADDL $0xbebfbc70, BP | ||
455 | ADDL R8, BP | ||
456 | MOVL 52(DX), R8 | ||
457 | XORL BX, R9 | ||
458 | XORL SI, R9 | ||
459 | ADDL R9, BP | ||
460 | ROLL $0x17, BP | ||
461 | MOVL SI, R9 | ||
462 | ADDL SI, BP | ||
463 | ADDL $0x289b7ec6, BX | ||
464 | ADDL R8, BX | ||
465 | MOVL (DX), R8 | ||
466 | XORL CX, R9 | ||
467 | XORL BP, R9 | ||
468 | ADDL R9, BX | ||
469 | ROLL $0x04, BX | ||
470 | MOVL BP, R9 | ||
471 | ADDL BP, BX | ||
472 | ADDL $0xeaa127fa, CX | ||
473 | ADDL R8, CX | ||
474 | MOVL 12(DX), R8 | ||
475 | XORL SI, R9 | ||
476 | XORL BX, R9 | ||
477 | ADDL R9, CX | ||
478 | ROLL $0x0b, CX | ||
479 | MOVL BX, R9 | ||
480 | ADDL BX, CX | ||
481 | ADDL $0xd4ef3085, SI | ||
482 | ADDL R8, SI | ||
483 | MOVL 24(DX), R8 | ||
484 | XORL BP, R9 | ||
485 | XORL CX, R9 | ||
486 | ADDL R9, SI | ||
487 | ROLL $0x10, SI | ||
488 | MOVL CX, R9 | ||
489 | ADDL CX, SI | ||
490 | ADDL $0x04881d05, BP | ||
491 | ADDL R8, BP | ||
492 | MOVL 36(DX), R8 | ||
493 | XORL BX, R9 | ||
494 | XORL SI, R9 | ||
495 | ADDL R9, BP | ||
496 | ROLL $0x17, BP | ||
497 | MOVL SI, R9 | ||
498 | ADDL SI, BP | ||
499 | ADDL $0xd9d4d039, BX | ||
500 | ADDL R8, BX | ||
501 | MOVL 48(DX), R8 | ||
502 | XORL CX, R9 | ||
503 | XORL BP, R9 | ||
504 | ADDL R9, BX | ||
505 | ROLL $0x04, BX | ||
506 | MOVL BP, R9 | ||
507 | ADDL BP, BX | ||
508 | ADDL $0xe6db99e5, CX | ||
509 | ADDL R8, CX | ||
510 | MOVL 60(DX), R8 | ||
511 | XORL SI, R9 | ||
512 | XORL BX, R9 | ||
513 | ADDL R9, CX | ||
514 | ROLL $0x0b, CX | ||
515 | MOVL BX, R9 | ||
516 | ADDL BX, CX | ||
517 | ADDL $0x1fa27cf8, SI | ||
518 | ADDL R8, SI | ||
519 | MOVL 8(DX), R8 | ||
520 | XORL BP, R9 | ||
521 | XORL CX, R9 | ||
522 | ADDL R9, SI | ||
523 | ROLL $0x10, SI | ||
524 | MOVL CX, R9 | ||
525 | ADDL CX, SI | ||
526 | ADDL $0xc4ac5665, BP | ||
527 | ADDL R8, BP | ||
528 | MOVL (DX), R8 | ||
529 | XORL BX, R9 | ||
530 | XORL SI, R9 | ||
531 | ADDL R9, BP | ||
532 | ROLL $0x17, BP | ||
533 | MOVL SI, R9 | ||
534 | ADDL SI, BP | ||
535 | |||
536 | // ROUND4 | ||
537 | MOVL DI, R9 | ||
538 | XORL CX, R9 | ||
539 | ADDL $0xf4292244, BX | ||
540 | ADDL R8, BX | ||
541 | ORL BP, R9 | ||
542 | XORL SI, R9 | ||
543 | ADDL R9, BX | ||
544 | MOVL 28(DX), R8 | ||
545 | MOVL DI, R9 | ||
546 | ROLL $0x06, BX | ||
547 | XORL SI, R9 | ||
548 | ADDL BP, BX | ||
549 | ADDL $0x432aff97, CX | ||
550 | ADDL R8, CX | ||
551 | ORL BX, R9 | ||
552 | XORL BP, R9 | ||
553 | ADDL R9, CX | ||
554 | MOVL 56(DX), R8 | ||
555 | MOVL DI, R9 | ||
556 | ROLL $0x0a, CX | ||
557 | XORL BP, R9 | ||
558 | ADDL BX, CX | ||
559 | ADDL $0xab9423a7, SI | ||
560 | ADDL R8, SI | ||
561 | ORL CX, R9 | ||
562 | XORL BX, R9 | ||
563 | ADDL R9, SI | ||
564 | MOVL 20(DX), R8 | ||
565 | MOVL DI, R9 | ||
566 | ROLL $0x0f, SI | ||
567 | XORL BX, R9 | ||
568 | ADDL CX, SI | ||
569 | ADDL $0xfc93a039, BP | ||
570 | ADDL R8, BP | ||
571 | ORL SI, R9 | ||
572 | XORL CX, R9 | ||
573 | ADDL R9, BP | ||
574 | MOVL 48(DX), R8 | ||
575 | MOVL DI, R9 | ||
576 | ROLL $0x15, BP | ||
577 | XORL CX, R9 | ||
578 | ADDL SI, BP | ||
579 | ADDL $0x655b59c3, BX | ||
580 | ADDL R8, BX | ||
581 | ORL BP, R9 | ||
582 | XORL SI, R9 | ||
583 | ADDL R9, BX | ||
584 | MOVL 12(DX), R8 | ||
585 | MOVL DI, R9 | ||
586 | ROLL $0x06, BX | ||
587 | XORL SI, R9 | ||
588 | ADDL BP, BX | ||
589 | ADDL $0x8f0ccc92, CX | ||
590 | ADDL R8, CX | ||
591 | ORL BX, R9 | ||
592 | XORL BP, R9 | ||
593 | ADDL R9, CX | ||
594 | MOVL 40(DX), R8 | ||
595 | MOVL DI, R9 | ||
596 | ROLL $0x0a, CX | ||
597 | XORL BP, R9 | ||
598 | ADDL BX, CX | ||
599 | ADDL $0xffeff47d, SI | ||
600 | ADDL R8, SI | ||
601 | ORL CX, R9 | ||
602 | XORL BX, R9 | ||
603 | ADDL R9, SI | ||
604 | MOVL 4(DX), R8 | ||
605 | MOVL DI, R9 | ||
606 | ROLL $0x0f, SI | ||
607 | XORL BX, R9 | ||
608 | ADDL CX, SI | ||
609 | ADDL $0x85845dd1, BP | ||
610 | ADDL R8, BP | ||
611 | ORL SI, R9 | ||
612 | XORL CX, R9 | ||
613 | ADDL R9, BP | ||
614 | MOVL 32(DX), R8 | ||
615 | MOVL DI, R9 | ||
616 | ROLL $0x15, BP | ||
617 | XORL CX, R9 | ||
618 | ADDL SI, BP | ||
619 | ADDL $0x6fa87e4f, BX | ||
620 | ADDL R8, BX | ||
621 | ORL BP, R9 | ||
622 | XORL SI, R9 | ||
623 | ADDL R9, BX | ||
624 | MOVL 60(DX), R8 | ||
625 | MOVL DI, R9 | ||
626 | ROLL $0x06, BX | ||
627 | XORL SI, R9 | ||
628 | ADDL BP, BX | ||
629 | ADDL $0xfe2ce6e0, CX | ||
630 | ADDL R8, CX | ||
631 | ORL BX, R9 | ||
632 | XORL BP, R9 | ||
633 | ADDL R9, CX | ||
634 | MOVL 24(DX), R8 | ||
635 | MOVL DI, R9 | ||
636 | ROLL $0x0a, CX | ||
637 | XORL BP, R9 | ||
638 | ADDL BX, CX | ||
639 | ADDL $0xa3014314, SI | ||
640 | ADDL R8, SI | ||
641 | ORL CX, R9 | ||
642 | XORL BX, R9 | ||
643 | ADDL R9, SI | ||
644 | MOVL 52(DX), R8 | ||
645 | MOVL DI, R9 | ||
646 | ROLL $0x0f, SI | ||
647 | XORL BX, R9 | ||
648 | ADDL CX, SI | ||
649 | ADDL $0x4e0811a1, BP | ||
650 | ADDL R8, BP | ||
651 | ORL SI, R9 | ||
652 | XORL CX, R9 | ||
653 | ADDL R9, BP | ||
654 | MOVL 16(DX), R8 | ||
655 | MOVL DI, R9 | ||
656 | ROLL $0x15, BP | ||
657 | XORL CX, R9 | ||
658 | ADDL SI, BP | ||
659 | ADDL $0xf7537e82, BX | ||
660 | ADDL R8, BX | ||
661 | ORL BP, R9 | ||
662 | XORL SI, R9 | ||
663 | ADDL R9, BX | ||
664 | MOVL 44(DX), R8 | ||
665 | MOVL DI, R9 | ||
666 | ROLL $0x06, BX | ||
667 | XORL SI, R9 | ||
668 | ADDL BP, BX | ||
669 | ADDL $0xbd3af235, CX | ||
670 | ADDL R8, CX | ||
671 | ORL BX, R9 | ||
672 | XORL BP, R9 | ||
673 | ADDL R9, CX | ||
674 | MOVL 8(DX), R8 | ||
675 | MOVL DI, R9 | ||
676 | ROLL $0x0a, CX | ||
677 | XORL BP, R9 | ||
678 | ADDL BX, CX | ||
679 | ADDL $0x2ad7d2bb, SI | ||
680 | ADDL R8, SI | ||
681 | ORL CX, R9 | ||
682 | XORL BX, R9 | ||
683 | ADDL R9, SI | ||
684 | MOVL 36(DX), R8 | ||
685 | MOVL DI, R9 | ||
686 | ROLL $0x0f, SI | ||
687 | XORL BX, R9 | ||
688 | ADDL CX, SI | ||
689 | ADDL $0xeb86d391, BP | ||
690 | ADDL R8, BP | ||
691 | ORL SI, R9 | ||
692 | XORL CX, R9 | ||
693 | ADDL R9, BP | ||
694 | ROLL $0x15, BP | ||
695 | ADDL SI, BP | ||
696 | ADDL R10, BX | ||
697 | ADDL R11, BP | ||
698 | ADDL R12, SI | ||
699 | ADDL R13, CX | ||
700 | |||
701 | // Prepare next loop | ||
702 | ADDQ $0x40, DX | ||
703 | CMPQ DX, AX | ||
704 | JB loop | ||
705 | |||
706 | // Write output | ||
707 | MOVQ dig+0(FP), AX | ||
708 | MOVL BX, (AX) | ||
709 | MOVL BP, 4(AX) | ||
710 | MOVL SI, 8(AX) | ||
711 | MOVL CX, 12(AX) | ||
712 | |||
713 | end: | ||
714 | RET | ||