Home | History | Annotate | Download | only in bfd

Lines Matching defs:sinfo

362   struct sec_merge_info *sinfo;
399 for (sinfo = (struct sec_merge_info *) *psinfo; sinfo; sinfo = sinfo->next)
400 if ((secinfo = sinfo->chain)
407 if (sinfo == NULL)
410 sinfo = (struct sec_merge_info *)
412 if (sinfo == NULL)
414 sinfo->next = (struct sec_merge_info *) *psinfo;
415 sinfo->chain = NULL;
416 *psinfo = sinfo;
417 sinfo->htab = sec_merge_init (sec->entsize, (sec->flags & SEC_STRINGS));
418 if (sinfo->htab == NULL)
435 if (sinfo->chain)
437 secinfo->next = sinfo->chain->next;
438 sinfo->chain->next = secinfo;
442 sinfo->chain = secinfo;
445 secinfo->htab = sinfo->htab;
464 record_section (struct sec_merge_info *sinfo,
486 entry = sec_merge_add (sinfo->htab, (char *) p, (unsigned) eltalign,
498 entry = sec_merge_add (sinfo->htab, "",
518 entry = sec_merge_add (sinfo->htab, (char *) p,
532 entry = sec_merge_add (sinfo->htab, (char *) p, 1, secinfo);
541 for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next)
613 merge_strings (struct sec_merge_info *sinfo)
621 amt = sinfo->htab->size * sizeof (struct sec_merge_hash_entry *);
626 for (e = sinfo->htab->first, a = array; e; e = e->next)
631 e->len -= sinfo->htab->entsize;
641 sinfo->htab->size = a - array;
642 if (sinfo->htab->size != 0)
644 qsort (array, (size_t) sinfo->htab->size,
646 (alignment != (unsigned) -1 && alignment > sinfo->htab->entsize
651 e->len += sinfo->htab->entsize;
656 cmp->len += sinfo->htab->entsize;
675 secinfo = sinfo->htab->first->secinfo;
676 for (e = sinfo->htab->first; e; e = e->next)
704 for (a = &sinfo->htab->first, e = *a; e; e = e->next)
728 struct sec_merge_info *sinfo;
730 for (sinfo = (struct sec_merge_info *) xsinfo; sinfo; sinfo = sinfo->next)
734 if (! sinfo->chain)
737 /* Move sinfo->chain to head of the chain, terminate it. */
738 secinfo = sinfo->chain;
739 sinfo->chain = secinfo->next;
743 for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next)
750 else if (! record_section (sinfo, secinfo))
756 if (sinfo->htab->first == NULL)
759 if (sinfo->htab->strings)
760 merge_strings (sinfo);
769 for (e = sinfo->htab->first; e; e = e->next)
789 for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next)
926 struct sec_merge_info *sinfo;
928 for (sinfo = (struct sec_merge_info *) xsinfo; sinfo; sinfo = sinfo->next)
930 bfd_hash_table_free (&sinfo->htab->table);
931 free (sinfo->htab);