1 #ifndef ARCH_SPARC64_H 2 #define ARCH_SPARC64_H 3 4 #define FIO_ARCH (arch_sparc64) 5 6 #define nop do { } while (0) 7 8 #define membar_safe(type) \ 9 do { __asm__ __volatile__("ba,pt %%xcc, 1f\n\t" \ 10 " membar " type "\n" \ 11 "1:\n" \ 12 : : : "memory"); \ 13 } while (0) 14 15 #define read_barrier() membar_safe("#LoadLoad") 16 #define write_barrier() membar_safe("#StoreStore") 17 18 #endif 19