diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-04-18 00:52:24 +0200 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-04-18 00:52:24 +0200 |
commit | a8eacf536ce70160a22ab9869ce31c48978fa89f (patch) | |
tree | bbace0f31fc51643757256efd4fb0f8c0d0787f7 /src/crypto | |
parent | 67d1146ffa58e50c451f06b3813f713311832e42 (diff) |
poly1305: do not place constants in different sections
We're referencing these constants as one contiguous blob, so if there's
any merging that goes on with other constants elsewhere (such as the
kernel's current poly1305 implementation that we hope to replace), then
these will be reordered and have the wrong values.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'src/crypto')
-rw-r--r-- | src/crypto/poly1305-x86_64.S | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/src/crypto/poly1305-x86_64.S b/src/crypto/poly1305-x86_64.S index 9275b49..3ab21ea 100644 --- a/src/crypto/poly1305-x86_64.S +++ b/src/crypto/poly1305-x86_64.S @@ -7,26 +7,13 @@ #include <linux/linkage.h> -.section .rodata.cst32.Lmask24, "aM", @progbits, 32 +.section .rodata.cst192.Lconst, "aM", @progbits, 32 .align 64 .Lconst: -.Lmask24: .long 0x0ffffff,0,0x0ffffff,0,0x0ffffff,0,0x0ffffff,0 -.section .rodata.cst32.L129, "aM", @progbits, 32 -.align 32 -.L129: .long 16777216,0,16777216,0,16777216,0,16777216,0 -.section .rodata.cst32.Lmask26, "aM", @progbits, 32 -.align 32 -.Lmask26: .long 0x3ffffff,0,0x3ffffff,0,0x3ffffff,0,0x3ffffff,0 -.section .rodata.cst32.Lpermd_avx2, "aM", @progbits, 32 -.align 32 -.Lpermd_avx2: .long 2,2,2,3,2,0,2,1 -.section .rodata.cst64.Lpermd_avx512, "aM", @progbits, 64 -.align 64 -.Lpermd_avx512: .long 0,0,0,1, 0,2,0,3, 0,4,0,5, 0,6,0,7 .text |