]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
(_aes_crypt): Renamed more variables in the inner loop. Now the
authorNiels Möller <nisse@lysator.liu.se>
Fri, 15 Feb 2002 22:24:05 +0000 (23:24 +0100)
committerNiels Möller <nisse@lysator.liu.se>
Fri, 15 Feb 2002 22:24:05 +0000 (23:24 +0100)
primary variables are t0, t1, t2, t3. (t1 and t3 done so far).

Rev: src/nettle/sparc/aes.asm:1.35

sparc/aes.asm

index 271dc0c478ec26f147f97762b05d5442b419067d..26ff6af261ce10fcb04e074c8a3ea66cd3201189 100644 (file)
@@ -1,6 +1,6 @@
        ! Used registers:       %l0,1,2,3,4,5
        !                       %i0,1,2,3,4,5 (%i6=%fp, %i7 = return)
-       !                       %o0,2,3,4,5,7 (%o6=%sp)
+       !                       %o0,1,2,3,4,5,7 (%o6=%sp)
        !                       %g2,3,4
 include(`asm.m4')
        
@@ -28,7 +28,11 @@ define(nround, %l3)
 ! Loop variables
 define(round, %l4) ! Should perhaps be 16 * round
 define(i, %l5)
-       
+
+! Teporaries
+define(t1, %o1)
+define(t3, %o3)
+
 _aes_crypt:
 ! Why -136?
        save    %sp, -136, %sp
@@ -104,21 +108,23 @@ _aes_crypt:
        add     T, AES_SIDX3, %o2
 .Linner_loop:
        ! The comments mark which j in T->table[j][ Bj(wtxt[IDXi(i)]) ]
-       ! the instruction is a part of. Uses the %o[j] as the primary 
-       ! register for that sub-expression. True for j==1.
+       ! the instruction is a part of. 
+       !
+       ! The code uses the register %o[j], aka tj, as the primary 
+       ! register for that sub-expression. True for j==1,3.
        
        ! AES_SIDX1
-       ld      [%o2-32], %o1           ! 1
+       ld      [%o2-32], t1            ! 1
 
        ! AES_SIDX2
        ld      [%o2-16], %o4           ! 2
        ! wtxt[IDX1...]
-       add     wtxt, %o1, %o1          ! 1
-       ldub    [%o1+2], %o1            ! 1
+       add     wtxt, t1, t1            ! 1
+       ldub    [t1+2], t1              ! 1
 
        ! AES_SIDX3
-       ld      [%o2], %g2              ! 3
-       sll     %o1, 2, %o1             ! 1
+       ld      [%o2], t3               ! 3
+       sll     t1, 2, t1               ! 1
        
        ! wtxt[i]
        ld      [wtxt+i], %o5           ! 0
@@ -129,22 +135,22 @@ _aes_crypt:
        and     %o5, 255, %o5           ! 0
 
        ! wtxt[IDX3...]
-       ldub    [wtxt+%g2], %o4         ! 3
+       ldub    [wtxt+t3], t3           ! 3
        
        sll     %o5, 2, %o5             ! 0
        add     %o5, AES_TABLE0, %o5    ! 0
        ld      [T+%o5], %g2            ! 0
 
-       add     %o1, AES_TABLE1, %o1    ! 1
+       add     t1, AES_TABLE1, t1      ! 1
        and     %g3, 255, %g3           ! 2
-       ld      [T+%o1], %o1            ! 1
+       ld      [T+t1], t1              ! 1
        sll     %g3, 2, %g3             ! 2
        add     %g3, AES_TABLE2, %g3    ! 2
        ld      [T+%g3], %o0            ! 2
-       sll     %o4, 2, %o4             ! 3
-       add     %o4, AES_TABLE3, %o4    ! 3
-       ld      [T+%o4], %g3            ! 3
-       xor     %g2, %o1, %g2           ! 0, 1
+       sll     t3, 2, t3               ! 3
+       add     t3, AES_TABLE3, t3      ! 3
+       ld      [T+t3], t3              ! 3
+       xor     %g2, t1, %g2            ! 0, 1
        xor     %g2, %o0, %g2           ! 0, 1, 2
 
        add     %o2, 4, %o2             
@@ -154,7 +160,7 @@ _aes_crypt:
 !      add     %o5, ctx, %o5
 !      ld      [%o5], %o5
                
-       xor     %g2, %g3, %g2           ! 0, 1, 2, 3
+       xor     %g2, t3, %g2            ! 0, 1, 2, 3
 
 !      xor     %g2, %o5, %g2
        st      %g2, [tmp+i]