From 4db45cea4e1f3093105fe86e0b57fb93721e96ab Mon Sep 17 00:00:00 2001 From: Tesfa Mael Date: Thu, 31 Mar 2022 20:48:28 -0700 Subject: [PATCH] Fixes to build with diab and armclang --- wolfcrypt/src/sp_arm32.c | 12 ++++++++---- wolfcrypt/src/sp_arm64.c | 12 ++++++++---- wolfcrypt/src/sp_armthumb.c | 12 ++++++++---- wolfcrypt/src/sp_c32.c | 12 ++++++++---- wolfcrypt/src/sp_c64.c | 12 ++++++++---- wolfcrypt/src/sp_cortexm.c | 12 ++++++++---- wolfcrypt/src/sp_x86_64.c | 24 ++++++++++++++++-------- wolfssl/wolfcrypt/sp_int.h | 2 +- 8 files changed, 65 insertions(+), 33 deletions(-) diff --git a/wolfcrypt/src/sp_arm32.c b/wolfcrypt/src/sp_arm32.c index 353a8c578..d32d7da36 100644 --- a/wolfcrypt/src/sp_arm32.c +++ b/wolfcrypt/src/sp_arm32.c @@ -32335,7 +32335,7 @@ static int sp_256_ecc_mulmod_fast_8(sp_point_256* r, const sp_point_256* g, cons * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -32346,6 +32346,7 @@ static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -41384,7 +41385,7 @@ static int sp_384_ecc_mulmod_fast_12(sp_point_384* r, const sp_point_384* g, con * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -41395,6 +41396,7 @@ static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -52828,7 +52830,7 @@ static int sp_521_ecc_mulmod_fast_17(sp_point_521* r, const sp_point_521* g, con * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -52839,6 +52841,7 @@ static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -66429,7 +66432,7 @@ static int sp_1024_ecc_mulmod_fast_32(sp_point_1024* r, const sp_point_1024* g, * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -66440,6 +66443,7 @@ static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; diff --git a/wolfcrypt/src/sp_arm64.c b/wolfcrypt/src/sp_arm64.c index 0b0c2d1e2..afb365d92 100644 --- a/wolfcrypt/src/sp_arm64.c +++ b/wolfcrypt/src/sp_arm64.c @@ -23567,7 +23567,7 @@ static void sp_256_mont_dbl_sub_4(sp_digit* r, const sp_digit* a, const sp_digit * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_4(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_4(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -23577,6 +23577,7 @@ static void sp_256_proj_point_dbl_n_4(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -43574,7 +43575,7 @@ static void sp_384_proj_point_dbl_6(sp_point_384* r, const sp_point_384* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_6(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_6(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -43585,6 +43586,7 @@ static void sp_384_proj_point_dbl_n_6(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -71672,7 +71674,7 @@ static void sp_521_proj_point_dbl_9(sp_point_521* r, const sp_point_521* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -71683,6 +71685,7 @@ static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -115464,7 +115467,7 @@ static void sp_1024_proj_point_dbl_16(sp_point_1024* r, const sp_point_1024* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_16(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_16(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -115475,6 +115478,7 @@ static void sp_1024_proj_point_dbl_n_16(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; diff --git a/wolfcrypt/src/sp_armthumb.c b/wolfcrypt/src/sp_armthumb.c index dd044910a..01e286436 100644 --- a/wolfcrypt/src/sp_armthumb.c +++ b/wolfcrypt/src/sp_armthumb.c @@ -100575,7 +100575,7 @@ static int sp_256_ecc_mulmod_fast_8(sp_point_256* r, const sp_point_256* g, cons * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -100586,6 +100586,7 @@ static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -110969,7 +110970,7 @@ static int sp_384_ecc_mulmod_fast_12(sp_point_384* r, const sp_point_384* g, con * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -110980,6 +110981,7 @@ static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -124536,7 +124538,7 @@ static int sp_521_ecc_mulmod_fast_17(sp_point_521* r, const sp_point_521* g, con * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -124547,6 +124549,7 @@ static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -208960,7 +208963,7 @@ static int sp_1024_ecc_mulmod_fast_32(sp_point_1024* r, const sp_point_1024* g, * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -208971,6 +208974,7 @@ static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; diff --git a/wolfcrypt/src/sp_c32.c b/wolfcrypt/src/sp_c32.c index db8fc1b89..c97aa7306 100644 --- a/wolfcrypt/src/sp_c32.c +++ b/wolfcrypt/src/sp_c32.c @@ -22512,7 +22512,7 @@ static void sp_256_cond_copy_9(sp_digit* r, const sp_digit* a, const sp_digit m) * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_9(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_9(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -22523,6 +22523,7 @@ static void sp_256_proj_point_dbl_n_9(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -29827,7 +29828,7 @@ static void sp_384_cond_copy_15(sp_digit* r, const sp_digit* a, const sp_digit m * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_15(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_15(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -29838,6 +29839,7 @@ static void sp_384_proj_point_dbl_n_15(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -37202,7 +37204,7 @@ static void sp_521_cond_copy_21(sp_digit* r, const sp_digit* a, const sp_digit m * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_21(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_21(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -37213,6 +37215,7 @@ static void sp_521_proj_point_dbl_n_21(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -45808,7 +45811,7 @@ static void sp_1024_cond_copy_42(sp_digit* r, const sp_digit* a, const sp_digit * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_42(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_42(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -45819,6 +45822,7 @@ static void sp_1024_proj_point_dbl_n_42(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; diff --git a/wolfcrypt/src/sp_c64.c b/wolfcrypt/src/sp_c64.c index 80bb50dc2..766193d4f 100644 --- a/wolfcrypt/src/sp_c64.c +++ b/wolfcrypt/src/sp_c64.c @@ -23845,7 +23845,7 @@ static void sp_256_cond_copy_5(sp_digit* r, const sp_digit* a, const sp_digit m) * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_5(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_5(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -23856,6 +23856,7 @@ static void sp_256_proj_point_dbl_n_5(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -30635,7 +30636,7 @@ static void sp_384_cond_copy_7(sp_digit* r, const sp_digit* a, const sp_digit m) * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_7(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_7(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -30646,6 +30647,7 @@ static void sp_384_proj_point_dbl_n_7(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -37880,7 +37882,7 @@ static void sp_521_cond_copy_9(sp_digit* r, const sp_digit* a, const sp_digit m) * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -37891,6 +37893,7 @@ static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -45686,7 +45689,7 @@ static void sp_1024_cond_copy_18(sp_digit* r, const sp_digit* a, const sp_digit * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_18(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_18(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -45697,6 +45700,7 @@ static void sp_1024_proj_point_dbl_n_18(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; diff --git a/wolfcrypt/src/sp_cortexm.c b/wolfcrypt/src/sp_cortexm.c index 8a883bcbe..f8ca2ff9a 100644 --- a/wolfcrypt/src/sp_cortexm.c +++ b/wolfcrypt/src/sp_cortexm.c @@ -19891,7 +19891,7 @@ static int sp_256_ecc_mulmod_fast_8(sp_point_256* r, const sp_point_256* g, cons * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -19902,6 +19902,7 @@ static void sp_256_proj_point_dbl_n_8(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -27009,7 +27010,7 @@ static int sp_384_ecc_mulmod_fast_12(sp_point_384* r, const sp_point_384* g, con * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -27020,6 +27021,7 @@ static void sp_384_proj_point_dbl_n_12(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -34725,7 +34727,7 @@ static int sp_521_ecc_mulmod_fast_17(sp_point_521* r, const sp_point_521* g, con * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -34736,6 +34738,7 @@ static void sp_521_proj_point_dbl_n_17(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -44552,7 +44555,7 @@ static int sp_1024_ecc_mulmod_fast_32(sp_point_1024* r, const sp_point_1024* g, * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -44563,6 +44566,7 @@ static void sp_1024_proj_point_dbl_n_32(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; diff --git a/wolfcrypt/src/sp_x86_64.c b/wolfcrypt/src/sp_x86_64.c index 97a398d19..2c081a168 100644 --- a/wolfcrypt/src/sp_x86_64.c +++ b/wolfcrypt/src/sp_x86_64.c @@ -7976,7 +7976,7 @@ extern void sp_256_mont_dbl_sub_4(sp_digit* r, const sp_digit* a, const sp_digit * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_4(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_4(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -7986,6 +7986,7 @@ static void sp_256_proj_point_dbl_n_4(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -9076,7 +9077,7 @@ static void sp_256_proj_point_dbl_avx2_4(sp_point_256* r, const sp_point_256* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_256_proj_point_dbl_n_avx2_4(sp_point_256* p, int n, +static void sp_256_proj_point_dbl_n_avx2_4(sp_point_256* p, int i, sp_digit* t) { sp_digit* w = t; @@ -9086,6 +9087,7 @@ static void sp_256_proj_point_dbl_n_avx2_4(sp_point_256* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -26697,7 +26699,7 @@ extern void sp_384_mont_tpl_lower_6(sp_digit* r, const sp_digit* a, const sp_dig * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_6(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_6(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -26708,6 +26710,7 @@ static void sp_384_proj_point_dbl_n_6(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -27853,7 +27856,7 @@ static void sp_384_proj_point_dbl_avx2_6(sp_point_384* r, const sp_point_384* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_384_proj_point_dbl_n_avx2_6(sp_point_384* p, int n, +static void sp_384_proj_point_dbl_n_avx2_6(sp_point_384* p, int i, sp_digit* t) { sp_digit* w = t; @@ -27864,6 +27867,7 @@ static void sp_384_proj_point_dbl_n_avx2_6(sp_point_384* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -51187,7 +51191,7 @@ static void sp_521_proj_point_dbl_9(sp_point_521* r, const sp_point_521* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -51198,6 +51202,7 @@ static void sp_521_proj_point_dbl_n_9(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -52309,7 +52314,7 @@ static void sp_521_proj_point_dbl_avx2_9(sp_point_521* r, const sp_point_521* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_521_proj_point_dbl_n_avx2_9(sp_point_521* p, int n, +static void sp_521_proj_point_dbl_n_avx2_9(sp_point_521* p, int i, sp_digit* t) { sp_digit* w = t; @@ -52320,6 +52325,7 @@ static void sp_521_proj_point_dbl_n_avx2_9(sp_point_521* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -91987,7 +91993,7 @@ static void sp_1024_proj_point_dbl_16(sp_point_1024* r, const sp_point_1024* p, * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_16(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_16(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -91998,6 +92004,7 @@ static void sp_1024_proj_point_dbl_n_16(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; @@ -93086,7 +93093,7 @@ static void sp_1024_proj_point_dbl_avx2_16(sp_point_1024* r, const sp_point_1024 * n Number of times to double * t Temporary ordinate data. */ -static void sp_1024_proj_point_dbl_n_avx2_16(sp_point_1024* p, int n, +static void sp_1024_proj_point_dbl_n_avx2_16(sp_point_1024* p, int i, sp_digit* t) { sp_digit* w = t; @@ -93097,6 +93104,7 @@ static void sp_1024_proj_point_dbl_n_avx2_16(sp_point_1024* p, int n, sp_digit* x; sp_digit* y; sp_digit* z; + volatile int n = i; x = p->x; y = p->y; diff --git a/wolfssl/wolfcrypt/sp_int.h b/wolfssl/wolfcrypt/sp_int.h index c1e272eae..794a67480 100644 --- a/wolfssl/wolfcrypt/sp_int.h +++ b/wolfssl/wolfcrypt/sp_int.h @@ -95,7 +95,7 @@ extern "C" { #error "Size of unsigned int not detected" #endif -#if ULONG_MAX == 18446744073709551615UL +#if ULONG_MAX == 18446744073709551615ULL #define SP_ULONG_BITS 64 typedef unsigned long sp_uint64;