forked from wolfSSL/wolfssl
Avoid stdint types.
This commit is contained in:
@ -1437,56 +1437,56 @@ void fe448_to_bytes(unsigned char* b, const sword32* a)
|
||||
b[ 0] = (byte)(in0 >> 0);
|
||||
b[ 1] = (byte)(in0 >> 8);
|
||||
b[ 2] = (byte)(in0 >> 16);
|
||||
b[ 3] = (byte)((in0 >> 24) + ((in1 >> 0) << 4));
|
||||
b[ 3] = (byte)(in0 >> 24) + (byte)((in1 >> 0) << 4);
|
||||
b[ 4] = (byte)(in1 >> 4);
|
||||
b[ 5] = (byte)(in1 >> 12);
|
||||
b[ 6] = (byte)(in1 >> 20);
|
||||
b[ 7] = (byte)(in2 >> 0);
|
||||
b[ 8] = (byte)(in2 >> 8);
|
||||
b[ 9] = (byte)(in2 >> 16);
|
||||
b[10] = (byte)((in2 >> 24) + ((in3 >> 0) << 4));
|
||||
b[10] = (byte)(in2 >> 24) + (byte)((in3 >> 0) << 4);
|
||||
b[11] = (byte)(in3 >> 4);
|
||||
b[12] = (byte)(in3 >> 12);
|
||||
b[13] = (byte)(in3 >> 20);
|
||||
b[14] = (byte)(in4 >> 0);
|
||||
b[15] = (byte)(in4 >> 8);
|
||||
b[16] = (byte)(in4 >> 16);
|
||||
b[17] = (byte)((in4 >> 24) + ((in5 >> 0) << 4));
|
||||
b[17] = (byte)(in4 >> 24) + (byte)((in5 >> 0) << 4);
|
||||
b[18] = (byte)(in5 >> 4);
|
||||
b[19] = (byte)(in5 >> 12);
|
||||
b[20] = (byte)(in5 >> 20);
|
||||
b[21] = (byte)(in6 >> 0);
|
||||
b[22] = (byte)(in6 >> 8);
|
||||
b[23] = (byte)(in6 >> 16);
|
||||
b[24] = (byte)((in6 >> 24) + ((in7 >> 0) << 4));
|
||||
b[24] = (byte)(in6 >> 24) + (byte)((in7 >> 0) << 4);
|
||||
b[25] = (byte)(in7 >> 4);
|
||||
b[26] = (byte)(in7 >> 12);
|
||||
b[27] = (byte)(in7 >> 20);
|
||||
b[28] = (byte)(in8 >> 0);
|
||||
b[29] = (byte)(in8 >> 8);
|
||||
b[30] = (byte)(in8 >> 16);
|
||||
b[31] = (byte)((in8 >> 24) + ((in9 >> 0) << 4));
|
||||
b[31] = (byte)(in8 >> 24) + (byte)((in9 >> 0) << 4);
|
||||
b[32] = (byte)(in9 >> 4);
|
||||
b[33] = (byte)(in9 >> 12);
|
||||
b[34] = (byte)(in9 >> 20);
|
||||
b[35] = (byte)(in10 >> 0);
|
||||
b[36] = (byte)(in10 >> 8);
|
||||
b[37] = (byte)(in10 >> 16);
|
||||
b[38] = (byte)((in10 >> 24) + ((in11 >> 0) << 4));
|
||||
b[38] = (byte)(in10 >> 24) + (byte)((in11 >> 0) << 4);
|
||||
b[39] = (byte)(in11 >> 4);
|
||||
b[40] = (byte)(in11 >> 12);
|
||||
b[41] = (byte)(in11 >> 20);
|
||||
b[42] = (byte)(in12 >> 0);
|
||||
b[43] = (byte)(in12 >> 8);
|
||||
b[44] = (byte)(in12 >> 16);
|
||||
b[45] = (byte)((in12 >> 24) + ((in13 >> 0) << 4));
|
||||
b[45] = (byte)(in12 >> 24) + (byte)((in13 >> 0) << 4);
|
||||
b[46] = (byte)(in13 >> 4);
|
||||
b[47] = (byte)(in13 >> 12);
|
||||
b[48] = (byte)(in13 >> 20);
|
||||
b[49] = (byte)(in14 >> 0);
|
||||
b[50] = (byte)(in14 >> 8);
|
||||
b[51] = (byte)(in14 >> 16);
|
||||
b[52] = (byte)((in14 >> 24) + ((in15 >> 0) << 4));
|
||||
b[52] = (byte)(in14 >> 24) + (byte)((in15 >> 0) << 4);
|
||||
b[53] = (byte)(in15 >> 4);
|
||||
b[54] = (byte)(in15 >> 12);
|
||||
b[55] = (byte)(in15 >> 20);
|
||||
@ -1770,6 +1770,8 @@ void fe448_mul39081(sword32* r, const sword32* a)
|
||||
static WC_INLINE void fe448_mul_8(sword32* r, const sword32* a, const sword32* b)
|
||||
{
|
||||
sword64 t;
|
||||
sword64 o;
|
||||
sword64 t15;
|
||||
sword64 t0 = (sword64)a[ 0] * b[ 0];
|
||||
sword64 t1 = (sword64)a[ 0] * b[ 1];
|
||||
sword64 t101 = (sword64)a[ 1] * b[ 0];
|
||||
@ -1834,7 +1836,6 @@ static WC_INLINE void fe448_mul_8(sword32* r, const sword32* a, const sword32* b
|
||||
sword64 t13 = (sword64)a[ 6] * b[ 7];
|
||||
sword64 t113 = (sword64)a[ 7] * b[ 6];
|
||||
sword64 t14 = (sword64)a[ 7] * b[ 7];
|
||||
sword64 o, t15;
|
||||
t1 += t101;
|
||||
t2 += t102; t2 += t202;
|
||||
t3 += t103; t3 += t203; t3 += t303;
|
||||
|
@ -5453,56 +5453,56 @@ void sc448_reduce(byte* b)
|
||||
b[ 0] = (byte)(d[0 ] >> 0);
|
||||
b[ 1] = (byte)(d[0 ] >> 8);
|
||||
b[ 2] = (byte)(d[0 ] >> 16);
|
||||
b[ 3] = (byte)((d[0 ] >> 24) + ((d[1 ] >> 0) << 4));
|
||||
b[ 3] = (byte)(d[0 ] >> 24) + ((d[1 ] >> 0) << 4);
|
||||
b[ 4] = (byte)(d[1 ] >> 4);
|
||||
b[ 5] = (byte)(d[1 ] >> 12);
|
||||
b[ 6] = (byte)(d[1 ] >> 20);
|
||||
b[ 7] = (byte)(d[2 ] >> 0);
|
||||
b[ 8] = (byte)(d[2 ] >> 8);
|
||||
b[ 9] = (byte)(d[2 ] >> 16);
|
||||
b[10] = (byte)((d[2 ] >> 24) + ((d[3 ] >> 0) << 4));
|
||||
b[10] = (byte)(d[2 ] >> 24) + ((d[3 ] >> 0) << 4);
|
||||
b[11] = (byte)(d[3 ] >> 4);
|
||||
b[12] = (byte)(d[3 ] >> 12);
|
||||
b[13] = (byte)(d[3 ] >> 20);
|
||||
b[14] = (byte)(d[4 ] >> 0);
|
||||
b[15] = (byte)(d[4 ] >> 8);
|
||||
b[16] = (byte)(d[4 ] >> 16);
|
||||
b[17] = (byte)((d[4 ] >> 24) + ((d[5 ] >> 0) << 4));
|
||||
b[17] = (byte)(d[4 ] >> 24) + ((d[5 ] >> 0) << 4);
|
||||
b[18] = (byte)(d[5 ] >> 4);
|
||||
b[19] = (byte)(d[5 ] >> 12);
|
||||
b[20] = (byte)(d[5 ] >> 20);
|
||||
b[21] = (byte)(d[6 ] >> 0);
|
||||
b[22] = (byte)(d[6 ] >> 8);
|
||||
b[23] = (byte)(d[6 ] >> 16);
|
||||
b[24] = (byte)((d[6 ] >> 24) + ((d[7 ] >> 0) << 4));
|
||||
b[24] = (byte)(d[6 ] >> 24) + ((d[7 ] >> 0) << 4);
|
||||
b[25] = (byte)(d[7 ] >> 4);
|
||||
b[26] = (byte)(d[7 ] >> 12);
|
||||
b[27] = (byte)(d[7 ] >> 20);
|
||||
b[28] = (byte)(d[8 ] >> 0);
|
||||
b[29] = (byte)(d[8 ] >> 8);
|
||||
b[30] = (byte)(d[8 ] >> 16);
|
||||
b[31] = (byte)((d[8 ] >> 24) + ((d[9 ] >> 0) << 4));
|
||||
b[31] = (byte)(d[8 ] >> 24) + ((d[9 ] >> 0) << 4);
|
||||
b[32] = (byte)(d[9 ] >> 4);
|
||||
b[33] = (byte)(d[9 ] >> 12);
|
||||
b[34] = (byte)(d[9 ] >> 20);
|
||||
b[35] = (byte)(d[10] >> 0);
|
||||
b[36] = (byte)(d[10] >> 8);
|
||||
b[37] = (byte)(d[10] >> 16);
|
||||
b[38] = (byte)((d[10] >> 24) + ((d[11] >> 0) << 4));
|
||||
b[38] = (byte)(d[10] >> 24) + ((d[11] >> 0) << 4);
|
||||
b[39] = (byte)(d[11] >> 4);
|
||||
b[40] = (byte)(d[11] >> 12);
|
||||
b[41] = (byte)(d[11] >> 20);
|
||||
b[42] = (byte)(d[12] >> 0);
|
||||
b[43] = (byte)(d[12] >> 8);
|
||||
b[44] = (byte)(d[12] >> 16);
|
||||
b[45] = (byte)((d[12] >> 24) + ((d[13] >> 0) << 4));
|
||||
b[45] = (byte)(d[12] >> 24) + ((d[13] >> 0) << 4);
|
||||
b[46] = (byte)(d[13] >> 4);
|
||||
b[47] = (byte)(d[13] >> 12);
|
||||
b[48] = (byte)(d[13] >> 20);
|
||||
b[49] = (byte)(d[14] >> 0);
|
||||
b[50] = (byte)(d[14] >> 8);
|
||||
b[51] = (byte)(d[14] >> 16);
|
||||
b[52] = (byte)((d[14] >> 24) + ((d[15] >> 0) << 4));
|
||||
b[52] = (byte)(d[14] >> 24) + ((d[15] >> 0) << 4);
|
||||
b[53] = (byte)(d[15] >> 4);
|
||||
b[54] = (byte)(d[15] >> 12);
|
||||
b[55] = (byte)(d[15] >> 20);
|
||||
@ -6206,56 +6206,56 @@ void sc448_muladd(byte* r, const byte* a, const byte* b, const byte* d)
|
||||
r[ 0] = (byte)(rd[0 ] >> 0);
|
||||
r[ 1] = (byte)(rd[0 ] >> 8);
|
||||
r[ 2] = (byte)(rd[0 ] >> 16);
|
||||
r[ 3] = (byte)((rd[0 ] >> 24) + ((rd[1 ] >> 0) << 4));
|
||||
r[ 3] = (byte)(rd[0 ] >> 24) + ((rd[1 ] >> 0) << 4);
|
||||
r[ 4] = (byte)(rd[1 ] >> 4);
|
||||
r[ 5] = (byte)(rd[1 ] >> 12);
|
||||
r[ 6] = (byte)(rd[1 ] >> 20);
|
||||
r[ 7] = (byte)(rd[2 ] >> 0);
|
||||
r[ 8] = (byte)(rd[2 ] >> 8);
|
||||
r[ 9] = (byte)(rd[2 ] >> 16);
|
||||
r[10] = (byte)((rd[2 ] >> 24) + ((rd[3 ] >> 0) << 4));
|
||||
r[10] = (byte)(rd[2 ] >> 24) + ((rd[3 ] >> 0) << 4);
|
||||
r[11] = (byte)(rd[3 ] >> 4);
|
||||
r[12] = (byte)(rd[3 ] >> 12);
|
||||
r[13] = (byte)(rd[3 ] >> 20);
|
||||
r[14] = (byte)(rd[4 ] >> 0);
|
||||
r[15] = (byte)(rd[4 ] >> 8);
|
||||
r[16] = (byte)(rd[4 ] >> 16);
|
||||
r[17] = (byte)((rd[4 ] >> 24) + ((rd[5 ] >> 0) << 4));
|
||||
r[17] = (byte)(rd[4 ] >> 24) + ((rd[5 ] >> 0) << 4);
|
||||
r[18] = (byte)(rd[5 ] >> 4);
|
||||
r[19] = (byte)(rd[5 ] >> 12);
|
||||
r[20] = (byte)(rd[5 ] >> 20);
|
||||
r[21] = (byte)(rd[6 ] >> 0);
|
||||
r[22] = (byte)(rd[6 ] >> 8);
|
||||
r[23] = (byte)(rd[6 ] >> 16);
|
||||
r[24] = (byte)((rd[6 ] >> 24) + ((rd[7 ] >> 0) << 4));
|
||||
r[24] = (byte)(rd[6 ] >> 24) + ((rd[7 ] >> 0) << 4);
|
||||
r[25] = (byte)(rd[7 ] >> 4);
|
||||
r[26] = (byte)(rd[7 ] >> 12);
|
||||
r[27] = (byte)(rd[7 ] >> 20);
|
||||
r[28] = (byte)(rd[8 ] >> 0);
|
||||
r[29] = (byte)(rd[8 ] >> 8);
|
||||
r[30] = (byte)(rd[8 ] >> 16);
|
||||
r[31] = (byte)((rd[8 ] >> 24) + ((rd[9 ] >> 0) << 4));
|
||||
r[31] = (byte)(rd[8 ] >> 24) + ((rd[9 ] >> 0) << 4);
|
||||
r[32] = (byte)(rd[9 ] >> 4);
|
||||
r[33] = (byte)(rd[9 ] >> 12);
|
||||
r[34] = (byte)(rd[9 ] >> 20);
|
||||
r[35] = (byte)(rd[10] >> 0);
|
||||
r[36] = (byte)(rd[10] >> 8);
|
||||
r[37] = (byte)(rd[10] >> 16);
|
||||
r[38] = (byte)((rd[10] >> 24) + ((rd[11] >> 0) << 4));
|
||||
r[38] = (byte)(rd[10] >> 24) + ((rd[11] >> 0) << 4);
|
||||
r[39] = (byte)(rd[11] >> 4);
|
||||
r[40] = (byte)(rd[11] >> 12);
|
||||
r[41] = (byte)(rd[11] >> 20);
|
||||
r[42] = (byte)(rd[12] >> 0);
|
||||
r[43] = (byte)(rd[12] >> 8);
|
||||
r[44] = (byte)(rd[12] >> 16);
|
||||
r[45] = (byte)((rd[12] >> 24) + ((rd[13] >> 0) << 4));
|
||||
r[45] = (byte)(rd[12] >> 24) + ((rd[13] >> 0) << 4);
|
||||
r[46] = (byte)(rd[13] >> 4);
|
||||
r[47] = (byte)(rd[13] >> 12);
|
||||
r[48] = (byte)(rd[13] >> 20);
|
||||
r[49] = (byte)(rd[14] >> 0);
|
||||
r[50] = (byte)(rd[14] >> 8);
|
||||
r[51] = (byte)(rd[14] >> 16);
|
||||
r[52] = (byte)((rd[14] >> 24) + ((rd[15] >> 0) << 4));
|
||||
r[52] = (byte)(rd[14] >> 24) + ((rd[15] >> 0) << 4);
|
||||
r[53] = (byte)(rd[15] >> 4);
|
||||
r[54] = (byte)(rd[15] >> 12);
|
||||
r[55] = (byte)(rd[15] >> 20);
|
||||
|
@ -53,7 +53,7 @@
|
||||
#include <wolfssl/wolfcrypt/aes.h>
|
||||
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
static const uint32_t L_AES_ARM32_td_data[] = {
|
||||
static const word32 L_AES_ARM32_td_data[] = {
|
||||
0x5051f4a7, 0x537e4165, 0xc31a17a4, 0x963a275e,
|
||||
0xcb3bab6b, 0xf11f9d45, 0xabacfa58, 0x934be303,
|
||||
0x552030fa, 0xf6ad766d, 0x9188cc76, 0x25f5024c,
|
||||
@ -124,7 +124,7 @@ static const uint32_t L_AES_ARM32_td_data[] = {
|
||||
#if defined(HAVE_AES_DECRYPT) || defined(HAVE_AES_CBC) || \
|
||||
defined(HAVE_AESCCM) || defined(HAVE_AESGCM) || \
|
||||
defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER)
|
||||
static const uint32_t L_AES_ARM32_te_data[] = {
|
||||
static const word32 L_AES_ARM32_te_data[] = {
|
||||
0xa5c66363, 0x84f87c7c, 0x99ee7777, 0x8df67b7b,
|
||||
0x0dfff2f2, 0xbdd66b6b, 0xb1de6f6f, 0x5491c5c5,
|
||||
0x50603030, 0x03020101, 0xa9ce6767, 0x7d562b2b,
|
||||
@ -194,12 +194,12 @@ static const uint32_t L_AES_ARM32_te_data[] = {
|
||||
#endif /* HAVE_AES_DECRYPT || HAVE_AES_CBC || HAVE_AESCCM || HAVE_AESGCM ||
|
||||
* WOLFSSL_AES_DIRECT || WOLFSSL_AES_COUNTER */
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
static const uint32_t* L_AES_ARM32_td = L_AES_ARM32_td_data;
|
||||
static const word32* L_AES_ARM32_td = L_AES_ARM32_td_data;
|
||||
#endif /* HAVE_AES_DECRYPT */
|
||||
#if defined(HAVE_AES_DECRYPT) || defined(HAVE_AES_CBC) || \
|
||||
defined(HAVE_AESCCM) || defined(HAVE_AESGCM) || \
|
||||
defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER)
|
||||
static const uint32_t* L_AES_ARM32_te = L_AES_ARM32_te_data;
|
||||
static const word32* L_AES_ARM32_te = L_AES_ARM32_te_data;
|
||||
#endif /* HAVE_AES_DECRYPT || HAVE_AES_CBC || HAVE_AESCCM || HAVE_AESGCM ||
|
||||
* WOLFSSL_AES_DIRECT || WOLFSSL_AES_COUNTER */
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
@ -208,8 +208,8 @@ void AES_invert_key(unsigned char* ks_p, word32 rounds_p)
|
||||
{
|
||||
register unsigned char* ks asm ("r0") = (unsigned char*)ks_p;
|
||||
register word32 rounds asm ("r1") = (word32)rounds_p;
|
||||
register uint32_t* L_AES_ARM32_te_c asm ("r2") = (uint32_t*)L_AES_ARM32_te;
|
||||
register uint32_t* L_AES_ARM32_td_c asm ("r3") = (uint32_t*)L_AES_ARM32_td;
|
||||
register word32* L_AES_ARM32_te_c asm ("r2") = (word32*)L_AES_ARM32_te;
|
||||
register word32* L_AES_ARM32_td_c asm ("r3") = (word32*)L_AES_ARM32_td;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov r12, %[L_AES_ARM32_te]\n\t"
|
||||
@ -415,7 +415,7 @@ void AES_invert_key(unsigned char* ks_p, word32 rounds_p)
|
||||
}
|
||||
|
||||
#endif /* HAVE_AES_DECRYPT */
|
||||
static const uint32_t L_AES_ARM32_rcon[] = {
|
||||
static const word32 L_AES_ARM32_rcon[] = {
|
||||
0x01000000, 0x02000000, 0x04000000, 0x08000000,
|
||||
0x10000000, 0x20000000, 0x40000000, 0x80000000,
|
||||
0x1b000000, 0x36000000
|
||||
@ -429,9 +429,9 @@ void AES_set_encrypt_key(const unsigned char* key_p, word32 len_p,
|
||||
register const unsigned char* key asm ("r0") = (const unsigned char*)key_p;
|
||||
register word32 len asm ("r1") = (word32)len_p;
|
||||
register unsigned char* ks asm ("r2") = (unsigned char*)ks_p;
|
||||
register uint32_t* L_AES_ARM32_te_c asm ("r3") = (uint32_t*)L_AES_ARM32_te;
|
||||
register uint32_t* L_AES_ARM32_rcon_c asm ("r4") =
|
||||
(uint32_t*)&L_AES_ARM32_rcon;
|
||||
register word32* L_AES_ARM32_te_c asm ("r3") = (word32*)L_AES_ARM32_te;
|
||||
register word32* L_AES_ARM32_rcon_c asm ("r4") =
|
||||
(word32*)&L_AES_ARM32_rcon;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov r8, %[L_AES_ARM32_te]\n\t"
|
||||
@ -940,15 +940,15 @@ void AES_set_encrypt_key(const unsigned char* key_p, word32 len_p,
|
||||
);
|
||||
}
|
||||
|
||||
void AES_encrypt_block(const uint32_t* te_p, int nr_p, int len_p,
|
||||
const uint32_t* ks_p);
|
||||
void AES_encrypt_block(const uint32_t* te_p, int nr_p, int len_p,
|
||||
const uint32_t* ks_p)
|
||||
void AES_encrypt_block(const word32* te_p, int nr_p, int len_p,
|
||||
const word32* ks_p);
|
||||
void AES_encrypt_block(const word32* te_p, int nr_p, int len_p,
|
||||
const word32* ks_p)
|
||||
{
|
||||
register const uint32_t* te asm ("r0") = (const uint32_t*)te_p;
|
||||
register const word32* te asm ("r0") = (const word32*)te_p;
|
||||
register int nr asm ("r1") = (int)nr_p;
|
||||
register int len asm ("r2") = (int)len_p;
|
||||
register const uint32_t* ks asm ("r3") = (const uint32_t*)ks_p;
|
||||
register const word32* ks asm ("r3") = (const word32*)ks_p;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"\n"
|
||||
@ -1595,7 +1595,7 @@ void AES_encrypt_block(const uint32_t* te_p, int nr_p, int len_p,
|
||||
|
||||
#if defined(HAVE_AESCCM) || defined(HAVE_AESGCM) || \
|
||||
defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER)
|
||||
static const uint32_t* L_AES_ARM32_te_ecb = L_AES_ARM32_te_data;
|
||||
static const word32* L_AES_ARM32_te_ecb = L_AES_ARM32_te_data;
|
||||
void AES_ECB_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
unsigned long len_p, const unsigned char* ks_p, int nr_p);
|
||||
void AES_ECB_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
@ -1606,8 +1606,8 @@ void AES_ECB_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
register unsigned long len asm ("r2") = (unsigned long)len_p;
|
||||
register const unsigned char* ks asm ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr asm ("r4") = (int)nr_p;
|
||||
register uint32_t* L_AES_ARM32_te_ecb_c asm ("r5") =
|
||||
(uint32_t*)L_AES_ARM32_te_ecb;
|
||||
register word32* L_AES_ARM32_te_ecb_c asm ("r5") =
|
||||
(word32*)L_AES_ARM32_te_ecb;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov lr, %[in]\n\t"
|
||||
@ -1850,7 +1850,7 @@ void AES_ECB_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
#endif /* HAVE_AESCCM || HAVE_AESGCM || WOLFSSL_AES_DIRECT ||
|
||||
* WOLFSSL_AES_COUNTER */
|
||||
#ifdef HAVE_AES_CBC
|
||||
static const uint32_t* L_AES_ARM32_te_cbc = L_AES_ARM32_te_data;
|
||||
static const word32* L_AES_ARM32_te_cbc = L_AES_ARM32_te_data;
|
||||
void AES_CBC_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
unsigned long len_p, const unsigned char* ks_p, int nr_p,
|
||||
unsigned char* iv_p);
|
||||
@ -1864,8 +1864,8 @@ void AES_CBC_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
register const unsigned char* ks asm ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr asm ("r4") = (int)nr_p;
|
||||
register unsigned char* iv asm ("r5") = (unsigned char*)iv_p;
|
||||
register uint32_t* L_AES_ARM32_te_cbc_c asm ("r6") =
|
||||
(uint32_t*)L_AES_ARM32_te_cbc;
|
||||
register word32* L_AES_ARM32_te_cbc_c asm ("r6") =
|
||||
(word32*)L_AES_ARM32_te_cbc;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov r8, r4\n\t"
|
||||
@ -2123,7 +2123,7 @@ void AES_CBC_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
|
||||
#endif /* HAVE_AES_CBC */
|
||||
#ifdef WOLFSSL_AES_COUNTER
|
||||
static const uint32_t* L_AES_ARM32_te_ctr = L_AES_ARM32_te_data;
|
||||
static const word32* L_AES_ARM32_te_ctr = L_AES_ARM32_te_data;
|
||||
void AES_CTR_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
unsigned long len_p, const unsigned char* ks_p, int nr_p,
|
||||
unsigned char* ctr_p);
|
||||
@ -2137,8 +2137,8 @@ void AES_CTR_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
register const unsigned char* ks asm ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr asm ("r4") = (int)nr_p;
|
||||
register unsigned char* ctr asm ("r5") = (unsigned char*)ctr_p;
|
||||
register uint32_t* L_AES_ARM32_te_ctr_c asm ("r6") =
|
||||
(uint32_t*)L_AES_ARM32_te_ctr;
|
||||
register word32* L_AES_ARM32_te_ctr_c asm ("r6") =
|
||||
(word32*)L_AES_ARM32_te_ctr;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov r12, r4\n\t"
|
||||
@ -2400,12 +2400,12 @@ void AES_CTR_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
#if defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER) || \
|
||||
defined(HAVE_AES_CBC)
|
||||
void AES_decrypt_block(const uint32_t* td_p, int nr_p, const uint8_t* td4_p);
|
||||
void AES_decrypt_block(const uint32_t* td_p, int nr_p, const uint8_t* td4_p)
|
||||
void AES_decrypt_block(const word32* td_p, int nr_p, const byte* td4_p);
|
||||
void AES_decrypt_block(const word32* td_p, int nr_p, const byte* td4_p)
|
||||
{
|
||||
register const uint32_t* td asm ("r0") = (const uint32_t*)td_p;
|
||||
register const word32* td asm ("r0") = (const word32*)td_p;
|
||||
register int nr asm ("r1") = (int)nr_p;
|
||||
register const uint8_t* td4 asm ("r2") = (const uint8_t*)td4_p;
|
||||
register const byte* td4 asm ("r2") = (const byte*)td4_p;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"\n"
|
||||
@ -3050,8 +3050,8 @@ void AES_decrypt_block(const uint32_t* td_p, int nr_p, const uint8_t* td4_p)
|
||||
);
|
||||
}
|
||||
|
||||
static const uint32_t* L_AES_ARM32_td_ecb = L_AES_ARM32_td_data;
|
||||
static const unsigned char L_AES_ARM32_td4[] = {
|
||||
static const word32* L_AES_ARM32_td_ecb = L_AES_ARM32_td_data;
|
||||
static const byte L_AES_ARM32_td4[] = {
|
||||
0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38,
|
||||
0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb,
|
||||
0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87,
|
||||
@ -3097,10 +3097,9 @@ void AES_ECB_decrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
register unsigned long len asm ("r2") = (unsigned long)len_p;
|
||||
register const unsigned char* ks asm ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr asm ("r4") = (int)nr_p;
|
||||
register uint32_t* L_AES_ARM32_td_ecb_c asm ("r5") =
|
||||
(uint32_t*)L_AES_ARM32_td_ecb;
|
||||
register unsigned char* L_AES_ARM32_td4_c asm ("r6") =
|
||||
(unsigned char*)&L_AES_ARM32_td4;
|
||||
register word32* L_AES_ARM32_td_ecb_c asm ("r5") =
|
||||
(word32*)L_AES_ARM32_td_ecb;
|
||||
register byte* L_AES_ARM32_td4_c asm ("r6") = (byte*)&L_AES_ARM32_td4;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov r8, r4\n\t"
|
||||
@ -3353,10 +3352,9 @@ void AES_CBC_decrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
register const unsigned char* ks asm ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr asm ("r4") = (int)nr_p;
|
||||
register unsigned char* iv asm ("r5") = (unsigned char*)iv_p;
|
||||
register uint32_t* L_AES_ARM32_td_ecb_c asm ("r6") =
|
||||
(uint32_t*)L_AES_ARM32_td_ecb;
|
||||
register unsigned char* L_AES_ARM32_td4_c asm ("r7") =
|
||||
(unsigned char*)&L_AES_ARM32_td4;
|
||||
register word32* L_AES_ARM32_td_ecb_c asm ("r6") =
|
||||
(word32*)L_AES_ARM32_td_ecb;
|
||||
register byte* L_AES_ARM32_td4_c asm ("r7") = (byte*)&L_AES_ARM32_td4;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov r8, r4\n\t"
|
||||
@ -3983,7 +3981,7 @@ void AES_CBC_decrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
#endif /* WOLFSSL_AES_DIRECT || WOLFSSL_AES_COUNTER || HAVE_AES_CBC */
|
||||
#endif /* HAVE_AES_DECRYPT */
|
||||
#ifdef HAVE_AESGCM
|
||||
static const uint32_t L_GCM_gmult_len_r[] = {
|
||||
static const word32 L_GCM_gmult_len_r[] = {
|
||||
0x00000000, 0x1c200000, 0x38400000, 0x24600000,
|
||||
0x70800000, 0x6ca00000, 0x48c00000, 0x54e00000,
|
||||
0xe1000000, 0xfd200000, 0xd9400000, 0xc5600000,
|
||||
@ -4000,8 +3998,8 @@ void GCM_gmult_len(unsigned char* x_p, const unsigned char** m_p,
|
||||
register const unsigned char* data asm ("r2") =
|
||||
(const unsigned char*)data_p;
|
||||
register unsigned long len asm ("r3") = (unsigned long)len_p;
|
||||
register uint32_t* L_GCM_gmult_len_r_c asm ("r4") =
|
||||
(uint32_t*)&L_GCM_gmult_len_r;
|
||||
register word32* L_GCM_gmult_len_r_c asm ("r4") =
|
||||
(word32*)&L_GCM_gmult_len_r;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov lr, %[L_GCM_gmult_len_r]\n\t"
|
||||
@ -4583,7 +4581,7 @@ void GCM_gmult_len(unsigned char* x_p, const unsigned char** m_p,
|
||||
);
|
||||
}
|
||||
|
||||
static const uint32_t* L_AES_ARM32_te_gcm = L_AES_ARM32_te_data;
|
||||
static const word32* L_AES_ARM32_te_gcm = L_AES_ARM32_te_data;
|
||||
void AES_GCM_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
unsigned long len_p, const unsigned char* ks_p, int nr_p,
|
||||
unsigned char* ctr_p);
|
||||
@ -4597,8 +4595,8 @@ void AES_GCM_encrypt(const unsigned char* in_p, unsigned char* out_p,
|
||||
register const unsigned char* ks asm ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr asm ("r4") = (int)nr_p;
|
||||
register unsigned char* ctr asm ("r5") = (unsigned char*)ctr_p;
|
||||
register uint32_t* L_AES_ARM32_te_gcm_c asm ("r6") =
|
||||
(uint32_t*)L_AES_ARM32_te_gcm;
|
||||
register word32* L_AES_ARM32_te_gcm_c asm ("r6") =
|
||||
(word32*)L_AES_ARM32_te_gcm;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov r12, r4\n\t"
|
||||
|
@ -76,7 +76,7 @@ void wc_chacha_setiv(word32* x_p, const byte* iv_p, word32 counter_p)
|
||||
);
|
||||
}
|
||||
|
||||
static const uint32_t L_chacha_arm32_constants[] = {
|
||||
static const word32 L_chacha_arm32_constants[] = {
|
||||
0x61707865, 0x3120646e, 0x79622d36, 0x6b206574,
|
||||
0x61707865, 0x3320646e, 0x79622d32, 0x6b206574,
|
||||
};
|
||||
@ -86,8 +86,8 @@ void wc_chacha_setkey(word32* x_p, const byte* key_p, word32 keySz_p)
|
||||
register word32* x asm ("r0") = (word32*)x_p;
|
||||
register const byte* key asm ("r1") = (const byte*)key_p;
|
||||
register word32 keySz asm ("r2") = (word32)keySz_p;
|
||||
register uint32_t* L_chacha_arm32_constants_c asm ("r3") =
|
||||
(uint32_t*)&L_chacha_arm32_constants;
|
||||
register word32* L_chacha_arm32_constants_c asm ("r3") =
|
||||
(word32*)&L_chacha_arm32_constants;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"subs %[keySz], %[keySz], #16\n\t"
|
||||
|
@ -52,7 +52,7 @@
|
||||
#include <wolfssl/wolfcrypt/wc_kyber.h>
|
||||
|
||||
#ifdef WOLFSSL_WC_KYBER
|
||||
static const uint16_t L_kyber_arm32_ntt_zetas[] = {
|
||||
static const word16 L_kyber_arm32_ntt_zetas[] = {
|
||||
0x08ed, 0x0a0b, 0x0b9a, 0x0714,
|
||||
0x05d5, 0x058e, 0x011f, 0x00ca,
|
||||
0x0c56, 0x026e, 0x0629, 0x00b6,
|
||||
@ -90,8 +90,8 @@ static const uint16_t L_kyber_arm32_ntt_zetas[] = {
|
||||
void kyber_arm32_ntt(sword16* r_p)
|
||||
{
|
||||
register sword16* r asm ("r0") = (sword16*)r_p;
|
||||
register uint16_t* L_kyber_arm32_ntt_zetas_c asm ("r1") =
|
||||
(uint16_t*)&L_kyber_arm32_ntt_zetas;
|
||||
register word16* L_kyber_arm32_ntt_zetas_c asm ("r1") =
|
||||
(word16*)&L_kyber_arm32_ntt_zetas;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"sub sp, sp, #8\n\t"
|
||||
@ -3318,7 +3318,7 @@ void kyber_arm32_ntt(sword16* r_p)
|
||||
);
|
||||
}
|
||||
|
||||
static const uint16_t L_kyber_arm32_invntt_zetas_inv[] = {
|
||||
static const word16 L_kyber_arm32_invntt_zetas_inv[] = {
|
||||
0x06a5, 0x070f, 0x05b4, 0x0943,
|
||||
0x0922, 0x091d, 0x0134, 0x006c,
|
||||
0x0b23, 0x0366, 0x0356, 0x05e6,
|
||||
@ -3356,8 +3356,8 @@ static const uint16_t L_kyber_arm32_invntt_zetas_inv[] = {
|
||||
void kyber_arm32_invntt(sword16* r_p)
|
||||
{
|
||||
register sword16* r asm ("r0") = (sword16*)r_p;
|
||||
register uint16_t* L_kyber_arm32_invntt_zetas_inv_c asm ("r1") =
|
||||
(uint16_t*)&L_kyber_arm32_invntt_zetas_inv;
|
||||
register word16* L_kyber_arm32_invntt_zetas_inv_c asm ("r1") =
|
||||
(word16*)&L_kyber_arm32_invntt_zetas_inv;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"sub sp, sp, #8\n\t"
|
||||
@ -8082,7 +8082,7 @@ void kyber_arm32_invntt(sword16* r_p)
|
||||
);
|
||||
}
|
||||
|
||||
static const uint16_t L_kyber_arm32_basemul_mont_zetas[] = {
|
||||
static const word16 L_kyber_arm32_basemul_mont_zetas[] = {
|
||||
0x08ed, 0x0a0b, 0x0b9a, 0x0714,
|
||||
0x05d5, 0x058e, 0x011f, 0x00ca,
|
||||
0x0c56, 0x026e, 0x0629, 0x00b6,
|
||||
@ -8123,8 +8123,8 @@ void kyber_arm32_basemul_mont(sword16* r_p, const sword16* a_p,
|
||||
register sword16* r asm ("r0") = (sword16*)r_p;
|
||||
register const sword16* a asm ("r1") = (const sword16*)a_p;
|
||||
register const sword16* b asm ("r2") = (const sword16*)b_p;
|
||||
register uint16_t* L_kyber_arm32_basemul_mont_zetas_c asm ("r3") =
|
||||
(uint16_t*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
register word16* L_kyber_arm32_basemul_mont_zetas_c asm ("r3") =
|
||||
(word16*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"add r3, r3, #0x80\n\t"
|
||||
@ -8418,8 +8418,8 @@ void kyber_arm32_basemul_mont_add(sword16* r_p, const sword16* a_p,
|
||||
register sword16* r asm ("r0") = (sword16*)r_p;
|
||||
register const sword16* a asm ("r1") = (const sword16*)a_p;
|
||||
register const sword16* b asm ("r2") = (const sword16*)b_p;
|
||||
register uint16_t* L_kyber_arm32_basemul_mont_zetas_c asm ("r3") =
|
||||
(uint16_t*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
register word16* L_kyber_arm32_basemul_mont_zetas_c asm ("r3") =
|
||||
(word16*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"add r3, r3, #0x80\n\t"
|
||||
@ -8748,8 +8748,8 @@ void kyber_arm32_basemul_mont_add(sword16* r_p, const sword16* a_p,
|
||||
void kyber_arm32_csubq(sword16* p_p)
|
||||
{
|
||||
register sword16* p asm ("r0") = (sword16*)p_p;
|
||||
register uint16_t* L_kyber_arm32_basemul_mont_zetas_c asm ("r1") =
|
||||
(uint16_t*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
register word16* L_kyber_arm32_basemul_mont_zetas_c asm ("r1") =
|
||||
(word16*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
#if defined(WOLFSSL_ARM_ARCH) && (WOLFSSL_ARM_ARCH < 7)
|
||||
@ -8961,8 +8961,8 @@ unsigned int kyber_arm32_rej_uniform(sword16* p_p, unsigned int len_p,
|
||||
register unsigned int len asm ("r1") = (unsigned int)len_p;
|
||||
register const byte* r asm ("r2") = (const byte*)r_p;
|
||||
register unsigned int rLen asm ("r3") = (unsigned int)rLen_p;
|
||||
register uint16_t* L_kyber_arm32_basemul_mont_zetas_c asm ("r4") =
|
||||
(uint16_t*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
register word16* L_kyber_arm32_basemul_mont_zetas_c asm ("r4") =
|
||||
(word16*)&L_kyber_arm32_basemul_mont_zetas;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
#if defined(WOLFSSL_ARM_ARCH) && (WOLFSSL_ARM_ARCH < 7)
|
||||
|
@ -277,7 +277,7 @@ void poly1305_blocks_arm32_16(Poly1305* ctx_p, const byte* m_p, word32 len_p,
|
||||
);
|
||||
}
|
||||
|
||||
static const uint32_t L_poly1305_arm32_clamp[] = {
|
||||
static const word32 L_poly1305_arm32_clamp[] = {
|
||||
0x0fffffff, 0x0ffffffc, 0x0ffffffc, 0x0ffffffc,
|
||||
};
|
||||
|
||||
@ -285,8 +285,8 @@ void poly1305_set_key(Poly1305* ctx_p, const byte* key_p)
|
||||
{
|
||||
register Poly1305* ctx asm ("r0") = (Poly1305*)ctx_p;
|
||||
register const byte* key asm ("r1") = (const byte*)key_p;
|
||||
register uint32_t* L_poly1305_arm32_clamp_c asm ("r2") =
|
||||
(uint32_t*)&L_poly1305_arm32_clamp;
|
||||
register word32* L_poly1305_arm32_clamp_c asm ("r2") =
|
||||
(word32*)&L_poly1305_arm32_clamp;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
/* Load mask. */
|
||||
|
@ -53,7 +53,7 @@
|
||||
#include <wolfssl/wolfcrypt/sha256.h>
|
||||
|
||||
#ifdef WOLFSSL_ARMASM_NO_NEON
|
||||
static const uint32_t L_SHA256_transform_len_k[] = {
|
||||
static const word32 L_SHA256_transform_len_k[] = {
|
||||
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,
|
||||
0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
|
||||
0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
|
||||
@ -78,8 +78,8 @@ void Transform_Sha256_Len(wc_Sha256* sha256_p, const byte* data_p, word32 len_p)
|
||||
register wc_Sha256* sha256 asm ("r0") = (wc_Sha256*)sha256_p;
|
||||
register const byte* data asm ("r1") = (const byte*)data_p;
|
||||
register word32 len asm ("r2") = (word32)len_p;
|
||||
register uint32_t* L_SHA256_transform_len_k_c asm ("r3") =
|
||||
(uint32_t*)&L_SHA256_transform_len_k;
|
||||
register word32* L_SHA256_transform_len_k_c asm ("r3") =
|
||||
(word32*)&L_SHA256_transform_len_k;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"sub sp, sp, #0xc0\n\t"
|
||||
@ -1743,7 +1743,7 @@ void Transform_Sha256_Len(wc_Sha256* sha256_p, const byte* data_p, word32 len_p)
|
||||
#include <wolfssl/wolfcrypt/sha256.h>
|
||||
|
||||
#ifndef WOLFSSL_ARMASM_NO_NEON
|
||||
static const uint32_t L_SHA256_transform_neon_len_k[] = {
|
||||
static const word32 L_SHA256_transform_neon_len_k[] = {
|
||||
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,
|
||||
0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
|
||||
0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
|
||||
@ -1768,8 +1768,8 @@ void Transform_Sha256_Len(wc_Sha256* sha256_p, const byte* data_p, word32 len_p)
|
||||
register wc_Sha256* sha256 asm ("r0") = (wc_Sha256*)sha256_p;
|
||||
register const byte* data asm ("r1") = (const byte*)data_p;
|
||||
register word32 len asm ("r2") = (word32)len_p;
|
||||
register uint32_t* L_SHA256_transform_neon_len_k_c asm ("r3") =
|
||||
(uint32_t*)&L_SHA256_transform_neon_len_k;
|
||||
register word32* L_SHA256_transform_neon_len_k_c asm ("r3") =
|
||||
(word32*)&L_SHA256_transform_neon_len_k;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"sub sp, sp, #24\n\t"
|
||||
|
@ -51,7 +51,7 @@
|
||||
#endif /* __KEIL__ */
|
||||
#ifdef WOLFSSL_SHA3
|
||||
#ifndef WOLFSSL_ARMASM_NO_NEON
|
||||
static const uint64_t L_sha3_arm2_neon_rt[] = {
|
||||
static const word64 L_sha3_arm2_neon_rt[] = {
|
||||
0x0000000000000001UL, 0x0000000000008082UL,
|
||||
0x800000000000808aUL, 0x8000000080008000UL,
|
||||
0x000000000000808bUL, 0x0000000080000001UL,
|
||||
@ -71,8 +71,8 @@ static const uint64_t L_sha3_arm2_neon_rt[] = {
|
||||
void BlockSha3(word64* state_p)
|
||||
{
|
||||
register word64* state asm ("r0") = (word64*)state_p;
|
||||
register uint64_t* L_sha3_arm2_neon_rt_c asm ("r1") =
|
||||
(uint64_t*)&L_sha3_arm2_neon_rt;
|
||||
register word64* L_sha3_arm2_neon_rt_c asm ("r1") =
|
||||
(word64*)&L_sha3_arm2_neon_rt;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"sub sp, sp, #16\n\t"
|
||||
@ -344,7 +344,7 @@ void BlockSha3(word64* state_p)
|
||||
|
||||
#endif /* WOLFSSL_ARMASM_NO_NEON */
|
||||
#ifdef WOLFSSL_ARMASM_NO_NEON
|
||||
static const uint64_t L_sha3_arm2_rt[] = {
|
||||
static const word64 L_sha3_arm2_rt[] = {
|
||||
0x0000000000000001UL, 0x0000000000008082UL,
|
||||
0x800000000000808aUL, 0x8000000080008000UL,
|
||||
0x000000000000808bUL, 0x0000000080000001UL,
|
||||
@ -364,8 +364,7 @@ static const uint64_t L_sha3_arm2_rt[] = {
|
||||
void BlockSha3(word64* state_p)
|
||||
{
|
||||
register word64* state asm ("r0") = (word64*)state_p;
|
||||
register uint64_t* L_sha3_arm2_rt_c asm ("r1") =
|
||||
(uint64_t*)&L_sha3_arm2_rt;
|
||||
register word64* L_sha3_arm2_rt_c asm ("r1") = (word64*)&L_sha3_arm2_rt;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"sub sp, sp, #0xcc\n\t"
|
||||
|
@ -53,7 +53,7 @@
|
||||
#include <wolfssl/wolfcrypt/sha512.h>
|
||||
|
||||
#ifdef WOLFSSL_ARMASM_NO_NEON
|
||||
static const uint64_t L_SHA512_transform_len_k[] = {
|
||||
static const word64 L_SHA512_transform_len_k[] = {
|
||||
0x428a2f98d728ae22UL, 0x7137449123ef65cdUL,
|
||||
0xb5c0fbcfec4d3b2fUL, 0xe9b5dba58189dbbcUL,
|
||||
0x3956c25bf348b538UL, 0x59f111f1b605d019UL,
|
||||
@ -102,8 +102,8 @@ void Transform_Sha512_Len(wc_Sha512* sha512_p, const byte* data_p, word32 len_p)
|
||||
register wc_Sha512* sha512 asm ("r0") = (wc_Sha512*)sha512_p;
|
||||
register const byte* data asm ("r1") = (const byte*)data_p;
|
||||
register word32 len asm ("r2") = (word32)len_p;
|
||||
register uint64_t* L_SHA512_transform_len_k_c asm ("r3") =
|
||||
(uint64_t*)&L_SHA512_transform_len_k;
|
||||
register word64* L_SHA512_transform_len_k_c asm ("r3") =
|
||||
(word64*)&L_SHA512_transform_len_k;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"sub sp, sp, #0xc0\n\t"
|
||||
@ -7612,7 +7612,7 @@ void Transform_Sha512_Len(wc_Sha512* sha512_p, const byte* data_p, word32 len_p)
|
||||
#include <wolfssl/wolfcrypt/sha512.h>
|
||||
|
||||
#ifndef WOLFSSL_ARMASM_NO_NEON
|
||||
static const uint64_t L_SHA512_transform_neon_len_k[] = {
|
||||
static const word64 L_SHA512_transform_neon_len_k[] = {
|
||||
0x428a2f98d728ae22UL, 0x7137449123ef65cdUL,
|
||||
0xb5c0fbcfec4d3b2fUL, 0xe9b5dba58189dbbcUL,
|
||||
0x3956c25bf348b538UL, 0x59f111f1b605d019UL,
|
||||
@ -7661,8 +7661,8 @@ void Transform_Sha512_Len(wc_Sha512* sha512_p, const byte* data_p, word32 len_p)
|
||||
register wc_Sha512* sha512 asm ("r0") = (wc_Sha512*)sha512_p;
|
||||
register const byte* data asm ("r1") = (const byte*)data_p;
|
||||
register word32 len asm ("r2") = (word32)len_p;
|
||||
register uint64_t* L_SHA512_transform_neon_len_k_c asm ("r3") =
|
||||
(uint64_t*)&L_SHA512_transform_neon_len_k;
|
||||
register word64* L_SHA512_transform_neon_len_k_c asm ("r3") =
|
||||
(word64*)&L_SHA512_transform_neon_len_k;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
/* Load digest into working vars */
|
||||
|
@ -47,7 +47,7 @@
|
||||
#include <wolfssl/wolfcrypt/aes.h>
|
||||
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
XALIGNED(16) static const uint32_t L_AES_Thumb2_td_data[] = {
|
||||
XALIGNED(16) static const word32 L_AES_Thumb2_td_data[] = {
|
||||
0x5051f4a7, 0x537e4165, 0xc31a17a4, 0x963a275e,
|
||||
0xcb3bab6b, 0xf11f9d45, 0xabacfa58, 0x934be303,
|
||||
0x552030fa, 0xf6ad766d, 0x9188cc76, 0x25f5024c,
|
||||
@ -116,7 +116,7 @@ XALIGNED(16) static const uint32_t L_AES_Thumb2_td_data[] = {
|
||||
|
||||
#endif /* HAVE_AES_DECRYPT */
|
||||
#if defined(HAVE_AES_DECRYPT) || defined(HAVE_AES_CBC) || defined(HAVE_AESCCM) || defined(HAVE_AESGCM) || defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER)
|
||||
XALIGNED(16) static const uint32_t L_AES_Thumb2_te_data[] = {
|
||||
XALIGNED(16) static const word32 L_AES_Thumb2_te_data[] = {
|
||||
0xa5c66363, 0x84f87c7c, 0x99ee7777, 0x8df67b7b,
|
||||
0x0dfff2f2, 0xbdd66b6b, 0xb1de6f6f, 0x5491c5c5,
|
||||
0x50603030, 0x03020101, 0xa9ce6767, 0x7d562b2b,
|
||||
@ -185,10 +185,10 @@ XALIGNED(16) static const uint32_t L_AES_Thumb2_te_data[] = {
|
||||
|
||||
#endif /* HAVE_AES_DECRYPT || HAVE_AES_CBC || HAVE_AESCCM || HAVE_AESGCM || WOLFSSL_AES_DIRECT || WOLFSSL_AES_COUNTER */
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
static const uint32_t* L_AES_Thumb2_td = L_AES_Thumb2_td_data;
|
||||
static const word32* L_AES_Thumb2_td = L_AES_Thumb2_td_data;
|
||||
#endif /* HAVE_AES_DECRYPT */
|
||||
#if defined(HAVE_AES_DECRYPT) || defined(HAVE_AES_CBC) || defined(HAVE_AESCCM) || defined(HAVE_AESGCM) || defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER)
|
||||
static const uint32_t* L_AES_Thumb2_te = L_AES_Thumb2_te_data;
|
||||
static const word32* L_AES_Thumb2_te = L_AES_Thumb2_te_data;
|
||||
#endif /* HAVE_AES_DECRYPT || HAVE_AES_CBC || HAVE_AESCCM || HAVE_AESGCM || WOLFSSL_AES_DIRECT || WOLFSSL_AES_COUNTER */
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
void AES_invert_key(unsigned char* ks, word32 rounds);
|
||||
@ -201,8 +201,8 @@ void AES_invert_key(unsigned char* ks, word32 rounds)
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register unsigned char* ks __asm__ ("r0") = (unsigned char*)ks_p;
|
||||
register word32 rounds __asm__ ("r1") = (word32)rounds_p;
|
||||
register uint32_t* L_AES_Thumb2_te_c __asm__ ("r2") = (uint32_t*)L_AES_Thumb2_te;
|
||||
register uint32_t* L_AES_Thumb2_td_c __asm__ ("r3") = (uint32_t*)L_AES_Thumb2_td;
|
||||
register word32* L_AES_Thumb2_te_c __asm__ ("r2") = (word32*)L_AES_Thumb2_te;
|
||||
register word32* L_AES_Thumb2_td_c __asm__ ("r3") = (word32*)L_AES_Thumb2_td;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -325,7 +325,7 @@ void AES_invert_key(unsigned char* ks, word32 rounds)
|
||||
}
|
||||
|
||||
#endif /* HAVE_AES_DECRYPT */
|
||||
XALIGNED(16) static const uint32_t L_AES_Thumb2_rcon[] = {
|
||||
XALIGNED(16) static const word32 L_AES_Thumb2_rcon[] = {
|
||||
0x01000000, 0x02000000, 0x04000000, 0x08000000,
|
||||
0x10000000, 0x20000000, 0x40000000, 0x80000000,
|
||||
0x1b000000, 0x36000000
|
||||
@ -343,8 +343,8 @@ void AES_set_encrypt_key(const unsigned char* key, word32 len, unsigned char* ks
|
||||
register const unsigned char* key __asm__ ("r0") = (const unsigned char*)key_p;
|
||||
register word32 len __asm__ ("r1") = (word32)len_p;
|
||||
register unsigned char* ks __asm__ ("r2") = (unsigned char*)ks_p;
|
||||
register uint32_t* L_AES_Thumb2_te_c __asm__ ("r3") = (uint32_t*)L_AES_Thumb2_te;
|
||||
register uint32_t* L_AES_Thumb2_rcon_c __asm__ ("r4") = (uint32_t*)&L_AES_Thumb2_rcon;
|
||||
register word32* L_AES_Thumb2_te_c __asm__ ("r3") = (word32*)L_AES_Thumb2_te;
|
||||
register word32* L_AES_Thumb2_rcon_c __asm__ ("r4") = (word32*)&L_AES_Thumb2_rcon;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -620,18 +620,18 @@ void AES_set_encrypt_key(const unsigned char* key, word32 len, unsigned char* ks
|
||||
);
|
||||
}
|
||||
|
||||
void AES_encrypt_block(const uint32_t* te, int nr, int len, const uint32_t* ks);
|
||||
void AES_encrypt_block(const word32* te, int nr, int len, const word32* ks);
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
void AES_encrypt_block(const uint32_t* te_p, int nr_p, int len_p, const uint32_t* ks_p)
|
||||
void AES_encrypt_block(const word32* te_p, int nr_p, int len_p, const word32* ks_p)
|
||||
#else
|
||||
void AES_encrypt_block(const uint32_t* te, int nr, int len, const uint32_t* ks)
|
||||
void AES_encrypt_block(const word32* te, int nr, int len, const word32* ks)
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
{
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register const uint32_t* te __asm__ ("r0") = (const uint32_t*)te_p;
|
||||
register const word32* te __asm__ ("r0") = (const word32*)te_p;
|
||||
register int nr __asm__ ("r1") = (int)nr_p;
|
||||
register int len __asm__ ("r2") = (int)len_p;
|
||||
register const uint32_t* ks __asm__ ("r3") = (const uint32_t*)ks_p;
|
||||
register const word32* ks __asm__ ("r3") = (const word32*)ks_p;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -856,7 +856,7 @@ void AES_encrypt_block(const uint32_t* te, int nr, int len, const uint32_t* ks)
|
||||
}
|
||||
|
||||
#if defined(HAVE_AES_CBC) || defined(HAVE_AESCCM) || defined(HAVE_AESGCM) || defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER)
|
||||
static const uint32_t* L_AES_Thumb2_te_ecb = L_AES_Thumb2_te_data;
|
||||
static const word32* L_AES_Thumb2_te_ecb = L_AES_Thumb2_te_data;
|
||||
#endif /* HAVE_AES_CBC || HAVE_AESCCM || HAVE_AESGCM || WOLFSSL_AES_DIRECT || WOLFSSL_AES_COUNTER */
|
||||
#if defined(HAVE_AESCCM) || defined(HAVE_AESGCM) || defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER)
|
||||
void AES_ECB_encrypt(const unsigned char* in, unsigned char* out,
|
||||
@ -873,7 +873,7 @@ void AES_ECB_encrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
register unsigned long len __asm__ ("r2") = (unsigned long)len_p;
|
||||
register const unsigned char* ks __asm__ ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr __asm__ ("r4") = (int)nr_p;
|
||||
register uint32_t* L_AES_Thumb2_te_ecb_c __asm__ ("r5") = (uint32_t*)L_AES_Thumb2_te_ecb;
|
||||
register word32* L_AES_Thumb2_te_ecb_c __asm__ ("r5") = (word32*)L_AES_Thumb2_te_ecb;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -1096,7 +1096,7 @@ void AES_CBC_encrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
register const unsigned char* ks __asm__ ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr __asm__ ("r4") = (int)nr_p;
|
||||
register unsigned char* iv __asm__ ("r5") = (unsigned char*)iv_p;
|
||||
register uint32_t* L_AES_Thumb2_te_ecb_c __asm__ ("r6") = (uint32_t*)L_AES_Thumb2_te_ecb;
|
||||
register word32* L_AES_Thumb2_te_ecb_c __asm__ ("r6") = (word32*)L_AES_Thumb2_te_ecb;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -1341,7 +1341,7 @@ void AES_CTR_encrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
register const unsigned char* ks __asm__ ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr __asm__ ("r4") = (int)nr_p;
|
||||
register unsigned char* ctr __asm__ ("r5") = (unsigned char*)ctr_p;
|
||||
register uint32_t* L_AES_Thumb2_te_ecb_c __asm__ ("r6") = (uint32_t*)L_AES_Thumb2_te_ecb;
|
||||
register word32* L_AES_Thumb2_te_ecb_c __asm__ ("r6") = (word32*)L_AES_Thumb2_te_ecb;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -1593,17 +1593,17 @@ void AES_CTR_encrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
#endif /* WOLFSSL_AES_COUNTER */
|
||||
#ifdef HAVE_AES_DECRYPT
|
||||
#if defined(WOLFSSL_AES_DIRECT) || defined(WOLFSSL_AES_COUNTER) || defined(HAVE_AES_CBC)
|
||||
void AES_decrypt_block(const uint32_t* td, int nr, const uint8_t* td4);
|
||||
void AES_decrypt_block(const word32* td, int nr, const byte* td4);
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
void AES_decrypt_block(const uint32_t* td_p, int nr_p, const uint8_t* td4_p)
|
||||
void AES_decrypt_block(const word32* td_p, int nr_p, const byte* td4_p)
|
||||
#else
|
||||
void AES_decrypt_block(const uint32_t* td, int nr, const uint8_t* td4)
|
||||
void AES_decrypt_block(const word32* td, int nr, const byte* td4)
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
{
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register const uint32_t* td __asm__ ("r0") = (const uint32_t*)td_p;
|
||||
register const word32* td __asm__ ("r0") = (const word32*)td_p;
|
||||
register int nr __asm__ ("r1") = (int)nr_p;
|
||||
register const uint8_t* td4 __asm__ ("r2") = (const uint8_t*)td4_p;
|
||||
register const byte* td4 __asm__ ("r2") = (const byte*)td4_p;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -1827,8 +1827,8 @@ void AES_decrypt_block(const uint32_t* td, int nr, const uint8_t* td4)
|
||||
);
|
||||
}
|
||||
|
||||
static const uint32_t* L_AES_Thumb2_td_ecb = L_AES_Thumb2_td_data;
|
||||
static const unsigned char L_AES_Thumb2_td4[] = {
|
||||
static const word32* L_AES_Thumb2_td_ecb = L_AES_Thumb2_td_data;
|
||||
static const byte L_AES_Thumb2_td4[] = {
|
||||
0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38,
|
||||
0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb,
|
||||
0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87,
|
||||
@ -1878,8 +1878,8 @@ void AES_ECB_decrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
register unsigned long len __asm__ ("r2") = (unsigned long)len_p;
|
||||
register const unsigned char* ks __asm__ ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr __asm__ ("r4") = (int)nr_p;
|
||||
register uint32_t* L_AES_Thumb2_td_ecb_c __asm__ ("r5") = (uint32_t*)L_AES_Thumb2_td_ecb;
|
||||
register unsigned char* L_AES_Thumb2_td4_c __asm__ ("r6") = (unsigned char*)&L_AES_Thumb2_td4;
|
||||
register word32* L_AES_Thumb2_td_ecb_c __asm__ ("r5") = (word32*)L_AES_Thumb2_td_ecb;
|
||||
register byte* L_AES_Thumb2_td4_c __asm__ ("r6") = (byte*)&L_AES_Thumb2_td4;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -2099,8 +2099,8 @@ void AES_CBC_decrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
register const unsigned char* ks __asm__ ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr __asm__ ("r4") = (int)nr_p;
|
||||
register unsigned char* iv __asm__ ("r5") = (unsigned char*)iv_p;
|
||||
register uint32_t* L_AES_Thumb2_td_ecb_c __asm__ ("r6") = (uint32_t*)L_AES_Thumb2_td_ecb;
|
||||
register unsigned char* L_AES_Thumb2_td4_c __asm__ ("r7") = (unsigned char*)&L_AES_Thumb2_td4;
|
||||
register word32* L_AES_Thumb2_td_ecb_c __asm__ ("r6") = (word32*)L_AES_Thumb2_td_ecb;
|
||||
register byte* L_AES_Thumb2_td4_c __asm__ ("r7") = (byte*)&L_AES_Thumb2_td4;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -2494,7 +2494,7 @@ void AES_CBC_decrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
#endif /* WOLFSSL_AES_DIRECT || WOLFSSL_AES_COUNTER || HAVE_AES_CBC */
|
||||
#endif /* HAVE_AES_DECRYPT */
|
||||
#ifdef HAVE_AESGCM
|
||||
XALIGNED(16) static const uint32_t L_GCM_gmult_len_r[] = {
|
||||
XALIGNED(16) static const word32 L_GCM_gmult_len_r[] = {
|
||||
0x00000000, 0x1c200000, 0x38400000, 0x24600000,
|
||||
0x70800000, 0x6ca00000, 0x48c00000, 0x54e00000,
|
||||
0xe1000000, 0xfd200000, 0xd9400000, 0xc5600000,
|
||||
@ -2514,7 +2514,7 @@ void GCM_gmult_len(unsigned char* x, const unsigned char** m, const unsigned cha
|
||||
register const unsigned char** m __asm__ ("r1") = (const unsigned char**)m_p;
|
||||
register const unsigned char* data __asm__ ("r2") = (const unsigned char*)data_p;
|
||||
register unsigned long len __asm__ ("r3") = (unsigned long)len_p;
|
||||
register uint32_t* L_GCM_gmult_len_r_c __asm__ ("r4") = (uint32_t*)&L_GCM_gmult_len_r;
|
||||
register word32* L_GCM_gmult_len_r_c __asm__ ("r4") = (word32*)&L_GCM_gmult_len_r;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -3089,7 +3089,7 @@ void GCM_gmult_len(unsigned char* x, const unsigned char** m, const unsigned cha
|
||||
);
|
||||
}
|
||||
|
||||
static const uint32_t* L_AES_Thumb2_te_gcm = L_AES_Thumb2_te_data;
|
||||
static const word32* L_AES_Thumb2_te_gcm = L_AES_Thumb2_te_data;
|
||||
void AES_GCM_encrypt(const unsigned char* in, unsigned char* out,
|
||||
unsigned long len, const unsigned char* ks, int nr, unsigned char* ctr);
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
@ -3105,7 +3105,7 @@ void AES_GCM_encrypt(const unsigned char* in, unsigned char* out, unsigned long
|
||||
register const unsigned char* ks __asm__ ("r3") = (const unsigned char*)ks_p;
|
||||
register int nr __asm__ ("r4") = (int)nr_p;
|
||||
register unsigned char* ctr __asm__ ("r5") = (unsigned char*)ctr_p;
|
||||
register uint32_t* L_AES_Thumb2_te_gcm_c __asm__ ("r6") = (uint32_t*)L_AES_Thumb2_te_gcm;
|
||||
register word32* L_AES_Thumb2_te_gcm_c __asm__ ("r6") = (word32*)L_AES_Thumb2_te_gcm;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
@ -76,7 +76,7 @@ void wc_chacha_setiv(word32* x, const byte* iv, word32 counter)
|
||||
);
|
||||
}
|
||||
|
||||
XALIGNED(16) static const uint32_t L_chacha_thumb2_constants[] = {
|
||||
XALIGNED(16) static const word32 L_chacha_thumb2_constants[] = {
|
||||
0x61707865, 0x3120646e, 0x79622d36, 0x6b206574,
|
||||
0x61707865, 0x3320646e, 0x79622d32, 0x6b206574,
|
||||
};
|
||||
@ -91,7 +91,7 @@ void wc_chacha_setkey(word32* x, const byte* key, word32 keySz)
|
||||
register word32* x __asm__ ("r0") = (word32*)x_p;
|
||||
register const byte* key __asm__ ("r1") = (const byte*)key_p;
|
||||
register word32 keySz __asm__ ("r2") = (word32)keySz_p;
|
||||
register uint32_t* L_chacha_thumb2_constants_c __asm__ ("r3") = (uint32_t*)&L_chacha_thumb2_constants;
|
||||
register word32* L_chacha_thumb2_constants_c __asm__ ("r3") = (word32*)&L_chacha_thumb2_constants;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
@ -46,7 +46,7 @@
|
||||
#include <wolfssl/wolfcrypt/wc_kyber.h>
|
||||
|
||||
#ifdef WOLFSSL_WC_KYBER
|
||||
XALIGNED(16) static const uint16_t L_kyber_thumb2_ntt_zetas[] = {
|
||||
XALIGNED(16) static const word16 L_kyber_thumb2_ntt_zetas[] = {
|
||||
0x08ed, 0x0a0b, 0x0b9a, 0x0714, 0x05d5, 0x058e, 0x011f, 0x00ca,
|
||||
0x0c56, 0x026e, 0x0629, 0x00b6, 0x03c2, 0x084f, 0x073f, 0x05bc,
|
||||
0x023d, 0x07d4, 0x0108, 0x017f, 0x09c4, 0x05b2, 0x06bf, 0x0c7f,
|
||||
@ -73,7 +73,7 @@ void kyber_thumb2_ntt(sword16* r)
|
||||
{
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register sword16* r __asm__ ("r0") = (sword16*)r_p;
|
||||
register uint16_t* L_kyber_thumb2_ntt_zetas_c __asm__ ("r1") = (uint16_t*)&L_kyber_thumb2_ntt_zetas;
|
||||
register word16* L_kyber_thumb2_ntt_zetas_c __asm__ ("r1") = (word16*)&L_kyber_thumb2_ntt_zetas;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -1368,7 +1368,7 @@ void kyber_thumb2_ntt(sword16* r)
|
||||
);
|
||||
}
|
||||
|
||||
XALIGNED(16) static const uint16_t L_kyber_thumb2_invntt_zetas_inv[] = {
|
||||
XALIGNED(16) static const word16 L_kyber_thumb2_invntt_zetas_inv[] = {
|
||||
0x06a5, 0x070f, 0x05b4, 0x0943, 0x0922, 0x091d, 0x0134, 0x006c,
|
||||
0x0b23, 0x0366, 0x0356, 0x05e6, 0x09e7, 0x04fe, 0x05fa, 0x04a1,
|
||||
0x067b, 0x04a3, 0x0c25, 0x036a, 0x0537, 0x083f, 0x0088, 0x04bf,
|
||||
@ -1395,7 +1395,7 @@ void kyber_thumb2_invntt(sword16* r)
|
||||
{
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register sword16* r __asm__ ("r0") = (sword16*)r_p;
|
||||
register uint16_t* L_kyber_thumb2_invntt_zetas_inv_c __asm__ ("r1") = (uint16_t*)&L_kyber_thumb2_invntt_zetas_inv;
|
||||
register word16* L_kyber_thumb2_invntt_zetas_inv_c __asm__ ("r1") = (word16*)&L_kyber_thumb2_invntt_zetas_inv;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -3057,7 +3057,7 @@ void kyber_thumb2_invntt(sword16* r)
|
||||
);
|
||||
}
|
||||
|
||||
XALIGNED(16) static const uint16_t L_kyber_thumb2_basemul_mont_zetas[] = {
|
||||
XALIGNED(16) static const word16 L_kyber_thumb2_basemul_mont_zetas[] = {
|
||||
0x08ed, 0x0a0b, 0x0b9a, 0x0714, 0x05d5, 0x058e, 0x011f, 0x00ca,
|
||||
0x0c56, 0x026e, 0x0629, 0x00b6, 0x03c2, 0x084f, 0x073f, 0x05bc,
|
||||
0x023d, 0x07d4, 0x0108, 0x017f, 0x09c4, 0x05b2, 0x06bf, 0x0c7f,
|
||||
@ -3086,7 +3086,7 @@ void kyber_thumb2_basemul_mont(sword16* r, const sword16* a, const sword16* b)
|
||||
register sword16* r __asm__ ("r0") = (sword16*)r_p;
|
||||
register const sword16* a __asm__ ("r1") = (const sword16*)a_p;
|
||||
register const sword16* b __asm__ ("r2") = (const sword16*)b_p;
|
||||
register uint16_t* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r3") = (uint16_t*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
register word16* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r3") = (word16*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -3234,7 +3234,7 @@ void kyber_thumb2_basemul_mont_add(sword16* r, const sword16* a, const sword16*
|
||||
register sword16* r __asm__ ("r0") = (sword16*)r_p;
|
||||
register const sword16* a __asm__ ("r1") = (const sword16*)a_p;
|
||||
register const sword16* b __asm__ ("r2") = (const sword16*)b_p;
|
||||
register uint16_t* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r3") = (uint16_t*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
register word16* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r3") = (word16*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -3392,7 +3392,7 @@ void kyber_thumb2_csubq(sword16* p)
|
||||
{
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register sword16* p __asm__ ("r0") = (sword16*)p_p;
|
||||
register uint16_t* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r1") = (uint16_t*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
register word16* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r1") = (word16*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
@ -3507,7 +3507,7 @@ unsigned int kyber_thumb2_rej_uniform(sword16* p, unsigned int len, const byte*
|
||||
register unsigned int len __asm__ ("r1") = (unsigned int)len_p;
|
||||
register const byte* r __asm__ ("r2") = (const byte*)r_p;
|
||||
register unsigned int rLen __asm__ ("r3") = (unsigned int)rLen_p;
|
||||
register uint16_t* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r4") = (uint16_t*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
register word16* L_kyber_thumb2_basemul_mont_zetas_c __asm__ ("r4") = (word16*)&L_kyber_thumb2_basemul_mont_zetas;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
@ -294,7 +294,7 @@ void poly1305_blocks_thumb2_16(Poly1305* ctx, const byte* m, word32 len, int not
|
||||
);
|
||||
}
|
||||
|
||||
XALIGNED(16) static const uint32_t L_poly1305_thumb2_clamp[] = {
|
||||
XALIGNED(16) static const word32 L_poly1305_thumb2_clamp[] = {
|
||||
0x0fffffff, 0x0ffffffc, 0x0ffffffc, 0x0ffffffc,
|
||||
};
|
||||
|
||||
@ -307,7 +307,7 @@ void poly1305_set_key(Poly1305* ctx, const byte* key)
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register Poly1305* ctx __asm__ ("r0") = (Poly1305*)ctx_p;
|
||||
register const byte* key __asm__ ("r1") = (const byte*)key_p;
|
||||
register uint32_t* L_poly1305_thumb2_clamp_c __asm__ ("r2") = (uint32_t*)&L_poly1305_thumb2_clamp;
|
||||
register word32* L_poly1305_thumb2_clamp_c __asm__ ("r2") = (word32*)&L_poly1305_thumb2_clamp;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
@ -47,7 +47,7 @@
|
||||
#include <wolfssl/wolfcrypt/sha256.h>
|
||||
|
||||
#ifdef WOLFSSL_ARMASM_NO_NEON
|
||||
XALIGNED(16) static const uint32_t L_SHA256_transform_len_k[] = {
|
||||
XALIGNED(16) static const word32 L_SHA256_transform_len_k[] = {
|
||||
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,
|
||||
0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
|
||||
0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
|
||||
@ -77,7 +77,7 @@ void Transform_Sha256_Len(wc_Sha256* sha256, const byte* data, word32 len)
|
||||
register wc_Sha256* sha256 __asm__ ("r0") = (wc_Sha256*)sha256_p;
|
||||
register const byte* data __asm__ ("r1") = (const byte*)data_p;
|
||||
register word32 len __asm__ ("r2") = (word32)len_p;
|
||||
register uint32_t* L_SHA256_transform_len_k_c __asm__ ("r3") = (uint32_t*)&L_SHA256_transform_len_k;
|
||||
register word32* L_SHA256_transform_len_k_c __asm__ ("r3") = (word32*)&L_SHA256_transform_len_k;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
@ -44,7 +44,7 @@
|
||||
#define __volatile__ volatile
|
||||
#endif /* __KEIL__ */
|
||||
#ifdef WOLFSSL_SHA3
|
||||
static const uint64_t L_sha3_thumb2_rt[] = {
|
||||
static const word64 L_sha3_thumb2_rt[] = {
|
||||
0x0000000000000001UL, 0x0000000000008082UL,
|
||||
0x800000000000808aUL, 0x8000000080008000UL,
|
||||
0x000000000000808bUL, 0x0000000080000001UL,
|
||||
@ -69,7 +69,7 @@ void BlockSha3(word64* state)
|
||||
{
|
||||
#ifndef WOLFSSL_NO_VAR_ASSIGN_REG
|
||||
register word64* state __asm__ ("r0") = (word64*)state_p;
|
||||
register uint64_t* L_sha3_thumb2_rt_c __asm__ ("r1") = (uint64_t*)&L_sha3_thumb2_rt;
|
||||
register word64* L_sha3_thumb2_rt_c __asm__ ("r1") = (word64*)&L_sha3_thumb2_rt;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
@ -47,7 +47,7 @@
|
||||
#include <wolfssl/wolfcrypt/sha512.h>
|
||||
|
||||
#ifdef WOLFSSL_ARMASM_NO_NEON
|
||||
static const uint64_t L_SHA512_transform_len_k[] = {
|
||||
static const word64 L_SHA512_transform_len_k[] = {
|
||||
0x428a2f98d728ae22UL, 0x7137449123ef65cdUL,
|
||||
0xb5c0fbcfec4d3b2fUL, 0xe9b5dba58189dbbcUL,
|
||||
0x3956c25bf348b538UL, 0x59f111f1b605d019UL,
|
||||
@ -101,7 +101,7 @@ void Transform_Sha512_Len(wc_Sha512* sha512, const byte* data, word32 len)
|
||||
register wc_Sha512* sha512 __asm__ ("r0") = (wc_Sha512*)sha512_p;
|
||||
register const byte* data __asm__ ("r1") = (const byte*)data_p;
|
||||
register word32 len __asm__ ("r2") = (word32)len_p;
|
||||
register uint64_t* L_SHA512_transform_len_k_c __asm__ ("r3") = (uint64_t*)&L_SHA512_transform_len_k;
|
||||
register word64* L_SHA512_transform_len_k_c __asm__ ("r3") = (word64*)&L_SHA512_transform_len_k;
|
||||
#endif /* !WOLFSSL_NO_VAR_ASSIGN_REG */
|
||||
|
||||
__asm__ __volatile__ (
|
||||
|
@ -71117,7 +71117,7 @@ SP_NOINLINE static void sp_256_mont_sqr_n_8(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P256 curve. */
|
||||
static const uint32_t p256_mod_minus_2[8] = {
|
||||
static const word32 p256_mod_minus_2[8] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0x00000000U,0x00000000U,0x00000000U,
|
||||
0x00000001U,0xffffffffU
|
||||
};
|
||||
@ -77540,7 +77540,7 @@ static void sp_256_mont_mul_order_8(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P256 curve. */
|
||||
static const uint32_t p256_order_minus_2[8] = {
|
||||
static const word32 p256_order_minus_2[8] = {
|
||||
0xfc63254fU,0xf3b9cac2U,0xa7179e84U,0xbce6faadU,0xffffffffU,0xffffffffU,
|
||||
0x00000000U,0xffffffffU
|
||||
};
|
||||
@ -78329,7 +78329,7 @@ static void sp_256_div2_mod_8(sp_digit* r_p, const sp_digit* a_p, const sp_digit
|
||||
}
|
||||
|
||||
#if defined(WOLFSSL_ARM_ARCH) && (WOLFSSL_ARM_ARCH < 7)
|
||||
static const unsigned char L_sp_256_num_bits_8_table[] = {
|
||||
static const byte L_sp_256_num_bits_8_table[] = {
|
||||
0x00, 0x01, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03,
|
||||
0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
|
||||
0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
|
||||
@ -78367,8 +78367,8 @@ static const unsigned char L_sp_256_num_bits_8_table[] = {
|
||||
static int sp_256_num_bits_8(const sp_digit* a_p)
|
||||
{
|
||||
register const sp_digit* a asm ("r0") = (const sp_digit*)a_p;
|
||||
register unsigned char* L_sp_256_num_bits_8_table_c asm ("r1") =
|
||||
(unsigned char*)&L_sp_256_num_bits_8_table;
|
||||
register byte* L_sp_256_num_bits_8_table_c asm ("r1") =
|
||||
(byte*)&L_sp_256_num_bits_8_table;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov lr, %[L_sp_256_num_bits_8_table]\n\t"
|
||||
@ -89961,7 +89961,7 @@ SP_NOINLINE static void sp_384_mont_sqr_n_12(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P384 curve. */
|
||||
static const uint32_t p384_mod_minus_2[12] = {
|
||||
static const word32 p384_mod_minus_2[12] = {
|
||||
0xfffffffdU,0x00000000U,0x00000000U,0xffffffffU,0xfffffffeU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
@ -95463,13 +95463,13 @@ static void sp_384_mont_mul_order_12(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P384 curve. */
|
||||
static const uint32_t p384_order_minus_2[12] = {
|
||||
static const word32 p384_order_minus_2[12] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P384 curve. */
|
||||
static const uint32_t p384_order_low[6] = {
|
||||
static const word32 p384_order_low[6] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -96088,7 +96088,7 @@ static void sp_384_div2_mod_12(sp_digit* r_p, const sp_digit* a_p, const sp_digi
|
||||
}
|
||||
|
||||
#if defined(WOLFSSL_ARM_ARCH) && (WOLFSSL_ARM_ARCH < 7)
|
||||
static const unsigned char L_sp_384_num_bits_12_table[] = {
|
||||
static const byte L_sp_384_num_bits_12_table[] = {
|
||||
0x00, 0x01, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03,
|
||||
0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
|
||||
0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
|
||||
@ -96126,8 +96126,8 @@ static const unsigned char L_sp_384_num_bits_12_table[] = {
|
||||
static int sp_384_num_bits_12(const sp_digit* a_p)
|
||||
{
|
||||
register const sp_digit* a asm ("r0") = (const sp_digit*)a_p;
|
||||
register unsigned char* L_sp_384_num_bits_12_table_c asm ("r1") =
|
||||
(unsigned char*)&L_sp_384_num_bits_12_table;
|
||||
register byte* L_sp_384_num_bits_12_table_c asm ("r1") =
|
||||
(byte*)&L_sp_384_num_bits_12_table;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov lr, %[L_sp_384_num_bits_12_table]\n\t"
|
||||
@ -116954,7 +116954,7 @@ SP_NOINLINE static void sp_521_mont_sqr_n_17(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P521 curve. */
|
||||
static const uint32_t p521_mod_minus_2[17] = {
|
||||
static const word32 p521_mod_minus_2[17] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
@ -123861,14 +123861,14 @@ static void sp_521_mont_mul_order_17(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P521 curve. */
|
||||
static const uint32_t p521_order_minus_2[17] = {
|
||||
static const word32 p521_order_minus_2[17] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P521 curve. */
|
||||
static const uint32_t p521_order_low[9] = {
|
||||
static const word32 p521_order_low[9] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU
|
||||
};
|
||||
@ -124642,7 +124642,7 @@ static void sp_521_div2_mod_17(sp_digit* r_p, const sp_digit* a_p, const sp_digi
|
||||
}
|
||||
|
||||
#if defined(WOLFSSL_ARM_ARCH) && (WOLFSSL_ARM_ARCH < 7)
|
||||
static const unsigned char L_sp_521_num_bits_17_table[] = {
|
||||
static const byte L_sp_521_num_bits_17_table[] = {
|
||||
0x00, 0x01, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03,
|
||||
0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
|
||||
0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
|
||||
@ -124680,8 +124680,8 @@ static const unsigned char L_sp_521_num_bits_17_table[] = {
|
||||
static int sp_521_num_bits_17(const sp_digit* a_p)
|
||||
{
|
||||
register const sp_digit* a asm ("r0") = (const sp_digit*)a_p;
|
||||
register unsigned char* L_sp_521_num_bits_17_table_c asm ("r1") =
|
||||
(unsigned char*)&L_sp_521_num_bits_17_table;
|
||||
register byte* L_sp_521_num_bits_17_table_c asm ("r1") =
|
||||
(byte*)&L_sp_521_num_bits_17_table;
|
||||
|
||||
__asm__ __volatile__ (
|
||||
"mov lr, %[L_sp_521_num_bits_17_table]\n\t"
|
||||
@ -126664,7 +126664,7 @@ int sp_ecc_map_521(mp_int* pX, mp_int* pY, mp_int* pZ)
|
||||
#endif /* WOLFSSL_PUBLIC_ECC_ADD_DBL */
|
||||
#ifdef HAVE_COMP_KEY
|
||||
/* Square root power for the P521 curve. */
|
||||
static const uint32_t p521_sqrt_power[17] = {
|
||||
static const word32 p521_sqrt_power[17] = {
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000080
|
||||
|
@ -22738,7 +22738,7 @@ SP_NOINLINE static void sp_256_mont_sqr_n_4(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P256 curve. */
|
||||
static const uint64_t p256_mod_minus_2[4] = {
|
||||
static const word64 p256_mod_minus_2[4] = {
|
||||
0xfffffffffffffffdU,0x00000000ffffffffU,0x0000000000000000U,
|
||||
0xffffffff00000001U
|
||||
};
|
||||
@ -40519,7 +40519,7 @@ SP_NOINLINE static void sp_256_mont_mul_order_4(sp_digit* r,
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P256 curve. */
|
||||
static const uint64_t p256_order_minus_2[4] = {
|
||||
static const word64 p256_order_minus_2[4] = {
|
||||
0xf3b9cac2fc63254fU,0xbce6faada7179e84U,0xffffffffffffffffU,
|
||||
0xffffffff00000000U
|
||||
};
|
||||
@ -43944,7 +43944,7 @@ SP_NOINLINE static void sp_384_mont_sqr_n_6(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P384 curve. */
|
||||
static const uint64_t p384_mod_minus_2[6] = {
|
||||
static const word64 p384_mod_minus_2[6] = {
|
||||
0x00000000fffffffdU,0xffffffff00000000U,0xfffffffffffffffeU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU
|
||||
};
|
||||
@ -67122,13 +67122,13 @@ static void sp_384_mont_mul_order_6(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P384 curve. */
|
||||
static const uint64_t p384_order_minus_2[6] = {
|
||||
static const word64 p384_order_minus_2[6] = {
|
||||
0xecec196accc52971U,0x581a0db248b0a77aU,0xc7634d81f4372ddfU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P384 curve. */
|
||||
static const uint64_t p384_order_low[3] = {
|
||||
static const word64 p384_order_low[3] = {
|
||||
0xecec196accc52971U,0x581a0db248b0a77aU,0xc7634d81f4372ddfU
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -72112,7 +72112,7 @@ SP_NOINLINE static void sp_521_mont_sqr_n_9(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P521 curve. */
|
||||
static const uint64_t p521_mod_minus_2[9] = {
|
||||
static const word64 p521_mod_minus_2[9] = {
|
||||
0xfffffffffffffffdU,0xffffffffffffffffU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0x00000000000001ffU
|
||||
@ -111996,14 +111996,14 @@ static void sp_521_mont_mul_order_9(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P521 curve. */
|
||||
static const uint64_t p521_order_minus_2[9] = {
|
||||
static const word64 p521_order_minus_2[9] = {
|
||||
0xbb6fb71e91386407U,0x3bb5c9b8899c47aeU,0x7fcc0148f709a5d0U,
|
||||
0x51868783bf2f966bU,0xfffffffffffffffaU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0x00000000000001ffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P521 curve. */
|
||||
static const uint64_t p521_order_low[5] = {
|
||||
static const word64 p521_order_low[5] = {
|
||||
0xbb6fb71e91386407U,0x3bb5c9b8899c47aeU,0x7fcc0148f709a5d0U,
|
||||
0x51868783bf2f966bU,0xfffffffffffffffaU
|
||||
};
|
||||
@ -113493,7 +113493,7 @@ int sp_ecc_map_521(mp_int* pX, mp_int* pY, mp_int* pZ)
|
||||
#endif /* WOLFSSL_PUBLIC_ECC_ADD_DBL */
|
||||
#ifdef HAVE_COMP_KEY
|
||||
/* Square root power for the P521 curve. */
|
||||
static const uint64_t p521_sqrt_power[9] = {
|
||||
static const word64 p521_sqrt_power[9] = {
|
||||
0x0000000000000000,0x0000000000000000,0x0000000000000000,
|
||||
0x0000000000000000,0x0000000000000000,0x0000000000000000,0x0000000000000000,0x0000000000000000,
|
||||
0x0000000000000080
|
||||
|
@ -98858,7 +98858,7 @@ SP_NOINLINE static void sp_256_mont_sqr_n_8(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P256 curve. */
|
||||
static const uint32_t p256_mod_minus_2[8] = {
|
||||
static const word32 p256_mod_minus_2[8] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0x00000000U,0x00000000U,0x00000000U,
|
||||
0x00000001U,0xffffffffU
|
||||
};
|
||||
@ -105321,7 +105321,7 @@ static void sp_256_mont_mul_order_8(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P256 curve. */
|
||||
static const uint32_t p256_order_minus_2[8] = {
|
||||
static const word32 p256_order_minus_2[8] = {
|
||||
0xfc63254fU,0xf3b9cac2U,0xa7179e84U,0xbce6faadU,0xffffffffU,0xffffffffU,
|
||||
0x00000000U,0xffffffffU
|
||||
};
|
||||
@ -110286,7 +110286,7 @@ SP_NOINLINE static void sp_384_mont_sqr_n_12(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P384 curve. */
|
||||
static const uint32_t p384_mod_minus_2[12] = {
|
||||
static const word32 p384_mod_minus_2[12] = {
|
||||
0xfffffffdU,0x00000000U,0x00000000U,0xffffffffU,0xfffffffeU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
@ -116261,13 +116261,13 @@ static void sp_384_mont_mul_order_12(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P384 curve. */
|
||||
static const uint32_t p384_order_minus_2[12] = {
|
||||
static const word32 p384_order_minus_2[12] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P384 curve. */
|
||||
static const uint32_t p384_order_low[6] = {
|
||||
static const word32 p384_order_low[6] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -122551,7 +122551,7 @@ SP_NOINLINE static void sp_521_mont_sqr_n_17(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P521 curve. */
|
||||
static const uint32_t p521_mod_minus_2[17] = {
|
||||
static const word32 p521_mod_minus_2[17] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
@ -132186,14 +132186,14 @@ static void sp_521_mont_mul_order_17(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P521 curve. */
|
||||
static const uint32_t p521_order_minus_2[17] = {
|
||||
static const word32 p521_order_minus_2[17] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P521 curve. */
|
||||
static const uint32_t p521_order_low[9] = {
|
||||
static const word32 p521_order_low[9] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU
|
||||
};
|
||||
@ -136163,7 +136163,7 @@ int sp_ecc_map_521(mp_int* pX, mp_int* pY, mp_int* pZ)
|
||||
#endif /* WOLFSSL_PUBLIC_ECC_ADD_DBL */
|
||||
#ifdef HAVE_COMP_KEY
|
||||
/* Square root power for the P521 curve. */
|
||||
static const uint32_t p521_sqrt_power[17] = {
|
||||
static const word32 p521_sqrt_power[17] = {
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000080
|
||||
|
@ -20945,7 +20945,7 @@ SP_NOINLINE static void sp_256_mont_sqr_n_9(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P256 curve. */
|
||||
static const uint32_t p256_mod_minus_2[8] = {
|
||||
static const word32 p256_mod_minus_2[8] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0x00000000U,0x00000000U,0x00000000U,
|
||||
0x00000001U,0xffffffffU
|
||||
};
|
||||
@ -25416,7 +25416,7 @@ static void sp_256_mont_mul_order_9(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P256 curve. */
|
||||
static const uint32_t p256_order_minus_2[8] = {
|
||||
static const word32 p256_order_minus_2[8] = {
|
||||
0xfc63254fU,0xf3b9cac2U,0xa7179e84U,0xbce6faadU,0xffffffffU,0xffffffffU,
|
||||
0x00000000U,0xffffffffU
|
||||
};
|
||||
@ -28328,7 +28328,7 @@ SP_NOINLINE static void sp_384_mont_sqr_n_15(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P384 curve. */
|
||||
static const uint32_t p384_mod_minus_2[12] = {
|
||||
static const word32 p384_mod_minus_2[12] = {
|
||||
0xfffffffdU,0x00000000U,0x00000000U,0xffffffffU,0xfffffffeU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
@ -33499,13 +33499,13 @@ static void sp_384_mont_mul_order_15(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P384 curve. */
|
||||
static const uint32_t p384_order_minus_2[12] = {
|
||||
static const word32 p384_order_minus_2[12] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P384 curve. */
|
||||
static const uint32_t p384_order_low[6] = {
|
||||
static const word32 p384_order_low[6] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -35976,7 +35976,7 @@ SP_NOINLINE static void sp_521_mont_sqr_n_21(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P521 curve. */
|
||||
static const uint32_t p521_mod_minus_2[17] = {
|
||||
static const word32 p521_mod_minus_2[17] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
@ -41609,14 +41609,14 @@ static void sp_521_mont_mul_order_21(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P521 curve. */
|
||||
static const uint32_t p521_order_minus_2[17] = {
|
||||
static const word32 p521_order_minus_2[17] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P521 curve. */
|
||||
static const uint32_t p521_order_low[9] = {
|
||||
static const word32 p521_order_low[9] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU
|
||||
};
|
||||
@ -43092,7 +43092,7 @@ int sp_ecc_map_521(mp_int* pX, mp_int* pY, mp_int* pZ)
|
||||
#endif /* WOLFSSL_PUBLIC_ECC_ADD_DBL */
|
||||
#ifdef HAVE_COMP_KEY
|
||||
/* Square root power for the P521 curve. */
|
||||
static const uint32_t p521_sqrt_power[17] = {
|
||||
static const word32 p521_sqrt_power[17] = {
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000080
|
||||
|
@ -21914,7 +21914,7 @@ SP_NOINLINE static void sp_256_mont_sqr_n_5(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P256 curve. */
|
||||
static const uint64_t p256_mod_minus_2[4] = {
|
||||
static const word64 p256_mod_minus_2[4] = {
|
||||
0xfffffffffffffffdU,0x00000000ffffffffU,0x0000000000000000U,
|
||||
0xffffffff00000001U
|
||||
};
|
||||
@ -26298,7 +26298,7 @@ static void sp_256_mont_mul_order_5(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P256 curve. */
|
||||
static const uint64_t p256_order_minus_2[4] = {
|
||||
static const word64 p256_order_minus_2[4] = {
|
||||
0xf3b9cac2fc63254fU,0xbce6faada7179e84U,0xffffffffffffffffU,
|
||||
0xffffffff00000000U
|
||||
};
|
||||
@ -28793,7 +28793,7 @@ SP_NOINLINE static void sp_384_mont_sqr_n_7(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P384 curve. */
|
||||
static const uint64_t p384_mod_minus_2[6] = {
|
||||
static const word64 p384_mod_minus_2[6] = {
|
||||
0x00000000fffffffdU,0xffffffff00000000U,0xfffffffffffffffeU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU
|
||||
};
|
||||
@ -33772,13 +33772,13 @@ static void sp_384_mont_mul_order_7(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P384 curve. */
|
||||
static const uint64_t p384_order_minus_2[6] = {
|
||||
static const word64 p384_order_minus_2[6] = {
|
||||
0xecec196accc52971U,0x581a0db248b0a77aU,0xc7634d81f4372ddfU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P384 curve. */
|
||||
static const uint64_t p384_order_low[3] = {
|
||||
static const word64 p384_order_low[3] = {
|
||||
0xecec196accc52971U,0x581a0db248b0a77aU,0xc7634d81f4372ddfU
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -36306,7 +36306,7 @@ SP_NOINLINE static void sp_521_mont_sqr_n_9(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P521 curve. */
|
||||
static const uint64_t p521_mod_minus_2[9] = {
|
||||
static const word64 p521_mod_minus_2[9] = {
|
||||
0xfffffffffffffffdU,0xffffffffffffffffU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0x00000000000001ffU
|
||||
@ -41196,14 +41196,14 @@ static void sp_521_mont_mul_order_9(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P521 curve. */
|
||||
static const uint64_t p521_order_minus_2[9] = {
|
||||
static const word64 p521_order_minus_2[9] = {
|
||||
0xbb6fb71e91386407U,0x3bb5c9b8899c47aeU,0x7fcc0148f709a5d0U,
|
||||
0x51868783bf2f966bU,0xfffffffffffffffaU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0x00000000000001ffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P521 curve. */
|
||||
static const uint64_t p521_order_low[5] = {
|
||||
static const word64 p521_order_low[5] = {
|
||||
0xbb6fb71e91386407U,0x3bb5c9b8899c47aeU,0x7fcc0148f709a5d0U,
|
||||
0x51868783bf2f966bU,0xfffffffffffffffaU
|
||||
};
|
||||
@ -42672,7 +42672,7 @@ int sp_ecc_map_521(mp_int* pX, mp_int* pY, mp_int* pZ)
|
||||
#endif /* WOLFSSL_PUBLIC_ECC_ADD_DBL */
|
||||
#ifdef HAVE_COMP_KEY
|
||||
/* Square root power for the P521 curve. */
|
||||
static const uint64_t p521_sqrt_power[9] = {
|
||||
static const word64 p521_sqrt_power[9] = {
|
||||
0x0000000000000000,0x0000000000000000,0x0000000000000000,
|
||||
0x0000000000000000,0x0000000000000000,0x0000000000000000,0x0000000000000000,0x0000000000000000,
|
||||
0x0000000000000080
|
||||
|
@ -34541,7 +34541,7 @@ SP_NOINLINE static void sp_256_mont_sqr_n_8(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P256 curve. */
|
||||
static const uint32_t p256_mod_minus_2[8] = {
|
||||
static const word32 p256_mod_minus_2[8] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0x00000000U,0x00000000U,0x00000000U,
|
||||
0x00000001U,0xffffffffU
|
||||
};
|
||||
@ -40247,7 +40247,7 @@ static void sp_256_mont_mul_order_8(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P256 curve. */
|
||||
static const uint32_t p256_order_minus_2[8] = {
|
||||
static const word32 p256_order_minus_2[8] = {
|
||||
0xfc63254fU,0xf3b9cac2U,0xa7179e84U,0xbce6faadU,0xffffffffU,0xffffffffU,
|
||||
0x00000000U,0xffffffffU
|
||||
};
|
||||
@ -45134,7 +45134,7 @@ SP_NOINLINE static void sp_384_mont_sqr_n_12(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P384 curve. */
|
||||
static const uint32_t p384_mod_minus_2[12] = {
|
||||
static const word32 p384_mod_minus_2[12] = {
|
||||
0xfffffffdU,0x00000000U,0x00000000U,0xffffffffU,0xfffffffeU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
@ -50341,13 +50341,13 @@ static void sp_384_mont_mul_order_12(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P384 curve. */
|
||||
static const uint32_t p384_order_minus_2[12] = {
|
||||
static const word32 p384_order_minus_2[12] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P384 curve. */
|
||||
static const uint32_t p384_order_low[6] = {
|
||||
static const word32 p384_order_low[6] = {
|
||||
0xccc52971U,0xecec196aU,0x48b0a77aU,0x581a0db2U,0xf4372ddfU,0xc7634d81U
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -57169,7 +57169,7 @@ SP_NOINLINE static void sp_521_mont_sqr_n_17(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P521 curve. */
|
||||
static const uint32_t p521_mod_minus_2[17] = {
|
||||
static const word32 p521_mod_minus_2[17] = {
|
||||
0xfffffffdU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
@ -63601,14 +63601,14 @@ static void sp_521_mont_mul_order_17(sp_digit* r, const sp_digit* a, const sp_di
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P521 curve. */
|
||||
static const uint32_t p521_order_minus_2[17] = {
|
||||
static const word32 p521_order_minus_2[17] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU,0xffffffffU,0xffffffffU,0xffffffffU,
|
||||
0xffffffffU,0xffffffffU,0xffffffffU,0xffffffffU,0x000001ffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P521 curve. */
|
||||
static const uint32_t p521_order_low[9] = {
|
||||
static const word32 p521_order_low[9] = {
|
||||
0x91386407U,0xbb6fb71eU,0x899c47aeU,0x3bb5c9b8U,0xf709a5d0U,0x7fcc0148U,
|
||||
0xbf2f966bU,0x51868783U,0xfffffffaU
|
||||
};
|
||||
@ -65722,7 +65722,7 @@ int sp_ecc_map_521(mp_int* pX, mp_int* pY, mp_int* pZ)
|
||||
#endif /* WOLFSSL_PUBLIC_ECC_ADD_DBL */
|
||||
#ifdef HAVE_COMP_KEY
|
||||
/* Square root power for the P521 curve. */
|
||||
static const uint32_t p521_sqrt_power[17] = {
|
||||
static const word32 p521_sqrt_power[17] = {
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
|
||||
0x00000000,0x00000000,0x00000080
|
||||
|
@ -8438,7 +8438,7 @@ SP_NOINLINE static void sp_256_mont_sqr_n_4(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P256 curve. */
|
||||
static const uint64_t p256_mod_minus_2[4] = {
|
||||
static const word64 p256_mod_minus_2[4] = {
|
||||
0xfffffffffffffffdU,0x00000000ffffffffU,0x0000000000000000U,
|
||||
0xffffffff00000001U
|
||||
};
|
||||
@ -25121,13 +25121,13 @@ static void sp_256_mont_mul_order_4(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P256 curve. */
|
||||
static const uint64_t p256_order_minus_2[4] = {
|
||||
static const word64 p256_order_minus_2[4] = {
|
||||
0xf3b9cac2fc63254fU,0xbce6faada7179e84U,0xffffffffffffffffU,
|
||||
0xffffffff00000000U
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P256 curve. */
|
||||
static const uint64_t p256_order_low[2] = {
|
||||
static const word64 p256_order_low[2] = {
|
||||
0xf3b9cac2fc63254fU,0xbce6faada7179e84U
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -27593,7 +27593,7 @@ SP_NOINLINE static void sp_384_mont_sqr_n_6(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL || HAVE_COMP_KEY */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P384 curve. */
|
||||
static const uint64_t p384_mod_minus_2[6] = {
|
||||
static const word64 p384_mod_minus_2[6] = {
|
||||
0x00000000fffffffdU,0xffffffff00000000U,0xfffffffffffffffeU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU
|
||||
};
|
||||
@ -50156,13 +50156,13 @@ static void sp_384_mont_mul_order_6(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P384 curve. */
|
||||
static const uint64_t p384_order_minus_2[6] = {
|
||||
static const word64 p384_order_minus_2[6] = {
|
||||
0xecec196accc52971U,0x581a0db248b0a77aU,0xc7634d81f4372ddfU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P384 curve. */
|
||||
static const uint64_t p384_order_low[3] = {
|
||||
static const word64 p384_order_low[3] = {
|
||||
0xecec196accc52971U,0x581a0db248b0a77aU,0xc7634d81f4372ddfU
|
||||
};
|
||||
#endif /* WOLFSSL_SP_SMALL */
|
||||
@ -52503,7 +52503,7 @@ SP_NOINLINE static void sp_521_mont_sqr_n_9(sp_digit* r,
|
||||
#endif /* !WOLFSSL_SP_SMALL */
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Mod-2 for the P521 curve. */
|
||||
static const uint64_t p521_mod_minus_2[9] = {
|
||||
static const word64 p521_mod_minus_2[9] = {
|
||||
0xfffffffffffffffdU,0xffffffffffffffffU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0x00000000000001ffU
|
||||
@ -91277,14 +91277,14 @@ static void sp_521_mont_mul_order_9(sp_digit* r, const sp_digit* a, const sp_dig
|
||||
#if defined(HAVE_ECC_SIGN) || (defined(HAVE_ECC_VERIFY) && defined(WOLFSSL_SP_SMALL))
|
||||
#ifdef WOLFSSL_SP_SMALL
|
||||
/* Order-2 for the P521 curve. */
|
||||
static const uint64_t p521_order_minus_2[9] = {
|
||||
static const word64 p521_order_minus_2[9] = {
|
||||
0xbb6fb71e91386407U,0x3bb5c9b8899c47aeU,0x7fcc0148f709a5d0U,
|
||||
0x51868783bf2f966bU,0xfffffffffffffffaU,0xffffffffffffffffU,
|
||||
0xffffffffffffffffU,0xffffffffffffffffU,0x00000000000001ffU
|
||||
};
|
||||
#else
|
||||
/* The low half of the order-2 of the P521 curve. */
|
||||
static const uint64_t p521_order_low[5] = {
|
||||
static const word64 p521_order_low[5] = {
|
||||
0xbb6fb71e91386407U,0x3bb5c9b8899c47aeU,0x7fcc0148f709a5d0U,
|
||||
0x51868783bf2f966bU,0xfffffffffffffffaU
|
||||
};
|
||||
@ -93041,7 +93041,7 @@ int sp_ecc_map_521(mp_int* pX, mp_int* pY, mp_int* pZ)
|
||||
#endif /* WOLFSSL_PUBLIC_ECC_ADD_DBL */
|
||||
#ifdef HAVE_COMP_KEY
|
||||
/* Square root power for the P521 curve. */
|
||||
static const uint64_t p521_sqrt_power[9] = {
|
||||
static const word64 p521_sqrt_power[9] = {
|
||||
0x0000000000000000,0x0000000000000000,0x0000000000000000,
|
||||
0x0000000000000000,0x0000000000000000,0x0000000000000000,0x0000000000000000,0x0000000000000000,
|
||||
0x0000000000000080
|
||||
|
Reference in New Issue
Block a user