Lines Matching refs:fdef

442 def_file_free (def_file *fdef)
447 if (!fdef)
449 free (fdef->name);
450 free (fdef->description);
452 if (fdef->section_defs)
454 for (i = 0; i < fdef->num_section_defs; i++)
456 free (fdef->section_defs[i].name);
457 free (fdef->section_defs[i].class);
459 free (fdef->section_defs);
462 for (i = 0; i < fdef->num_exports; i++)
464 if (fdef->exports[i].internal_name != fdef->exports[i].name)
465 free (fdef->exports[i].internal_name);
466 free (fdef->exports[i].name);
467 free (fdef->exports[i].its_name);
469 free (fdef->exports);
471 for (i = 0; i < fdef->num_imports; i++)
473 if (fdef->imports[i].internal_name != fdef->imports[i].name)
474 free (fdef->imports[i].internal_name);
475 free (fdef->imports[i].name);
476 free (fdef->imports[i].its_name);
478 free (fdef->imports);
480 while (fdef->modules)
482 def_file_module *m = fdef->modules;
484 fdef->modules = fdef->modules->next;
488 while (fdef->aligncomms)
490 def_file_aligncomm *c = fdef->aligncomms;
492 fdef->aligncomms = fdef->aligncomms->next;
497 for (ui = 0; ui < fdef->num_exclude_symbols; ui++)
499 free (fdef->exclude_symbols[ui].symbol_name);
501 free (fdef->exclude_symbols);
503 free (fdef);
508 def_file_print (FILE *file, def_file *fdef)
512 fprintf (file, ">>>> def_file at 0x%08x\n", fdef);
513 if (fdef->name)
514 fprintf (file, " name: %s\n", fdef->name ? fdef->name : "(unspecified)");
515 if (fdef->is_dll != -1)
516 fprintf (file, " is dll: %s\n", fdef->is_dll ? "yes" : "no");
517 if (fdef->base_address != (bfd_vma) -1)
519 (uint64_t) fdef->base_address);
520 if (fdef->description)
521 fprintf (file, " description: `%s'\n", fdef->description);
522 if (fdef->stack_reserve != -1)
523 fprintf (file, " stack reserve: 0x%08x\n", fdef->stack_reserve);
524 if (fdef->stack_commit != -1)
525 fprintf (file, " stack commit: 0x%08x\n", fdef->stack_commit);
526 if (fdef->heap_reserve != -1)
527 fprintf (file, " heap reserve: 0x%08x\n", fdef->heap_reserve);
528 if (fdef->heap_commit != -1)
529 fprintf (file, " heap commit: 0x%08x\n", fdef->heap_commit);
531 if (fdef->num_section_defs > 0)
535 for (i = 0; i < fdef->num_section_defs; i++)
538 fdef->section_defs[i].name, fdef->section_defs[i].class);
539 if (fdef->section_defs[i].flag_read)
541 if (fdef->section_defs[i].flag_write)
543 if (fdef->section_defs[i].flag_execute)
545 if (fdef->section_defs[i].flag_shared)
551 if (fdef->num_exports > 0)
555 for (i = 0; i < fdef->num_exports; i++)
558 fdef->exports[i].name, fdef->exports[i].internal_name,
559 fdef->exports[i].ordinal);
560 if (fdef->exports[i].flag_private)
562 if (fdef->exports[i].flag_constant)
564 if (fdef->exports[i].flag_noname)
566 if (fdef->exports[i].flag_data)
572 if (fdef->num_imports > 0)
576 for (i = 0; i < fdef->num_imports; i++)
579 fdef->imports[i].internal_name,
580 fdef->imports[i].module,
581 fdef->imports[i].name,
582 fdef->imports[i].ordinal);
586 if (fdef->version_major != -1)
587 fprintf (file, " version: %d.%d\n", fdef->version_major, fdef->version_minor);
589 fprintf (file, "<<<< def_file at 0x%08x\n", fdef);
678 def_file_add_export (def_file *fdef,
695 pos = find_export_in_list (fdef->exports, fdef->num_exports,
700 return (fdef->exports + pos);
702 if ((unsigned)fdef->num_exports >= fdef->max_exports)
704 fdef->max_exports += SYMBOL_LIST_ARRAY_GROW;
705 fdef->exports = xrealloc (fdef->exports,
706 fdef->max_exports * sizeof (def_file_export));
709 e = fdef->exports + pos;
712 if (pos != (unsigned)fdef->num_exports)
713 memmove (&e[1], e, (sizeof (def_file_export) * (fdef->num_exports - pos)));
720 fdef->num_exports++;
725 def_get_module (def_file *fdef, const char *name)
729 for (s = fdef->modules; s; s = s->next)
737 def_stash_module (def_file *fdef, const char *name)
741 if ((s = def_get_module (fdef, name)) != NULL)
744 s->next = fdef->modules;
745 fdef->modules = s;
845 def_file_add_import (def_file *fdef,
858 pos = find_import_in_list (fdef->imports, fdef->num_imports,
863 return fdef->imports + pos;
865 if ((unsigned)fdef->num_imports >= fdef->max_imports)
867 fdef->max_imports += SYMBOL_LIST_ARRAY_GROW;
868 fdef->imports = xrealloc (fdef->imports,
869 fdef->max_imports * sizeof (def_file_import));
871 i = fdef->imports + pos;
874 if (pos != (unsigned)fdef->num_imports)
875 memmove (i + 1, i, sizeof (def_file_import) * (fdef->num_imports - pos));
877 fill_in_import (i, name, def_stash_module (fdef, module), ordinal,
879 fdef->num_imports++;
885 def_file_add_import_from (def_file *fdef,
899 pos = find_import_in_list (fdef->imports, fdef->num_imports,
904 if (fdef->imports && pos != (unsigned)fdef->num_imports)
906 i = fdef->imports + pos;
911 if ((unsigned)fdef->num_imports + num_imports - 1 >= fdef->max_imports)
913 fdef->max_imports = fdef->num_imports + num_imports +
916 fdef->imports = xrealloc (fdef->imports,
917 fdef->max_imports * sizeof (def_file_import));
919 i = fdef->imports + pos;
922 if (pos != (unsigned)fdef->num_imports)
924 sizeof (def_file_import) * (fdef->num_imports - pos));
930 def_file_add_import_at (def_file *fdef,
938 def_file_import *i = fdef->imports + pos;
940 fill_in_import (i, name, def_stash_module (fdef, module), ordinal,
942 fdef->num_imports++;
1002 def_file_add_exclude_symbol (def_file *fdef, const char *name)
1008 pos = find_exclude_in_list (fdef->exclude_symbols, fdef->num_exclude_symbols,
1013 return (fdef->exclude_symbols + pos);
1015 if (fdef->num_exclude_symbols >= fdef->max_exclude_symbols)
1017 fdef->max_exclude_symbols += SYMBOL_LIST_ARRAY_GROW;
1018 fdef->exclude_symbols = xrealloc (fdef->exclude_symbols,
1019 fdef->max_exclude_symbols * sizeof (def_file_exclude_symbol));
1022 e = fdef->exclude_symbols + pos;
1025 if (pos != fdef->num_exclude_symbols)
1026 memmove (&e[1], e, (sizeof (def_file_exclude_symbol) * (fdef->num_exclude_symbols - pos)));
1030 fdef->num_exclude_symbols++;