/illumos-gate/usr/src/cmd/sgs/libld/common/ |
H A D | exit.c | 43 ld_exit(Ofl_desc *ofl) argument 48 if ((ofl->ofl_fd > 0) && ((ofl->ofl_flags1 & FLG_OF1_NONREG) == 0)) 49 (void) unlink(ofl->ofl_name); 54 ld_sup_atexit(ofl, 1); 62 if (ofl->ofl_guideflags & FLG_OFG_ISSUED) 63 ld_eprintf(ofl, ERR_GUIDANCE, MSG_INTL(MSG_GUIDE_SUMMARY)); 136 ld_init_sighandler(Ofl_desc *ofl) argument 141 Ofl = ofl; 155 if (ofl [all...] |
H A D | wrap.c | 81 * ofl - Output file descriptor 87 * On success, updates ofl->wrap_cache with a pointer to the 92 ld_wrap_enter(Ofl_desc *ofl, const char *name) argument 100 if (ofl->ofl_wrap == NULL) { 101 ofl->ofl_wrap = libld_calloc(1, sizeof (*ofl->ofl_wrap)); 102 if (ofl->ofl_wrap == NULL) 104 avl_create(ofl->ofl_wrap, wrap_cmp, sizeof (WrapSymNode), 110 if ((wsnp = avl_find(ofl->ofl_wrap, &wsn, &where)) != NULL) 129 avl_insert(ofl [all...] |
H A D | debug.c | 84 dbg_setup(Ofl_desc *ofl, const char *options, int phase) argument 93 Name = &ofl->ofl_name; 113 ld_eprintf(ofl, ERR_FATAL,
|
H A D | ldentry.c | 54 ld_map_out(Ofl_desc *ofl) argument 63 if (ofl->ofl_flags & FLG_OF_RELOBJ) 82 for (APLIST_TRAVERSE(ofl->ofl_segs, idx1, sgp)) { 118 if (!(ofl->ofl_flags & FLG_OF_RELOBJ)) 133 if (ofl->ofl_flags & FLG_OF_RELOBJ) 140 for (sav = avl_first(&ofl->ofl_symavl); sav; 141 sav = AVL_NEXT(&ofl->ofl_symavl, sav)) { 187 ld_ent_check(Ofl_desc * ofl) argument 199 for (APLIST_TRAVERSE(ofl->ofl_ents, ndx, enp)) { 213 ld_eprintf(ofl, ERR_WARNIN [all...] |
H A D | machsym.sparc.c | 59 Ofl_desc *ofl) 78 ld_eprintf(ofl, ERR_FATAL, 95 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_SYM_INCOMPREG1), 107 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_SYM_MULTINIREG), 115 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_SYM_INCOMPREG2), 127 Ofl_desc *ofl) 137 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_SYM_DIFFTYPE), 139 ld_eprintf(ofl, ERR_NONE, MSG_INTL(MSG_SYM_FILETYPES), 148 return (ld_reg_check_sparc(sdp, nsym, sdp->sd_name, ifl, ofl)); 161 ld_is_regsym_sparc(Ofl_desc *ofl, Ifl_des argument 58 ld_reg_check_sparc(Sym_desc *sdp, Sym *nsym, const char *nname, Ifl_desc *ifl, Ofl_desc *ofl) argument 126 ld_mach_sym_typecheck_sparc(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl) argument 224 ld_reg_find_sparc(Sym *sym, Ofl_desc *ofl) argument 233 ld_reg_enter_sparc(Sym_desc *sdp, Ofl_desc *ofl) argument [all...] |
H A D | sunwmove.c | 36 make_mvsections(Ofl_desc *ofl) argument 47 for (APLIST_TRAVERSE(ofl->ofl_parsyms, idx, sdp)) { 74 if (mv_nums && (ld_make_sunwmove(ofl, mv_nums) == S_ERROR)) 85 if (ld_make_parexpn_data(ofl, size_parexpn, 96 append_move_desc(Ofl_desc *ofl, Sym_desc *sdp, Move *mvp, Is_desc *isp) argument 141 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_MOVE_OVERLAP), 169 ld_process_move(Ofl_desc *ofl) argument 175 for (APLIST_TRAVERSE(ofl->ofl_ismove, idx, isp)) { 180 DBG_CALL(Dbg_move_input(ofl->ofl_lml, ifile->ifl_name)); 184 ld_eprintf(ofl, ERR_FATA [all...] |
H A D | ldlibs.c | 62 compat_YL_YU(Ofl_desc *ofl, char *path, int index) argument 71 DBG_CALL(Dbg_libs_ylu(ofl->ofl_lml, Llibdir, 82 DBG_CALL(Dbg_libs_ylu(ofl->ofl_lml, Ulibdir, 91 process_lib_path(Ofl_desc *ofl, APlist **apl, char *path, Boolean subsflag) argument 104 compat_YL_YU(ofl, dot, i) : dot), 109 compat_YL_YU(ofl, path, i) : path), 120 compat_YL_YU(ofl, dot, i) : dot), 125 compat_YL_YU(ofl, path, i) : path), 138 compat_YL_YU(ofl, path, i) : path), 144 compat_YL_YU(ofl, do 158 ld_add_libdir(Ofl_desc *ofl, const char *path) argument 178 find_lib_name(const char *dir, const char *file, Ofl_desc *ofl, Rej_desc *rej, ofl_flag_t flags) argument 284 ld_find_library(const char *name, Ofl_desc *ofl) argument 371 ld_lib_setup(Ofl_desc *ofl) argument [all...] |
H A D | ldmain.c | 79 ld_eprintf(Ofl_desc *ofl, Error error, const char *format, ...) argument 89 ofl->ofl_flags |= FLG_OF_WARN; 92 if ((ofl->ofl_guideflags & FLG_OFG_ENABLE) == 0) 94 ofl->ofl_guideflags |= FLG_OFG_ISSUED; 95 ofl->ofl_flags |= FLG_OF_WARN; 98 ofl->ofl_flags |= FLG_OF_FATAL; 103 veprintf(ofl->ofl_lml, error, format, args); 148 Ofl_desc *ofl; local 159 if ((ofl = libld_calloc(1, sizeof (Ofl_desc))) == 0) 170 ofl 519 ld_ofl_cleanup(Ofl_desc *ofl) argument [all...] |
H A D | order.c | 153 * ofl - Output file descriptor 169 validate_shf_ordered_dest(Ofl_desc *ofl, Ifl_desc *ifl, Word ndx, argument 247 DBG_CALL(Dbg_sec_order_error(ofl->ofl_lml, ifl, ndx, error)); 271 place_unordered(Ofl_desc *ofl, Is_desc *isp, Place_path_info *path_info) argument 275 return ((uintptr_t)ld_place_section(ofl, isp, path_info, 285 * ofl - Output file descriptor 292 ld_process_ordered(Ofl_desc *ofl, Ifl_desc *ifl, Place_path_info *path_info, argument 317 DBG_CALL(Dbg_sec_order_error(ofl->ofl_lml, ifl, ndx, error)); 318 return (place_unordered(ofl, isp, path_info)); 327 (validate_shf_ordered_dest(ofl, if 389 ld_sec_validate(Ofl_desc *ofl) argument 463 ld_sort_ordered(Ofl_desc *ofl) argument [all...] |
H A D | groups.c | 42 gpavl_loaded(Ofl_desc *ofl, Group_desc *gdp) argument 51 if ((avlt = ofl->ofl_groups) == NULL) { 56 ofl->ofl_groups = avlt; 88 ld_get_group(Ofl_desc *ofl, Is_desc *isp) argument 116 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_ELF_NOGROUPSECT), 163 ld_group_process(Is_desc *gisc, Ofl_desc *ofl) argument 180 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_FIL_INVSHLINK), 186 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_FIL_INVSHENTSIZE), 203 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_FIL_INVSHINFO), 248 if ((ofl [all...] |
H A D | entry.c | 308 * ofl - Output descriptor 315 ld_seg_lookup(Ofl_desc *ofl, const char *name, avl_index_t *where) argument 320 return (avl_find(&ofl->ofl_segs_avl, &sg, where)); 340 ld_ent_lookup(Ofl_desc *ofl, const char *name, avl_index_t *where) argument 345 return (avl_find(&ofl->ofl_ents_avl, &en, where)); 353 ld_ent_setup(Ofl_desc *ofl, Xword segalign) argument 364 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_ELF_LIBELF), 372 avl_create(&ofl->ofl_symavl, &ld_sym_avl_comp, sizeof (Sym_avlnode), 376 avl_create(&ofl->ofl_segs_avl, ofl_segs_avl_cmp, 380 avl_create(&ofl [all...] |
H A D | libs.c | 65 process_member(Ar_mem *amp, const char *name, Sym_desc *sdp, Ofl_desc *ofl) argument 85 ld_eprintf(ofl, ERR_ELF, 94 ld_eprintf(ofl, ERR_ELF, MSG_INTL(MSG_ELF_GETDATA), 108 ld_eprintf(ofl, ERR_ELF, MSG_INTL(MSG_ELF_GETSCN), 113 ld_eprintf(ofl, ERR_ELF, MSG_INTL(MSG_ELF_GETDATA), 187 ld_ar_setup(const char *name, Elf *elf, Ofl_desc *ofl) argument 197 if (ofl->ofl_flags1 & FLG_OF1_ALLEXRT) { 201 ld_eprintf(ofl, ERR_ELF, MSG_INTL(MSG_ELF_GETARSYM), 204 ld_eprintf(ofl, ERR_WARNING, MSG_INTL(MSG_ELF_ARSYM), 229 adp->ad_flags = ofl 321 ar_member_name(const char *name, Elf *arelf, Ofl_desc *ofl) argument 343 ar_member_path(const char *name, const char *arname, Ofl_desc *ofl) argument 378 ar_input(int fd, Ar_desc *adp, Ofl_desc *ofl, Elf *arelf, const char *arpath, Rej_desc *rej) argument 453 ar_extract_bysym(const char *name, int fd, Ar_desc *adp, Ofl_desc *ofl, Boolean *found, Rej_desc *rej) argument 730 ar_extract_all(const char *name, int fd, Ar_desc *adp, Ofl_desc *ofl, Boolean *found, Rej_desc *rej) argument 828 ld_process_archive(const char *name, int fd, Ar_desc *adp, Ofl_desc *ofl) argument [all...] |
H A D | map.c | 76 Ofl_desc *ofl = mf->mf_ofl; local 81 Dbg_cap_mapfile_title(ofl->ofl_lml, mf->mf_lineno); 82 Dbg_cap_val_entry(ofl->ofl_lml, DBG_STATE_CURRENT, CA_SUNW_HW_1, 142 DBG_CALL(Dbg_cap_val_entry(ofl->ofl_lml, DBG_STATE_NEW, type, value, 960 Ofl_desc *ofl = mf->mf_ofl; local 1099 ofl->ofl_flags |= FLG_OF_SYMINFO; 1103 ofl->ofl_flags |= FLG_OF_SYMINFO; 1107 ofl->ofl_flags |= FLG_OF_SYMINFO; 1111 ofl->ofl_flags |= FLG_OF_SYMINFO; 1112 ofl 1218 Ofl_desc *ofl = mf->mf_ofl; local [all...] |
H A D | outfile.c | 78 ld_open_outfile(Ofl_desc * ofl) argument 87 mode = (ofl->ofl_flags & (FLG_OF_EXEC | FLG_OF_SHAROBJ)) 91 if (stat(ofl->ofl_name, &status) == 0) { 99 ofl->ofl_flags1 |= FLG_OF1_NONREG; 126 if ((ofl->ofl_fd = open(ofl->ofl_name, O_RDWR, 131 ld_eprintf(ofl, ERR_FATAL, 133 ofl->ofl_name, strerror(err)); 137 (void) close(ofl->ofl_fd); 140 if ((unlink(ofl 185 pad_outfile(Ofl_desc *ofl) argument 287 create_outsec(Ofl_desc *ofl, Sg_desc *sgp, Os_desc *osp, Word ptype, int shidx, Boolean fixalign) argument 368 ld_create_outfile(Ofl_desc *ofl) argument [all...] |
H A D | resolve.c | 55 sym_null(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, argument 62 Ifl_desc *ifl, Ofl_desc *ofl) 67 if (!(ofl->ofl_flags & FLG_OF_VERBOSE) && (err != ERR_FATAL)) 70 ld_eprintf(ofl, err, MSG_INTL(MSG_SYM_CONFVIS), demangle(sdp->sd_name)); 71 ld_eprintf(ofl, ERR_NONE, MSG_INTL(MSG_SYM_VISTYPES), 76 ld_eprintf(ofl, ERR_NONE, MSG_INTL(MSG_SYM_DEFTAKEN), 120 sym_visibility(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl) argument 189 nsym, ifl, ofl); 192 nsym, ifl, ofl); 202 nsym, ifl, ofl); 61 sym_visibility_diag(Error err, Sym_desc *sdp, Sym *osym, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl) argument 268 sym_typecheck(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 300 sym_mach_check(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 316 sym_promote(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 358 sym_override(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 520 sym_twoundefs(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 550 sym_tworeals(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 652 sym_realtent(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 830 sym_twotent(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument 1082 ld_sym_resolve(Sym_desc *sdp, Sym *nsym, Ifl_desc *ifl, Ofl_desc *ofl, int ndx, Word nshndx, sd_flag_t nsdflags) argument [all...] |
H A D | support.c | 65 ld_sup_loadso(Ofl_desc *ofl, const char *obj) argument 75 ld_eprintf(ofl, ERR_FATAL, MSG_INTL(MSG_SUP_NOLOAD), 87 DBG_CALL(Dbg_support_load(ofl->ofl_lml, obj, 91 DBG_CALL(Dbg_support_action(ofl->ofl_lml, obj, 110 DBG_CALL(Dbg_support_vnone(ofl->ofl_lml, 121 ld_eprintf(ofl, ERR_FATAL, 143 ld_sup_start(Ofl_desc *ofl, const Half etype, const char *caller) argument 149 DBG_CALL(Dbg_support_action(ofl->ofl_lml, flp->fl_obj, 150 support[LDS_START].sup_name, LDS_START, ofl->ofl_name)); 151 (*flp->fl_fptr)(ofl 156 ld_sup_atexit(Ofl_desc *ofl, int ecode) argument 169 ld_sup_open(Ofl_desc *ofl, const char **opath, const char **ofile, int *ofd, int flags, Elf **oelf, Elf *ref, size_t off, const Elf_Kind ekind) argument 231 ld_sup_file(Ofl_desc *ofl, const char *ifile, const Elf_Kind ekind, int flags, Elf *elf) argument 254 ld_sup_input_section(Ofl_desc *ofl, Ifl_desc *ifl, const char *sname, Shdr **oshdr, Word ndx, Elf_Scn *scn, Elf *elf) argument 302 ld_sup_section(Ofl_desc *ofl, const char *scn, Shdr *shdr, Word ndx, Elf_Data *data, Elf *elf) argument 316 ld_sup_input_done(Ofl_desc *ofl) argument [all...] |
H A D | unwind.c | 320 ld_unwind_make_hdr(Ofl_desc *ofl) argument 322 int bswap = (ofl->ofl_flags1 & FLG_OF1_ENCDIFF) != 0; 335 if (ofl->ofl_unwind == NULL) 345 elfdata->d_version = ofl->ofl_dehdr->e_version; 366 if ((ofl->ofl_unwindhdr = ld_place_section(ofl, isp, NULL, 376 for (APLIST_TRAVERSE(ofl->ofl_unwind, idx1, osp)) { 417 ld_eprintf(ofl, ERR_FATAL, 483 ld_unwind_populate_hdr(Ofl_desc *ofl) argument 495 int bswap = (ofl 838 ld_unwind_register(Os_desc *osp, Ofl_desc * ofl) argument [all...] |
H A D | version.c | 88 vers_visit_children(Ofl_desc *ofl, Ver_desc *vp, int flag) argument 121 ld_eprintf(ofl, ERR_FATAL, 129 ld_eprintf(ofl, ERR_NONE, 136 ld_eprintf(ofl, ERR_NONE, 159 if (vers_visit_children(ofl, vdp, 1) == S_ERROR) 171 ld_vers_check_defs(Ofl_desc *ofl) argument 177 DBG_CALL(Dbg_ver_def_title(ofl->ofl_lml, ofl->ofl_name)); 182 for (APLIST_TRAVERSE(ofl->ofl_verdesc, idx1, vdp)) 183 if ((is_cyclic = vers_visit_children(ofl, vd 337 ld_vers_check_need(Ofl_desc *ofl) argument 463 vers_select(Ofl_desc *ofl, Ifl_desc *ifl, Ver_desc *vdp, const char *ref) argument 477 vers_index(Ofl_desc *ofl, Ifl_desc *ifl, int avail) argument 563 ld_vers_sym_process(Ofl_desc *ofl, Is_desc *isp, Ifl_desc *ifl) argument 596 ld_vers_def_process(Is_desc *isp, Ifl_desc *ifl, Ofl_desc *ofl) argument 818 ld_vers_need_process(Is_desc *isp, Ifl_desc *ifl, Ofl_desc *ofl) argument 894 ld_vers_promote(Sym_desc *sdp, Word ndx, Ifl_desc *ifl, Ofl_desc *ofl) argument 953 ld_vers_base(Ofl_desc *ofl) argument 1001 ld_vers_verify(Ofl_desc *ofl) argument [all...] |
/illumos-gate/usr/src/cmd/sgs/liblddbg/common/ |
H A D | statistics.c | 60 * ofl - output file descriptor 61 * alp - One of ofl->ofl_actrels or ofl->ofl_outrels. 64 rel_cache_statistics(Ofl_desc *ofl, const char *title, APlist *alp) argument 66 Lm_list *lml = ofl->ofl_lml; 92 * ofl - output file descriptor 95 rel_aux_cache_statistics(Ofl_desc *ofl) argument 98 Lm_list *lml = ofl->ofl_lml; 104 for (APLIST_TRAVERSE(ofl->ofl_relaux, idx, racp)) { 111 EC_WORD(aplist_nitems(ofl 120 Dbg_statistics_ld(Ofl_desc *ofl) argument 161 Dbg_statistics_ar(Ofl_desc *ofl) argument [all...] |
H A D | got.c | 49 Dbg_got_display(Ofl_desc *ofl, Off goff, int stage, argument 52 Lm_list *lml = ofl->ofl_lml; 53 Gottable *gtp = ofl->ofl_gottable; 60 if (ofl->ofl_gotcnt == m_got_xnumber) 64 dbg_print(lml, MSG_INTL(MSG_GOT_INFO), EC_WORD(ofl->ofl_gotcnt)); 69 qsort((char *)gtp, ofl->ofl_gotcnt, sizeof (Gottable), 77 gptr = (Xword *)ofl->ofl_osgot->os_outdata->d_buf; 79 for (gotndx = 0; gotndx < ofl->ofl_gotcnt; gotndx++, gtp++, gptr++) {
|
H A D | segments.c | 106 Dbg_seg_entry(Ofl_desc *ofl, int ndx, Sg_desc *sgp) argument 111 Dbg_seg_desc_entry(ofl->ofl_lml, ofl->ofl_dehdr->e_ident[EI_OSABI], 112 ofl->ofl_dehdr->e_machine, ndx, sgp, TRUE); 141 Dbg_seg_os(Ofl_desc *ofl, Os_desc *osp, int ndx) argument 144 Lm_list *lml = ofl->ofl_lml; 156 Elf_shdr(lml, ofl->ofl_dehdr->e_ident[EI_OSABI], 157 ofl->ofl_dehdr->e_machine, osp->os_shdr);
|
H A D | map.c | 101 Dbg_map_size_old(Ofl_desc *ofl, Sym_desc *sdp, const char *segname, argument 105 Lm_list *lml = ofl->ofl_lml; 118 ofl->ofl_dehdr->e_ident[EI_OSABI], ofl->ofl_dehdr->e_machine, 124 Dbg_map_symbol(Ofl_desc *ofl, Sym_desc *sdp) argument 127 Lm_list *lml = ofl->ofl_lml; 135 ofl->ofl_dehdr->e_ident[EI_OSABI], ofl->ofl_dehdr->e_machine, 237 Dbg_map_ent(Lm_list *lml, Ent_desc *enp, Ofl_desc *ofl, Lineno lineno) argument 244 Dbg_ent_entry(lml, ofl 270 Dbg_map_seg(Ofl_desc *ofl, dbg_state_t dbg_state, int ndx, Sg_desc *sgp, Lineno lineno) argument 287 Dbg_map_seg_order(Ofl_desc *ofl, uchar_t osabi, Half mach, dbg_state_t dbg_state, Lineno lineno) argument [all...] |
H A D | sections.c | 324 Dbg_sec_order_list(Ofl_desc *ofl, int flag) argument 329 Lm_list *lml = ofl->ofl_lml; 347 for (APLIST_TRAVERSE(ofl->ofl_ordered, idx1, osp)) {
|
H A D | relocate.c | 294 Dbg_reloc_out(Ofl_desc *ofl, int caller, Word type, void *reloc, argument 302 Elf_reloc_entry_1(ofl->ofl_lml, caller, MSG_ORIG(MSG_STR_EMPTY), 303 ofl->ofl_dehdr->e_machine, type, reloc, secname, symname,
|
/illumos-gate/usr/src/cmd/sgs/rtld/common/ |
H A D | object.c | 58 Ofl_desc *ofl; local 73 if ((ofl = calloc(sizeof (Ofl_desc), 1)) == NULL) 76 ofl->ofl_dehdr = &dehdr; 78 ofl->ofl_flags = (FLG_OF_DYNAMIC | FLG_OF_SHAROBJ | FLG_OF_STRIP); 79 ofl->ofl_flags1 = (FLG_OF1_RELDYN | FLG_OF1_TEXTOFF | FLG_OF1_MEMORY); 80 ofl->ofl_lml = lml; 90 free(ofl); 100 if ((ld_ent_setup(ofl, syspagsz) == S_ERROR) || 102 free(ofl); 108 ELFPRV(olmp) = (void *)ofl; 235 Ofl_desc *ofl = (Ofl_desc *)ELFPRV(lmp); local [all...] |