1
1
mirror of https://github.com/henrydcase/pqc.git synced 2024-11-30 03:11:43 +00:00
pqcrypto/crypto_kem/mceliece6960119f/avx/consts.S
Thom Wiggers b3f9d4f8d6
Classic McEliece (#259)
* Add McEliece reference implementations

* Add Vec implementations of McEliece

* Add sse implementations

* Add AVX2 implementations

* Get rid of stuff not supported by Mac ABI

* restrict to two cores

* Ditch .data files

* Remove .hidden from all .S files

* speed up duplicate consistency tests by batching

* make cpuinfo more robust

* Hope to stabilize macos cpuinfo without ccache

* Revert "Hope to stabilize macos cpuinfo without ccache"

This reverts commit 6129c3cabe1abbc8b956bc87e902a698e32bf322.

* Just hardcode what's available at travis

* Fixed-size types in api.h

* namespace all header files in mceliece

* Ditch operations.h

* Get rid of static inline functions

* fixup! Ditch operations.h
2020-02-05 13:09:56 +01:00

34 lines
2.0 KiB
ArmAsm

.data
# not supported on MacOS
#.section .rodata
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK0_0
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK0_1
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK1_0
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK1_1
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK2_0
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK2_1
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK3_0
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK3_1
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK4_0
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK4_1
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK5_0
.globl PQCLEAN_MCELIECE6960119F_AVX_MASK5_1
.p2align 5
PQCLEAN_MCELIECE6960119F_AVX_MASK0_0: .quad 0x5555555555555555, 0x5555555555555555, 0x5555555555555555, 0x5555555555555555
PQCLEAN_MCELIECE6960119F_AVX_MASK0_1: .quad 0xAAAAAAAAAAAAAAAA, 0xAAAAAAAAAAAAAAAA, 0xAAAAAAAAAAAAAAAA, 0xAAAAAAAAAAAAAAAA
PQCLEAN_MCELIECE6960119F_AVX_MASK1_0: .quad 0x3333333333333333, 0x3333333333333333, 0x3333333333333333, 0x3333333333333333
PQCLEAN_MCELIECE6960119F_AVX_MASK1_1: .quad 0xCCCCCCCCCCCCCCCC, 0xCCCCCCCCCCCCCCCC, 0xCCCCCCCCCCCCCCCC, 0xCCCCCCCCCCCCCCCC
PQCLEAN_MCELIECE6960119F_AVX_MASK2_0: .quad 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F
PQCLEAN_MCELIECE6960119F_AVX_MASK2_1: .quad 0xF0F0F0F0F0F0F0F0, 0xF0F0F0F0F0F0F0F0, 0xF0F0F0F0F0F0F0F0, 0xF0F0F0F0F0F0F0F0
PQCLEAN_MCELIECE6960119F_AVX_MASK3_0: .quad 0x00FF00FF00FF00FF, 0x00FF00FF00FF00FF, 0x00FF00FF00FF00FF, 0x00FF00FF00FF00FF
PQCLEAN_MCELIECE6960119F_AVX_MASK3_1: .quad 0xFF00FF00FF00FF00, 0xFF00FF00FF00FF00, 0xFF00FF00FF00FF00, 0xFF00FF00FF00FF00
PQCLEAN_MCELIECE6960119F_AVX_MASK4_0: .quad 0x0000FFFF0000FFFF, 0x0000FFFF0000FFFF, 0x0000FFFF0000FFFF, 0x0000FFFF0000FFFF
PQCLEAN_MCELIECE6960119F_AVX_MASK4_1: .quad 0xFFFF0000FFFF0000, 0xFFFF0000FFFF0000, 0xFFFF0000FFFF0000, 0xFFFF0000FFFF0000
PQCLEAN_MCELIECE6960119F_AVX_MASK5_0: .quad 0x00000000FFFFFFFF, 0x00000000FFFFFFFF, 0x00000000FFFFFFFF, 0x00000000FFFFFFFF
PQCLEAN_MCELIECE6960119F_AVX_MASK5_1: .quad 0xFFFFFFFF00000000, 0xFFFFFFFF00000000, 0xFFFFFFFF00000000, 0xFFFFFFFF00000000