Lines Matching refs:rc4

17 # instruction sequence is virtually identical to rc4-x86_64.pl, which
34 # (*) rc4-x86_64.pl delivers 5.3 on Opteron, so real improvement
37 my ($rc4,$md5)=(1,1); # what to generate?
40 # to be able to use 'openssl speed rc4' for
59 if ($rc4 && !$md5) {
62 } elsif ($md5 && !$rc4) {
125 if ($rc4) {
193 #rc4# add $TX[0]#b,$YY#b
194 #rc4# lea ($dat,$XX[0],4),$XX[1]
221 $code.=" movdqu ($in0),%xmm2\n" if ($rc4 && $j==15);
222 $code.=" add \$$MOD,$XX[0]#b\n" if ($rc4 && $j==15 && $k==$MOD-1);
223 $code.=" pxor $xmm,$xmm\n" if ($rc4 && $j<=1);
225 #rc4# movl ($dat,$YY,4),$TY#d
227 #rc4# movl $TX[0]#d,($dat,$YY,4)
230 #rc4# add $TY#b,$TX[0]#b
231 #rc4# movl `4*(($k+1)%$MOD)`(`$k==$MOD-1?"$dat,$XX[0],4":"$XX[1]"`),$TX[1]#d
234 #rc4# movz $TX[0]#b,$TX[0]#d
235 #rc4# movl $TY#d,4*$k($XX[1])
237 #rc4# add $TX[1]#b,$YY#b
240 #rc4# pinsrw \$`($j>>1)&7`,($dat,$TX[0],4),$xmm\n
243 $code.=<<___ if ($rc4 && $j==15 && $k==$MOD-1);
249 $code.=<<___ if ($rc4 && $j==15);
261 $code.=" movdqu 16($in0),%xmm3\n" if ($rc4 && $j==15);
262 $code.=" add \$$MOD,$XX[0]#b\n" if ($rc4 && $j==15 && $k==$MOD-1);
263 $code.=" pxor $xmm,$xmm\n" if ($rc4 && $j<=1);
265 #rc4# movl ($dat,$YY,4),$TY#d
267 #rc4# movl $TX[0]#d,($dat,$YY,4)
270 #rc4# add $TY#b,$TX[0]#b
271 #rc4# movl `4*(($k+1)%$MOD)`(`$k==$MOD-1?"$dat,$XX[0],4":"$XX[1]"`),$TX[1]#d
274 #rc4# movz $TX[0]#b,$TX[0]#d
275 #rc4# movl $TY#d,4*$k($XX[1])
277 #rc4# add $TX[1]#b,$YY#b
280 #rc4# pinsrw \$`($j>>1)&7`,($dat,$TX[0],4),$xmm\n
283 $code.=<<___ if ($rc4 && $j==15 && $k==$MOD-1);
289 $code.=<<___ if ($rc4 && $j==15);
301 $code.=" movdqu 32($in0),%xmm4\n" if ($rc4 && $j==15);
302 $code.=" add \$$MOD,$XX[0]#b\n" if ($rc4 && $j==15 && $k==$MOD-1);
303 $code.=" pxor $xmm,$xmm\n" if ($rc4 && $j<=1);
305 #rc4# movl ($dat,$YY,4),$TY#d
307 #rc4# movl $TX[0]#d,($dat,$YY,4)
310 #rc4# add $TY#b,$TX[0]#b
311 #rc4# movl `4*(($k+1)%$MOD)`(`$k==$MOD-1?"$dat,$XX[0],4":"$XX[1]"`),$TX[1]#d
313 #rc4# movz $TX[0]#b,$TX[0]#d
315 #rc4# movl $TY#d,4*$k($XX[1])
316 #rc4# add $TX[1]#b,$YY#b
319 #rc4# pinsrw \$`($j>>1)&7`,($dat,$TX[0],4),$xmm\n
322 $code.=<<___ if ($rc4 && $j==15 && $k==$MOD-1);
328 $code.=<<___ if ($rc4 && $j==15);
340 $code.=" movdqu 48($in0),%xmm5\n" if ($rc4 && $j==15);
341 $code.=" add \$$MOD,$XX[0]#b\n" if ($rc4 && $j==15 && $k==$MOD-1);
342 $code.=" pxor $xmm,$xmm\n" if ($rc4 && $j<=1);
344 #rc4# movl ($dat,$YY,4),$TY#d
346 #rc4# movl $TX[0]#d,($dat,$YY,4)
349 #rc4# add $TY#b,$TX[0]#b
350 #rc4# movl `4*(($k+1)%$MOD)`(`$k==$MOD-1?"$dat,$XX[0],4":"$XX[1]"`),$TX[1]#d
352 #rc4# movz $TX[0]#b,$TX[0]#d
354 #rc4# movl $TY#d,4*$k($XX[1])
356 #rc4# add $TX[1]#b,$YY#b
359 #rc4# pinsrw \$`($j>>1)&7`,($dat,$TX[0],4),$xmm\n
362 $code.=<<___ if ($rc4 && $j==15);
388 #rc4# movdqu %xmm2,($out,$in0) # write RC4 output
389 #rc4# movdqu %xmm3,16($out,$in0)
390 #rc4# movdqu %xmm4,32($out,$in0)
391 #rc4# movdqu %xmm5,48($out,$in0)
393 #rc4# lea 64($in0),$in0
398 #rc4# sub $TX[0]#b,$YY#b # correct $YY
404 $code.=<<___ if ($rc4 && (!$md5 || $D));
429 #rc4# sub \$1,$XX[0]#b
430 #rc4# movl $XX[0]#d,-8($dat)
431 #rc4# movl $YY#d,-4($dat)
446 if ($rc4 && $D) { # sole purpose of this section is to provide
448 # replacement for rc4-x86_64.pl for debugging
503 .asciz "rc4(64x,int)"
628 $code =~ s/#rc4#//gm if ($rc4);