Merge pull request #7906 from douzzer/20240827-XFENCE-all-disable-asm-assert

20240827-XFENCE-all-disable-asm-assert
pull/7889/head
Eric Blankenhorn 2024-08-27 14:32:20 -05:00 committed by GitHub
commit d0475def5f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 7 additions and 3 deletions

View File

@ -1264,7 +1264,11 @@ WOLFSSL_ABI WOLFSSL_API int wolfCrypt_Cleanup(void);
#endif
#ifndef WOLFSSL_NO_FENCE
#if defined (__i386__) || defined(__x86_64__)
#ifdef XFENCE
/* use user-supplied XFENCE definition. */
#elif defined(__GNUC__) && (__GNUC__ >= 4)
#define XFENCE() __sync_synchronize()
#elif defined (__i386__) || defined(__x86_64__)
#define XFENCE() XASM_VOLATILE("lfence")
#elif (defined (__arm__) && (__ARM_ARCH > 6)) || defined(__aarch64__)
#define XFENCE() XASM_VOLATILE("isb")
@ -1273,10 +1277,10 @@ WOLFSSL_ABI WOLFSSL_API int wolfCrypt_Cleanup(void);
#elif defined(__PPC__)
#define XFENCE() XASM_VOLATILE("isync; sync")
#else
#define XFENCE() do{}while(0)
#define XFENCE() WC_DO_NOTHING
#endif
#else
#define XFENCE() do{}while(0)
#define XFENCE() WC_DO_NOTHING
#endif