mirror of https://github.com/wolfSSL/wolfssl.git
commit
31e37ea5df
13
configure.ac
13
configure.ac
|
@ -1645,6 +1645,19 @@ then
|
|||
fi
|
||||
|
||||
|
||||
# STACK usage logging
|
||||
AC_ARG_ENABLE([stacklog],
|
||||
[AS_HELP_STRING([--enable-stacklog],[Enable stack logging (default: disabled)])],
|
||||
[ ENABLED_STACKLOG=$enableval ],
|
||||
[ ENABLED_STACKLOG=no ]
|
||||
)
|
||||
|
||||
if test "$ENABLED_STACKLOG" = "yes"
|
||||
then
|
||||
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_STACK_LOG -finstrument-functions"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# RSA
|
||||
AC_ARG_ENABLE([rsa],
|
||||
|
|
|
@ -8679,6 +8679,8 @@ int ProcessPeerCerts(WOLFSSL* ssl, byte* input, word32* inOutIdx,
|
|||
(void)sizeof(args_test);
|
||||
#elif defined(WOLFSSL_NONBLOCK_OCSP)
|
||||
ProcPeerCertArgs* args = ssl->nonblockarg;
|
||||
#elif defined(WOLFSSL_SMALL_STACK)
|
||||
ProcPeerCertArgs* args = NULL;
|
||||
#else
|
||||
ProcPeerCertArgs args[1];
|
||||
#endif
|
||||
|
@ -8707,6 +8709,12 @@ int ProcessPeerCerts(WOLFSSL* ssl, byte* input, word32* inOutIdx,
|
|||
}
|
||||
}
|
||||
if (ssl->nonblockarg == NULL) /* new args */
|
||||
#elif defined(WOLFSSL_SMALL_STACK)
|
||||
args = (ProcPeerCertArgs*)XMALLOC(
|
||||
sizeof(ProcPeerCertArgs), ssl->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
if (args == NULL) {
|
||||
ERROR_OUT(MEMORY_E, exit_ppc);
|
||||
}
|
||||
#endif
|
||||
{
|
||||
/* Reset state */
|
||||
|
@ -9837,9 +9845,12 @@ exit_ppc:
|
|||
|
||||
FreeProcPeerCertArgs(ssl, args);
|
||||
|
||||
#if !defined(WOLFSSL_ASYNC_CRYPT) && defined(WOLFSSL_NONBLOCK_OCSP)
|
||||
#if defined(WOLFSSL_ASYNC_CRYPT)
|
||||
#elif defined(WOLFSSL_NONBLOCK_OCSP)
|
||||
XFREE(args, ssl->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
ssl->nonblockarg = NULL;
|
||||
#elif defined(WOLFSSL_SMALL_STACK)
|
||||
XFREE(args, ssl->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
#endif
|
||||
|
||||
FreeKeyExchange(ssl);
|
||||
|
|
|
@ -1074,3 +1074,22 @@ void xfree(void *p, void* heap, int type, const char* func, const char* file,
|
|||
}
|
||||
#endif /* WOLFSSL_MEMORY_LOG */
|
||||
|
||||
#ifdef WOLFSSL_STACK_LOG
|
||||
/* Note: this code only works with GCC using -finstrument-functions. */
|
||||
void __attribute__((no_instrument_function))
|
||||
__cyg_profile_func_enter(void *func, void *caller)
|
||||
{
|
||||
register void* sp asm("sp");
|
||||
fprintf(stderr, "ENTER: %016lx %p\n", (size_t)func, sp);
|
||||
(void)caller;
|
||||
}
|
||||
|
||||
void __attribute__((no_instrument_function))
|
||||
__cyg_profile_func_exit(void *func, void *caller)
|
||||
{
|
||||
register void* sp asm("sp");
|
||||
fprintf(stderr, "EXIT: %016lx %p\n", (size_t)func, sp);
|
||||
(void)caller;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -19184,8 +19184,7 @@ static void sp_256_div2_8(sp_digit* r, sp_digit* a, sp_digit* m)
|
|||
*/
|
||||
static void sp_256_proj_point_dbl_8(sp_point* r, sp_point* p, sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*8;
|
||||
sp_digit* x;
|
||||
|
@ -19195,7 +19194,8 @@ static void sp_256_proj_point_dbl_8(sp_point* r, sp_point* p, sp_digit* t)
|
|||
|
||||
/* When infinity don't double point passed in - constant time. */
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -19370,9 +19370,8 @@ static int sp_256_cmp_equal_8(const sp_digit* a, const sp_digit* b)
|
|||
static void sp_256_proj_point_add_8(sp_point* r, sp_point* p, sp_point* q,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*8;
|
||||
sp_digit* t3 = t + 4*8;
|
||||
|
@ -19399,8 +19398,8 @@ static void sp_256_proj_point_add_8(sp_point* r, sp_point* p, sp_point* q,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
@ -19595,8 +19594,7 @@ typedef struct sp_table_entry {
|
|||
static void sp_256_proj_point_dbl_n_8(sp_point* r, sp_point* p, int n,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* w = t;
|
||||
sp_digit* a = t + 2*8;
|
||||
sp_digit* b = t + 4*8;
|
||||
|
@ -19608,7 +19606,8 @@ static void sp_256_proj_point_dbl_n_8(sp_point* r, sp_point* p, int n,
|
|||
int i;
|
||||
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -19670,9 +19669,8 @@ static void sp_256_proj_point_dbl_n_8(sp_point* r, sp_point* p, int n,
|
|||
static void sp_256_proj_point_add_qz1_8(sp_point* r, sp_point* p,
|
||||
sp_point* q, sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*8;
|
||||
sp_digit* t3 = t + 4*8;
|
||||
|
@ -19692,8 +19690,8 @@ static void sp_256_proj_point_add_qz1_8(sp_point* r, sp_point* p,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
|
|
@ -13407,8 +13407,7 @@ static void sp_256_div2_4(sp_digit* r, sp_digit* a, sp_digit* m)
|
|||
*/
|
||||
static void sp_256_proj_point_dbl_4(sp_point* r, sp_point* p, sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* x;
|
||||
|
@ -13418,7 +13417,8 @@ static void sp_256_proj_point_dbl_4(sp_point* r, sp_point* p, sp_digit* t)
|
|||
|
||||
/* When infinity don't double point passed in - constant time. */
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -13482,8 +13482,7 @@ static void sp_256_proj_point_dbl_4(sp_point* r, sp_point* p, sp_digit* t)
|
|||
static void sp_256_proj_point_dbl_n_4(sp_point* r, sp_point* p, int n,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* w = t;
|
||||
sp_digit* a = t + 2*4;
|
||||
sp_digit* b = t + 4*4;
|
||||
|
@ -13495,7 +13494,8 @@ static void sp_256_proj_point_dbl_n_4(sp_point* r, sp_point* p, int n,
|
|||
int i;
|
||||
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -13566,9 +13566,8 @@ static int sp_256_cmp_equal_4(const sp_digit* a, const sp_digit* b)
|
|||
static void sp_256_proj_point_add_4(sp_point* r, sp_point* p, sp_point* q,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* t3 = t + 4*4;
|
||||
|
@ -13595,8 +13594,8 @@ static void sp_256_proj_point_add_4(sp_point* r, sp_point* p, sp_point* q,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
@ -13996,9 +13995,8 @@ typedef struct sp_table_entry {
|
|||
static void sp_256_proj_point_add_qz1_4(sp_point* r, sp_point* p,
|
||||
sp_point* q, sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* t3 = t + 4*4;
|
||||
|
@ -14018,8 +14016,8 @@ static void sp_256_proj_point_add_qz1_4(sp_point* r, sp_point* p,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
|
|
@ -8503,8 +8503,7 @@ static void sp_256_div2_10(sp_digit* r, sp_digit* a, sp_digit* m)
|
|||
*/
|
||||
static void sp_256_proj_point_dbl_10(sp_point* r, sp_point* p, sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*10;
|
||||
sp_digit* x;
|
||||
|
@ -8514,7 +8513,8 @@ static void sp_256_proj_point_dbl_10(sp_point* r, sp_point* p, sp_digit* t)
|
|||
|
||||
/* When infinity don't double point passed in - constant time. */
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -8592,9 +8592,8 @@ static int sp_256_cmp_equal_10(const sp_digit* a, const sp_digit* b)
|
|||
static void sp_256_proj_point_add_10(sp_point* r, sp_point* p, sp_point* q,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*10;
|
||||
sp_digit* t3 = t + 4*10;
|
||||
|
@ -8621,8 +8620,8 @@ static void sp_256_proj_point_add_10(sp_point* r, sp_point* p, sp_point* q,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
@ -9017,8 +9016,7 @@ static int sp_256_ecc_mulmod_fast_10(sp_point* r, sp_point* g, sp_digit* k,
|
|||
static void sp_256_proj_point_dbl_n_10(sp_point* r, sp_point* p, int n,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* w = t;
|
||||
sp_digit* a = t + 2*10;
|
||||
sp_digit* b = t + 4*10;
|
||||
|
@ -9030,7 +9028,8 @@ static void sp_256_proj_point_dbl_n_10(sp_point* r, sp_point* p, int n,
|
|||
int i;
|
||||
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -9092,9 +9091,8 @@ static void sp_256_proj_point_dbl_n_10(sp_point* r, sp_point* p, int n,
|
|||
static void sp_256_proj_point_add_qz1_10(sp_point* r, sp_point* p,
|
||||
sp_point* q, sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*10;
|
||||
sp_digit* t3 = t + 4*10;
|
||||
|
@ -9114,8 +9112,8 @@ static void sp_256_proj_point_add_qz1_10(sp_point* r, sp_point* p,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
|
|
@ -7726,8 +7726,7 @@ static void sp_256_div2_5(sp_digit* r, sp_digit* a, sp_digit* m)
|
|||
*/
|
||||
static void sp_256_proj_point_dbl_5(sp_point* r, sp_point* p, sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*5;
|
||||
sp_digit* x;
|
||||
|
@ -7737,7 +7736,8 @@ static void sp_256_proj_point_dbl_5(sp_point* r, sp_point* p, sp_digit* t)
|
|||
|
||||
/* When infinity don't double point passed in - constant time. */
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -7814,9 +7814,8 @@ static int sp_256_cmp_equal_5(const sp_digit* a, const sp_digit* b)
|
|||
static void sp_256_proj_point_add_5(sp_point* r, sp_point* p, sp_point* q,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*5;
|
||||
sp_digit* t3 = t + 4*5;
|
||||
|
@ -7843,8 +7842,8 @@ static void sp_256_proj_point_add_5(sp_point* r, sp_point* p, sp_point* q,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
@ -8239,8 +8238,7 @@ static int sp_256_ecc_mulmod_fast_5(sp_point* r, sp_point* g, sp_digit* k,
|
|||
static void sp_256_proj_point_dbl_n_5(sp_point* r, sp_point* p, int n,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* w = t;
|
||||
sp_digit* a = t + 2*5;
|
||||
sp_digit* b = t + 4*5;
|
||||
|
@ -8252,7 +8250,8 @@ static void sp_256_proj_point_dbl_n_5(sp_point* r, sp_point* p, int n,
|
|||
int i;
|
||||
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -8314,9 +8313,8 @@ static void sp_256_proj_point_dbl_n_5(sp_point* r, sp_point* p, int n,
|
|||
static void sp_256_proj_point_add_qz1_5(sp_point* r, sp_point* p,
|
||||
sp_point* q, sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*5;
|
||||
sp_digit* t3 = t + 4*5;
|
||||
|
@ -8336,8 +8334,8 @@ static void sp_256_proj_point_add_qz1_5(sp_point* r, sp_point* p,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
|
|
@ -28685,8 +28685,7 @@ SP_NOINLINE static void sp_256_div2_4(sp_digit* r, sp_digit* a, sp_digit* m)
|
|||
*/
|
||||
static void sp_256_proj_point_dbl_4(sp_point* r, sp_point* p, sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* x;
|
||||
|
@ -28696,7 +28695,8 @@ static void sp_256_proj_point_dbl_4(sp_point* r, sp_point* p, sp_digit* t)
|
|||
|
||||
/* When infinity don't double point passed in - constant time. */
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -28760,8 +28760,7 @@ static void sp_256_proj_point_dbl_4(sp_point* r, sp_point* p, sp_digit* t)
|
|||
static void sp_256_proj_point_dbl_n_4(sp_point* r, sp_point* p, int n,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* w = t;
|
||||
sp_digit* a = t + 2*4;
|
||||
sp_digit* b = t + 4*4;
|
||||
|
@ -28773,7 +28772,8 @@ static void sp_256_proj_point_dbl_n_4(sp_point* r, sp_point* p, int n,
|
|||
int i;
|
||||
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -28844,9 +28844,8 @@ static int sp_256_cmp_equal_4(const sp_digit* a, const sp_digit* b)
|
|||
static void sp_256_proj_point_add_4(sp_point* r, sp_point* p, sp_point* q,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* t3 = t + 4*4;
|
||||
|
@ -28873,8 +28872,8 @@ static void sp_256_proj_point_add_4(sp_point* r, sp_point* p, sp_point* q,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
@ -29707,8 +29706,7 @@ static void sp_256_map_avx2_4(sp_point* r, sp_point* p, sp_digit* t)
|
|||
*/
|
||||
static void sp_256_proj_point_dbl_avx2_4(sp_point* r, sp_point* p, sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* x;
|
||||
|
@ -29718,7 +29716,8 @@ static void sp_256_proj_point_dbl_avx2_4(sp_point* r, sp_point* p, sp_digit* t)
|
|||
|
||||
/* When infinity don't double point passed in - constant time. */
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -29782,8 +29781,7 @@ static void sp_256_proj_point_dbl_avx2_4(sp_point* r, sp_point* p, sp_digit* t)
|
|||
static void sp_256_proj_point_dbl_n_avx2_4(sp_point* r, sp_point* p, int n,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* rp[2];
|
||||
sp_digit* w = t;
|
||||
sp_digit* a = t + 2*4;
|
||||
sp_digit* b = t + 4*4;
|
||||
|
@ -29795,7 +29793,8 @@ static void sp_256_proj_point_dbl_n_avx2_4(sp_point* r, sp_point* p, int n,
|
|||
int i;
|
||||
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity]->x;
|
||||
y = rp[p->infinity]->y;
|
||||
z = rp[p->infinity]->z;
|
||||
|
@ -29854,9 +29853,8 @@ static void sp_256_proj_point_dbl_n_avx2_4(sp_point* r, sp_point* p, int n,
|
|||
static void sp_256_proj_point_add_avx2_4(sp_point* r, sp_point* p, sp_point* q,
|
||||
sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* t3 = t + 4*4;
|
||||
|
@ -29883,8 +29881,8 @@ static void sp_256_proj_point_add_avx2_4(sp_point* r, sp_point* p, sp_point* q,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
@ -30215,9 +30213,8 @@ typedef struct sp_table_entry {
|
|||
static void sp_256_proj_point_add_qz1_4(sp_point* r, sp_point* p,
|
||||
sp_point* q, sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* t3 = t + 4*4;
|
||||
|
@ -30237,8 +30234,8 @@ static void sp_256_proj_point_add_qz1_4(sp_point* r, sp_point* p,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
@ -30608,9 +30605,8 @@ static int sp_256_ecc_mulmod_4(sp_point* r, sp_point* g, sp_digit* k,
|
|||
static void sp_256_proj_point_add_qz1_avx2_4(sp_point* r, sp_point* p,
|
||||
sp_point* q, sp_digit* t)
|
||||
{
|
||||
sp_point *ap[2];
|
||||
sp_point *rp[2];
|
||||
sp_point tp;
|
||||
sp_point* ap[2];
|
||||
sp_point* rp[2];
|
||||
sp_digit* t1 = t;
|
||||
sp_digit* t2 = t + 2*4;
|
||||
sp_digit* t3 = t + 4*4;
|
||||
|
@ -30630,8 +30626,8 @@ static void sp_256_proj_point_add_qz1_avx2_4(sp_point* r, sp_point* p,
|
|||
}
|
||||
else {
|
||||
rp[0] = r;
|
||||
rp[1] = &tp;
|
||||
XMEMSET(&tp, 0, sizeof(tp));
|
||||
rp[1] = (sp_point*)t;
|
||||
XMEMSET(rp[1], 0, sizeof(sp_point));
|
||||
x = rp[p->infinity | q->infinity]->x;
|
||||
y = rp[p->infinity | q->infinity]->y;
|
||||
z = rp[p->infinity | q->infinity]->z;
|
||||
|
|
Loading…
Reference in New Issue