1 /* Generated by ./src/xlat/gen.sh from ./src/xlat/sg_io_flags.in; do not edit. */
2
3 #include "gcc_compat.h"
4 #include "static_assert.h"
5
6 #if defined(SG_FLAG_DIRECT_IO) || (defined(HAVE_DECL_SG_FLAG_DIRECT_IO) && HAVE_DECL_SG_FLAG_DIRECT_IO)
7 DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
8 static_assert((SG_FLAG_DIRECT_IO) == (1), "SG_FLAG_DIRECT_IO != 1");
9 DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
10 #else
11 # define SG_FLAG_DIRECT_IO 1
12 #endif
13 #if defined(SG_FLAG_UNUSED_LUN_INHIBIT) || (defined(HAVE_DECL_SG_FLAG_UNUSED_LUN_INHIBIT) && HAVE_DECL_SG_FLAG_UNUSED_LUN_INHIBIT)
14 DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
15 static_assert((SG_FLAG_UNUSED_LUN_INHIBIT) == (2), "SG_FLAG_UNUSED_LUN_INHIBIT != 2");
16 DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
17 #else
18 # define SG_FLAG_UNUSED_LUN_INHIBIT 2
19 #endif
20 #if defined(SG_FLAG_MMAP_IO) || (defined(HAVE_DECL_SG_FLAG_MMAP_IO) && HAVE_DECL_SG_FLAG_MMAP_IO)
21 DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
22 static_assert((SG_FLAG_MMAP_IO) == (4), "SG_FLAG_MMAP_IO != 4");
23 DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
24 #else
25 # define SG_FLAG_MMAP_IO 4
26 #endif
27 #if defined(SG_FLAG_NO_DXFER) || (defined(HAVE_DECL_SG_FLAG_NO_DXFER) && HAVE_DECL_SG_FLAG_NO_DXFER)
28 DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
29 static_assert((SG_FLAG_NO_DXFER) == (0x10000), "SG_FLAG_NO_DXFER != 0x10000");
30 DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
31 #else
32 # define SG_FLAG_NO_DXFER 0x10000
33 #endif
34 #if defined(SG_FLAG_Q_AT_TAIL) || (defined(HAVE_DECL_SG_FLAG_Q_AT_TAIL) && HAVE_DECL_SG_FLAG_Q_AT_TAIL)
35 DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
36 static_assert((SG_FLAG_Q_AT_TAIL) == (0x10), "SG_FLAG_Q_AT_TAIL != 0x10");
37 DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
38 #else
39 # define SG_FLAG_Q_AT_TAIL 0x10
40 #endif
41 #if defined(SG_FLAG_Q_AT_HEAD) || (defined(HAVE_DECL_SG_FLAG_Q_AT_HEAD) && HAVE_DECL_SG_FLAG_Q_AT_HEAD)
42 DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE
43 static_assert((SG_FLAG_Q_AT_HEAD) == (0x20), "SG_FLAG_Q_AT_HEAD != 0x20");
44 DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE
45 #else
46 # define SG_FLAG_Q_AT_HEAD 0x20
47 #endif
48 #undef XLAT_PREV_VAL
49
50 #ifndef XLAT_MACROS_ONLY
51
52 # ifdef IN_MPERS
53
54 extern const struct xlat sg_io_flags[];
55
56 # else
57
58 DIAG_PUSH_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE
59 static const struct xlat_data sg_io_flags_xdata[] = {
60 XLAT(SG_FLAG_DIRECT_IO),
61 #define XLAT_VAL_0 ((unsigned) (SG_FLAG_DIRECT_IO))
62 #define XLAT_STR_0 STRINGIFY(SG_FLAG_DIRECT_IO)
63 XLAT(SG_FLAG_UNUSED_LUN_INHIBIT),
64 #define XLAT_VAL_1 ((unsigned) (SG_FLAG_UNUSED_LUN_INHIBIT))
65 #define XLAT_STR_1 STRINGIFY(SG_FLAG_UNUSED_LUN_INHIBIT)
66 XLAT(SG_FLAG_MMAP_IO),
67 #define XLAT_VAL_2 ((unsigned) (SG_FLAG_MMAP_IO))
68 #define XLAT_STR_2 STRINGIFY(SG_FLAG_MMAP_IO)
69 XLAT(SG_FLAG_NO_DXFER),
70 #define XLAT_VAL_3 ((unsigned) (SG_FLAG_NO_DXFER))
71 #define XLAT_STR_3 STRINGIFY(SG_FLAG_NO_DXFER)
72 XLAT(SG_FLAG_Q_AT_TAIL),
73 #define XLAT_VAL_4 ((unsigned) (SG_FLAG_Q_AT_TAIL))
74 #define XLAT_STR_4 STRINGIFY(SG_FLAG_Q_AT_TAIL)
75 XLAT(SG_FLAG_Q_AT_HEAD),
76 #define XLAT_VAL_5 ((unsigned) (SG_FLAG_Q_AT_HEAD))
77 #define XLAT_STR_5 STRINGIFY(SG_FLAG_Q_AT_HEAD)
78 };
79 # if !(defined HAVE_M32_MPERS || defined HAVE_MX32_MPERS)
80 static
81 # endif
82 const struct xlat sg_io_flags[1] = { {
83 .data = sg_io_flags_xdata,
84 .size = ARRAY_SIZE(sg_io_flags_xdata),
85 .type = XT_NORMAL,
86 .flags_mask = 0
87 # ifdef XLAT_VAL_0
88 | XLAT_VAL_0
89 # endif
90 # ifdef XLAT_VAL_1
91 | XLAT_VAL_1
92 # endif
93 # ifdef XLAT_VAL_2
94 | XLAT_VAL_2
95 # endif
96 # ifdef XLAT_VAL_3
97 | XLAT_VAL_3
98 # endif
99 # ifdef XLAT_VAL_4
100 | XLAT_VAL_4
101 # endif
102 # ifdef XLAT_VAL_5
103 | XLAT_VAL_5
104 # endif
105 ,
106 .flags_strsz = 0
107 # ifdef XLAT_STR_0
108 + sizeof(XLAT_STR_0)
109 # endif
110 # ifdef XLAT_STR_1
111 + sizeof(XLAT_STR_1)
112 # endif
113 # ifdef XLAT_STR_2
114 + sizeof(XLAT_STR_2)
115 # endif
116 # ifdef XLAT_STR_3
117 + sizeof(XLAT_STR_3)
118 # endif
119 # ifdef XLAT_STR_4
120 + sizeof(XLAT_STR_4)
121 # endif
122 # ifdef XLAT_STR_5
123 + sizeof(XLAT_STR_5)
124 # endif
125 ,
126 } };
127 DIAG_POP_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE
128
129 # undef XLAT_STR_0
130 # undef XLAT_VAL_0
131 # undef XLAT_STR_1
132 # undef XLAT_VAL_1
133 # undef XLAT_STR_2
134 # undef XLAT_VAL_2
135 # undef XLAT_STR_3
136 # undef XLAT_VAL_3
137 # undef XLAT_STR_4
138 # undef XLAT_VAL_4
139 # undef XLAT_STR_5
140 # undef XLAT_VAL_5
141 # endif /* !IN_MPERS */
142
143 #endif /* !XLAT_MACROS_ONLY */