Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .wolfssl_known_macro_extras
Original file line number Diff line number Diff line change
Expand Up @@ -506,6 +506,7 @@ SNIFFER_SINGLE_SESSION_CACHE
SOFTDEVICE_PRESENT
SO_NOSIGPIPE
SO_REUSEPORT
SP_ALIGN_16
SP_INT_NO_ASM
SP_MATH_NEED_ADD_OFF
SP_USE_DIVTI3
Expand Down
3 changes: 3 additions & 0 deletions wolfcrypt/src/sp_arm32.c
Original file line number Diff line number Diff line change
Expand Up @@ -99504,6 +99504,9 @@ typedef struct sp_point_521 {
sp_digit z[2 * 17];
/* Indicates point is at infinity. */
int infinity;
#ifdef SP_ALIGN_16
byte pad[16-sizeof(int)];
#endif
} sp_point_521;

/* The modulus (prime) of the curve P521. */
Expand Down
3 changes: 3 additions & 0 deletions wolfcrypt/src/sp_arm64.c
Original file line number Diff line number Diff line change
Expand Up @@ -67605,6 +67605,9 @@ typedef struct sp_point_521 {
sp_digit z[2 * 9];
/* Indicates point is at infinity. */
int infinity;
#ifdef SP_ALIGN_16
byte pad[16-sizeof(int)];
#endif
} sp_point_521;

/* The modulus (prime) of the curve P521. */
Expand Down
3 changes: 3 additions & 0 deletions wolfcrypt/src/sp_armthumb.c
Original file line number Diff line number Diff line change
Expand Up @@ -118312,6 +118312,9 @@ typedef struct sp_point_521 {
sp_digit z[2 * 17];
/* Indicates point is at infinity. */
int infinity;
#ifdef SP_ALIGN_16
byte pad[16-sizeof(int)];
#endif
} sp_point_521;

/* The modulus (prime) of the curve P521. */
Expand Down
3 changes: 3 additions & 0 deletions wolfcrypt/src/sp_c32.c
Original file line number Diff line number Diff line change
Expand Up @@ -32707,6 +32707,9 @@ typedef struct sp_point_521 {
sp_digit z[2 * 21];
/* Indicates point is at infinity. */
int infinity;
#ifdef SP_ALIGN_16
byte pad[16-sizeof(int)];
#endif
} sp_point_521;

/* The modulus (prime) of the curve P521. */
Expand Down
3 changes: 3 additions & 0 deletions wolfcrypt/src/sp_c64.c
Original file line number Diff line number Diff line change
Expand Up @@ -32635,6 +32635,9 @@ typedef struct sp_point_521 {
sp_digit z[2 * 9];
/* Indicates point is at infinity. */
int infinity;
#ifdef SP_ALIGN_16
byte pad[16-sizeof(int)];
#endif
} sp_point_521;

/* The modulus (prime) of the curve P521. */
Expand Down
3 changes: 3 additions & 0 deletions wolfcrypt/src/sp_cortexm.c
Original file line number Diff line number Diff line change
Expand Up @@ -51918,6 +51918,9 @@ typedef struct sp_point_521 {
sp_digit z[2 * 17];
/* Indicates point is at infinity. */
int infinity;
#ifdef SP_ALIGN_16
byte pad[16-sizeof(int)];
#endif
} sp_point_521;

/* The modulus (prime) of the curve P521. */
Expand Down
3 changes: 3 additions & 0 deletions wolfcrypt/src/sp_x86_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -50649,6 +50649,9 @@ typedef struct sp_point_521 {
sp_digit z[2 * 9];
/* Indicates point is at infinity. */
int infinity;
#ifdef SP_ALIGN_16
byte pad[16-sizeof(int)];
#endif
} sp_point_521;

