namespace folly {
+inline void asm_volatile_memory() {
+#if defined(__clang__) || defined(__GNUC__)
+ asm volatile("" : : : "memory");
+#elif defined(_MSC_VER)
+ ::_ReadWriteBarrier();
+#endif
+}
+
inline void asm_volatile_pause() {
#if defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_X64))
::_mm_pause();