Linux 2.6.33-rc8
[linux-2.6/lguest.git] / scripts / kconfig / zconf.hash.c_shipped
blobc1748faf46340525706f0f25f867ffa01c3f9b19
1 /* ANSI-C code produced by gperf version 3.0.3 */
2 /* Command-line: gperf  */
3 /* Computed positions: -k'1,3' */
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
32 struct kconf_id;
34 static struct kconf_id *kconf_id_lookup(register const char *str, register unsigned int len);
35 /* maximum key range = 47, duplicates = 0 */
37 #ifdef __GNUC__
38 __inline
39 #else
40 #ifdef __cplusplus
41 inline
42 #endif
43 #endif
44 static unsigned int
45 kconf_id_hash (register const char *str, register unsigned int len)
47   static unsigned char asso_values[] =
48     {
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, 49, 49, 49,
57       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
58       49, 49, 49, 49, 49, 49, 49, 49, 11,  5,
59        0,  0,  5, 49,  5, 20, 49, 49,  5, 20,
60        5,  0, 30, 49,  0, 15,  0, 10,  0, 49,
61       25, 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, 49, 49, 49, 49,
73       49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
74       49, 49, 49, 49, 49, 49
75     };
76   register int hval = len;
78   switch (hval)
79     {
80       default:
81         hval += asso_values[(unsigned char)str[2]];
82       /*FALLTHROUGH*/
83       case 2:
84       case 1:
85         hval += asso_values[(unsigned char)str[0]];
86         break;
87     }
88   return hval;
91 struct kconf_id_strings_t
92   {
93     char kconf_id_strings_str2[sizeof("on")];
94     char kconf_id_strings_str3[sizeof("env")];
95     char kconf_id_strings_str5[sizeof("endif")];
96     char kconf_id_strings_str6[sizeof("option")];
97     char kconf_id_strings_str7[sizeof("endmenu")];
98     char kconf_id_strings_str8[sizeof("optional")];
99     char kconf_id_strings_str9[sizeof("endchoice")];
100     char kconf_id_strings_str10[sizeof("range")];
101     char kconf_id_strings_str11[sizeof("choice")];
102     char kconf_id_strings_str12[sizeof("default")];
103     char kconf_id_strings_str13[sizeof("def_bool")];
104     char kconf_id_strings_str14[sizeof("help")];
105     char kconf_id_strings_str15[sizeof("bool")];
106     char kconf_id_strings_str16[sizeof("config")];
107     char kconf_id_strings_str17[sizeof("def_tristate")];
108     char kconf_id_strings_str18[sizeof("boolean")];
109     char kconf_id_strings_str19[sizeof("defconfig_list")];
110     char kconf_id_strings_str21[sizeof("string")];
111     char kconf_id_strings_str22[sizeof("if")];
112     char kconf_id_strings_str23[sizeof("int")];
113     char kconf_id_strings_str26[sizeof("select")];
114     char kconf_id_strings_str27[sizeof("modules")];
115     char kconf_id_strings_str28[sizeof("tristate")];
116     char kconf_id_strings_str29[sizeof("menu")];
117     char kconf_id_strings_str31[sizeof("source")];
118     char kconf_id_strings_str32[sizeof("comment")];
119     char kconf_id_strings_str33[sizeof("hex")];
120     char kconf_id_strings_str35[sizeof("menuconfig")];
121     char kconf_id_strings_str36[sizeof("prompt")];
122     char kconf_id_strings_str37[sizeof("depends")];
123     char kconf_id_strings_str48[sizeof("mainmenu")];
124   };
125 static struct kconf_id_strings_t kconf_id_strings_contents =
126   {
127     "on",
128     "env",
129     "endif",
130     "option",
131     "endmenu",
132     "optional",
133     "endchoice",
134     "range",
135     "choice",
136     "default",
137     "def_bool",
138     "help",
139     "bool",
140     "config",
141     "def_tristate",
142     "boolean",
143     "defconfig_list",
144     "string",
145     "if",
146     "int",
147     "select",
148     "modules",
149     "tristate",
150     "menu",
151     "source",
152     "comment",
153     "hex",
154     "menuconfig",
155     "prompt",
156     "depends",
157     "mainmenu"
158   };
159 #define kconf_id_strings ((const char *) &kconf_id_strings_contents)
160 #ifdef __GNUC__
161 __inline
162 #ifdef __GNUC_STDC_INLINE__
163 __attribute__ ((__gnu_inline__))
164 #endif
165 #endif
166 struct kconf_id *
167 kconf_id_lookup (register const char *str, register unsigned int len)
169   enum
170     {
171       TOTAL_KEYWORDS = 31,
172       MIN_WORD_LENGTH = 2,
173       MAX_WORD_LENGTH = 14,
174       MIN_HASH_VALUE = 2,
175       MAX_HASH_VALUE = 48
176     };
178   static struct kconf_id wordlist[] =
179     {
180       {-1}, {-1},
181       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str2,             T_ON,           TF_PARAM},
182       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str3,             T_OPT_ENV,      TF_OPTION},
183       {-1},
184       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str5,             T_ENDIF,        TF_COMMAND},
185       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str6,             T_OPTION,       TF_COMMAND},
186       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str7,     T_ENDMENU,      TF_COMMAND},
187       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str8,     T_OPTIONAL,     TF_COMMAND},
188       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str9,     T_ENDCHOICE,    TF_COMMAND},
189       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str10,            T_RANGE,        TF_COMMAND},
190       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str11,            T_CHOICE,       TF_COMMAND},
191       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str12,    T_DEFAULT,      TF_COMMAND, S_UNKNOWN},
192       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str13,    T_DEFAULT,      TF_COMMAND, S_BOOLEAN},
193       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str14,            T_HELP,         TF_COMMAND},
194       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str15,            T_TYPE,         TF_COMMAND, S_BOOLEAN},
195       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str16,            T_CONFIG,       TF_COMMAND},
196       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str17,    T_DEFAULT,      TF_COMMAND, S_TRISTATE},
197       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18,    T_TYPE,         TF_COMMAND, S_BOOLEAN},
198       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str19,    T_OPT_DEFCONFIG_LIST,TF_OPTION},
199       {-1},
200       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str21,            T_TYPE,         TF_COMMAND, S_STRING},
201       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str22,            T_IF,           TF_COMMAND|TF_PARAM},
202       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str23,            T_TYPE,         TF_COMMAND, S_INT},
203       {-1}, {-1},
204       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str26,            T_SELECT,       TF_COMMAND},
205       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str27,    T_OPT_MODULES,  TF_OPTION},
206       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str28,    T_TYPE,         TF_COMMAND, S_TRISTATE},
207       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str29,            T_MENU,         TF_COMMAND},
208       {-1},
209       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str31,            T_SOURCE,       TF_COMMAND},
210       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str32,    T_COMMENT,      TF_COMMAND},
211       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str33,            T_TYPE,         TF_COMMAND, S_HEX},
212       {-1},
213       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str35,    T_MENUCONFIG,   TF_COMMAND},
214       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36,            T_PROMPT,       TF_COMMAND},
215       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str37,    T_DEPENDS,      TF_COMMAND},
216       {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
217       {-1},
218       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str48,    T_MAINMENU,     TF_COMMAND}
219     };
221   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
222     {
223       register int key = kconf_id_hash (str, len);
225       if (key <= MAX_HASH_VALUE && key >= 0)
226         {
227           register int o = wordlist[key].name;
228           if (o >= 0)
229             {
230               register const char *s = o + kconf_id_strings;
232               if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
233                 return &wordlist[key];
234             }
235         }
236     }
237   return 0;