mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-30 10:47:28 +02:00
Merge pull request #3486 from douzzer/refactor-gccish-macros
sha256.c/sha512.c: refactor 4 instances of gccism ({}) to WC_INLINE functions
This commit is contained in:
@ -313,24 +313,27 @@ static int InitSha256(wc_Sha256* sha256)
|
|||||||
static word32 intel_flags;
|
static word32 intel_flags;
|
||||||
static int Transform_Sha256_is_vectorized = 0;
|
static int Transform_Sha256_is_vectorized = 0;
|
||||||
|
|
||||||
#define XTRANSFORM(S, D) ({ \
|
static WC_INLINE int inline_XTRANSFORM(wc_Sha256* S, const byte* D) {
|
||||||
int _ret; \
|
int ret;
|
||||||
if (Transform_Sha256_is_vectorized) \
|
if (Transform_Sha256_is_vectorized)
|
||||||
SAVE_VECTOR_REGISTERS(); \
|
SAVE_VECTOR_REGISTERS();
|
||||||
_ret = (*Transform_Sha256_p)((S),(D)); \
|
ret = (*Transform_Sha256_p)(S, D);
|
||||||
if (Transform_Sha256_is_vectorized) \
|
if (Transform_Sha256_is_vectorized)
|
||||||
RESTORE_VECTOR_REGISTERS(); \
|
RESTORE_VECTOR_REGISTERS();
|
||||||
_ret; \
|
return ret;
|
||||||
})
|
}
|
||||||
#define XTRANSFORM_LEN(S, D, L) ({ \
|
#define XTRANSFORM(...) inline_XTRANSFORM(__VA_ARGS__)
|
||||||
int _ret; \
|
|
||||||
if (Transform_Sha256_is_vectorized) \
|
static WC_INLINE int inline_XTRANSFORM_LEN(wc_Sha256* S, const byte* D, word32 L) {
|
||||||
SAVE_VECTOR_REGISTERS(); \
|
int ret;
|
||||||
_ret = (*Transform_Sha256_Len_p)((S),(D),(L)); \
|
if (Transform_Sha256_is_vectorized)
|
||||||
if (Transform_Sha256_is_vectorized) \
|
SAVE_VECTOR_REGISTERS();
|
||||||
RESTORE_VECTOR_REGISTERS(); \
|
ret = (*Transform_Sha256_Len_p)(S, D, L);
|
||||||
_ret; \
|
if (Transform_Sha256_is_vectorized)
|
||||||
})
|
RESTORE_VECTOR_REGISTERS();
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#define XTRANSFORM_LEN(...) inline_XTRANSFORM_LEN(__VA_ARGS__)
|
||||||
|
|
||||||
static void Sha256_SetTransform(void)
|
static void Sha256_SetTransform(void)
|
||||||
{
|
{
|
||||||
|
@ -338,30 +338,25 @@ static int InitSha512(wc_Sha512* sha512)
|
|||||||
static int transform_check = 0;
|
static int transform_check = 0;
|
||||||
static int intel_flags;
|
static int intel_flags;
|
||||||
static int Transform_Sha512_is_vectorized = 0;
|
static int Transform_Sha512_is_vectorized = 0;
|
||||||
#if 0
|
|
||||||
#define Transform_Sha512(sha512) (*Transform_Sha512_p)(sha512)
|
|
||||||
#define Transform_Sha512_Len(sha512, len) \
|
|
||||||
(*Transform_Sha512_Len_p)(sha512, len)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define Transform_Sha512(sha512) ({ \
|
static WC_INLINE int Transform_Sha512(wc_Sha512 *sha512) {
|
||||||
int _ret; \
|
int ret;
|
||||||
if (Transform_Sha512_is_vectorized) \
|
if (Transform_Sha512_is_vectorized)
|
||||||
SAVE_VECTOR_REGISTERS(); \
|
SAVE_VECTOR_REGISTERS();
|
||||||
_ret = (*Transform_Sha512_p)(sha512); \
|
ret = (*Transform_Sha512_p)(sha512);
|
||||||
if (Transform_Sha512_is_vectorized) \
|
if (Transform_Sha512_is_vectorized)
|
||||||
RESTORE_VECTOR_REGISTERS(); \
|
RESTORE_VECTOR_REGISTERS();
|
||||||
_ret; \
|
return ret;
|
||||||
})
|
}
|
||||||
#define Transform_Sha512_Len(sha512, len) ({ \
|
static WC_INLINE int Transform_Sha512_Len(wc_Sha512 *sha512, word32 len) {
|
||||||
int _ret; \
|
int ret;
|
||||||
if (Transform_Sha512_is_vectorized) \
|
if (Transform_Sha512_is_vectorized)
|
||||||
SAVE_VECTOR_REGISTERS(); \
|
SAVE_VECTOR_REGISTERS();
|
||||||
_ret = (*Transform_Sha512_Len_p)(sha512, len); \
|
ret = (*Transform_Sha512_Len_p)(sha512, len);
|
||||||
if (Transform_Sha512_is_vectorized) \
|
if (Transform_Sha512_is_vectorized)
|
||||||
RESTORE_VECTOR_REGISTERS(); \
|
RESTORE_VECTOR_REGISTERS();
|
||||||
_ret; \
|
return ret;
|
||||||
})
|
}
|
||||||
|
|
||||||
static void Sha512_SetTransform(void)
|
static void Sha512_SetTransform(void)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user