# define LAUNDER(x) \
({ __typeof__(x) _y; __asm__("" : "=g"(_y) : "0"(x)); _y; })
# define ADMIRE(x) \
- ({ __asm__("" : : "g"(x)); })
+ ({ __asm__("" :: "g"(x)); })
# define ADMIRE_BUF(p, sz) \
- ({ __asm__("" : : "g"(p), "g"(sz)); })
-# define RELAX do __asm__ __volatile__("" ::: "memory"); while (0)
+ ({ __asm__("" :: "m"(*(unsigned char *)p), "g"(sz) : "memory"); })
+# define RELAX do __asm__(""); while (0)
#endif
#if CLANG_VERSION_P(3, 3)