]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
[PowerPC] Use defined structure constants of P1305 in asm.m4
authorMaamoun TK <maamoun.tk@googlemail.com>
Sat, 6 Aug 2022 05:09:55 +0000 (05:09 +0000)
committerMaamoun TK <maamoun.tk@googlemail.com>
Sat, 6 Aug 2022 05:09:55 +0000 (05:09 +0000)
powerpc64/p9/poly1305-internal.asm

index 238d639739e6078a4173e450e3e6ff5e348edd7d..a082fed28cb493af5abbe187aa545a5d5b64a5e0 100644 (file)
@@ -99,14 +99,14 @@ IF_BE(`
        add                     r8, r8, r10
 
        C Store key
-       std                     r5, 0(r3)
-       std                     r6, 8(r3)
-       std                     r7, 16(r3)
-       std                     r8, 24(r3)
+       std                     r5, P1305_R0 (r3)
+       std                     r6, P1305_R1 (r3)
+       std                     r7, P1305_S0 (r3)
+       std                     r8, P1305_S1 (r3)
        C Reset state
-       std                     r9, 32(r3)
-       std                     r9, 40(r3)
-       std                     r9, 48(r3)
+       std                     r9, P1305_H0 (r3)
+       std                     r9, P1305_H1 (r3)
+       std                     r9, P1305_H2 (r3)
 
        blr
 EPILOGUE(_nettle_poly1305_set_key)
@@ -114,9 +114,9 @@ EPILOGUE(_nettle_poly1305_set_key)
 C void _nettle_poly1305_block(struct poly1305_ctx *ctx, const uint8_t *m, unsigned m128)
 define(`FUNC_ALIGN', `5')
 PROLOGUE(_nettle_poly1305_block)
-       ld                      H0, 32(CTX)
-       ld                      H1, 40(CTX)
-       ld                      H2, 48(CTX)
+       ld                      H0, P1305_H0 (CTX)
+       ld                      H1, P1305_H1 (CTX)
+       ld                      H2, P1305_H2 (CTX)
 IF_LE(`
        ld                      T0, 0(M)
        ld                      T1, 8(M)
@@ -133,7 +133,7 @@ IF_BE(`
 
        mtvsrdd         VSR(T), T0, T1
 
-       li                      IDX, 16
+       li                      IDX, P1305_S0
        lxvd2x          VSR(R), 0, CTX
        lxvd2x          VSR(S), IDX, CTX
 
@@ -160,9 +160,9 @@ IF_BE(`
        xxmrgld         VSR(TMP), VSR(TMP), VSR(ZERO)
        xxswapd         VSR(F0S), VSR(F0)
        vadduqm         F1, F1, TMP
-       stxsd           F0S, 32(CTX)
+       stxsd           F0S, P1305_H0 (CTX)
 
-       li                      IDX, 40
+       li                      IDX, P1305_H1
        xxmrghd         VSR(F0), VSR(ZERO), VSR(F0)
        vadduqm         F1, F1, F0
        xxswapd         VSR(F1), VSR(F1)
@@ -175,9 +175,9 @@ C _poly1305_digest (struct poly1305_ctx *ctx, uint8_t *s)
 define(`FUNC_ALIGN', `5')
 PROLOGUE(_nettle_poly1305_digest)
        C Load current state
-       ld                      r5, 32(r3)
-       ld                      r6, 40(r3)
-       ld                      r7, 48(r3)
+       ld                      r5, P1305_H0 (r3)
+       ld                      r6, P1305_H1 (r3)
+       ld                      r7, P1305_H2 (r3)
 
        C Fold high part of H2
        li                      r10, 0
@@ -225,14 +225,14 @@ IF_BE(`
 ')
        C Reset hash
        li                      r9, 0
-       std                     r9, 32(r3)
-       std                     r9, 40(r3)
-       std                     r9, 48(r3)
+       std                     r9, P1305_H0 (r3)
+       std                     r9, P1305_H1 (r3)
+       std                     r9, P1305_H2 (r3)
 
        blr
 EPILOGUE(_nettle_poly1305_digest)
 
-.data
+.rodata
 .align 3
 .key_mask:
 .quad 0x0FFFFFFC0FFFFFFC