Lines Matching +full:80 +full:a
4 * This file is provided under a dual BSD/GPLv2 license. When using or
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
47 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
100 .set A, REG_A define
145 * Keep 2 iterations precalculated at a time:
146 * - 80 DWORDs per iteration * 2
148 #define W_SIZE (80*2*2 +16)
150 #define WK(t) ((((t) % 80) / 4)*32 + ( (t) % 4)*4 + ((t)/80)*16 )(WK_BUF)
305 .elseif (i < 80)
328 .set TB, A
329 .set A, T_REG define
353 .set round_id, (\r % 80)
376 .set round_id, ( (\r+1) % 80)
385 andn C, A, T1 /* ~b&d */
388 rorx $(32-5), A, TA /* T2 = A >>> 5 */
389 rorx $(32-30),A, TB /* b>>>2 for next round */
397 and B, A /* b&c */
398 xor T1, A /* F1 = (b&c) ^ (~b&d) */
400 lea (RE,RTA), E /* E += A >>> 5 */
408 rorx $(32-5), A, TA /* T2 = A >>> 5 */
410 rorx $(32-30), A, TB /* b>>>2 for next round */
415 xor B, A
418 add TA, E /* E += A >>> 5 */
421 xor C, A
432 or A, T1
434 rorx $(32-5), A, TA /* T2 = A >>> 5 */
435 rorx $(32-30), A, TB /* b>>>2 for next round */
441 and B, A
442 or T1, A
444 add TA, E /* E += A >>> 5 */
451 .macro ADD_IF_GE a, b, c, d
452 mov \a, RTA
455 cmovge RTA, \a
459 * macro implements 80 rounds of SHA-1, for multiple blocks with s/w pipelining
465 mov (HASH_PTR), A
472 lea (2*4*80+32)(%rsp), WK_BUF
491 * we use K_BASE value as a signal of a last block,
538 UPDATE_HASH (HASH_PTR), A
552 * 0+80, 2+80, 4+80, 6+80, 8+80
553 * 10+80,12+80,14+80,16+80,18+80
558 RR j+80
564 * 20+80,22+80,24+80,26+80,28+80
565 * 30+80,32+80,34+80,36+80,38+80
568 RR j+80
574 * 40+80,42+80,44+80,46+80,48+80
575 * 50+80,52+80,54+80,56+80,58+80
578 RR j+80
589 * 60+80,62+80,64+80,66+80,68+80
590 * 70+80,72+80,74+80,76+80,78+80
593 RR j+80
597 UPDATE_HASH (HASH_PTR), A
604 mov A, TA
605 mov TB, A