diff --git a/wolfcrypt/src/misc.c b/wolfcrypt/src/misc.c index 99dc2abeb..0dad30033 100644 --- a/wolfcrypt/src/misc.c +++ b/wolfcrypt/src/misc.c @@ -89,6 +89,8 @@ STATIC INLINE word32 ByteReverseWord32(word32 value) #ifdef PPC_INTRINSICS /* PPC: load reverse indexed instruction */ return (word32)__lwbrx(&value,0); +#elif defined(__ICCARM__) + return (word32)__REV(value); #elif defined(KEIL_INTRINSICS) return (word32)__rev(value); #elif defined(FAST_ROTATE) diff --git a/wolfssl/wolfcrypt/settings.h b/wolfssl/wolfcrypt/settings.h index c463711b0..e65f0617b 100644 --- a/wolfssl/wolfcrypt/settings.h +++ b/wolfssl/wolfcrypt/settings.h @@ -938,7 +938,7 @@ static char *fgets(char *buff, int sz, FILE *fp) #define NO_RABBIT #define STM32F2_RNG #define STM32F2_CRYPTO - #ifndef __GNUC__ + #if !defined(__GNUC__) && !defined(__ICCARM__) #define KEIL_INTRINSICS #endif #define NO_OLD_RNGNAME @@ -963,7 +963,7 @@ static char *fgets(char *buff, int sz, FILE *fp) #define STM32F4_RNG #define STM32F4_CRYPTO #define NO_OLD_RNGNAME - #ifndef __GNUC__ + #if !defined(__GNUC__) && !defined(__ICCARM__) #define KEIL_INTRINSICS #endif #ifdef WOLFSSL_STM32_CUBEMX