]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
* sparc/machine.m4 (AES_ROUND): Deleted unused argument T. Updated
authorNiels Möller <nisse@lysator.liu.se>
Sun, 16 Oct 2005 11:39:37 +0000 (13:39 +0200)
committerNiels Möller <nisse@lysator.liu.se>
Sun, 16 Oct 2005 11:39:37 +0000 (13:39 +0200)
all calls in aes-encrypt-internal.asm.

Rev: src/nettle/sparc/aes-encrypt-internal.asm:1.9
Rev: src/nettle/sparc/machine.m4:1.9

sparc/aes-encrypt-internal.asm
sparc/machine.m4

index 20e2610168cc55ae55cd68de0678fc3d8e9895f9..09964b69260d4e77cbc2f688b75af40cd981019e 100644 (file)
@@ -98,26 +98,26 @@ PROLOGUE(_nettle_aes_encrypt)
 .Lround_loop:
        C The AES_ROUND macro uses T0,... T3
        C       Transform W -> X
-       AES_ROUND(0, T, W0, W1, W2, W3, KEY, X0)
-       AES_ROUND(1, T, W1, W2, W3, W0, KEY, X1)
-       AES_ROUND(2, T, W2, W3, W0, W1, KEY, X2)
-       AES_ROUND(3, T, W3, W0, W1, W2, KEY, X3)
+       AES_ROUND(0, W0, W1, W2, W3, KEY, X0)
+       AES_ROUND(1, W1, W2, W3, W0, KEY, X1)
+       AES_ROUND(2, W2, W3, W0, W1, KEY, X2)
+       AES_ROUND(3, W3, W0, W1, W2, KEY, X3)
 
        C       Transform X -> W
-       AES_ROUND(4, T, X0, X1, X2, X3, KEY, W0)
-       AES_ROUND(5, T, X1, X2, X3, X0, KEY, W1)
-       AES_ROUND(6, T, X2, X3, X0, X1, KEY, W2)
-       AES_ROUND(7, T, X3, X0, X1, X2, KEY, W3)
+       AES_ROUND(4, X0, X1, X2, X3, KEY, W0)
+       AES_ROUND(5, X1, X2, X3, X0, KEY, W1)
+       AES_ROUND(6, X2, X3, X0, X1, KEY, W2)
+       AES_ROUND(7, X3, X0, X1, X2, KEY, W3)
 
        subcc   ROUND, 1, ROUND
        bne     .Lround_loop
        add     KEY, 32, KEY
 
        C       Penultimate round
-       AES_ROUND(0, T, W0, W1, W2, W3, KEY, X0)
-       AES_ROUND(1, T, W1, W2, W3, W0, KEY, X1)
-       AES_ROUND(2, T, W2, W3, W0, W1, KEY, X2)
-       AES_ROUND(3, T, W3, W0, W1, W2, KEY, X3)
+       AES_ROUND(0, W0, W1, W2, W3, KEY, X0)
+       AES_ROUND(1, W1, W2, W3, W0, KEY, X1)
+       AES_ROUND(2, W2, W3, W0, W1, KEY, X2)
+       AES_ROUND(3, W3, W0, W1, W2, KEY, X3)
 
        add     KEY, 16, KEY
        C       Final round
index d9e05659bf6118a599f6bd45dded87e0e4577252..0fbdffcaeb3c2fd96a29d19e85499729297a26d7 100644 (file)
@@ -32,29 +32,29 @@ define(<AES_LOAD>, <
        or      $4, TMP1, $4
        xor     $4, TMP2, $4>)dnl
 
-C AES_ROUND(i, T, a, b, c, d, key, res)
+C AES_ROUND(i, a, b, c, d, key, res)
 C Computes one word of the AES round
 C FIXME: Could use registers pointing directly to the four tables
 C FIXME: Needs better instruction scheduling, and perhaps more temporaries
 C Alternatively, we can use a single table and some rotations
 define(<AES_ROUND>, <
-       and     $3, 0xff, TMP1          C  0
-       srl     $4, 6, TMP2             C  1
+       and     $2, 0xff, TMP1          C  0
+       srl     $3, 6, TMP2             C  1
        sll     TMP1, 2, TMP1           C  0
        and     TMP2, 0x3fc, TMP2       C  1
-       ld      [T0 + TMP1], $8         C  0    E0
-       srl     $5, 14, TMP1            C  2
+       ld      [T0 + TMP1], $7         C  0    E0
+       srl     $4, 14, TMP1            C  2
        ld      [T1 + TMP2], TMP2       C  1
        and     TMP1, 0x3fc, TMP1       C  2
-       xor     $8, TMP2, $8            C  1    E1
-       srl     $6, 22, TMP2            C  3
+       xor     $7, TMP2, $7            C  1    E1
+       srl     $5, 22, TMP2            C  3
        ld      [T2 + TMP1], TMP1       C  2
        and     TMP2, 0x3fc, TMP2       C  3
-       xor     $8, TMP1, $8            C  2    E2
-       ld      [$7 + eval(4*$1)], TMP1 C  4
+       xor     $7, TMP1, $7            C  2    E2
+       ld      [$6 + eval(4*$1)], TMP1 C  4
        ld      [T3 + TMP2], TMP2       C  3
-       xor     $8, TMP1, $8            C  4    E4
-       xor     $8, TMP2, $8            C  3    E3
+       xor     $7, TMP1, $7            C  4    E4
+       xor     $7, TMP2, $7            C  3    E3
 >)dnl
 
 C AES_FINAL_ROUND(i, T, a, b, c, d, key, dst)