/* Generated by ./xlat/gen.sh from ./xlat/sigaltstack_flags.in; do not edit. */

#include "gcc_compat.h"
#include "static_assert.h"

#if defined(SS_ONSTACK) || (defined(HAVE_DECL_SS_ONSTACK) && HAVE_DECL_SS_ONSTACK)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((SS_ONSTACK) == (1), "SS_ONSTACK != 1");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define SS_ONSTACK 1
#endif
#if defined(SS_DISABLE) || (defined(HAVE_DECL_SS_DISABLE) && HAVE_DECL_SS_DISABLE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((SS_DISABLE) == (2), "SS_DISABLE != 2");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define SS_DISABLE 2
#endif
#if defined(SS_AUTODISARM) || (defined(HAVE_DECL_SS_AUTODISARM) && HAVE_DECL_SS_AUTODISARM)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((SS_AUTODISARM) == ((1U << 31)), "SS_AUTODISARM != (1U << 31)");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define SS_AUTODISARM (1U << 31)
#endif

#ifndef XLAT_MACROS_ONLY

# ifdef IN_MPERS

extern const struct xlat sigaltstack_flags[];

# else

static const struct xlat_data sigaltstack_flags_xdata[] = {
 XLAT(SS_ONSTACK),
 #define XLAT_VAL_0 ((unsigned) (SS_ONSTACK))
 #define XLAT_STR_0 STRINGIFY(SS_ONSTACK)
 XLAT(SS_DISABLE),
 #define XLAT_VAL_1 ((unsigned) (SS_DISABLE))
 #define XLAT_STR_1 STRINGIFY(SS_DISABLE)
 XLAT(SS_AUTODISARM),
 #define XLAT_VAL_2 ((unsigned) (SS_AUTODISARM))
 #define XLAT_STR_2 STRINGIFY(SS_AUTODISARM)
};
#  if !(defined HAVE_M32_MPERS || defined HAVE_MX32_MPERS)
static
#  endif
const struct xlat sigaltstack_flags[1] = { {
 .data = sigaltstack_flags_xdata,
 .size = ARRAY_SIZE(sigaltstack_flags_xdata),
 .type = XT_NORMAL,
 .flags_mask = 0
#  ifdef XLAT_VAL_0
  | XLAT_VAL_0
#  endif
#  ifdef XLAT_VAL_1
  | XLAT_VAL_1
#  endif
#  ifdef XLAT_VAL_2
  | XLAT_VAL_2
#  endif
  ,
 .flags_strsz = 0
#  ifdef XLAT_STR_0
  + sizeof(XLAT_STR_0)
#  endif
#  ifdef XLAT_STR_1
  + sizeof(XLAT_STR_1)
#  endif
#  ifdef XLAT_STR_2
  + sizeof(XLAT_STR_2)
#  endif
  ,
} };

#  undef XLAT_STR_0
#  undef XLAT_VAL_0
#  undef XLAT_STR_1
#  undef XLAT_VAL_1
#  undef XLAT_STR_2
#  undef XLAT_VAL_2
# endif /* !IN_MPERS */

#endif /* !XLAT_MACROS_ONLY */
