20 #ifndef GALOIS_SUBSTRATE_COMPILERSPECIFIC_H
21 #define GALOIS_SUBSTRATE_COMPILERSPECIFIC_H
23 #include "galois/config.h"
25 namespace galois::substrate {
27 inline static void asmPause() {
28 #if defined(__i386__) || defined(__amd64__)
30 asm volatile(
"pause");
34 inline static void compilerBarrier() {
asm volatile(
"" :::
"memory"); }
39 #if defined(__INTEL_COMPILER)
40 #define GALOIS_ATTRIBUTE_NOINLINE __attribute__((noinline))
42 #elif defined(__GNUC__)
43 #define GALOIS_ATTRIBUTE_NOINLINE __attribute__((noinline))
46 #define GALOIS_ATTRIBUTE_NOINLINE
constexpr int GALOIS_CACHE_LINE_SIZE
Definition: CompilerSpecific.h:37