Lines Matching refs:sinfo

346   struct sec_merge_info *sinfo;  in _bfd_add_merge_section()  local
383 for (sinfo = (struct sec_merge_info *) *psinfo; sinfo; sinfo = sinfo->next) in _bfd_add_merge_section()
384 if ((secinfo = sinfo->chain) in _bfd_add_merge_section()
391 if (sinfo == NULL) in _bfd_add_merge_section()
394 sinfo = (struct sec_merge_info *) in _bfd_add_merge_section()
396 if (sinfo == NULL) in _bfd_add_merge_section()
398 sinfo->next = (struct sec_merge_info *) *psinfo; in _bfd_add_merge_section()
399 sinfo->chain = NULL; in _bfd_add_merge_section()
400 *psinfo = sinfo; in _bfd_add_merge_section()
401 sinfo->htab = sec_merge_init (sec->entsize, (sec->flags & SEC_STRINGS)); in _bfd_add_merge_section()
402 if (sinfo->htab == NULL) in _bfd_add_merge_section()
419 if (sinfo->chain) in _bfd_add_merge_section()
421 secinfo->next = sinfo->chain->next; in _bfd_add_merge_section()
422 sinfo->chain->next = secinfo; in _bfd_add_merge_section()
426 sinfo->chain = secinfo; in _bfd_add_merge_section()
429 secinfo->htab = sinfo->htab; in _bfd_add_merge_section()
448 record_section (struct sec_merge_info *sinfo, in record_section() argument
470 entry = sec_merge_add (sinfo->htab, (char *) p, (unsigned) eltalign, in record_section()
482 entry = sec_merge_add (sinfo->htab, "", in record_section()
502 entry = sec_merge_add (sinfo->htab, (char *) p, in record_section()
516 entry = sec_merge_add (sinfo->htab, (char *) p, 1, secinfo); in record_section()
525 for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next) in record_section()
597 merge_strings (struct sec_merge_info *sinfo) in merge_strings() argument
605 amt = sinfo->htab->size * sizeof (struct sec_merge_hash_entry *); in merge_strings()
610 for (e = sinfo->htab->first, a = array; e; e = e->next) in merge_strings()
615 e->len -= sinfo->htab->entsize; in merge_strings()
625 sinfo->htab->size = a - array; in merge_strings()
626 if (sinfo->htab->size != 0) in merge_strings()
628 qsort (array, (size_t) sinfo->htab->size, in merge_strings()
630 (alignment != (unsigned) -1 && alignment > sinfo->htab->entsize in merge_strings()
635 e->len += sinfo->htab->entsize; in merge_strings()
640 cmp->len += sinfo->htab->entsize; in merge_strings()
659 secinfo = sinfo->htab->first->secinfo; in merge_strings()
660 for (e = sinfo->htab->first; e; e = e->next) in merge_strings()
688 for (a = &sinfo->htab->first, e = *a; e; e = e->next) in merge_strings()
712 struct sec_merge_info *sinfo; in _bfd_merge_sections() local
714 for (sinfo = (struct sec_merge_info *) xsinfo; sinfo; sinfo = sinfo->next) in _bfd_merge_sections()
718 if (! sinfo->chain) in _bfd_merge_sections()
722 secinfo = sinfo->chain; in _bfd_merge_sections()
723 sinfo->chain = secinfo->next; in _bfd_merge_sections()
727 for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next) in _bfd_merge_sections()
734 else if (! record_section (sinfo, secinfo)) in _bfd_merge_sections()
740 if (sinfo->htab->first == NULL) in _bfd_merge_sections()
743 if (sinfo->htab->strings) in _bfd_merge_sections()
744 merge_strings (sinfo); in _bfd_merge_sections()
753 for (e = sinfo->htab->first; e; e = e->next) in _bfd_merge_sections()
773 for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next) in _bfd_merge_sections()
893 struct sec_merge_info *sinfo; in _bfd_merge_sections_free() local
895 for (sinfo = (struct sec_merge_info *) xsinfo; sinfo; sinfo = sinfo->next) in _bfd_merge_sections_free()
897 bfd_hash_table_free (&sinfo->htab->table); in _bfd_merge_sections_free()
898 free (sinfo->htab); in _bfd_merge_sections_free()