Home | History | Annotate | Download | only in src

Lines Matching refs:oldp

527 			   struct usedfiles *fileinfo, struct symbol *oldp)
530 || (oldp->scndx >= SHN_LORESERVE && oldp->scndx <= SHN_HIRESERVE))
535 size_t oldgrpid = oldp->file->scninfo[oldp->scndx].grpid;
541 assert (SCNINFO_SHDR (oldp->file->scninfo[oldgrpid].shdr).sh_type
545 || ! oldp->file->scninfo[oldgrpid].comdat_group)
549 oldp->file->scninfo[oldgrpid].symbols->name) != 0)
559 struct symbol *oldp)
567 if (XELF_ST_TYPE (sym->st_info) != STT_NOTYPE && oldp->type != STT_NOTYPE
568 && unlikely (oldp->type != XELF_ST_TYPE (sym->st_info)))
575 oldp->name,
576 ebl_symbol_type_name (ld_state.ebl, oldp->type,
578 oldp->file->rfname,
584 && oldp->size != 0
585 && unlikely (oldp->size != sym->st_size))
588 oldp->name, (uint64_t) oldp->size, oldp->file->rfname,
595 struct usedfiles *fileinfo, struct symbol *oldp)
598 bool old_in_dso = FILEINFO_EHDR (oldp->file->ehdr).e_type == ET_DYN;
603 && (! oldp->defined
604 || (shndx != SHN_COMMON && oldp->common && ! new_in_dso)
613 check_type_and_size (sym, fileinfo, oldp);
619 if (! oldp->defined)
623 if (! oldp->weak)
625 CDBL_LIST_DEL (ld_state.unresolved, oldp);
627 else if (oldp->common)
629 CDBL_LIST_DEL (ld_state.common_syms, oldp);
635 && oldp->defined
636 && matching_group_comdat_scn (sym, shndx, fileinfo, oldp))
642 && unlikely (! oldp->common)
643 && oldp->defined
682 oldp->name);
684 oldfile = oldp->file;
685 xelf_getsymshndx (oldfile->symtabdata, oldfile->xndxdata, oldp->symidx,
690 if (oldp->scndx < SHN_LORESERVE || oldp->scndx > SHN_HIRESERVE)
695 scnname = ebl_section_name (ld_state.ebl, oldp->scndx, oldp->scndx,
712 else if (old_in_dso && !new_in_dso && oldp->defined && !oldp->on_dsolist)
714 CDBL_LIST_ADD_REAR (ld_state.from_dso, oldp);
719 if (oldp->type == STT_FUNC)
724 oldp->on_dsolist = 1;
726 else if (oldp->common && shndx == SHN_COMMON)
729 oldp->size = MAX (oldp->size, sym->st_size);
731 oldp->merge.value = MAX (oldp->merge.value, sym->st_value);
740 CDBL_LIST_DEL (ld_state.from_dso, oldp);
743 if (likely (oldp->type == STT_FUNC))
748 oldp->on_dsolist = 0;
752 oldp->size = sym->st_size;
753 oldp->type = XELF_ST_TYPE (sym->st_info);
754 oldp->symidx = symidx;
755 oldp->scndx = shndx;
756 //oldp->symscndx = THESYMSCNDX must be passed;
757 oldp->file = fileinfo;
758 oldp->defined = 1;
759 oldp->in_dso = new_in_dso;
760 oldp->common = shndx == SHN_COMMON;
765 oldp->weak = XELF_ST_BIND (sym->st_info) == STB_WEAK;
778 CDBL_LIST_ADD_REAR (ld_state.from_dso, oldp);
783 if (oldp->type == STT_FUNC)
788 oldp->on_dsolist = 1;
793 oldp->merge.value = sym->st_value;
795 CDBL_LIST_ADD_REAR (ld_state.common_syms, oldp);
1539 struct symbol *oldp = ld_symbol_tab_find (&ld_state.symbol_tab,
1542 if (likely (oldp == NULL))
1604 else if (unlikely (check_definition (sym, shndx, cnt, fileinfo, oldp)
1612 newp = fileinfo->symref[cnt] = oldp;
1800 struct filename_list *oldp;
1803 oldp = fnames;
1805 oldp->next = NULL;
6211 struct scngroup *oldp = groups;
6213 free (oldp);