blob: d8153f572e404bcae66a67d405959dbc89feb01d [file] [log] [blame]
Sam Ravnborgc40f5642005-12-26 22:53:25 +01001/* ANSI-C code produced by gperf version 3.0.1 */
Linus Torvalds1da177e2005-04-16 15:20:36 -07002/* Command-line: gperf -L ANSI-C -a -C -E -g -H is_reserved_hash -k '1,3,$' -N is_reserved_word -p -t scripts/genksyms/keywords.gperf */
Sam Ravnborgc40f5642005-12-26 22:53:25 +01003
4#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
5 && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
6 && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
7 && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
8 && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
9 && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
10 && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
11 && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
12 && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
13 && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
14 && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
15 && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
16 && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
17 && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
18 && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
19 && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
20 && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
21 && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
22 && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
23 && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
24 && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
25 && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
26 && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
27/* The character set is not based on ISO-646. */
28#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
29#endif
30
31#line 1 "scripts/genksyms/keywords.gperf"
32
33#line 3 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -070034struct resword { const char *name; int token; };
Sam Ravnborgc40f5642005-12-26 22:53:25 +010035/* maximum key range = 68, duplicates = 0 */
Linus Torvalds1da177e2005-04-16 15:20:36 -070036
37#ifdef __GNUC__
38__inline
39#else
40#ifdef __cplusplus
41inline
42#endif
43#endif
44static unsigned int
45is_reserved_hash (register const char *str, register unsigned int len)
46{
47 static const unsigned char asso_values[] =
48 {
Sam Ravnborgc40f5642005-12-26 22:53:25 +010049 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
50 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
51 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
52 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
53 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
54 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -080055 71, 71, 71, 71, 71, 71, 71, 71, 71, 0,
56 71, 71, 71, 71, 71, 71, 35, 71, 71, 71,
57 5, 71, 71, 71, 71, 71, 71, 71, 71, 71,
Sam Ravnborgc40f5642005-12-26 22:53:25 +010058 71, 71, 71, 71, 71, 0, 71, 0, 71, 5,
59 5, 0, 10, 20, 71, 25, 71, 71, 20, 0,
60 20, 30, 25, 71, 10, 5, 0, 20, 15, 71,
61 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
62 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
63 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
64 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
65 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
66 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
67 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
68 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
69 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
70 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
71 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
72 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
73 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
74 71, 71, 71, 71, 71, 71
Linus Torvalds1da177e2005-04-16 15:20:36 -070075 };
76 return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[0]] + asso_values[(unsigned char)str[len - 1]];
77}
78
79#ifdef __GNUC__
80__inline
81#endif
82const struct resword *
83is_reserved_word (register const char *str, register unsigned int len)
84{
85 enum
86 {
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -080087 TOTAL_KEYWORDS = 42,
Linus Torvalds1da177e2005-04-16 15:20:36 -070088 MIN_WORD_LENGTH = 3,
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -080089 MAX_WORD_LENGTH = 24,
Sam Ravnborgc40f5642005-12-26 22:53:25 +010090 MIN_HASH_VALUE = 3,
91 MAX_HASH_VALUE = 70
Linus Torvalds1da177e2005-04-16 15:20:36 -070092 };
93
94 static const struct resword wordlist[] =
95 {
Sam Ravnborgc40f5642005-12-26 22:53:25 +010096 {""}, {""}, {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -080097#line 25 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +010098 {"asm", ASM_KEYW},
99 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800100#line 8 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100101 {"__asm", ASM_KEYW},
102 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800103#line 9 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700104 {"__asm__", ASM_KEYW},
105 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800106#line 22 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700107 {"_restrict", RESTRICT_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800108#line 51 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109 {"__typeof__", TYPEOF_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100110#line 10 "scripts/genksyms/keywords.gperf"
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800111 {"__attribute", ATTRIBUTE_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100112#line 12 "scripts/genksyms/keywords.gperf"
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800113 {"__const", CONST_KEYW},
114#line 11 "scripts/genksyms/keywords.gperf"
115 {"__attribute__", ATTRIBUTE_KEYW},
116#line 13 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700117 {"__const__", CONST_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800118#line 17 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700119 {"__signed__", SIGNED_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800120#line 43 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700121 {"static", STATIC_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100122 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800123#line 16 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124 {"__signed", SIGNED_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800125#line 31 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100126 {"char", CHAR_KEYW},
127 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800128#line 44 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100129 {"struct", STRUCT_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100130#line 23 "scripts/genksyms/keywords.gperf"
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800131 {"__restrict__", RESTRICT_KEYW},
132#line 24 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100133 {"restrict", RESTRICT_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100134#line 34 "scripts/genksyms/keywords.gperf"
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800135 {"enum", ENUM_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100136#line 18 "scripts/genksyms/keywords.gperf"
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800137 {"__volatile", VOLATILE_KEYW},
138#line 35 "scripts/genksyms/keywords.gperf"
139 {"extern", EXTERN_KEYW},
140#line 19 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100141 {"__volatile__", VOLATILE_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800142#line 38 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100143 {"int", INT_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800144#line 7 "scripts/genksyms/keywords.gperf"
145 {"EXPORT_SYMBOL_GPL_FUTURE", EXPORT_SYMBOL_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100146#line 32 "scripts/genksyms/keywords.gperf"
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800147 {"const", CONST_KEYW},
148#line 33 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100149 {"double", DOUBLE_KEYW},
150 {""},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100151#line 14 "scripts/genksyms/keywords.gperf"
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800152 {"__inline", INLINE_KEYW},
153#line 30 "scripts/genksyms/keywords.gperf"
154 {"auto", AUTO_KEYW},
155#line 15 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100156 {"__inline__", INLINE_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800157#line 42 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100158 {"signed", SIGNED_KEYW},
159 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800160#line 47 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161 {"unsigned", UNSIGNED_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100162 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800163#line 41 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100164 {"short", SHORT_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800165#line 50 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100166 {"typeof", TYPEOF_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800167#line 45 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100168 {"typedef", TYPEDEF_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800169#line 49 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100170 {"volatile", VOLATILE_KEYW},
171 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800172#line 36 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100173 {"float", FLOAT_KEYW},
174 {""}, {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800175#line 40 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100176 {"register", REGISTER_KEYW},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800177#line 48 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100178 {"void", VOID_KEYW},
179 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800180#line 37 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100181 {"inline", INLINE_KEYW},
182 {""},
183#line 5 "scripts/genksyms/keywords.gperf"
184 {"EXPORT_SYMBOL", EXPORT_SYMBOL_KEYW},
185 {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800186#line 21 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100187 {"_Bool", BOOL_KEYW},
188 {""},
189#line 6 "scripts/genksyms/keywords.gperf"
190 {"EXPORT_SYMBOL_GPL", EXPORT_SYMBOL_KEYW},
191 {""}, {""}, {""}, {""}, {""}, {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800192#line 39 "scripts/genksyms/keywords.gperf"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700193 {"long", LONG_KEYW},
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100194 {""}, {""}, {""}, {""}, {""},
Greg Kroah-Hartman9f28bb72006-03-20 13:17:13 -0800195#line 46 "scripts/genksyms/keywords.gperf"
Sam Ravnborgc40f5642005-12-26 22:53:25 +0100196 {"union", UNION_KEYW}
Linus Torvalds1da177e2005-04-16 15:20:36 -0700197 };
198
199 if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
200 {
201 register int key = is_reserved_hash (str, len);
202
203 if (key <= MAX_HASH_VALUE && key >= 0)
204 {
205 register const char *s = wordlist[key].name;
206
207 if (*str == *s && !strcmp (str + 1, s + 1))
208 return &wordlist[key];
209 }
210 }
211 return 0;
212}