diff --git a/src/include/storage/barrier.h b/src/include/storage/barrier.h index a54a74c1a3e..5df3ab1a841 100644 --- a/src/include/storage/barrier.h +++ b/src/include/storage/barrier.h @@ -53,8 +53,12 @@ extern slock_t dummy_spinlock; /* * icc defines __GNUC__, but doesn't support gcc's inline asm syntax */ -#include +#if defined(__ia64__) || defined(__ia64) +#define pg_memory_barrier() __mf() +#else if defined(__i386__) || defined(__x86_64__) #define pg_memory_barrier() _mm_mfence() +#endif + #define pg_compiler_barrier() __memory_barrier() #elif defined(__GNUC__)