Annotation of qemu/roms/seabios/tools/kconfig/zconf.hash.c_shipped, revision 1.1.1.1

1.1       root        1: /* ANSI-C code produced by gperf version 3.0.3 */
                      2: /* Command-line: 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 <[email protected]>."
                     30: #endif
                     31: 
                     32: struct kconf_id;
                     33: 
                     34: static struct kconf_id *kconf_id_lookup(register const char *str, register unsigned int len);
                     35: /* maximum key range = 50, duplicates = 0 */
                     36: 
                     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)
                     46: {
                     47:   static unsigned char asso_values[] =
                     48:     {
                     49:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     50:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     51:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     52:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     53:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     54:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     55:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     56:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     57:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     58:       52, 52, 52, 52, 52, 52, 52, 52, 40,  5,
                     59:        0,  0,  5, 52,  0, 20, 52, 52, 10, 20,
                     60:        5,  0, 35, 52,  0, 30,  0, 15,  0, 52,
                     61:       15, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     62:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     63:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     64:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     65:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     66:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     67:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     68:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     69:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     70:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     71:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     72:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     73:       52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
                     74:       52, 52, 52, 52, 52, 52
                     75:     };
                     76:   register int hval = len;
                     77: 
                     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;
                     89: }
                     90: 
                     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_str16[sizeof("config")];
                    106:     char kconf_id_strings_str17[sizeof("def_tristate")];
                    107:     char kconf_id_strings_str18[sizeof("hex")];
                    108:     char kconf_id_strings_str19[sizeof("defconfig_list")];
                    109:     char kconf_id_strings_str22[sizeof("if")];
                    110:     char kconf_id_strings_str23[sizeof("int")];
                    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_str32[sizeof("comment")];
                    115:     char kconf_id_strings_str35[sizeof("menuconfig")];
                    116:     char kconf_id_strings_str36[sizeof("string")];
                    117:     char kconf_id_strings_str37[sizeof("visible")];
                    118:     char kconf_id_strings_str41[sizeof("prompt")];
                    119:     char kconf_id_strings_str42[sizeof("depends")];
                    120:     char kconf_id_strings_str44[sizeof("bool")];
                    121:     char kconf_id_strings_str46[sizeof("select")];
                    122:     char kconf_id_strings_str47[sizeof("boolean")];
                    123:     char kconf_id_strings_str48[sizeof("mainmenu")];
                    124:     char kconf_id_strings_str51[sizeof("source")];
                    125:   };
                    126: static struct kconf_id_strings_t kconf_id_strings_contents =
                    127:   {
                    128:     "on",
                    129:     "env",
                    130:     "endif",
                    131:     "option",
                    132:     "endmenu",
                    133:     "optional",
                    134:     "endchoice",
                    135:     "range",
                    136:     "choice",
                    137:     "default",
                    138:     "def_bool",
                    139:     "help",
                    140:     "config",
                    141:     "def_tristate",
                    142:     "hex",
                    143:     "defconfig_list",
                    144:     "if",
                    145:     "int",
                    146:     "modules",
                    147:     "tristate",
                    148:     "menu",
                    149:     "comment",
                    150:     "menuconfig",
                    151:     "string",
                    152:     "visible",
                    153:     "prompt",
                    154:     "depends",
                    155:     "bool",
                    156:     "select",
                    157:     "boolean",
                    158:     "mainmenu",
                    159:     "source"
                    160:   };
                    161: #define kconf_id_strings ((const char *) &kconf_id_strings_contents)
                    162: #ifdef __GNUC__
                    163: __inline
                    164: #ifdef __GNUC_STDC_INLINE__
                    165: __attribute__ ((__gnu_inline__))
                    166: #endif
                    167: #endif
                    168: struct kconf_id *
                    169: kconf_id_lookup (register const char *str, register unsigned int len)
                    170: {
                    171:   enum
                    172:     {
                    173:       TOTAL_KEYWORDS = 32,
                    174:       MIN_WORD_LENGTH = 2,
                    175:       MAX_WORD_LENGTH = 14,
                    176:       MIN_HASH_VALUE = 2,
                    177:       MAX_HASH_VALUE = 51
                    178:     };
                    179: 
                    180:   static struct kconf_id wordlist[] =
                    181:     {
                    182:       {-1}, {-1},
                    183:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str2,            T_ON,           TF_PARAM},
                    184:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str3,            T_OPT_ENV,      TF_OPTION},
                    185:       {-1},
                    186:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str5,            T_ENDIF,        TF_COMMAND},
                    187:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str6,            T_OPTION,       TF_COMMAND},
                    188:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str7,    T_ENDMENU,      TF_COMMAND},
                    189:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str8,    T_OPTIONAL,     TF_COMMAND},
                    190:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str9,    T_ENDCHOICE,    TF_COMMAND},
                    191:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str10,           T_RANGE,        TF_COMMAND},
                    192:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str11,           T_CHOICE,       TF_COMMAND},
                    193:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str12,   T_DEFAULT,      TF_COMMAND, S_UNKNOWN},
                    194:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str13,   T_DEFAULT,      TF_COMMAND, S_BOOLEAN},
                    195:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str14,           T_HELP,         TF_COMMAND},
                    196:       {-1},
                    197:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str16,           T_CONFIG,       TF_COMMAND},
                    198:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str17,   T_DEFAULT,      TF_COMMAND, S_TRISTATE},
                    199:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18,           T_TYPE,         TF_COMMAND, S_HEX},
                    200:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str19,   T_OPT_DEFCONFIG_LIST,TF_OPTION},
                    201:       {-1}, {-1},
                    202:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str22,           T_IF,           TF_COMMAND|TF_PARAM},
                    203:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str23,           T_TYPE,         TF_COMMAND, S_INT},
                    204:       {-1}, {-1}, {-1},
                    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}, {-1},
                    209:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str32,   T_COMMENT,      TF_COMMAND},
                    210:       {-1}, {-1},
                    211:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str35,   T_MENUCONFIG,   TF_COMMAND},
                    212:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36,           T_TYPE,         TF_COMMAND, S_STRING},
                    213:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str37,   T_VISIBLE,      TF_COMMAND},
                    214:       {-1}, {-1}, {-1},
                    215:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str41,           T_PROMPT,       TF_COMMAND},
                    216:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str42,   T_DEPENDS,      TF_COMMAND},
                    217:       {-1},
                    218:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str44,           T_TYPE,         TF_COMMAND, S_BOOLEAN},
                    219:       {-1},
                    220:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str46,           T_SELECT,       TF_COMMAND},
                    221:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str47,   T_TYPE,         TF_COMMAND, S_BOOLEAN},
                    222:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str48,   T_MAINMENU,     TF_COMMAND},
                    223:       {-1}, {-1},
                    224:       {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str51,           T_SOURCE,       TF_COMMAND}
                    225:     };
                    226: 
                    227:   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
                    228:     {
                    229:       register int key = kconf_id_hash (str, len);
                    230: 
                    231:       if (key <= MAX_HASH_VALUE && key >= 0)
                    232:         {
                    233:           register int o = wordlist[key].name;
                    234:           if (o >= 0)
                    235:             {
                    236:               register const char *s = o + kconf_id_strings;
                    237: 
                    238:               if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
                    239:                 return &wordlist[key];
                    240:             }
                    241:         }
                    242:     }
                    243:   return 0;
                    244: }
                    245: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.