scripts/config: sync with linux upstream
[oweals/openwrt.git] / scripts / config / zconf.hash.c_shipped
1 /* ANSI-C code produced by gperf version 3.0.3 */
2 /* Command-line: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/gperf  */
3 /* Computed positions: -k'1,3' */
4
5 #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
6       && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
7       && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
8       && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
9       && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
10       && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
11       && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
12       && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
13       && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
14       && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
15       && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
16       && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
17       && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
18       && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
19       && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
20       && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
21       && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
22       && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
23       && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
24       && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
25       && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
26       && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
27       && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
28 /* The character set is not based on ISO-646.  */
29 #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
30 #endif
31
32 struct kconf_id;
33 /* maximum key range = 47, duplicates = 0 */
34
35 #ifdef __GNUC__
36 __inline
37 #else
38 #ifdef __cplusplus
39 inline
40 #endif
41 #endif
42 static unsigned int
43 kconf_id_hash (register const char *str, register unsigned int len)
44 {
45   static unsigned char asso_values[] =
46     {
47       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
48       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
49       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
50       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
51       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
52       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
53       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
54       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
55       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
56       49, 49, 49, 49, 49, 49, 49, 20, 40,  5,
57        0,  0,  5, 49,  5, 20, 49, 49,  5, 20,
58        5,  0, 35, 49,  0, 15,  0, 10, 15, 49,
59       25, 49, 49, 49, 49, 49, 49, 49, 49, 49,
60       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
61       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
62       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
63       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
64       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
65       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
66       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
67       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
68       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
69       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
70       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
71       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
72       49, 49, 49, 49, 49, 49
73     };
74   register unsigned int hval = len;
75
76   switch (hval)
77     {
78       default:
79         hval += asso_values[(unsigned char)str[2]];
80       /*FALLTHROUGH*/
81       case 2:
82       case 1:
83         hval += asso_values[(unsigned char)str[0]];
84         break;
85     }
86   return hval;
87 }
88
89 struct kconf_id_strings_t
90   {
91     char kconf_id_strings_str2[sizeof("on")];
92     char kconf_id_strings_str5[sizeof("endif")];
93     char kconf_id_strings_str6[sizeof("option")];
94     char kconf_id_strings_str7[sizeof("endmenu")];
95     char kconf_id_strings_str8[sizeof("optional")];
96     char kconf_id_strings_str9[sizeof("endchoice")];
97     char kconf_id_strings_str10[sizeof("range")];
98     char kconf_id_strings_str11[sizeof("choice")];
99     char kconf_id_strings_str12[sizeof("default")];
100     char kconf_id_strings_str13[sizeof("def_bool")];
101     char kconf_id_strings_str14[sizeof("help")];
102     char kconf_id_strings_str16[sizeof("config")];
103     char kconf_id_strings_str17[sizeof("def_tristate")];
104     char kconf_id_strings_str18[sizeof("env")];
105     char kconf_id_strings_str19[sizeof("defconfig_list")];
106     char kconf_id_strings_str20[sizeof("reset")];
107     char kconf_id_strings_str21[sizeof("string")];
108     char kconf_id_strings_str22[sizeof("if")];
109     char kconf_id_strings_str23[sizeof("int")];
110     char kconf_id_strings_str26[sizeof("select")];
111     char kconf_id_strings_str27[sizeof("modules")];
112     char kconf_id_strings_str28[sizeof("tristate")];
113     char kconf_id_strings_str29[sizeof("menu")];
114     char kconf_id_strings_str31[sizeof("source")];
115     char kconf_id_strings_str32[sizeof("comment")];
116     char kconf_id_strings_str33[sizeof("hex")];
117     char kconf_id_strings_str35[sizeof("menuconfig")];
118     char kconf_id_strings_str37[sizeof("visible")];
119     char kconf_id_strings_str38[sizeof("allnoconfig_y")];
120     char kconf_id_strings_str41[sizeof("prompt")];
121     char kconf_id_strings_str42[sizeof("depends")];
122     char kconf_id_strings_str44[sizeof("bool")];
123     char kconf_id_strings_str47[sizeof("boolean")];
124     char kconf_id_strings_str48[sizeof("mainmenu")];
125   };
126 static struct kconf_id_strings_t kconf_id_strings_contents =
127   {
128     "on",
129     "endif",
130     "option",
131     "endmenu",
132     "optional",
133     "endchoice",
134     "range",
135     "choice",
136     "default",
137     "def_bool",
138     "help",
139     "config",
140     "def_tristate",
141     "env",
142     "defconfig_list",
143     "reset",
144     "string",
145     "if",
146     "int",
147     "select",
148     "modules",
149     "tristate",
150     "menu",
151     "source",
152     "comment",
153     "hex",
154     "menuconfig",
155     "visible",
156     "allnoconfig_y",
157     "prompt",
158     "depends",
159     "bool",
160     "boolean",
161     "mainmenu"
162   };
163 #define kconf_id_strings ((const char *) &kconf_id_strings_contents)
164 struct kconf_id *
165 kconf_id_lookup (register const char *str, register unsigned int len)
166 {
167   enum
168     {
169       TOTAL_KEYWORDS = 34,
170       MIN_WORD_LENGTH = 2,
171       MAX_WORD_LENGTH = 14,
172       MIN_HASH_VALUE = 2,
173       MAX_HASH_VALUE = 48
174     };
175
176   static struct kconf_id wordlist[] =
177     {
178       {-1}, {-1},
179       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str2),              T_ON,           TF_PARAM},
180       {-1}, {-1},
181       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str5),              T_ENDIF,        TF_COMMAND},
182       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str6),              T_OPTION,       TF_COMMAND},
183       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str7),      T_ENDMENU,      TF_COMMAND},
184       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str8),      T_OPTIONAL,     TF_COMMAND},
185       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str9),      T_ENDCHOICE,    TF_COMMAND},
186       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str10),             T_RANGE,        TF_COMMAND},
187       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str11),             T_CHOICE,       TF_COMMAND},
188       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str12),     T_DEFAULT,      TF_COMMAND, S_UNKNOWN},
189       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str13),     T_DEFAULT,      TF_COMMAND, S_BOOLEAN},
190       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str14),             T_HELP,         TF_COMMAND},
191       {-1},
192       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str16),             T_CONFIG,       TF_COMMAND},
193       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str17),     T_DEFAULT,      TF_COMMAND, S_TRISTATE},
194       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str18),             T_OPT_ENV,      TF_OPTION},
195       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str19),     T_OPT_DEFCONFIG_LIST,TF_OPTION},
196       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str20),             T_RESET,        TF_COMMAND},
197       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str21),             T_TYPE,         TF_COMMAND, S_STRING},
198       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str22),             T_IF,           TF_COMMAND|TF_PARAM},
199       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str23),             T_TYPE,         TF_COMMAND, S_INT},
200       {-1}, {-1},
201       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str26),             T_SELECT,       TF_COMMAND},
202       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str27),     T_OPT_MODULES,  TF_OPTION},
203       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str28),     T_TYPE,         TF_COMMAND, S_TRISTATE},
204       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str29),             T_MENU,         TF_COMMAND},
205       {-1},
206       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str31),             T_SOURCE,       TF_COMMAND},
207       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str32),     T_COMMENT,      TF_COMMAND},
208       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str33),             T_TYPE,         TF_COMMAND, S_HEX},
209       {-1},
210       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str35),     T_MENUCONFIG,   TF_COMMAND},
211       {-1},
212       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str37),     T_VISIBLE,      TF_COMMAND},
213       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str38),     T_OPT_ALLNOCONFIG_Y,TF_OPTION},
214       {-1}, {-1},
215       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str41),             T_PROMPT,       TF_COMMAND},
216       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str42),     T_DEPENDS,      TF_COMMAND},
217       {-1},
218       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str44),             T_TYPE,         TF_COMMAND, S_BOOLEAN},
219       {-1}, {-1},
220       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str47),     T_TYPE,         TF_COMMAND, S_BOOLEAN},
221       {offsetof(struct kconf_id_strings_t, kconf_id_strings_str48),     T_MAINMENU,     TF_COMMAND}
222     };
223
224   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
225     {
226       unsigned int key = kconf_id_hash (str, len);
227
228       if (key <= MAX_HASH_VALUE)
229         {
230           register int o = wordlist[key].name;
231           if (o >= 0)
232             {
233               register const char *s = o + kconf_id_strings;
234
235               if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
236                 return &wordlist[key];
237             }
238         }
239     }
240   return 0;
241 }
242