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

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

#if defined M68K
#if defined(FLUSH_CACHE_BOTH) || (defined(HAVE_DECL_FLUSH_CACHE_BOTH) && HAVE_DECL_FLUSH_CACHE_BOTH)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((FLUSH_CACHE_BOTH) == (3), "FLUSH_CACHE_BOTH != 3");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define FLUSH_CACHE_BOTH 3
#endif
#if defined(FLUSH_CACHE_DATA) || (defined(HAVE_DECL_FLUSH_CACHE_DATA) && HAVE_DECL_FLUSH_CACHE_DATA)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((FLUSH_CACHE_DATA) == (1), "FLUSH_CACHE_DATA != 1");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define FLUSH_CACHE_DATA 1
#endif
#if defined(FLUSH_CACHE_INSN) || (defined(HAVE_DECL_FLUSH_CACHE_INSN) && HAVE_DECL_FLUSH_CACHE_INSN)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((FLUSH_CACHE_INSN) == (2), "FLUSH_CACHE_INSN != 2");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define FLUSH_CACHE_INSN 2
#endif
#elif defined BFIN || defined CSKY
#if defined(BCACHE) || (defined(HAVE_DECL_BCACHE) && HAVE_DECL_BCACHE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((BCACHE) == (3), "BCACHE != 3");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define BCACHE 3
#endif
#if defined(ICACHE) || (defined(HAVE_DECL_ICACHE) && HAVE_DECL_ICACHE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((ICACHE) == (1), "ICACHE != 1");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define ICACHE 1
#endif
#if defined(DCACHE) || (defined(HAVE_DECL_DCACHE) && HAVE_DECL_DCACHE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((DCACHE) == (2), "DCACHE != 2");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define DCACHE 2
#endif
#elif defined SH
#if defined(BCACHE) || (defined(HAVE_DECL_BCACHE) && HAVE_DECL_BCACHE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((BCACHE) == (7), "BCACHE != 7");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define BCACHE 7
#endif
#if defined(ICACHE) || (defined(HAVE_DECL_ICACHE) && HAVE_DECL_ICACHE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((ICACHE) == (4), "ICACHE != 4");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define ICACHE 4
#endif
#if defined(DCACHE) || (defined(HAVE_DECL_DCACHE) && HAVE_DECL_DCACHE)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((DCACHE) == (3), "DCACHE != 3");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define DCACHE 3
#endif
#if defined(CACHEFLUSH_D_INVAL) || (defined(HAVE_DECL_CACHEFLUSH_D_INVAL) && HAVE_DECL_CACHEFLUSH_D_INVAL)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((CACHEFLUSH_D_INVAL) == (1), "CACHEFLUSH_D_INVAL != 1");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define CACHEFLUSH_D_INVAL 1
#endif
#if defined(CACHEFLUSH_D_WB) || (defined(HAVE_DECL_CACHEFLUSH_D_WB) && HAVE_DECL_CACHEFLUSH_D_WB)
DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
static_assert((CACHEFLUSH_D_WB) == (2), "CACHEFLUSH_D_WB != 2");
DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
#else
# define CACHEFLUSH_D_WB 2
#endif
#endif
#undef XLAT_PREV_VAL

#ifndef XLAT_MACROS_ONLY

# ifdef IN_MPERS

#  error static const struct xlat cacheflush_flags in mpers mode

# else

