Lines Matching refs:mp
95 sdt_reloc_resolve(struct module *mp, char *symname, uint32_t *instr, long roff)
120 * value into an offset from mp->text.
122 roff -= (uintptr_t)mp->text;
127 sdp->sdpd_next = mp->sdt_probes;
128 mp->sdt_probes = sdp;
151 struct module *mp,
187 if (mp->destination) {
190 shp = (Shdr *)mp->shdrs;
191 for (i = 0; i < mp->hdr.e_shnum; i++, shp++) {
195 destination = (Addr)mp->destination +
196 (baseaddr - (Addr)mp->text);
210 if (stndx >= mp->nsyms) {
219 _kobj_printf(ops, " file=%s\n", mp->filename);
231 (mp->symtbl+(stndx * mp->symhdr->sh_entsize));
237 (const char *)mp->strings + symp->st_name);
244 if (!(mp->flags & KOBJ_EXEC))
259 (mp->symtbl+(stndx * mp->symhdr->sh_entsize));
271 sdt_reloc_resolve(mp, mp->strings +
274 (uintptr_t)mp->text)) == 0)
278 tnf_reloc_resolve(mp->strings +
285 mp->strings +
312 if (mp->destination)
325 (const char *)mp->strings + symref->st_name,
326 mp->filename) == 0)
333 if (tnf_splice_probes(mp->flags & KOBJ_PRIM, probelist, taglist))
334 mp->flags |= KOBJ_TNF_PROBE;
340 do_relocations(struct module *mp)
347 for (shn = 1; shn < mp->hdr.e_shnum; shn++) {
349 (mp->shdrs + shn * mp->hdr.e_shentsize);
352 mp->filename);
357 if (rshp->sh_link != mp->symtbl_section) {
359 mp->filename);
362 if (rshp->sh_info >= mp->hdr.e_shnum) {
363 _kobj_printf(ops, "do_relocations: %s ", mp->filename);
371 (mp->shdrs + rshp->sh_info * mp->hdr.e_shentsize);
381 mp->filename);
385 if (do_relocate(mp, (char *)rshp->sh_addr, rshp->sh_type,
389 mp->filename);
395 mp->flags |= KOBJ_RELOCATED;