Lines Matching defs:symbol

2  * Aic7xxx SCSI host adapter firmware assembler symbol table implementation
68 perror("Unable to create new symbol");
74 stop("Unable to strdup symbol name", EX_SOFTWARE);
81 symbol_delete(symbol_t *symbol)
86 key.data = symbol->name;
87 key.size = strlen(symbol->name);
90 switch(symbol->type) {
94 if (symbol->info.rinfo != NULL)
95 free(symbol->info.rinfo);
98 if (symbol->info.ainfo != NULL)
99 free(symbol->info.ainfo);
105 if (symbol->info.finfo != NULL) {
106 symlist_free(&symbol->info.finfo->symrefs);
107 free(symbol->info.finfo);
112 if (symbol->info.cinfo != NULL)
113 free(symbol->info.cinfo);
116 if (symbol->info.linfo != NULL)
117 free(symbol->info.linfo);
123 free(symbol->name);
124 free(symbol);
159 * The semantics of get is to return an uninitialized symbol entry
214 if (strcmp(symname, curnode->symbol->name) == 0)
222 symlist_add(symlist_t *symlist, symbol_t *symbol, int how)
231 newnode->symbol = symbol;
237 switch(symbol->type) {
249 stop("symlist_add: Invalid symbol type for sorting",
257 && (curnode->symbol->type > newnode->symbol->type
258 || (curnode->symbol->type == newnode->symbol->type
259 && (curnode->symbol->info.finfo->value >
260 newnode->symbol->info.finfo->value))))
261 || (!field && (curnode->symbol->info.rinfo->address >
262 newnode->symbol->info.rinfo->address))) {
275 cursymbol = SLIST_NEXT(curnode, links)->symbol;
277 && (cursymbol->type > symbol->type
278 || (cursymbol->type == symbol->type
280 symbol->info.finfo->value))))
283 symbol->info.rinfo->address))) {
378 regnode->symbol->name);
388 lower_name = strdup(regnode->symbol->name);
390 stop("Unable to strdup symbol name", EX_SOFTWARE);
413 num_entries != 0 ? regnode->symbol->name : "NULL",
416 regnode->symbol->name,
417 regnode->symbol->info.rinfo->address);
434 regnode->symbol->name,
435 regnode->symbol->info.rinfo->address);
448 curnode->symbol->name);
450 num_tabs = 3 - (strlen(curnode->symbol->name) + 5) / 8;
455 curnode->symbol->info.finfo->value,
456 curnode->symbol->info.finfo->mask);
538 if (curnode->symbol->dont_generate_debug_code)
541 switch(curnode->symbol->type) {
552 if (curnode->symbol->count == 1)
554 fields = &curnode->symbol->info.rinfo->fields;
582 regnode = SLIST_FIRST(&curnode->symbol->info.finfo->symrefs);
583 regname = regnode->symbol->name;
595 regname = curnode->symbol->info.ainfo->parent->name;
609 switch(curnode->symbol->type) {
614 value = curnode->symbol->info.rinfo->address;
622 parent = curnode->symbol->info.ainfo->parent;
632 value = curnode->symbol->info.finfo->value;
640 stop("symtable_dump: Invalid symbol type "
645 tab_str, curnode->symbol->name, tab_str2,
657 curnode->symbol->name,
658 curnode->symbol->info.cinfo->value);
670 curnode->symbol->name,
671 curnode->symbol->info.cinfo->value);
684 curnode->symbol->name,
685 curnode->symbol->info.linfo->address);