/glibc-2.36/sysdeps/i386/ |
D | dl-machine.h | 219 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 250 const Elf32_Sym *sym, const struct r_found_version *version, in elf_machine_rel() argument 267 const Elf32_Sym *const refsym = sym; in elf_machine_rel() 269 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rel() 271 Elf32_Addr value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rel() 273 if (sym != NULL in elf_machine_rel() 274 && __glibc_unlikely (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC) in elf_machine_rel() 275 && __glibc_likely (sym->st_shndx != SHN_UNDEF) in elf_machine_rel() 306 *reloc_addr += sym->st_size; in elf_machine_rel() 332 if (sym != NULL) in elf_machine_rel() [all …]
|
/glibc-2.36/sysdeps/mips/ |
D | dl-machine.h | 172 ElfW(Sym) *sym; \ 193 sym = (ElfW(Sym) *) D_PTR(map, l_info[DT_SYMTAB]) \ 200 if (sym->st_shndx == SHN_UNDEF || sym->st_shndx == SHN_COMMON) \ 201 *got = SYMBOL_ADDRESS (map, sym, true); \ 202 else if (ELFW(ST_TYPE) (sym->st_info) == STT_FUNC \ 203 && *got != sym->st_value) \ 205 else if (ELFW(ST_TYPE) (sym->st_info) == STT_SECTION) \ 207 if (sym->st_other == 0) \ 211 *got = SYMBOL_ADDRESS (map, sym, true); \ 214 sym++; \ [all …]
|
/glibc-2.36/sysdeps/arm/ |
D | dl-machine.h | 207 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 288 const Elf32_Rel *reloc, const Elf32_Sym *sym, in elf_machine_rel() argument 305 const Elf32_Sym *const refsym = sym; in elf_machine_rel() 306 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rel() 308 Elf32_Addr value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rel() 310 if (sym != NULL in elf_machine_rel() 311 && __builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0) in elf_machine_rel() 312 && __builtin_expect (sym->st_shndx != SHN_UNDEF, 1) in elf_machine_rel() 319 if (sym == NULL) in elf_machine_rel() 323 if (sym->st_size > refsym->st_size in elf_machine_rel() [all …]
|
/glibc-2.36/elf/ |
D | tst-relro-symbols.py | 71 required_symbols = frozenset([sym.encode('UTF-8') 72 for sym in opts.required]) 73 optional_symbols = frozenset([sym.encode('UTF-8') 74 for sym in opts.optional]) 95 for sym in img.syms(shdr): 96 if sym.st_name in check_symbols: 97 symbols_found.add(sym.st_name) 100 if sym.st_info.type != glibcelf.Stt.STT_OBJECT: 102 sym.st_name.decode('UTF-8'), sym.st_info.type)) 103 if sym.st_shndx in glibcelf.Shn: [all …]
|
D | dl-lookup-direct.c | 33 const ElfW(Sym) *sym = &symtab[symidx]; in ElfW() 35 unsigned int stt = ELFW(ST_TYPE) (sym->st_info); in ElfW() 36 if (__glibc_unlikely ((sym->st_value == 0 /* No value. */ in ElfW() 37 && sym->st_shndx != SHN_ABS in ElfW() 39 || elf_machine_sym_no_match (sym))) in ElfW() 53 if (strcmp (strtab + sym->st_name, undef_name) != 0) in ElfW() 63 return sym; in ElfW() 87 const ElfW(Sym) *sym = check_match (map, undef_name, in ElfW() 90 if (sym != NULL) in ElfW() 91 return sym; in ElfW() [all …]
|
D | dl-lookup.c | 65 const ElfW(Sym) *const sym, in ElfW() 72 unsigned int stt = ELFW(ST_TYPE) (sym->st_info); in ElfW() 74 if (__glibc_unlikely ((sym->st_value == 0 /* No value. */ in ElfW() 75 && sym->st_shndx != SHN_ABS in ElfW() 77 || elf_machine_sym_no_match (sym) in ElfW() 78 || (type_class & (sym->st_shndx == SHN_UNDEF)))) in ElfW() 90 if (sym != ref && strcmp (strtab + sym->st_name, undef_name)) in ElfW() 154 *versioned_sym = sym; in ElfW() 162 return sym; in ElfW() 169 const ElfW(Sym) *sym, const struct link_map *map) in enter_unique_sym() [all …]
|
D | dl-audit.c | 145 ElfW(Sym) sym = *ref; in _dl_audit_symbind_alt() 146 sym.st_value = (ElfW(Addr)) *value; in _dl_audit_symbind_alt() 159 uintptr_t new_value = afct->symbind (&sym, ndx, in _dl_audit_symbind_alt() 163 if (new_value != (uintptr_t) sym.st_value) in _dl_audit_symbind_alt() 166 sym.st_value = new_value; in _dl_audit_symbind_alt() 172 *value = (void *) sym.st_value; in _dl_audit_symbind_alt() 203 ElfW(Sym) sym = *defsym; in rtld_hidden_def() 204 sym.st_value = DL_FIXUP_VALUE_ADDR (*value); in rtld_hidden_def() 216 uintptr_t new_value = (uintptr_t) sym.st_value; in rtld_hidden_def() 229 new_value = afct->symbind (&sym, boundndx, in rtld_hidden_def() [all …]
|
D | tst-auditmod1.c | 88 la_symbind32 (Elf32_Sym *sym, unsigned int ndx, uintptr_t *refcook, in la_symbind32() argument 92 symname, (long int) sym->st_value, ndx, *flags); in la_symbind32() 94 return sym->st_value; in la_symbind32() 98 la_symbind64 (Elf64_Sym *sym, unsigned int ndx, uintptr_t *refcook, in la_symbind64() argument 102 symname, (long int) sym->st_value, ndx, *flags); in la_symbind64() 104 return sym->st_value; in la_symbind64() 115 pltenter (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook, in pltenter() argument 120 symname, (long int) sym->st_value, ndx, *flags); in pltenter() 122 return sym->st_value; in pltenter() 126 pltexit (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook, in pltexit() argument [all …]
|
/glibc-2.36/sysdeps/aarch64/ |
D | dl-machine.h | 140 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 168 const ElfW(Rela) *reloc, const ElfW(Sym) *sym, in elf_machine_rela() 182 const ElfW(Sym) *const refsym = sym; in elf_machine_rela() 184 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rela() 186 ElfW(Addr) value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 188 if (sym != NULL in elf_machine_rela() 189 && __glibc_unlikely (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC) in elf_machine_rela() 190 && __glibc_likely (sym->st_shndx != SHN_UNDEF) in elf_machine_rela() 209 if (sym == NULL) in elf_machine_rela() 212 if (sym->st_size > refsym->st_size in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/unix/sysv/linux/powerpc/powerpc64/ |
D | ldsodefs.h | 29 _dl_ppc64_is_opd_sym (const struct link_map *l, const ElfW(Sym) *sym) in _dl_ppc64_is_opd_sym() argument 31 return (ELFW(ST_TYPE) (sym->st_info) == STT_FUNC in _dl_ppc64_is_opd_sym() 32 && l->l_addr + sym->st_value >= (ElfW(Addr)) l->l_ld in _dl_ppc64_is_opd_sym() 33 && l->l_addr + sym->st_value < l->l_map_end in _dl_ppc64_is_opd_sym() 34 && sym->st_size != 0); in _dl_ppc64_is_opd_sym() 38 _dl_ppc64_addr_sym_match (const struct link_map *l, const ElfW(Sym) *sym, in _dl_ppc64_addr_sym_match() argument 41 ElfW(Addr) value = l->l_addr + sym->st_value; in _dl_ppc64_addr_sym_match() 42 if (_dl_ppc64_is_opd_sym (l, sym)) in _dl_ppc64_addr_sym_match() 47 if (addr < value || addr >= value + sym->st_size) in _dl_ppc64_addr_sym_match() 51 else if (sym->st_shndx == SHN_UNDEF || sym->st_size == 0) in _dl_ppc64_addr_sym_match() [all …]
|
/glibc-2.36/sysdeps/unix/mips/ |
D | sysdep.h | 45 #define PSEUDO_END(sym) cfi_endproc; .end sym; .size sym,.-sym 56 #define PSEUDO_END_NOERRNO(sym) cfi_endproc; .end sym; .size sym,.-sym 69 #define PSEUDO_END_ERRVAL(sym) cfi_endproc; .end sym; .size sym,.-sym
|
/glibc-2.36/sysdeps/sparc/sparc32/ |
D | dl-machine.h | 219 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 255 const Elf32_Rela *reloc, const Elf32_Sym *sym, in elf_machine_rela() argument 261 const Elf32_Sym *const refsym = sym; in elf_machine_rela() 272 *reloc_addr = sym->st_size + reloc->r_addend; in elf_machine_rela() 284 if (__builtin_expect (ELF32_ST_BIND (sym->st_info) == STB_LOCAL, 0) in elf_machine_rela() 285 && sym->st_shndx != SHN_UNDEF) in elf_machine_rela() 292 sym_map = RESOLVE_MAP (map, scope, &sym, version, r_type); in elf_machine_rela() 293 value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 298 if (sym != NULL in elf_machine_rela() 299 && __builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0) in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/powerpc/powerpc64/ |
D | dl-machine.h | 442 const ElfW(Sym) *refsym, const ElfW(Sym) *sym) in ppc64_local_entry_offset() 454 && (STO_PPC64_LOCAL_MASK & sym->st_other) != 0) in ppc64_local_entry_offset() 468 if (__builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0)) in ppc64_local_entry_offset() 473 return PPC64_LOCAL_ENTRY_OFFSET (sym->st_other); in ppc64_local_entry_offset() 481 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 537 finaladdr += ppc64_local_entry_offset (map, sym_map, refsym, sym); in elf_machine_fixup_plt() 616 const Elf64_Sym *sym, in elf_machine_tprel() argument 624 return TLS_TPREL_VALUE (sym_map, sym, reloc); in elf_machine_tprel() 663 const Elf64_Sym *sym, in elf_machine_rela() argument 670 const Elf64_Sym *const refsym = sym; in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/x86_64/ |
D | dl-machine.h | 216 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 246 const ElfW(Rela) *reloc, const ElfW(Sym) *sym, in elf_machine_rela() 269 const ElfW(Sym) *const refsym = sym; in elf_machine_rela() 271 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rela() 273 ElfW(Addr) value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 275 if (sym != NULL in elf_machine_rela() 276 && __glibc_unlikely (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC) in elf_machine_rela() 277 && __glibc_likely (sym->st_shndx != SHN_UNDEF) in elf_machine_rela() 315 = (Elf64_Addr) sym->st_size + reloc->r_addend; in elf_machine_rela() 323 value = sym->st_size; in elf_machine_rela() [all …]
|
D | tst-auditmod3b.c | 91 la_symbind32 (Elf32_Sym *sym, unsigned int ndx, uintptr_t *refcook, in la_symbind32() argument 95 symname, (long int) sym->st_value, ndx, *flags); in la_symbind32() 97 return sym->st_value; in la_symbind32() 101 la_symbind64 (Elf64_Sym *sym, unsigned int ndx, uintptr_t *refcook, in la_symbind64() argument 105 symname, (long int) sym->st_value, ndx, *flags); in la_symbind64() 107 return sym->st_value; in la_symbind64() 113 pltenter (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook, in pltenter() argument 118 symname, (long int) sym->st_value, ndx, *flags); in pltenter() 130 return sym->st_value; in pltenter() 134 pltexit (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook, in pltexit() argument [all …]
|
/glibc-2.36/sysdeps/riscv/ |
D | dl-machine.h | 144 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 173 const ElfW(Rela) *reloc, const ElfW(Sym) *sym, in elf_machine_rela() 180 const ElfW(Sym) *const __attribute__ ((unused)) refsym = sym; in elf_machine_rela() 181 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, r_type); in elf_machine_rela() 184 value = SYMBOL_ADDRESS (sym_map, sym, true) + reloc->r_addend; in elf_machine_rela() 186 if (sym != NULL in elf_machine_rela() 187 && __glibc_unlikely (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC) in elf_machine_rela() 188 && __glibc_likely (sym->st_shndx != SHN_UNDEF) in elf_machine_rela() 210 if (sym != NULL) in elf_machine_rela() 211 *addr_field = TLS_DTPREL_VALUE (sym) + reloc->r_addend; in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/or1k/ |
D | dl-machine.h | 155 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 181 const ElfW(Rela) *reloc, const ElfW(Sym) *sym, in elf_machine_rela() 192 const Elf32_Sym *const refsym = sym; in elf_machine_rela() 193 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rela() 195 Elf32_Addr value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 197 if (sym != NULL in elf_machine_rela() 198 && __glibc_unlikely (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC) in elf_machine_rela() 199 && __glibc_likely (sym->st_shndx != SHN_UNDEF) in elf_machine_rela() 206 if (sym == NULL) in elf_machine_rela() 210 if (__glibc_unlikely (sym->st_size > refsym->st_size) in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/nios2/ |
D | dl-machine.h | 178 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 207 const ElfW(Rela) *reloc, const ElfW(Sym) *sym, in elf_machine_rela() 220 const Elf32_Sym *const refsym = sym; in elf_machine_rela() 221 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rela() 223 Elf32_Addr value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 228 if (sym == NULL) in elf_machine_rela() 232 if (sym->st_size > refsym->st_size in elf_machine_rela() 233 || (sym->st_size < refsym->st_size && GLRO(dl_verbose))) in elf_machine_rela() 244 MIN (sym->st_size, refsym->st_size)); in elf_machine_rela() 250 if (sym != NULL && sym->st_value == 0) in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/sparc/sparc64/ |
D | dl-machine.h | 90 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 279 const Elf64_Rela *reloc, const Elf64_Sym *sym, in elf_machine_rela() argument 285 const Elf64_Sym *const refsym = sym; in elf_machine_rela() 296 *reloc_addr = sym->st_size + reloc->r_addend; in elf_machine_rela() 308 if (__builtin_expect (ELF64_ST_BIND (sym->st_info) == STB_LOCAL, 0) in elf_machine_rela() 309 && sym->st_shndx != SHN_UNDEF) in elf_machine_rela() 316 sym_map = RESOLVE_MAP (map, scope, &sym, version, r_type); in elf_machine_rela() 317 value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 322 if (sym != NULL in elf_machine_rela() 323 && __builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0) in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/s390/s390-32/ |
D | dl-machine.h | 249 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 279 const Elf32_Rela *reloc, const Elf32_Sym *sym, in elf_machine_rela() argument 297 const Elf32_Sym *const refsym = sym; in elf_machine_rela() 299 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rela() 301 Elf32_Addr value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 303 if (sym != NULL in elf_machine_rela() 304 && __builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0) in elf_machine_rela() 305 && __builtin_expect (sym->st_shndx != SHN_UNDEF, 1) in elf_machine_rela() 341 if (sym != NULL) in elf_machine_rela() 342 *reloc_addr = sym->st_value + reloc->r_addend; in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/s390/s390-64/ |
D | dl-machine.h | 227 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 256 const Elf64_Rela *reloc, const Elf64_Sym *sym, in elf_machine_rela() argument 274 const Elf64_Sym *const refsym = sym; in elf_machine_rela() 276 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rela() 278 Elf64_Addr value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 280 if (sym != NULL in elf_machine_rela() 281 && __builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, in elf_machine_rela() 283 && __builtin_expect (sym->st_shndx != SHN_UNDEF, 1) in elf_machine_rela() 318 if (sym != NULL) in elf_machine_rela() 319 *reloc_addr = sym->st_value + reloc->r_addend; in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/microblaze/ |
D | dl-machine.h | 171 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 206 const Elf32_Rela *reloc, const Elf32_Sym *sym, in elf_machine_rela() argument 219 const Elf32_Sym *const refsym = sym; in elf_machine_rela() 220 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, in elf_machine_rela() 222 Elf32_Addr value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 233 if (sym != NULL && (sym->st_size > refsym->st_size in elf_machine_rela() 234 || (sym->st_size < refsym->st_size && GLRO (dl_verbose))) ) in elf_machine_rela() 244 MIN (sym->st_size, refsym->st_size)); in elf_machine_rela() 257 if (sym != NULL) in elf_machine_rela() 258 *reloc_addr = sym->st_value + reloc->r_addend; in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/loongarch/ |
D | dl-machine.h | 128 const ElfW (Sym) *refsym, const ElfW (Sym) *sym, in elf_machine_fixup_plt() 146 const ElfW (Sym) *sym, in elf_machine_rela() 153 const ElfW (Sym) *const __attribute__ ((unused)) refsym = sym; in elf_machine_rela() 154 struct link_map *sym_map = RESOLVE_MAP (map, scope, &sym, version, r_type); in elf_machine_rela() 157 value = SYMBOL_ADDRESS (sym_map, sym, true) + reloc->r_addend; in elf_machine_rela() 159 if (sym != NULL in elf_machine_rela() 160 && __glibc_unlikely (ELFW (ST_TYPE) (sym->st_info) == STT_GNU_IFUNC) in elf_machine_rela() 161 && __glibc_likely (sym->st_shndx != SHN_UNDEF) in elf_machine_rela() 185 *addr_field = TLS_DTPREL_VALUE (sym) + reloc->r_addend; in elf_machine_rela() 191 *addr_field = TLS_TPREL_VALUE (sym_map, sym) + reloc->r_addend; in elf_machine_rela() [all …]
|
/glibc-2.36/sysdeps/hppa/ |
D | dl-machine.h | 122 const ElfW(Sym) *refsym, const ElfW(Sym) *sym, in elf_machine_fixup_plt() 541 const Elf32_Sym *sym, in elf_machine_rela() argument 547 const Elf32_Sym *const refsym = sym; in elf_machine_rela() 561 sym_map = RESOLVE_MAP (map, scope, &sym, version, r_type); in elf_machine_rela() 566 value = SYMBOL_ADDRESS (sym_map, sym, true); in elf_machine_rela() 590 value = (SYMBOL_ADDRESS (sym_map, sym, true) in elf_machine_rela() 601 value = ((SYMBOL_ADDRESS (sym_map, sym, true) & 0x7ff) in elf_machine_rela() 613 if (sym == NULL in elf_machine_rela() 615 || ELF32_ST_BIND (sym->st_info) == STB_LOCAL) in elf_machine_rela() 623 value = (Elf32_Addr)((unsigned int)_dl_make_fptr (sym_map, sym, value) | 2); in elf_machine_rela() [all …]
|
/glibc-2.36/dlfcn/ |
D | modstatic2.c | 64 ElfW(Sym) *sym; in test() 85 sym = symp; in test() 86 if (sym == NULL) in test() 91 if (ELF32_ST_BIND (sym->st_info) != STB_GLOBAL in test() 92 || ELF32_ST_VISIBILITY (sym->st_other) != STV_DEFAULT) in test() 95 (int) ELF32_ST_BIND (sym->st_info), in test() 96 (int) ELF32_ST_VISIBILITY (sym->st_other)); in test() 214 sym = symp; in test() 215 if (sym == NULL) in test() 220 if (ELF32_ST_BIND (sym->st_info) != STB_GLOBAL in test() [all …]
|