/* Generated by ./xlat/gen.sh from ./xlat/membarrier_cmds.in; do not edit. */
#if !(defined(MEMBARRIER_CMD_QUERY) || (defined(HAVE_DECL_MEMBARRIER_CMD_QUERY) && HAVE_DECL_MEMBARRIER_CMD_QUERY))
# define MEMBARRIER_CMD_QUERY 0
#endif
#if !(defined(MEMBARRIER_CMD_SHARED) || (defined(HAVE_DECL_MEMBARRIER_CMD_SHARED) && HAVE_DECL_MEMBARRIER_CMD_SHARED))
# define MEMBARRIER_CMD_SHARED 1
#endif
#if !(defined(MEMBARRIER_CMD_PRIVATE_EXPEDITED) || (defined(HAVE_DECL_MEMBARRIER_CMD_PRIVATE_EXPEDITED) && HAVE_DECL_MEMBARRIER_CMD_PRIVATE_EXPEDITED))
# define MEMBARRIER_CMD_PRIVATE_EXPEDITED 8
#endif
#if !(defined(MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED) || (defined(HAVE_DECL_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED) && HAVE_DECL_MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED))
# define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED 16
#endif

#ifdef IN_MPERS

# error static const struct xlat membarrier_cmds in mpers mode

#else

static
const struct xlat membarrier_cmds[] = {
 XLAT(MEMBARRIER_CMD_QUERY),
 XLAT(MEMBARRIER_CMD_SHARED),
 XLAT(MEMBARRIER_CMD_PRIVATE_EXPEDITED),
 XLAT(MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED),
 XLAT_END
};

#endif /* !IN_MPERS */
