From 8dad07f692963750d6fc8125b04ff66ea2c3606a Mon Sep 17 00:00:00 2001 From: Amaury Chamayou Date: Thu, 21 May 2020 17:04:12 +0100 Subject: [PATCH] Make up for the lack of intrinsic headers in Open Enclave (#195) --- src/aal/aal_x86_sgx.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/aal/aal_x86_sgx.h b/src/aal/aal_x86_sgx.h index 9aa87c3..3d9a467 100644 --- a/src/aal/aal_x86_sgx.h +++ b/src/aal/aal_x86_sgx.h @@ -3,8 +3,6 @@ #ifdef _MSC_VER # include # include -#else -# include #endif #if defined(__amd64__) || defined(__x86_64__) || defined(_M_X64) || \ @@ -34,7 +32,11 @@ namespace snmalloc */ static inline void pause() { +#ifdef _MSC_VER _mm_pause(); +#else + asm volatile("pause"); +#endif } /** @@ -42,7 +44,11 @@ namespace snmalloc */ static inline void prefetch(void* ptr) { +#ifdef _MSC_VER _mm_prefetch(reinterpret_cast(ptr), _MM_HINT_T0); +#else + asm volatile("prefetcht0 %0" ::"m"(ptr)); +#endif } /**