DIAG_PUSH_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE
static const struct xlat_data cacheflush_flags_xdata[] = {
#if defined M68K

 XLAT(FLUSH_CACHE_BOTH),
 #define XLAT_VAL_0 ((unsigned) (FLUSH_CACHE_BOTH))
 #define XLAT_STR_0 STRINGIFY(FLUSH_CACHE_BOTH)
 XLAT(FLUSH_CACHE_DATA),
 #define XLAT_VAL_1 ((unsigned) (FLUSH_CACHE_DATA))
 #define XLAT_STR_1 STRINGIFY(FLUSH_CACHE_DATA)
 XLAT(FLUSH_CACHE_INSN),
 #define XLAT_VAL_2 ((unsigned) (FLUSH_CACHE_INSN))
 #define XLAT_STR_2 STRINGIFY(FLUSH_CACHE_INSN)

#elif defined BFIN || defined CSKY

 XLAT(BCACHE),
 #define XLAT_VAL_3 ((unsigned) (BCACHE))
 #define XLAT_STR_3 STRINGIFY(BCACHE)
 XLAT(ICACHE),
 #define XLAT_VAL_4 ((unsigned) (ICACHE))
 #define XLAT_STR_4 STRINGIFY(ICACHE)
 XLAT(DCACHE),
 #define XLAT_VAL_5 ((unsigned) (DCACHE))
 #define XLAT_STR_5 STRINGIFY(DCACHE)

#elif defined SH

 XLAT(BCACHE),
 #define XLAT_VAL_6 ((unsigned) (BCACHE))
 #define XLAT_STR_6 STRINGIFY(BCACHE)
 XLAT(ICACHE),
 #define XLAT_VAL_7 ((unsigned) (ICACHE))
 #define XLAT_STR_7 STRINGIFY(ICACHE)
 XLAT(DCACHE),
 #define XLAT_VAL_8 ((unsigned) (DCACHE))
 #define XLAT_STR_8 STRINGIFY(DCACHE)
 XLAT(CACHEFLUSH_D_INVAL),
 #define XLAT_VAL_9 ((unsigned) (CACHEFLUSH_D_INVAL))
 #define XLAT_STR_9 STRINGIFY(CACHEFLUSH_D_INVAL)
 XLAT(CACHEFLUSH_D_WB),
 #define XLAT_VAL_10 ((unsigned) (CACHEFLUSH_D_WB))
 #define XLAT_STR_10 STRINGIFY(CACHEFLUSH_D_WB)

#endif
};
static
const struct xlat cacheflush_flags[1] = { {
 .data = cacheflush_flags_xdata,
 .size = ARRAY_SIZE(cacheflush_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
#  ifdef XLAT_VAL_3
  | XLAT_VAL_3
#  endif
#  ifdef XLAT_VAL_4
  | XLAT_VAL_4
#  endif
#  ifdef XLAT_VAL_5
  | XLAT_VAL_5
#  endif
#  ifdef XLAT_VAL_6
  | XLAT_VAL_6
#  endif
#  ifdef XLAT_VAL_7
  | XLAT_VAL_7
#  endif
#  ifdef XLAT_VAL_8
  | XLAT_VAL_8
#  endif
#  ifdef XLAT_VAL_9
  | XLAT_VAL_9
#  endif
#  ifdef XLAT_VAL_10
  | XLAT_VAL_10
#  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
#  ifdef XLAT_STR_3
  + sizeof(XLAT_STR_3)
#  endif
#  ifdef XLAT_STR_4
  + sizeof(XLAT_STR_4)
#  endif
#  ifdef XLAT_STR_5
  + sizeof(XLAT_STR_5)
#  endif
#  ifdef XLAT_STR_6
  + sizeof(XLAT_STR_6)
#  endif
#  ifdef XLAT_STR_7
  + sizeof(XLAT_STR_7)
#  endif
#  ifdef XLAT_STR_8
  + sizeof(XLAT_STR_8)
#  endif
#  ifdef XLAT_STR_9
  + sizeof(XLAT_STR_9)
#  endif
#  ifdef XLAT_STR_10
  + sizeof(XLAT_STR_10)
#  endif
  ,
} };
DIAG_POP_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE

#  undef XLAT_STR_0
#  undef XLAT_VAL_0
#  undef XLAT_STR_1
#  undef XLAT_VAL_1
#  undef XLAT_STR_2
#  undef XLAT_VAL_2
#  undef XLAT_STR_3
#  undef XLAT_VAL_3
#  undef XLAT_STR_4
#  undef XLAT_VAL_4
#  undef XLAT_STR_5
#  undef XLAT_VAL_5
#  undef XLAT_STR_6
#  undef XLAT_VAL_6
#  undef XLAT_STR_7
#  undef XLAT_VAL_7
#  undef XLAT_STR_8
#  undef XLAT_VAL_8
#  undef XLAT_STR_9
#  undef XLAT_VAL_9
#  undef XLAT_STR_10
#  undef XLAT_VAL_10
# endif /* !IN_MPERS */

#endif /* !XLAT_MACROS_ONLY */
