Home | History | Annotate | Download | only in src

Lines Matching defs:runp

797   struct scninfo *runp;
799 for (runp = fileinfo->groups; runp != NULL; runp = runp->next)
800 if (!runp->used)
806 data = elf_getdata (runp->scn, NULL);
813 assert (elf_getdata (runp->scn, data) == NULL);
823 return runp;
1028 struct scninfo *runp = queued->last;
1031 if (SCNINFO_SHDR (runp->shdr).sh_flags & SHF_GROUP)
1034 = find_section_group (runp->fileinfo,
1035 elf_ndxscn (runp
1046 runp = runp->next;
1048 while (runp != queued->last);
1675 struct filename_list *runp;
1678 for (runp = fnames; runp != NULL; runp = runp->next)
1683 curp = runp->real = ld_new_inputfile (runp->name, relocatable_file_type);
1686 curp->group_start = runp->group_start;
1687 curp->group_end = runp->group_end;
1690 curp->as_needed = runp->as_needed;
1702 runp = fnames;
1704 free (runp);
2254 struct usedfiles *runp = ld_state.archives;
2261 elf_end (runp->elf);
2262 runp->elf = NULL;
2264 runp = runp->next;
2266 while (runp != fileinfo->next);
2743 struct symbol *runp = ld_state.from_dso;
2744 assert (runp != NULL);
2750 if (runp->need_copy)
2760 XElf_Off symalign = MAX (SCNINFO_SHDR (runp->file->scninfo[runp->scndx].shdr).sh_addralign, 1);
2767 runp->merge.value = offset;
2769 offset += runp->size;
2771 while ((runp = runp->next) != ld_state.from_dso);
2782 struct symbol *runp = ld_state.common_syms;
2783 assert (runp != NULL);
2791 XElf_Off symalign = runp->merge.value;
2799 runp->merge.value = offset;
2801 offset += runp->size;
2803 while ((runp = runp->next) != ld_state.common_syms);
2824 struct scninfo *runp;
2850 runp = (*scnhead)->last->next;
2857 const char *brfname = basename (runp->fileinfo->rfname);
2862 if (!runp->used
2870 notused = runp;
2872 prevp = runp;
2873 runp = runp->next;
2874 if (runp == notused)
2875 runp = NULL;
2881 struct scninfo *found = runp;
2884 if (prevp != runp)
2885 runp = prevp->next = runp->next;
2890 runp = NULL;
2950 while (runp != NULL);
3189 struct scninfo *runp;
3196 runp = head->last;
3199 assert (runp->grpid != 0);
3201 here_groupidx = runp->fileinfo->scninfo[runp->grpid].outscnndx;
3205 while ((runp = runp->next) != head->last);
3230 elf_strptr (runp->fileinfo->elf,
3231 runp->fileinfo->shstrndx,
3232 SCNINFO_SHDR (runp->shdr).sh_name),
3236 = runp->fileinfo->scninfo[runp->grpid].symbols;
3258 runp = head->last;
3261 assert (runp->grpid != 0);
3263 if (runp->fileinfo->scninfo[runp->grpid].outscnndx == 0)
3264 runp->fileinfo->scninfo[runp->grpid].outscnndx = here_groupidx;
3266 assert (runp->fileinfo->scninfo[runp->grpid].outscnndx
3269 while ((runp = runp->next) != head->last);
3312 struct member *runp;
3335 runp = groups->member->next;
3339 grpdata[cnt++] = runp->scn->scnidx;
3340 while ((runp = runp->next) != groups->member->next);
3753 allocate_version_names (struct usedfiles *runp, struct Ebl_Strtab *dynstrtab)
3756 if (runp->status != opened || runp->verdefdata == NULL)
3767 xelf_getverdef (runp->verdefdata, offset, def);
3769 xelf_getverdaux (runp->verdefdata, offset + def->vd_aux, aux);
3772 assert (def->vd_ndx <= runp->nverdef);
3773 if (def->vd_ndx == 1 || runp->verdefused[def->vd_ndx] != 0)
3775 runp->verdefent[def->vd_ndx]
3776 = ebl_strtabadd (dynstrtab, elf_strptr (runp->elf,
3777 runp->dynsymstridx,
3781 runp->verdefused[def->vd_ndx] = ld_state.nextveridx++;
3795 struct usedfiles *runp, int *ntotal)
3807 if (runp->nverdefused == 0)
3814 for (cnt = 2; cnt <= runp->nverdef; ++cnt)
3815 if (runp->verdefused[cnt] != 0)
3817 assert (runp->verdefent[cnt] != NULL);
3826 vernaux.vna_hash = elf_hash (ebl_string (runp->verdefent[cnt]));
3828 vernaux.vna_other = runp->verdefused[cnt];
3829 vernaux.vna_name = ebl_strtaboffset (runp->verdefent[cnt]);
3841 verneed.vn_file = ebl_strtaboffset (runp->verdefent[1]);
4431 struct scninfo *runp;
4790 runp = head->last->next;
4791 if (runp->symbols == NULL)
4796 head->symbols = runp->symbols;
4798 while ((runp = runp->next) != head->last->next)
4800 if (runp->symbols == NULL)
4809 head->symbols->next_in_scn = runp->symbols->next_in_scn;
4810 runp->symbols->next_in_scn = oldhead;
4811 head->symbols = runp->symbols;
4884 symrunp = runp->symbols;
4891 while ((symrunp = symrunp->next_in_scn) != runp->symbols);
4908 symrunp = runp->symbols;
4952 while ((symrunp = symrunp->next_in_scn) != runp->symbols);
4958 symrunp = runp->symbols;
4965 while ((symrunp = symrunp->next_in_scn) != runp->symbols);
4987 symrunp = runp->symbols;
5031 while ((symrunp = symrunp->next_in_scn) != runp->symbols);
5037 symrunp = runp->symbols;
5044 while ((symrunp = symrunp->next_in_scn) != runp->symbols);
5058 runp = head->last->next;
5072 if (likely (runp->scn != NULL))
5074 data = elf_getdata (runp->scn, NULL);
5082 assert (elf_getdata (runp->scn, data) == NULL);
5087 assert (SCNINFO_SHDR (runp->shdr).sh_type == SHT_NOBITS);
5092 outdata->d_size = SCNINFO_SHDR (runp->shdr).sh_size;
5093 outdata->d_align = SCNINFO_SHDR (runp->shdr).sh_addralign;
5100 runp->offset = offset;
5101 runp->outscnndx = head->scnidx;
5102 runp->allsectionsidx = cnt;
5108 while ((runp = runp->next) != head->last->next);
5428 struct usedfiles *runp;
5430 runp = ld_state.dsofiles->next;
5432 allocate_version_names (runp, dynstrtab);
5433 while ((runp = runp->next) != ld_state.dsofiles->next);
5437 runp = ld_state.needed->next;
5439 allocate_version_names (runp, dynstrtab);
5440 while ((runp = runp->next) != ld_state.needed->next);
5503 struct symbol *runp;
5509 runp = ld_state.from_dso;
5515 if (runp->type == STT_FUNC)
5518 runp->merge.value = plt_idx + 1;
5528 sym->st_size = runp->size;
5529 sym->st_info = XELF_ST_INFO (runp->weak ? STB_WEAK : STB_GLOBAL,
5530 runp->type);
5537 const char *name = runp->name;
5540 if (runp->file->verdefdata != NULL)
5545 (void) xelf_getversym_copy (runp->file->versymdata, runp->symidx,
5552 = ebl_string (runp->file->verdefent[versym]);
5565 runp->outsymidx = idx;
5568 ndxtosym[idx] = runp;
5570 while ((runp = runp->next) != ld_state.from_dso);
5972 struct usedfiles *runp;
5995 runp = ld_state.dsofiles->next;
5998 offset = create_verneed_data (offset, verneeddata, runp,
6000 runp = runp->next;
6002 while (ntotal > 0 && runp != ld_state.dsofiles->next);
6006 runp = ld_state.needed->next;
6009 offset = create_verneed_data (offset, verneeddata, runp,
6011 runp = runp->next;
6013 while (ntotal > 0 && runp != ld_state.needed->next);
6666 struct usedfiles *runp = ld_state.dsofiles->next;
6669 if (runp->used || !runp->as_needed)
6672 if (runp->lazyload)
6678 ebl_strtaboffset (runp->sonameent));
6680 while ((runp = runp->next) != ld_state.dsofiles->next);