Lines Matching refs:SZ
134 $SZ=8;
146 $SZ=4;
161 $_ctx="16*$SZ+0*8(%rsp)";
162 $_inp="16*$SZ+1*8(%rsp)";
163 $_end="16*$SZ+2*8(%rsp)";
164 $_rsp="16*$SZ+3*8(%rsp)";
165 $framesz="16*$SZ+4*8";
170 my $STRIDE=$SZ;
171 $STRIDE += 16 if ($i%(16/$SZ)==(16/$SZ-1));
181 mov $T1,`$SZ*($i&0xf)`(%rsp)
221 mov `$SZ*(($i+1)&0xf)`(%rsp),$a0
222 mov `$SZ*(($i+14)&0xf)`(%rsp),$a2
239 add `$SZ*(($i+9)&0xf)`(%rsp),$T1
241 add `$SZ*($i&0xf)`(%rsp),$T1
258 $code.=<<___ if ($SZ==4 || $avx);
264 $code.=<<___ if ($SZ==4 && $shaext);
268 $code.=<<___ if ($avx && $SZ==8);
284 $code.=<<___ if ($SZ==4);
298 lea ($inp,%rdx,$SZ),%rdx # inp+num*16*$SZ
306 mov $SZ*0($ctx),$A
307 mov $SZ*1($ctx),$B
308 mov $SZ*2($ctx),$C
309 mov $SZ*3($ctx),$D
310 mov $SZ*4($ctx),$E
311 mov $SZ*5($ctx),$F
312 mov $SZ*6($ctx),$G
313 mov $SZ*7($ctx),$H
324 $code.=" mov $SZ*$i($inp),$T1\n";
342 cmpb \$0,`$SZ-1`($Tbl)
347 lea 16*$SZ($inp),$inp
349 add $SZ*0($ctx),$A
350 add $SZ*1($ctx),$B
351 add $SZ*2($ctx),$C
352 add $SZ*3($ctx),$D
353 add $SZ*4($ctx),$E
354 add $SZ*5($ctx),$F
355 add $SZ*6($ctx),$G
356 add $SZ*7($ctx),$H
360 mov $A,$SZ*0($ctx)
361 mov $B,$SZ*1($ctx)
362 mov $C,$SZ*2($ctx)
363 mov $D,$SZ*3($ctx)
364 mov $E,$SZ*4($ctx)
365 mov $F,$SZ*5($ctx)
366 mov $G,$SZ*6($ctx)
367 mov $H,$SZ*7($ctx)
383 if ($SZ==4) {
524 if ($SZ==4 && $shaext) {{{
713 '&add ($h,$SZ*($i&15)."(%rsp)")', # h+=X[i]+K[i]
741 if ($SZ==4) { # SHA256 only
759 lea ($inp,%rdx,$SZ),%rdx # inp+num*16*$SZ
767 movaps %xmm6,16*$SZ+32(%rsp)
768 movaps %xmm7,16*$SZ+48(%rsp)
769 movaps %xmm8,16*$SZ+64(%rsp)
770 movaps %xmm9,16*$SZ+80(%rsp)
775 mov $SZ*0($ctx),$A
776 mov $SZ*1($ctx),$B
777 mov $SZ*2($ctx),$C
778 mov $SZ*3($ctx),$D
779 mov $SZ*4($ctx),$E
780 mov $SZ*5($ctx),$F
781 mov $SZ*6($ctx),$G
782 mov $SZ*7($ctx),$H
786 #movdqa $TABLE+`$SZ*2*$rounds`+32(%rip),$t4
787 #movdqa $TABLE+`$SZ*2*$rounds`+64(%rip),$t5
791 movdqa $TABLE+`$SZ*2*$rounds`(%rip),$t3
821 sub \$`-16*2*$SZ`,$Tbl # size optimization
827 '&palignr ($t0,@X[0],$SZ)', # X[1..4]
828 '&palignr ($t3,@X[2],$SZ);', # X[9..12]
835 '&pslld ($t1,8*$SZ-$sigma0[1]);'.
888 &palignr ($t0,@X[0],$SZ); # X[1..4]
891 &palignr ($t3,@X[2],$SZ); # X[9..12]
915 &pslld ($t1,8*$SZ-$sigma0[1]);
1030 &cmpb ($SZ-1+16*2*$SZ."($Tbl)",0);
1040 add $SZ*0($ctx),$A
1041 lea 16*$SZ($inp),$inp
1042 add $SZ*1($ctx),$B
1043 add $SZ*2($ctx),$C
1044 add $SZ*3($ctx),$D
1045 add $SZ*4($ctx),$E
1046 add $SZ*5($ctx),$F
1047 add $SZ*6($ctx),$G
1048 add $SZ*7($ctx),$H
1052 mov $A,$SZ*0($ctx)
1053 mov $B,$SZ*1($ctx)
1054 mov $C,$SZ*2($ctx)
1055 mov $D,$SZ*3($ctx)
1056 mov $E,$SZ*4($ctx)
1057 mov $F,$SZ*5($ctx)
1058 mov $G,$SZ*6($ctx)
1059 mov $H,$SZ*7($ctx)
1065 movaps 16*$SZ+32(%rsp),%xmm6
1066 movaps 16*$SZ+48(%rsp),%xmm7
1067 movaps 16*$SZ+64(%rsp),%xmm8
1068 movaps 16*$SZ+80(%rsp),%xmm9
1088 if ($SZ==8) { # SHA512 only
1102 sub \$`$framesz+$win64*16*($SZ==4?4:6)`,%rsp
1103 lea ($inp,%rdx,$SZ),%rdx # inp+num*16*$SZ
1111 movaps %xmm6,16*$SZ+32(%rsp)
1112 movaps %xmm7,16*$SZ+48(%rsp)
1113 movaps %xmm8,16*$SZ+64(%rsp)
1114 movaps %xmm9,16*$SZ+80(%rsp)
1116 $code.=<<___ if ($win64 && $SZ>4);
1117 movaps %xmm10,16*$SZ+96(%rsp)
1118 movaps %xmm11,16*$SZ+112(%rsp)
1124 mov $SZ*0($ctx),$A
1125 mov $SZ*1($ctx),$B
1126 mov $SZ*2($ctx),$C
1127 mov $SZ*3($ctx),$D
1128 mov $SZ*4($ctx),$E
1129 mov $SZ*5($ctx),$F
1130 mov $SZ*6($ctx),$G
1131 mov $SZ*7($ctx),$H
1134 if ($SZ==4) { # SHA256
1141 vmovdqa $TABLE+`$SZ*2*$rounds`(%rip),$t3
1167 sub \$`-16*2*$SZ`,$Tbl # size optimization
1175 &vpalignr ($t0,@X[1],@X[0],$SZ); # X[1..4]
1178 &vpalignr ($t3,@X[3],@X[2],$SZ); # X[9..12]
1181 &vprotd ($t1,$t0,8*$SZ-$sigma0[1]);
1200 &vprotd ($t3,@X[3],8*$SZ-$sigma1[1]);
1235 &vprotd ($t3,@X[0],8*$SZ-$sigma1[1]);
1273 &cmpb ($SZ-1+16*2*$SZ."($Tbl)",0);
1287 vmovdqa $TABLE+`$SZ*2*$rounds`(%rip),$t3
1329 add \$`16*2*$SZ`,$Tbl
1337 &vpalignr ($t0,@X[1],@X[0],$SZ); # X[1..2]
1340 &vpalignr ($t3,@X[5],@X[4],$SZ); # X[9..10]
1343 &vprotq ($t1,$t0,8*$SZ-$sigma0[1]);
1362 &vprotq ($t3,@X[7],8*$SZ-$sigma1[1]);
1401 &cmpb ($SZ-1+16*2*$SZ-0x80."($Tbl)",0);
1412 add $SZ*0($ctx),$A
1413 lea 16*$SZ($inp),$inp
1414 add $SZ*1($ctx),$B
1415 add $SZ*2($ctx),$C
1416 add $SZ*3($ctx),$D
1417 add $SZ*4($ctx),$E
1418 add $SZ*5($ctx),$F
1419 add $SZ*6($ctx),$G
1420 add $SZ*7($ctx),$H
1424 mov $A,$SZ*0($ctx)
1425 mov $B,$SZ*1($ctx)
1426 mov $C,$SZ*2($ctx)
1427 mov $D,$SZ*3($ctx)
1428 mov $E,$SZ*4($ctx)
1429 mov $F,$SZ*5($ctx)
1430 mov $G,$SZ*6($ctx)
1431 mov $H,$SZ*7($ctx)
1438 movaps 16*$SZ+32(%rsp),%xmm6
1439 movaps 16*$SZ+48(%rsp),%xmm7
1440 movaps 16*$SZ+64(%rsp),%xmm8
1441 movaps 16*$SZ+80(%rsp),%xmm9
1443 $code.=<<___ if ($win64 && $SZ>4);
1444 movaps 16*$SZ+96(%rsp),%xmm10
1445 movaps 16*$SZ+112(%rsp),%xmm11
1478 sub \$`$framesz+$win64*16*($SZ==4?4:6)`,%rsp
1479 lea ($inp,%rdx,$SZ),%rdx # inp+num*16*$SZ
1487 movaps %xmm6,16*$SZ+32(%rsp)
1488 movaps %xmm7,16*$SZ+48(%rsp)
1489 movaps %xmm8,16*$SZ+64(%rsp)
1490 movaps %xmm9,16*$SZ+80(%rsp)
1492 $code.=<<___ if ($win64 && $SZ>4);
1493 movaps %xmm10,16*$SZ+96(%rsp)
1494 movaps %xmm11,16*$SZ+112(%rsp)
1500 mov $SZ*0($ctx),$A
1501 mov $SZ*1($ctx),$B
1502 mov $SZ*2($ctx),$C
1503 mov $SZ*3($ctx),$D
1504 mov $SZ*4($ctx),$E
1505 mov $SZ*5($ctx),$F
1506 mov $SZ*6($ctx),$G
1507 mov $SZ*7($ctx),$H
1509 if ($SZ==4) { # SHA256
1514 vmovdqa $TABLE+`$SZ*2*$rounds`+32(%rip),$t4
1515 vmovdqa $TABLE+`$SZ*2*$rounds`+64(%rip),$t5
1519 vmovdqa $TABLE+`$SZ*2*$rounds`(%rip),$t3
1545 sub \$`-16*2*$SZ`,$Tbl # size optimization
1549 '&vpalignr ($t0,@X[1],@X[0],$SZ)', # X[1..4]
1550 '&vpalignr ($t3,@X[3],@X[2],$SZ)', # X[9..12]
1554 '&vpslld ($t1,$t0,8*$SZ-$sigma0[1]);',
1602 &cmpb ($SZ-1+16*2*$SZ."($Tbl)",0);
1617 vmovdqa $TABLE+`$SZ*2*$rounds`(%rip),$t3
1659 add \$`16*2*$SZ`,$Tbl
1663 '&vpalignr ($t0,@X[1],@X[0],$SZ)', # X[1..2]
1664 '&vpalignr ($t3,@X[5],@X[4],$SZ)', # X[9..10]
1668 '&vpsllq ($t1,$t0,8*$SZ-$sigma0[1]);',
1676 '&vpsllq ($t2,@X[7],8*$SZ-$sigma1[1]);',
1709 &cmpb ($SZ-1+16*2*$SZ-0x80."($Tbl)",0);
1720 add $SZ*0($ctx),$A
1721 lea 16*$SZ($inp),$inp
1722 add $SZ*1($ctx),$B
1723 add $SZ*2($ctx),$C
1724 add $SZ*3($ctx),$D
1725 add $SZ*4($ctx),$E
1726 add $SZ*5($ctx),$F
1727 add $SZ*6($ctx),$G
1728 add $SZ*7($ctx),$H
1732 mov $A,$SZ*0($ctx)
1733 mov $B,$SZ*1($ctx)
1734 mov $C,$SZ*2($ctx)
1735 mov $D,$SZ*3($ctx)
1736 mov $E,$SZ*4($ctx)
1737 mov $F,$SZ*5($ctx)
1738 mov $G,$SZ*6($ctx)
1739 mov $H,$SZ*7($ctx)
1746 movaps 16*$SZ+32(%rsp),%xmm6
1747 movaps 16*$SZ+48(%rsp),%xmm7
1748 movaps 16*$SZ+64(%rsp),%xmm8
1749 movaps 16*$SZ+80(%rsp),%xmm9
1751 $code.=<<___ if ($win64 && $SZ>4);
1752 movaps 16*$SZ+96(%rsp),%xmm10
1753 movaps 16*$SZ+112(%rsp),%xmm11
1772 my $a5=$SZ==4?"%esi":"%rsi"; # zap $inp
1773 my $PUSH8=8*2*$SZ;
1781 '&add ($h,(32*($i/(16/$SZ))+$SZ*($i%(16/$SZ)))%$PUSH8.$base)', # h+=X[i]+K[i]
1828 sub \$`2*$SZ*$rounds+4*8+$win64*16*($SZ==4?4:6)`,%rsp
1830 and \$-256*$SZ,%rsp # align stack frame
1831 lea ($inp,%rdx,$SZ),%rdx # inp+num*16*$SZ
1832 add \$`2*$SZ*($rounds-8)`,%rsp
1839 movaps %xmm6,16*$SZ+32(%rsp)
1840 movaps %xmm7,16*$SZ+48(%rsp)
1841 movaps %xmm8,16*$SZ+64(%rsp)
1842 movaps %xmm9,16*$SZ+80(%rsp)
1844 $code.=<<___ if ($win64 && $SZ>4);
1845 movaps %xmm10,16*$SZ+96(%rsp)
1846 movaps %xmm11,16*$SZ+112(%rsp)
1852 sub \$-16*$SZ,$inp # inp++, size optimization
1853 mov $SZ*0($ctx),$A
1855 mov $SZ*1($ctx),$B
1857 mov $SZ*2($ctx),$C
1859 mov $SZ*3($ctx),$D
1860 mov $SZ*4($ctx),$E
1861 mov $SZ*5($ctx),$F
1862 SZ*6($ctx),$G
1863 mov $SZ*7($ctx),$H
1865 if ($SZ==4) { # SHA256
1870 vmovdqa $TABLE+`$SZ*2*$rounds`+32(%rip),$t4
1871 vmovdqa $TABLE+`$SZ*2*$rounds`+64(%rip),$t5
1875 vmovdqa $TABLE+`$SZ*2*$rounds`(%rip),$t3
1876 vmovdqu -16*$SZ+0($inp),%xmm0
1877 vmovdqu -16*$SZ+16($inp),%xmm1
1878 vmovdqu -16*$SZ+32($inp),%xmm2
1879 vmovdqu -16*$SZ+48($inp),%xmm3
1904 sub \$-16*2*$SZ,$Tbl # size optimization
1934 &lea ($Tbl,16*2*$SZ."($Tbl)");
1935 &cmpb (($SZ-1)."($Tbl)",0);
1950 vmovdqu -16*$SZ($inp),%xmm0
1951 vmovdqu -16*$SZ+16($inp),%xmm1
1952 vmovdqu -16*$SZ+32($inp),%xmm2
1954 vmovdqu -16*$SZ+48($inp),%xmm3
1955 vmovdqu -16*$SZ+64($inp),%xmm4
1956 vmovdqu -16*$SZ+80($inp),%xmm5
1957 vmovdqu -16*$SZ+96($inp),%xmm6
1958 vmovdqu -16*$SZ+112($inp),%xmm7
1960 vmovdqa `$SZ*2*$rounds-0x80`($Tbl),$t2
1999 add \$16*2*$SZ,$Tbl
2031 &lea ($Tbl,16*2*$SZ."($Tbl)");
2032 &cmpb (($SZ-1-0x80)."($Tbl)",0);
2041 mov `2*$SZ*$rounds`(%rsp),$ctx # $_ctx
2043 #mov `2*$SZ*$rounds+8`(%rsp),$inp # $_inp
2044 lea `2*$SZ*($rounds-8)`(%rsp),$Tbl
2046 add $SZ*0($ctx),$A
2047 add $SZ*1($ctx),$B
2048 add $SZ*2($ctx),$C
2049 add $SZ*3($ctx),$D
2050 add $SZ*4($ctx),$E
2051 add $SZ*5($ctx),$F
2052 add $SZ*6($ctx),$G
2053 add $SZ*7($ctx),$H
2055 mov $A,$SZ*0($ctx)
2056 mov $B,$SZ*1($ctx)
2057 mov $C,$SZ*2($ctx)
2058 mov $D,$SZ*3($ctx)
2059 mov $E,$SZ*4($ctx)
2060 mov $F,$SZ*5($ctx)
2061 mov $G,$SZ*6($ctx)
2062 mov $H,$SZ*7($ctx)
2084 mov `2*$SZ*$rounds`(%rsp),$ctx # $_ctx
2086 #mov `2*$SZ*$rounds+8`(%rsp),$inp # $_inp
2087 lea `2*$SZ*($rounds-8)`(%rsp),%rsp
2089 add $SZ*0($ctx),$A
2090 add $SZ*1($ctx),$B
2091 add $SZ*2($ctx),$C
2092 add $SZ*3($ctx),$D
2093 add $SZ*4($ctx),$E
2094 add $SZ*5($ctx),$F
2095 lea `2*16*$SZ`($inp),$inp # inp+=2
2096 add $SZ*6($ctx),$G
2098 add $SZ*7($ctx),$H
2101 mov $A,$SZ*0($ctx)
2103 mov $B,$SZ*1($ctx)
2104 mov $C,$SZ*2($ctx)
2105 mov $D,$SZ*3($ctx)
2106 mov $E,$SZ*4($ctx)
2107 mov $F,$SZ*5($ctx)
2108 mov $G,$SZ*6($ctx)
2109 mov $H,$SZ*7($ctx)
2120 movaps 16*$SZ+32(%rsp),%xmm6
2121 movaps 16*$SZ+48(%rsp),%xmm7
2122 movaps 16*$SZ+64(%rsp),%xmm8
2123 movaps 16*$SZ+80(%rsp),%xmm9
2125 $code.=<<___ if ($win64 && $SZ>4);
2126 movaps 16*$SZ+96(%rsp),%xmm10
2127 movaps 16*$SZ+112(%rsp),%xmm11
2191 and \$-256*$SZ,%rax
2192 add \$`2*$SZ*($rounds-8)`,%rax
2197 mov 16*$SZ+3*8(%rax),%rax # pull $_rsp
2216 lea 16*$SZ+4*8(%rsi),%rsi # Xmm6- save area
2218 mov \$`$SZ==4?8:12`,%ecx
2262 $code.=<<___ if ($SZ==4 && $shaext);
2304 $code.=<<___ if ($SZ==4 && $shaext);
2309 $code.=<<___ if ($SZ==4);
2314 $code.=<<___ if ($avx && $SZ==8);
2337 $code.=<<___ if ($SZ==4 && $shaext);
2342 $code.=<<___ if ($SZ==4);
2348 $code.=<<___ if ($avx && $SZ==8);