Print this page
3882 remove xmod & friends


  42 
  43         .section        ".text",#alloc
  44         .align  32
  45 
  46         .section        ".text",#alloc,#execinstr
  47         .align  32
  48         .skip   32
  49 
  50 /*
  51  * SUBROUTINE arcfour_crypt_aligned
  52  *
  53  * void arcfour_crypt_aligned(ARCFour_key *key, size_t len,
  54  *                      uchar_t *in, uchar_t *out);
  55  *
  56  * in and out should be aligned on an 8-byte boundary, but len can be anything
  57  */
  58         .global arcfour_crypt_aligned
  59 
  60 
  61 arcfour_crypt_aligned:
  62 
  63 /* EXPORT DELETE START */
  64         save    %sp,-144,%sp
  65 
  66         srl     %i1, 3, %l7
  67         ldub    [%i0+256], %g1
  68 
  69         orcc    %l7, %g0, %g0
  70         ldub    [%i0+257], %g2
  71 
  72         add     %g1, 1, %o1
  73         bz      %icc, .Loop2
  74         add     %i0, 0, %i5
  75 
  76         add     %o1, 1, %g1
  77         and     %o1, 255, %o1
  78 
  79         and     %g1, 255, %g1
  80         ldub    [%i5 + %o1], %o3
  81 
  82         ldub    [%i5 + %g1], %g3
  83 


 501         and     %g2, 255, %g2
 502 
 503 .L6A:
 504         add     %o2, %o3, %g2
 505         or      %o3, %g0, %g3
 506         ba      .L6B
 507         and     %g2, 255, %g2
 508 
 509 .L7A:
 510         add     %o2, %o3, %g2
 511         or      %o3, %g0, %g3
 512         ba      .L7B
 513         and     %g2, 255, %g2
 514 
 515 .L8A:
 516         add     %o2, %o3, %g2
 517         or      %o3, %g0, %g3
 518         ba      .L8B
 519         and     %g2, 255, %g2
 520 
 521 /* EXPORT DELETE END */
 522         .type   arcfour_crypt_aligned,2
 523         .size   arcfour_crypt_aligned,(. - arcfour_crypt_aligned)
 524 
 525 #endif  /* lint || __lint */


  42 
  43         .section        ".text",#alloc
  44         .align  32
  45 
  46         .section        ".text",#alloc,#execinstr
  47         .align  32
  48         .skip   32
  49 
  50 /*
  51  * SUBROUTINE arcfour_crypt_aligned
  52  *
  53  * void arcfour_crypt_aligned(ARCFour_key *key, size_t len,
  54  *                      uchar_t *in, uchar_t *out);
  55  *
  56  * in and out should be aligned on an 8-byte boundary, but len can be anything
  57  */
  58         .global arcfour_crypt_aligned
  59 
  60 
  61 arcfour_crypt_aligned:


  62         save    %sp,-144,%sp
  63 
  64         srl     %i1, 3, %l7
  65         ldub    [%i0+256], %g1
  66 
  67         orcc    %l7, %g0, %g0
  68         ldub    [%i0+257], %g2
  69 
  70         add     %g1, 1, %o1
  71         bz      %icc, .Loop2
  72         add     %i0, 0, %i5
  73 
  74         add     %o1, 1, %g1
  75         and     %o1, 255, %o1
  76 
  77         and     %g1, 255, %g1
  78         ldub    [%i5 + %o1], %o3
  79 
  80         ldub    [%i5 + %g1], %g3
  81 


 499         and     %g2, 255, %g2
 500 
 501 .L6A:
 502         add     %o2, %o3, %g2
 503         or      %o3, %g0, %g3
 504         ba      .L6B
 505         and     %g2, 255, %g2
 506 
 507 .L7A:
 508         add     %o2, %o3, %g2
 509         or      %o3, %g0, %g3
 510         ba      .L7B
 511         and     %g2, 255, %g2
 512 
 513 .L8A:
 514         add     %o2, %o3, %g2
 515         or      %o3, %g0, %g3
 516         ba      .L8B
 517         and     %g2, 255, %g2
 518 

 519         .type   arcfour_crypt_aligned,2
 520         .size   arcfour_crypt_aligned,(. - arcfour_crypt_aligned)
 521 
 522 #endif  /* lint || __lint */