Home | History | Annotate | Download | only in bfd

Lines Matching refs:plt

72       /* We need to create .iplt, .rel[a].iplt, .igot and .igot.plt
90 /* We don't need the .igot section if we have the .igot.plt
93 s = bfd_make_section_with_flags (abfd, ".igot.plt", flags);
106 /* Allocate space in .plt, .got and associated reloc sections for
117 asection *plt, *gotplt, *relplt;
125 But in non-shared executable, the address of its .plt slot may
157 if (h->plt.refcount <= 0 && h->got.refcount <= 0)
160 h->plt = htab->init_plt_offset;
169 if (h->plt.refcount > 0
173 h->plt = htab->init_plt_offset;
185 /* When building a static executable, use .iplt, .igot.plt and
189 plt = htab->splt;
193 /* If this is the first .plt entry, make room for the special
195 if (plt->size == 0)
196 plt->size += plt_header_size;
200 plt = htab->iplt;
205 /* Don't update value of STT_GNU_IFUNC symbol to PLT. We need
207 h->plt.offset = plt->size;
209 /* Make room for this entry in the .plt/.iplt section. */
210 plt->size += plt_entry_size;
212 /* We also need to make an entry in the .got.plt/.got.iplt section,
216 /* We also need to make an entry in the .rel[a].plt/.rel[a].iplt
241 /* For STT_GNU_IFUNC symbol, .got.plt has the real function address
242 and .got has the PLT entry adddress. We will load the GOT entry
243 with the PLT entry in finish_dynamic_symbol if it is used. For
244 branch, it uses .got.plt. For symbol value,
245 1. Use .got.plt in a shared object if it is forced local or not
247 2. Use .got.plt in a non-shared object if pointer equality isn't
249 3. Use .got.plt in PIE.
250 4. Use .got.plt if .got isn't used.
263 /* Use .got.plt. */