/* The modulus (prime) of the curve P521. */
Expand Down
24 changes: 24 additions & 0 deletions wolfcrypt/src/sp_x86_64_asm.S
Original file line number Diff line number Diff line change
Expand Up @@ -66736,7 +66736,11 @@ _sp_521_get_point_33_9:
movq $0x01, %r12
movq $0x01, %rax
movd %edx, %xmm13
#ifndef SP_ALIGN_16
addq $0x1b8, %rsi
#else
addq $0x1c0, %rsi
#endif /* !SP_ALIGN_16 */
movd %eax, %xmm15
movq $32, %rax
pshufd $0x00, %xmm15, %xmm15
Expand Down Expand Up @@ -66767,7 +66771,11 @@ L_521_get_point_33_9_start_1:
movq 64(%rsi), %r8
movdqu 144(%rsi), %xmm10
movdqu 160(%rsi), %xmm11
#ifndef SP_ALIGN_16
addq $0x1b8, %rsi
#else
addq $0x1c0, %rsi
#endif /* !SP_ALIGN_16 */
pand %xmm12, %xmm6
pand %xmm12, %xmm7
pand %xmm12, %xmm8
Expand All @@ -66794,7 +66802,11 @@ L_521_get_point_33_9_start_1:
movq $0x01, %r12
movq $0x01, %rax
movd %edx, %xmm13
#ifndef SP_ALIGN_16
subq $0x3700, %rsi
#else
subq $0x1b800, %rsi
#endif /* !SP_ALIGN_16 */
movd %eax, %xmm15
movq $32, %rax
pshufd $0x00, %xmm15, %xmm15
Expand Down Expand Up @@ -66826,7 +66838,11 @@ L_521_get_point_33_9_start_2:
movdqu 320(%rsi), %xmm10
movdqu 336(%rsi), %xmm11
movq 352(%rsi), %r9
#ifndef SP_ALIGN_16
addq $0x1b8, %rsi
#else
addq $0x1c0, %rsi
#endif /* !SP_ALIGN_16 */
pand %xmm12, %xmm6
pand %xmm12, %xmm7
pand %xmm12, %xmm8
Expand Down Expand Up @@ -66883,7 +66899,11 @@ _sp_521_get_point_33_avx2_9:
movq $0x01, %r14
movq $0x01, %rax
movd %edx, %xmm13
#ifndef SP_ALIGN_16
addq $0x1b8, %rsi
#else
addq $0x1c0, %rsi
#endif /* !SP_ALIGN_16 */
movd %eax, %xmm15
movq $32, %rax
vpxor %ymm14, %ymm14, %ymm14
Expand Down Expand Up @@ -66916,7 +66936,11 @@ L_521_get_point_33_avx2_9_start:
movq 64(%rsi), %r11
movq 208(%rsi), %r12
movq 352(%rsi), %r13
#ifndef SP_ALIGN_16
addq $0x1b8, %rsi
#else
addq $0x1c0, %rsi
#endif /* !SP_ALIGN_16 */
vpand %ymm12, %ymm6, %ymm6
vpand %ymm12, %ymm7, %ymm7
vpand %ymm12, %ymm8, %ymm8
Expand Down
24 changes: 24 additions & 0 deletions wolfcrypt/src/sp_x86_64_asm.asm
Original file line number Diff line number Diff line change
Expand Up @@ -65067,7 +65067,11 @@ sp_521_get_point_33_9 PROC
mov r14, 1
mov rax, 1
movd xmm13, r8d
IFNDEF SP_ALIGN_16
add rdx, 440
ELSE
add rdx, 448
ENDIF
movd xmm15, eax
mov rax, 32
pshufd xmm15, xmm15, 0
Expand Down Expand Up @@ -65098,7 +65102,11 @@ L_521_get_point_33_9_start_1:
mov r10, QWORD PTR [rdx+64]
movdqu xmm10, OWORD PTR [rdx+144]
movdqu xmm11, OWORD PTR [rdx+160]
IFNDEF SP_ALIGN_16
add rdx, 440
ELSE
add rdx, 448
ENDIF
pand xmm6, xmm12
pand xmm7, xmm12
pand xmm8, xmm12
Expand All @@ -65125,7 +65133,11 @@ L_521_get_point_33_9_start_1:
mov r14, 1
mov rax, 1
movd xmm13, r8d
IFNDEF SP_ALIGN_16
sub rdx, 14080
ELSE
sub rdx, 112640
ENDIF
movd xmm15, eax
mov rax, 32
pshufd xmm15, xmm15, 0
Expand Down Expand Up @@ -65157,7 +65169,11 @@ L_521_get_point_33_9_start_2:
movdqu xmm10, OWORD PTR [rdx+320]
movdqu xmm11, OWORD PTR [rdx+336]
mov r11, QWORD PTR [rdx+352]
IFNDEF SP_ALIGN_16
add rdx, 440
ELSE
add rdx, 448
ENDIF
pand xmm6, xmm12
pand xmm7, xmm12
pand xmm8, xmm12
Expand Down Expand Up @@ -65229,7 +65245,11 @@ sp_521_get_point_33_avx2_9 PROC
mov rdi, 1
mov rax, 1
movd xmm13, r8d
IFNDEF SP_ALIGN_16
add rdx, 440
ELSE
add rdx, 448
ENDIF
movd xmm15, eax
mov rax, 32
vpxor ymm14, ymm14, ymm14
Expand Down Expand Up @@ -65262,7 +65282,11 @@ L_521_get_point_33_avx2_9_start:
mov r13, QWORD PTR [rdx+64]
mov r14, QWORD PTR [rdx+208]
mov r15, QWORD PTR [rdx+352]
IFNDEF SP_ALIGN_16
add rdx, 440
ELSE
add rdx, 448
ENDIF
vpand ymm6, ymm6, ymm12
vpand ymm7, ymm7, ymm12
vpand ymm8, ymm8, ymm12
Expand Down