Commit | Line | Data |
---|---|---|
1997c994 AM |
1 | 2016-05-12 Alan Modra <amodra@gmail.com> |
2 | ||
3 | * elf-bfd.h (elf_reloc_type_class): Put reloc_class_plt last. | |
4 | ||
8f4f9071 MF |
5 | 2016-05-11 Andrew Bennett <andrew.bennett@imgtec.com> |
6 | ||
7 | * elfxx-mips.c (print_mips_ases): Add DSPR3. | |
8 | ||
a464198b AM |
9 | 2016-05-11 Alan Modra <amodra@gmail.com> |
10 | ||
11 | * elf32-hppa.c (elf32_hppa_init_stub_bfd): New function. | |
12 | (elf32_hppa_check_relocs): Don't set dynobj. | |
13 | (elf32_hppa_size_stubs): Test !SEC_LINKER_CREATED for stub sections. | |
14 | (elf32_hppa_build_stubs): Likewise. | |
15 | * elf32-hppa.h (elf32_hppa_init_stub_bfd): Declare. | |
16 | ||
3bd43ebc AM |
17 | 2016-05-11 Alan Modra <amodra@gmail.com> |
18 | ||
19 | PR 20060 | |
20 | * elf64-ppc.c (ppc64_elf_tls_setup): Clear forced_local. | |
21 | * elf32-ppc.c (ppc_elf_tls_setup): Likewise. | |
22 | ||
4e7fbb34 JW |
23 | 2016-05-10 Jiong Wang <jiong.wang@arm.com> |
24 | ||
25 | * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Remove redundant | |
26 | aarch64_tls_transition check. | |
27 | ||
4f4faa4d TP |
28 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
29 | ||
30 | * elf32-arm.c (enum elf32_arm_stub_type): New max_stub_type | |
31 | enumerator. | |
32 | (arm_stub_sym_claimed): New function. | |
33 | (elf32_arm_create_stub): Use veneered symbol name and section if | |
34 | veneer needs to claim its symbol, and keep logic unchanged otherwise. | |
35 | (arm_stub_claim_sym): New function. | |
36 | (arm_map_one_stub): Call arm_stub_claim_sym if veneer needs to claim | |
37 | veneered symbol, otherwise create local symbol as before. | |
38 | ||
39d911fc TP |
39 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
40 | ||
41 | * elf32-arm.c (elf32_arm_size_stubs): Use new macros | |
42 | ARM_GET_SYM_BRANCH_TYPE and ARM_SET_SYM_BRANCH_TYPE to respectively get | |
43 | and set branch type of a symbol. | |
44 | (bfd_elf32_arm_process_before_allocation): Likewise. | |
45 | (elf32_arm_relocate_section): Likewise and fix identation along the | |
46 | way. | |
47 | (allocate_dynrelocs_for_symbol): Likewise. | |
48 | (elf32_arm_finish_dynamic_symbol): Likewise. | |
49 | (elf32_arm_swap_symbol_in): Likewise. | |
50 | (elf32_arm_swap_symbol_out): Likewise. | |
51 | ||
6bde4c52 TP |
52 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
53 | ||
54 | * bfd-in.h (elf32_arm_size_stubs): Add an output section parameter. | |
55 | * bfd-in2.h: Regenerated. | |
56 | * elf32-arm.c (struct elf32_arm_link_hash_table): Add an output section | |
57 | parameter to add_stub_section callback. | |
58 | (elf32_arm_create_or_find_stub_sec): Get output section from link_sec | |
59 | and pass it down to add_stub_section. | |
60 | (elf32_arm_add_stub): Set section to stub_sec if NULL before using it | |
61 | for error message. | |
62 | (elf32_arm_size_stubs): Add output section parameter to | |
63 | add_stub_section function pointer parameter. | |
64 | ||
b715f643 TP |
65 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
66 | ||
67 | * elf32-arm.c (elf32_arm_create_stub): New function. | |
68 | (elf32_arm_size_stubs): Use elf32_arm_create_stub for stub creation. | |
69 | ||
8d9d9490 TP |
70 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
71 | ||
72 | * elf32-arm.c (enum elf32_arm_stub_type): Delete | |
73 | arm_stub_a8_veneer_lwm enumerator. | |
74 | (arm_stub_a8_veneer_lwm): New unsigned constant to replace | |
75 | aforementioned enumerator. | |
76 | (struct elf32_arm_stub_hash_entry): Delete target_addend | |
77 | field and add source_value. | |
78 | (struct a8_erratum_fix): Delete addend field and add target_offset. | |
79 | (stub_hash_newfunc): Initialize source_value field amd remove | |
80 | initialization for target_addend. | |
81 | (arm_build_one_stub): Stop special casing Thumb relocations: promote | |
82 | the else to being always executed, moving the | |
83 | arm_stub_a8_veneer_b_cond specific code in it. Remove | |
84 | stub_entry->target_addend from points_to computation. | |
85 | (cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset | |
86 | to target symbol from start of section rather than the offset from the | |
87 | stub address. | |
88 | (elf32_arm_size_stubs): Set stub_entry's source_value and target_value | |
89 | fields from struct a8_erratum_fix's offset and target_offset | |
90 | respectively. | |
91 | (make_branch_to_a8_stub): Rename target variable to loc. Compute | |
92 | veneered_insn_loc and loc using stub_entry's source_value. | |
93 | ||
15afaa63 TP |
94 | 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com> |
95 | ||
96 | (elf32_arm_merge_eabi_attributes): Add merging logic for | |
97 | Tag_DSP_extension. | |
98 | ||
66a36822 PC |
99 | 2016-05-10 Pip Cet <pipcet@gmail.com> |
100 | ||
101 | PR ld/20059 | |
102 | * elfxx-target.h (bfd_elfNN_bfd_copy_link_hash_symbol_type): | |
103 | Define as _bfd_generic_copy_link_hash_symbol_type when using | |
104 | generic hash table. | |
105 | ||
315350be NC |
106 | 2016-05-09 Nick Clifton <nickc@redhat.com> |
107 | ||
108 | PR binutils/20063 | |
109 | * elf.c (bfd_elf_get_elf_syms): Check for out of range sh_link | |
110 | field before accessing sections array. | |
111 | ||
9239bbd3 CM |
112 | 2016-05-09 Christophe Monat <christophe.monat@st.com> |
113 | ||
114 | PR ld/20030 | |
115 | * elf32-arm.c (is_thumb2_vldm): Account for T1 (DP) encoding. | |
116 | (stm32l4xx_need_create_replacing_stub): Rename ambiguous nb_regs | |
117 | to nb_words. | |
118 | (create_instruction_vldmia): Add is_dp to disambiguate SP/DP | |
119 | encoding. | |
120 | (create_instruction_vldmdb): Likewise. | |
121 | (stm32l4xx_create_replacing_stub_vldm): is_dp detects DP encoding, | |
122 | uses it to re-encode. | |
123 | ||
73597c18 NC |
124 | 2016-05-09 Nick Clifton <nickc@redhat.com> |
125 | ||
126 | PR 19938 | |
127 | * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Revert accidental | |
128 | commit. | |
129 | ||
ae1bb197 AM |
130 | 2016-05-09 Alan Modra <amodra@gmail.com> |
131 | ||
132 | * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check. | |
133 | ||
97196564 L |
134 | 2016-05-06 H.J. Lu <hongjiu.lu@intel.com> |
135 | ||
136 | PR ld/17550 | |
137 | * elf-bfd.h (elf_link_hash_entry): Update comments for indx, | |
138 | documenting that indx == -3 if symbol is defined in a discarded | |
139 | section. | |
140 | * elflink.c (elf_link_add_object_symbols): Set indx to -3 if | |
141 | symbol is defined in a discarded section. | |
142 | (elf_link_output_extsym): Strip a global symbol defined in a | |
143 | discarded section. | |
144 | ||
030e823c L |
145 | 2016-05-06 H.J. Lu <hongjiu.lu@intel.com> |
146 | ||
147 | * elf32-i386.c (elf_backend_add_symbol_hook): Defined for Intel | |
148 | MCU. | |
149 | ||
c175a657 L |
150 | 2016-05-05 H.J. Lu <hongjiu.lu@intel.com> |
151 | ||
152 | * elf32-i386.c (elf_i386_convert_load): Extract the GOT load | |
153 | conversion to ... | |
154 | (elf_i386_convert_load_reloc): This. New function. | |
155 | * elf64-x86-64.c (elf_x86_64_convert_load): Extract the GOT load | |
156 | conversion to ... | |
157 | (elf_x86_64_convert_load_reloc): This. New function. | |
158 | ||
bedfd056 L |
159 | 2016-05-05 H.J. Lu <hongjiu.lu@intel.com> |
160 | ||
161 | * elf32-i386.c (elf_i386_check_tls_transition): Remove abfd. | |
162 | Don't check if contents == NULL. | |
163 | (elf_i386_tls_transition): Add from_relocate_section. Check | |
164 | from_relocate_section instead of contents != NULL. Update | |
165 | elf_i386_check_tls_transition call. | |
166 | (elf_i386_check_relocs): Cache the section contents if | |
167 | keep_memory is FALSE. Pass FALSE as from_relocate_section to | |
168 | elf_i386_tls_transition. | |
169 | (elf_i386_relocate_section): Pass TRUE as from_relocate_section | |
170 | to elf_i386_tls_transition. | |
171 | (elf_backend_caches_rawsize): New. | |
172 | * elf64-x86-64.c (elf_x86_64_check_tls_transition): Don't check | |
173 | if contents == NULL. | |
174 | (elf_x86_64_tls_transition): Add from_relocate_section. Check | |
175 | from_relocate_section instead of contents != NULL. | |
176 | (elf_x86_64_check_relocs): Cache the section contents if | |
177 | keep_memory is FALSE. Pass FALSE as from_relocate_section to | |
178 | elf_x86_64_tls_transition. | |
179 | (elf_x86_64_relocate_section): Pass TRUE as from_relocate_section | |
180 | to elf_x86_64_tls_transition. | |
181 | (elf_backend_caches_rawsize): New. | |
182 | ||
6d6a648c MR |
183 | 2016-05-03 Maciej W. Rozycki <macro@imgtec.com> |
184 | ||
185 | PR 10549 | |
186 | * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle | |
187 | STB_GNU_UNIQUE. | |
188 | ||
1f56df9d JW |
189 | 2016-05-03 Jiong Wang <jiong.wang@arm.com> |
190 | ||
191 | * bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype. | |
192 | * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise. | |
193 | * elfnn-aarch64.c (bfd_elfNN_aarch64_set_options): Initialize | |
194 | no_apply_dynamic_relocs. | |
195 | (elfNN_aarch64_final_link_relocate): Apply absolute relocations even though | |
196 | dynamic relocations generated. | |
197 | ||
493f652c L |
198 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
199 | ||
200 | * elf32-i386.c (elf_i386_size_dynamic_sections): Move interp | |
201 | setting to ... | |
202 | (elf_i386_create_dynamic_sections): Here. | |
203 | * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Move | |
204 | interp setting to ... | |
205 | (elf_x86_64_create_dynamic_sections): Here. | |
206 | ||
e62b9723 L |
207 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
208 | ||
209 | * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take GOT_RELOC | |
210 | and replace (EH)->has_got_reloc with GOT_RELOC. | |
211 | (elf_i386_fixup_symbol): Pass has_got_reloc to | |
212 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
213 | (elf_i386_allocate_dynrelocs): Likewise. | |
214 | (elf_i386_relocate_section): Likewise. | |
215 | (elf_i386_finish_dynamic_symbol): Likewise. | |
216 | (elf_i386_convert_load): Pass TRUE to | |
217 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
218 | * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take | |
219 | GOT_RELOC and replace (EH)->has_got_reloc with GOT_RELOC. | |
220 | (elf_x86_64_fixup_symbol): Pass has_got_reloc to | |
221 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
222 | (elf_x86_64_allocate_dynrelocs): Likewise. | |
223 | (elf_x86_64_relocate_section): Likewise. | |
224 | (elf_x86_64_finish_dynamic_symbol): Likewise. | |
225 | (elf_x86_64_convert_load): Pass TRUE to | |
226 | UNDEFINED_WEAK_RESOLVED_TO_ZERO. | |
227 | ||
c337a162 L |
228 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
229 | ||
230 | * elf32-i386.c (check_relocs_failed): New. | |
231 | (elf_i386_check_relocs): Set check_relocs_failed on error. | |
232 | (elf_i386_relocate_section): Skip if check_relocs failed. | |
233 | ||
afd9acee L |
234 | 2016-04-29 H.J. Lu <hongjiu.lu@intel.com> |
235 | ||
236 | * elf64-x86-64.c (elf_x86_64_check_relocs): Set | |
237 | check_relocs_failed on error. | |
238 | ||
5522f910 NC |
239 | 2016-04-29 Nick Clifton <nickc@redhat.com> |
240 | ||
241 | PR 19938 | |
242 | * elf-bfd.h (struct elf_backend_data): Rename | |
243 | elf_backend_set_special_section_info_and_link to | |
244 | elf_backend_copy_special_section_fields. | |
245 | * elfxx-target.h: Likewise. | |
246 | * elf.c (section_match): Ignore the SHF_INFO_LINK flag when | |
247 | comparing section flags. | |
248 | (copy_special_section_fields): New function. | |
249 | (_bfd_elf_copy_private_bfd_data): Copy the EI_ABIVERSION field. | |
250 | Perform two scans over special sections. The first one looks for | |
251 | a direct mapping between the output section and an input section. | |
252 | The second scan looks for a possible match based upon section | |
253 | characteristics. | |
254 | * elf32-arm.c (elf32_arm_copy_special_section_fields): New | |
255 | function. Handle setting the sh_link field of SHT_ARM_EXIDX | |
256 | sections. | |
257 | * elf32-i386.c (elf32_i386_set_special_info_link): Rename to | |
258 | elf32_i386_copy_solaris_special_section_fields. | |
259 | * elf32-sparc.c (elf32_sparc_set_special_section_info_link): | |
260 | Rename to elf32_sparc_copy_solaris_special_section_fields. | |
261 | * elf64-x86-64.c (elf64_x86_64_set_special_info_link): Rename to | |
262 | elf64_x86_64_copy_solaris_special_section_fields. | |
263 | ||
786a118c NC |
264 | 2016-04-28 Nick Clifton <nickc@redhat.com> |
265 | ||
266 | * po/zh_CN.po: Updated Chinese (simplified) translation. | |
267 | ||
91f8bf69 L |
268 | 2016-04-27 H.J. Lu <hongjiu.lu@intel.com> |
269 | ||
270 | PR ld/20006 | |
271 | * elf64-x86-64.c (elf_x86_64_convert_load): Skip debug sections | |
272 | when estimating distances between output sections. | |
273 | ||
a6a4679f AM |
274 | 2016-04-27 Alan Modra <amodra@gmail.com> |
275 | ||
276 | * elflink.c (_bfd_elf_is_start_stop): New function. | |
277 | (_bfd_elf_gc_mark_rsec): Use it. | |
278 | * elf-bfd.h (_bfd_elf_is_start_stop): Declare. | |
279 | ||
28cc9170 TS |
280 | 2016-04-26 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> |
281 | ||
282 | * elf32-rx.c (rx_set_section_contents): Avoid arithmetic on void *. | |
283 | * mmo.c (mmo_get_section_contents): Likewise. | |
284 | (mmo_set_section_contents): Likewise. | |
285 | ||
d5486c43 L |
286 | 2016-04-26 H.J. Lu <hongjiu.lu@intel.com> |
287 | ||
288 | * elf-bfd.h (elf_link_hash_table): Update comments for | |
289 | dynsymcount. | |
290 | * elflink.c (_bfd_elf_link_renumber_dynsyms): Always count for | |
291 | the unused NULL entry at the head of dynamic symbol table. | |
292 | (bfd_elf_size_dynsym_hash_dynstr): Remove dynsymcount != 0 | |
293 | checks. | |
294 | ||
6645479e L |
295 | 2016-04-21 H.J. Lu <hongjiu.lu@intel.com> |
296 | ||
297 | * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker | |
298 | created file from dynobj. | |
299 | ||
6cd255ca L |
300 | 2016-04-21 H.J. Lu <hongjiu.lu@intel.com> |
301 | ||
302 | * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a | |
303 | normal input file if possible. | |
304 | ||
4f3b23b3 NC |
305 | 2016-04-21 Nick Clifton <nickc@redhat.com> |
306 | ||
307 | * aout-adobe.c: Use _bfd_generic_link_check_relocs. | |
308 | * aout-target.h: Likewise. | |
309 | * aout-tic30.c: Likewise. | |
310 | * binary.c: Likewise. | |
311 | * bout.c: Likewise. | |
312 | * coff-alpha.c: Likewise. | |
313 | * coff-rs6000.c: Likewise. | |
314 | * coff64-rs6000.c: Likewise. | |
315 | * coffcode.h: Likewise. | |
316 | * i386msdos.c: Likewise. | |
317 | * i386os9k.c: Likewise. | |
318 | * ieee.c: Likewise. | |
319 | * ihex.c: Likewise. | |
320 | * libbfd-in.h: Likewise. | |
321 | * libecoff.h: Likewise. | |
322 | * mach-o-target.c: Likewise. | |
323 | * mmo.c: Likewise. | |
324 | * nlm-target.h: Likewise. | |
325 | * oasys.c: Likewise. | |
326 | * pef.c: Likewise. | |
327 | * plugin.c: Likewise. | |
328 | * ppcboot.c: Likewise. | |
329 | * som.c: Likewise. | |
330 | * srec.c: Likewise. | |
331 | * tekhex.c: Likewise. | |
332 | * versados.c: Likewise. | |
333 | * vms-alpha.c: Likewise. | |
334 | * xsym.c: Likewise. | |
335 | * elfxx-target.h: Use _bfd_elf_link_check_relocs. | |
336 | * linker.c (bfd_link_check_relocs): New function. | |
337 | (_bfd_generic_link_check_relocs): New function. | |
338 | * targets.c (BFD_JUMP_TABLE_LINK): Add initialization of | |
339 | _bfd_link_check_relocs field. | |
340 | (struct bfd_target)L Add _bfd_link_check_relocs field. | |
341 | * bfd-in2.h: Regenerate. | |
342 | * libbfd.h: Regenerate. | |
343 | ||
e66cdd68 L |
344 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
345 | ||
346 | * elf32-i386.c (elf_i386_gc_sweep_hook): Removed. | |
347 | (elf_backend_gc_sweep_hook): Likewise. | |
348 | * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise. | |
349 | (elf_backend_gc_sweep_hook): Likewise. | |
350 | ||
5ce03cea L |
351 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
352 | ||
353 | * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations | |
354 | in excluded sections | |
355 | ||
338c190a L |
356 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
357 | ||
358 | PR ld/19969 | |
359 | * elf64-x86-64.c (check_relocs_failed): New. | |
360 | (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs. | |
361 | Support relocation agaist local symbol. Set check_relocs_failed. | |
362 | (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check | |
363 | R_X86_64_32 relocation overflow. | |
364 | (elf_x86_64_relocate_section): Skip if check_relocs failed. | |
365 | Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic. | |
366 | ||
466ee2af L |
367 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
368 | ||
369 | * elf32-i386.c (elf_i386_check_relocs): Call | |
370 | _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol. | |
371 | * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. | |
372 | ||
d9689752 L |
373 | 2016-04-20 H.J. Lu <hongjiu.lu@intel.com> |
374 | ||
375 | * elf-bfd.h (_bfd_elf_link_check_relocs): New. | |
376 | * elflink.c (_bfd_elf_link_check_relocs): New function. | |
377 | (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs | |
378 | if check_relocs_after_open_input is FALSE. | |
379 | ||
e6c7cdec TS |
380 | 2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> |
381 | ||
382 | * cache.c: Update old style function definitions. | |
383 | * elf32-m68k.c: Likewise. | |
384 | * elf64-mmix.c: Likewise. | |
385 | * stab-syms.c: Likewise. | |
386 | ||
b98e6871 TS |
387 | 2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> |
388 | ||
389 | * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *. | |
390 | ||
6fd8e7c2 L |
391 | 2016-04-15 H.J. Lu <hongjiu.lu@intel.com> |
392 | ||
393 | * Makefile.in: Regenerated with automake 1.11.6. | |
394 | * aclocal.m4: Likewise. | |
395 | * doc/Makefile.in: Likewise. | |
396 | ||
4b0c052e AB |
397 | 2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com> |
398 | ||
399 | * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry. | |
400 | * bfd-in2.h: Regenerate. | |
401 | * libbfd.h: Regenerate. | |
402 | * elf32-arc.c: Add 'opcode/arc.h' include. | |
403 | (struct arc_relocation_data): Add symbol_name. | |
404 | (arc_special_overflow_checks): New function. | |
405 | (arc_do_relocation): Use arc_special_overflow_checks, reindent as | |
406 | required, add an extra comment. | |
407 | (elf_arc_relocate_section): Setup symbol_name in reloc_data. | |
408 | ||
33cbe6c0 AB |
409 | 2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com> |
410 | ||
411 | * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all | |
412 | entries. | |
413 | (elf_arc_relocate_section): Update enum uses. | |
414 | (elf_arc_check_relocs): Likewise. | |
415 | (elf_arc_finish_dynamic_symbol): Likewise. | |
416 | ||
7634c4e6 L |
417 | 2016-04-14 H.J. Lu <hongjiu.lu@intel.com> |
418 | ||
419 | * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with | |
420 | "sh_link". | |
421 | ||
84865015 NC |
422 | 2016-04-14 Nick Clifton <nickc@redhat.com> |
423 | ||
424 | PR target/19938 | |
425 | * elf-bbfd.h (struct elf_backend_data): New field: | |
426 | elf_strtab_flags. | |
427 | New field: elf_backend_set_special_section_info_and_link | |
428 | * elfxx-target.h (elf_backend_strtab_flags): Define if not already | |
429 | defined. | |
430 | (elf_backend_set_special_section_info_and_link): Define if not | |
431 | already defined. | |
432 | (elfNN_bed): Use elf_backend_set_special_section_info_and_link and | |
433 | elf_backend_strtab_flags macros to initialise fields in structure. | |
434 | * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS | |
435 | being set even if SHF_MERGE is not set. | |
436 | (elf_fake_sections): Likewise. | |
437 | (section_match): New function. Matches two ELF sections based | |
438 | upon fixed characteristics. | |
439 | (find_link): New function. Locates a section in a BFD that | |
440 | matches a section in a different BFD. | |
441 | (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link | |
442 | fields of reserved sections. | |
443 | (bfd_elf_compute_section_file_positions): Set the flags for the | |
444 | .shstrtab section based upon the elf_strtab_flags field in the | |
445 | elf_backend_data structure. | |
446 | (swap_out_syms): Likewise for the .strtab section. | |
447 | * elflink.c (bfd_elf_final_link): Set the flags for the | |
448 | .strtab section based upon the elf_strtab_flags field in the | |
449 | elf_backend_data structure. | |
450 | * elf32-i386.c (elf32_i386_set_special_info_link): New function. | |
451 | (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris | |
452 | targets. | |
453 | (elf_backend_set_special_section_info_and_link): Define for | |
454 | Solaris targets. | |
455 | * elf32-sparc.c: Likewise. | |
456 | * elf64-x86-64.c: Likewise. | |
457 | ||
2df3368d L |
458 | 2016-04-11 H.J. Lu <hongjiu.lu@intel.com> |
459 | ||
460 | PR ld/19939 | |
461 | * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer | |
462 | to bfd_boolean. | |
463 | * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated. | |
464 | Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc | |
465 | applies to read-only section. | |
466 | * elf32-i386.c (elf_i386_link_hash_table): Add | |
467 | readonly_dynrelocs_against_ifunc. | |
468 | (elf_i386_allocate_dynrelocs): Updated. | |
469 | (elf_i386_size_dynamic_sections): Issue an error for read-only | |
470 | segment with dynamic IFUNC relocations only if | |
471 | readonly_dynrelocs_against_ifunc is TRUE. | |
472 | * elf64-x86-64.c (elf_x86_64_link_hash_table): Add | |
473 | readonly_dynrelocs_against_ifunc. | |
474 | (elf_x86_64_allocate_dynrelocs): Updated. | |
475 | (elf_x86_64_size_dynamic_sections): Issue an error for read-only | |
476 | segment with dynamic IFUNC relocations only if | |
477 | readonly_dynrelocs_against_ifunc is TRUE. | |
478 | * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs): | |
479 | Updated. | |
480 | ||
15dd01b1 TP |
481 | 2016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com> |
482 | ||
483 | * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be | |
484 | a fall through from error_ret_free_internal. Free local_syms in | |
485 | error_ret_free_local if allocated from bfd_elf_get_elf_syms (). | |
486 | ||
1e5885b7 CZ |
487 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
488 | ||
489 | * elf32-arc.c (plt_do_relocs_for_symbol): Changed. | |
490 | (relocate_plt_for_entry): Likewise. | |
491 | ||
b3aee839 CZ |
492 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
493 | ||
494 | * elf32-arc.c (elf_arc_check_relocs): Changed | |
495 | ||
094fb063 CZ |
496 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
497 | ||
498 | * elf32-arc.c (name_for_global_symbol): Changed assert. | |
499 | (get_replace_function): Created.: | |
500 | (struct arc_relocation_data): Changed to signed types. | |
501 | (defines S, L, P, PDATA): Casted to signed type. | |
502 | (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise. | |
503 | (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed. | |
504 | (arc_do_relocation): Changed. | |
505 | ||
94e5c971 CZ |
506 | 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com> |
507 | ||
508 | * elf32-arc.c (name_for_global_symbol): Added assert to check for | |
509 | symbol index. | |
510 | (elf_arc_relocate_section): Added and changed asserts, validating | |
511 | the synamic symbol index. | |
512 | (elf_arc_finish_dynamic_symbol): Do not fill the dynamic | |
513 | relocation if symbol has dynindx set to -1. | |
514 | ||
1f599d0e MR |
515 | 2016-04-05 Maciej W. Rozycki <macro@imgtec.com> |
516 | ||
517 | * elflink.c (elf_link_add_object_symbols): Always turn hidden | |
518 | and internal symbols which have a dynamic index into local | |
519 | ones. | |
520 | ||
67f101ee NC |
521 | 2016-04-04 Nick Clifton <nickc@redhat.com> |
522 | ||
523 | PR 19872 | |
524 | * dwarf2.c (parse_comp_unit): Skip warning about unrecognised | |
525 | version number if the version is zero. | |
526 | ||
7b15fa7a AM |
527 | 2016-04-01 Alan Modra <amodra@gmail.com> |
528 | ||
529 | PR 19886 | |
530 | * elflink.c (on_needed_list): Recursively check needed status. | |
531 | (elf_link_add_object_symbols): Adjust. | |
532 | ||
024ea11b SKS |
533 | 2016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> |
534 | ||
535 | * elf32-avr.c (avr_elf32_load_records_from_section): Free | |
536 | internal_relocs only if they aren't cached. | |
537 | ||
ed3056eb NC |
538 | 2016-03-29 Nick Clifton <nickc@redhat.com> |
539 | ||
540 | PR 17334 | |
541 | * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax | |
542 | assertion on the size of the got section to allow it to be bigger | |
543 | than the number of relocs. | |
544 | ||
e2b4fc91 TS |
545 | 2016-03-29 Toni Spets <toni.spets@iki.fi> |
546 | ||
547 | PR 19878 | |
548 | * coffcode.h (coff_write_object_contents): Revert accidental | |
549 | 2014-11-10 change. | |
550 | ||
a97fbc7e AM |
551 | 2016-03-22 Alan Modra <amodra@gmail.com> |
552 | ||
553 | PR 19850 | |
554 | * dwarf2.c (read_attribute_value): Skip info_ptr check for | |
555 | DW_FORM_flag_present. | |
556 | ||
9780e045 NC |
557 | 2016-03-22 Nick Clifton <nickc@redhat.com> |
558 | ||
96254e5c NC |
559 | * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an |
560 | architecture name for backwards compatibility. | |
561 | ||
7769fa97 NC |
562 | * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible |
563 | unbounded stack use. | |
564 | ||
9780e045 NC |
565 | * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a |
566 | sufficiently recent version of GCC. | |
567 | * configure: Regenerate. | |
568 | ||
6f4c0a42 AM |
569 | 2016-03-22 Alan Modra <amodra@gmail.com> |
570 | ||
571 | PR 19851 | |
572 | * plugin.c (try_load_plugin): Avoid -Wstack-usage warning. | |
573 | ||
8699fc3e AB |
574 | 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com> |
575 | ||
576 | * archures.c (bfd_mach_arc_nps400): Define. | |
577 | * bfd-in2.h: Regenerate. | |
578 | * cpu-arc.c (arch_info_struct): New entry for nps400, renumber | |
579 | some existing entries to make space. | |
580 | * elf32-arc.c (arc_elf_object_p): Add nps400 case. | |
581 | (arc_elf_final_write_processing): Likewise. | |
582 | ||
a9522a21 AB |
583 | 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com> |
584 | ||
585 | * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of | |
586 | EF_ARC_CPU_GENERIC. | |
587 | (arc_elf_final_write_processing): Don't bother setting cpu field | |
588 | in e_flags, this will have been set elsewhere. | |
589 | ||
c0334580 AB |
590 | 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com> |
591 | ||
592 | * elf32-arc.c (arc_elf_final_write_processing): Switch to using | |
593 | EF_ARC_MACH_MSK. | |
594 | ||
e1fa0163 NC |
595 | 2016-03-21 Nick Clifton <nickc@redhat.com> |
596 | ||
597 | * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144 | |
598 | * configure: Regenerate. | |
599 | * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of | |
600 | alloca with call to xmalloc. | |
601 | * elf32-nds32.c: Likewise. | |
602 | * elf64-hppa.c: Likewise. | |
603 | * elfxx-mips.c: Likewise. | |
604 | * pef.c: Likewise. | |
605 | * pei-x86_64.c: Likewise. | |
606 | * som.c: Likewise. | |
607 | * xsym.c: Likewise. | |
608 | ||
4e0c91e4 L |
609 | 2016-03-15 H.J. Lu <hongjiu.lu@intel.com> |
610 | ||
611 | PR ld/19827 | |
612 | * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol | |
613 | locally in PIE. | |
614 | (elf_i386_relocate_section): Likewise. | |
615 | * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. | |
616 | (elf_x86_64_relocate_section): Likewise. | |
617 | ||
4c10bbaa L |
618 | 2016-03-15 H.J. Lu <hongjiu.lu@intel.com> |
619 | ||
620 | PR ld/19807 | |
621 | * elf64-x86-64.c (elf_x86_64_relocate_section): Check | |
622 | no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S | |
623 | relocation overflow check. | |
624 | ||
fbe48798 L |
625 | 2016-03-14 H.J. Lu <hongjiu.lu@intel.com> |
626 | ||
627 | * bfd-in2.h: Regenerated. | |
628 | ||
37b01f6a DG |
629 | 2016-03-11 Dan Gissel <dgisselq@ieee.org> |
630 | ||
631 | PR 19713 | |
632 | * elf.c (_bfd_elf_section_offset): Ensure that the returned offset | |
633 | uses bytes not octets. | |
634 | * elflink.c (resolve_section): Likewise. | |
635 | Add a bfd parameter. | |
636 | (eval_section): Pass the input_bfd to resolve_section. | |
637 | (bfd_elf_perform_complex_relocation): Convert byte offset to | |
638 | octets before read and writing values. | |
639 | (elf_link_input_bfd): Add byte to octet conversions. | |
640 | (elf_reloc_link_order): Likewise. | |
641 | (elf_fixup_link_order): Likewise. | |
642 | (bfd_elf_final_link): Likewise. | |
643 | * reloc.c (_bfd_final_link_relocate): Likewise. | |
644 | * syms.c (_bfd_stab_section_find_nearest_line): Likewise. | |
645 | ||
3ed4ff97 NC |
646 | 2016-03-10 Nick Clifton <nickc@redhat.com> |
647 | ||
648 | * config.bfd: Mark the i370 target as obsolete. | |
649 | ||
4b05e0a7 PA |
650 | 2016-03-09 Pedro Alves <palves@redhat.com> |
651 | ||
652 | * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old | |
653 | gcc ABI)" to printable name. | |
654 | * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead | |
655 | of "v850-rh850" as printable name. | |
656 | ||
26c62da0 LW |
657 | 2016-03-09 Leon Winter <winter-gcc@bfw-online.de> |
658 | ||
659 | PR ld/19623 | |
660 | * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply | |
661 | relocations against absolute symbols. | |
662 | ||
03ee8583 AM |
663 | 2016-03-09 Alan Modra <amodra@gmail.com> |
664 | ||
665 | PR binutils/19775 | |
666 | * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero | |
667 | length elements in the archive. | |
668 | ||
9c1d7a08 L |
669 | 2016-03-08 H.J. Lu <hongjiu.lu@intel.com> |
670 | ||
671 | PR ld/19789 | |
672 | * elflink.c (elf_link_add_object_symbols): Create dynamic sections | |
673 | for -E/--dynamic-list only when not relocatable. | |
674 | ||
d1ed1c7d L |
675 | 2016-03-08 H.J. Lu <hongjiu.lu@intel.com> |
676 | ||
677 | PR ld/19784 | |
678 | * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference | |
679 | count for locally defined local IFUNC symbols in shared object. | |
680 | * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. | |
681 | ||
202ac193 L |
682 | 2016-03-08 H.J. Lu <hongjiu.lu@intel.com> |
683 | ||
684 | PR ld/19579 | |
685 | * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking | |
686 | together. | |
687 | ||
72f3b6aa CZ |
688 | 2016-03-08 Cupertino Miranda <Cupertino.Miranda@synopsys.com> |
689 | Andrew Burgess <andrew.burgess@embecosm.com> | |
690 | ||
691 | * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32. | |
692 | (arc_bfd_put_32): Becomes an alias for bfd_put_32. | |
693 | (arc_elf_howto_init): Added assert to validate relocations. | |
694 | (get_middle_endian_relocation): Delete. | |
695 | (middle_endian_convert): New function. | |
696 | (ME): Redefine, now does nothing. | |
697 | (IS_ME): New define. | |
698 | (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO' | |
699 | definition to call middle_endian_convert. Add a new local | |
700 | variable and make use of this throughout. Added call to | |
701 | arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations. | |
702 | ||
4fc87424 NC |
703 | 2016-03-07 Nick Clifton <nickc@redhat.com> |
704 | ||
705 | PR binutils/19775 | |
706 | * archive.c (bfd_generic_openr_next_archived_file): Allow zero | |
707 | length elements in the archive. | |
708 | ||
18f822a0 JW |
709 | 2016-03-07 Jiong Wang <jiong.wang@arm.com> |
710 | ||
711 | * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got | |
712 | section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced. | |
713 | ||
07492f66 L |
714 | 2016-03-04 H.J. Lu <hongjiu.lu@intel.com> |
715 | ||
716 | PR ld/19579 | |
717 | * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in | |
718 | executable as definition if the new definition comes from a | |
719 | shared library. | |
720 | ||
70a5df4f AM |
721 | 2016-03-02 Alan Modra <amodra@gmail.com> |
722 | ||
723 | * Makefile.in: Regenerate. | |
724 | * po/SRC-POTFILES.in: Regenerate. | |
725 | ||
841fdfcd CZ |
726 | 2016-02-29 Cupertino Miranda <cmiranda@synopsys.com> |
727 | ||
728 | * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the | |
729 | relocation addend when sections get merged. | |
730 | ||
7e458899 CZ |
731 | 2016-02-29 Cupertino Miranda <Cupertino.Miranda@synopsys.com> |
732 | ||
733 | * elf32-arc.c (arc_elf_final_write_processing): Add condition to | |
734 | the flag change. | |
735 | (elf_arc_relocate_section): Fixes and conditions to support PIE. | |
736 | Assert for code sections dynamic relocs. | |
737 | ||
c5e3a364 RL |
738 | 2016-02-26 Renlin Li <renlin.li@arm.com> |
739 | ||
740 | * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow | |
741 | check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2. | |
742 | ||
bae420ef L |
743 | 2016-02-26 H.J. Lu <hongjiu.lu@intel.com> |
744 | ||
745 | PR ld/19609 | |
746 | * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for | |
747 | load with locally bound symbols if PIC is false or there is no | |
748 | base register. Optimize branch to 0 if PIC is false. | |
749 | (elf_i386_relocate_section): Don't generate dynamic relocations | |
750 | against undefined weak symbols if PIC is false. | |
751 | * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization | |
752 | if we can't estimate relocation overflow with --no-relax. | |
753 | Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound | |
754 | symbols if PIC is false. Optimize branch to 0 if PIC is false. | |
755 | (elf_x86_64_relocate_section): Don't generate dynamic relocations | |
756 | against undefined weak symbols if PIC is false. | |
757 | ||
11e5f1ec L |
758 | 2016-02-26 H.J. Lu <hongjiu.lu@intel.com> |
759 | ||
760 | PR ld/19645 | |
761 | * bfd.c (bfd): Change flags to 20 bits. | |
762 | (BFD_CONVERT_ELF_COMMON): New. | |
763 | (BFD_USE_ELF_STT_COMMON): Likewise. | |
764 | (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and | |
765 | BFD_USE_ELF_STT_COMMON. | |
766 | (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise. | |
767 | * configure.ac: Remove --enable-elf-stt-common. | |
768 | * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for | |
769 | common symbol depending on BFD_CONVERT_ELF_COMMON and | |
770 | BFD_USE_ELF_STT_COMMON. | |
771 | * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for | |
772 | STT_COMMON. | |
773 | * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check | |
774 | STT_COMMON. | |
775 | (elf_link_convert_common_type): New function. | |
776 | (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for | |
777 | common symbol depending on BFD_CONVERT_ELF_COMMON and | |
778 | BFD_USE_ELF_STT_COMMON. Set sym.st_info after sym.st_shndx. | |
779 | * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON | |
780 | and BFD_USE_ELF_STT_COMMON to object_flags. | |
781 | (TARGET_LITTLE_SYM): Likewise. | |
782 | * syms.c (BSF_KEEP_G): Renamed to ... | |
783 | (BSF_ELF_COMMON): This. | |
784 | * bfd-in2.h: Regenerated. | |
785 | * config.in: Likewise. | |
786 | * configure: Likewise. | |
787 | ||
aec6b87e L |
788 | 2016-02-26 H.J. Lu <hongjiu.lu@intel.com> |
789 | ||
790 | PR ld/19636 | |
791 | PR ld/19704 | |
792 | PR ld/19719 | |
793 | * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New. | |
794 | (elf_i386_link_hash_entry): Add has_got_reloc and | |
795 | has_non_got_reloc. | |
796 | (elf_i386_link_hash_table): Add interp. | |
797 | (elf_i386_link_hash_newfunc): Initialize has_got_reloc and | |
798 | has_non_got_reloc. | |
799 | (elf_i386_copy_indirect_symbol): Copy has_got_reloc and | |
800 | has_non_got_reloc. | |
801 | (elf_i386_check_relocs): Set has_got_reloc and has_non_got_reloc. | |
802 | (elf_i386_fixup_symbol): New function. | |
803 | (elf_i386_pie_finish_undefweak_symbol): Likewise. | |
804 | (elf_i386_allocate_dynrelocs): Don't allocate space for dynamic | |
805 | relocations and discard relocations against resolved undefined | |
806 | weak symbols in executable. Don't make resolved undefined weak | |
807 | symbols in executable dynamic. Keep dynamic non-GOT/non-PLT | |
808 | relocation against undefined weak symbols in PIE. | |
809 | (elf_i386_size_dynamic_sections): Set interp to .interp section. | |
810 | (elf_i386_relocate_section): Don't generate dynamic relocations | |
811 | against resolved undefined weak symbols in PIE, except for | |
812 | R_386_PC32. | |
813 | (elf_i386_finish_dynamic_symbol): Keep PLT/GOT entries without | |
814 | dynamic PLT/GOT relocations for resolved undefined weak symbols. | |
815 | Don't generate dynamic relocation against resolved undefined weak | |
816 | symbol in executable. | |
817 | (elf_i386_finish_dynamic_sections): Call | |
818 | elf_i386_pie_finish_undefweak_symbol on all symbols in PIE. | |
819 | (elf_backend_fixup_symbol): New. | |
820 | * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New. | |
821 | (elf_x86_64_link_hash_entry): Add has_got_reloc and | |
822 | has_non_got_reloc. | |
823 | (elf_x86_64_link_hash_table): Add interp. | |
824 | (elf_x86_64_link_hash_newfunc): Initialize has_got_reloc and | |
825 | has_non_got_reloc. | |
826 | (elf_x86_64_copy_indirect_symbol): Copy has_got_reloc and | |
827 | has_non_got_reloc. | |
828 | (elf_x86_64_check_relocs): Set has_got_reloc and | |
829 | has_non_got_reloc. | |
830 | (elf_x86_64_fixup_symbol): New function. | |
831 | (elf_x86_64_pie_finish_undefweak_symbol): Likewise. | |
832 | (elf_x86_64_allocate_dynrelocs): Don't allocate space for dynamic | |
833 | relocations and discard relocations against resolved undefined | |
834 | weak symbols in executable. Don't make resolved undefined weak | |
835 | symbols in executable dynamic. | |
836 | (elf_x86_64_size_dynamic_sections): Set interp to .interp section. | |
837 | (elf_x86_64_relocate_section): Check relocation overflow for | |
838 | dynamic relocations against unresolved weak undefined symbols. | |
839 | Don't generate dynamic relocations against resolved weak | |
840 | undefined symbols in PIE. | |
841 | (elf_x86_64_finish_dynamic_symbol): Keep PLT/GOT entries without | |
842 | dynamic PLT/GOT relocations for resolved undefined weak symbols. | |
843 | Don't generate dynamic relocation against resolved undefined weak | |
844 | symbol in executable. | |
845 | (elf_x86_64_finish_dynamic_sections): Call | |
846 | elf_x86_64_pie_finish_undefweak_symbol on all symbols in PIE. | |
847 | (elf_backend_fixup_symbol): New. | |
848 | ||
b32547cd AM |
849 | 2016-02-26 Alan Modra <amodra@gmail.com> |
850 | ||
851 | * elf64-ppc.c (create_linkage_sections): Create sfpr when | |
852 | save_restore_funcs, rest of sections when not relocatable. | |
853 | (ppc64_elf_init_stub_bfd): Always call create_linkage_sections. | |
854 | (sfpr_define): Define all symbols on emitted code. | |
855 | (ppc64_elf_func_desc_adjust): Adjust for sfpr now being created | |
856 | when relocatable. Move sfpr_define loop earlier. | |
857 | ||
ef77d6af L |
858 | 2016-02-24 H.J. Lu <hongjiu.lu@intel.com> |
859 | ||
860 | * elf64-x86-64.c (elf_x86_64_need_pic): New function. | |
861 | (elf_x86_64_relocate_section): Use it. Replace | |
862 | x86_64_elf_howto_table[r_type] with howto. | |
863 | ||
0f550b3d L |
864 | 2016-02-24 H.J. Lu <hongjiu.lu@intel.com> |
865 | ||
866 | PR ld/19698 | |
867 | * elflink.c (bfd_elf_record_link_assignment): Set versioned if | |
868 | symbol version is unknown. | |
869 | ||
13f42277 L |
870 | 2016-02-24 H.J. Lu <hongjiu.lu@intel.com> |
871 | ||
872 | * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset | |
873 | to (bfd_vma) -1 when setting needs_plt to 0. | |
874 | * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise. | |
875 | ||
6b3b0ab8 L |
876 | 2016-02-23 H.J. Lu <hongjiu.lu@intel.com> |
877 | ||
878 | * elflink.c (bfd_elf_record_link_assignment): Check for shared | |
879 | library, instead of PIC, and don't check PDE when making linker | |
880 | assigned symbol dynamic. | |
881 | ||
17733f5b FS |
882 | 2016-02-23 Faraz Shahbazker <faraz.shahbazker@imgtec.com> |
883 | ||
884 | * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment | |
885 | ABIVERSION for non-executable stack. | |
886 | ||
47993b4a RF |
887 | 2016-02-23 Rich Felker <bugdal@aerifal.cx> |
888 | ||
889 | PR target/19516 | |
890 | * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): | |
891 | Always produce a RELATIVE reloc for a local symbol. | |
892 | ||
2d8dcb81 HPN |
893 | 2016-02-23 Hans-Peter Nilsson <hp@axis.com> |
894 | ||
895 | Fix test-case ld-elf/pr19617b | |
896 | * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't | |
897 | discard unused non-function symbols when --dynamic-list-data. | |
898 | ||
1a6e6083 L |
899 | 2016-02-22 H.J. Lu <hongjiu.lu@intel.com> |
900 | ||
901 | * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the | |
902 | dynsym section, even if it is empty, with dynamic sections. | |
903 | ||
75c1920b L |
904 | 2016-02-22 H.J. Lu <hongjiu.lu@intel.com> |
905 | ||
906 | * syms.c: Remove BSF_COMMON from comments. | |
907 | * bfd-in2.h: Regenerated. | |
908 | ||
9a228467 JW |
909 | 2016-02-22 Jiong Wang <jiong.wang@arm.com> |
910 | ||
911 | * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation | |
912 | for destination. Remove useless function parameters. | |
913 | (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub. | |
914 | ||
73768414 NC |
915 | 2016-02-19 Nick Clifton <nickc@redhat.com> |
916 | ||
e517df3d NC |
917 | PR ld/19629 |
918 | * aoutx.h (aout_link_add_symbols): Check for out of range string | |
919 | table offsets. | |
920 | ||
73768414 NC |
921 | PR ld/19628 |
922 | * reloc.c (bfd_generic_get_relocated_section_contents): Stop | |
923 | processing if we encounter a reloc without an associated symbol. | |
924 | ||
bf89386a L |
925 | 2016-02-18 H.J. Lu <hongjiu.lu@intel.com> |
926 | ||
927 | PR ld/19617 | |
928 | * elflink.c (elf_link_add_object_symbols): Always create dynamic | |
929 | sections for -E/--dynamic-list. | |
930 | ||
8f79b794 L |
931 | 2016-02-17 H.J. Lu <hongjiu.lu@intel.com> |
932 | ||
933 | * elf64-x86-64.c (elf_backend_omit_section_dynsym): New. Defined | |
934 | to bfd_true. | |
935 | ||
64bfc258 JM |
936 | 2016-02-16 Joseph Myers <joseph@codesourcery.com> |
937 | ||
938 | * plugin.c (plugin_vec): Set match priority to 255. | |
939 | * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When | |
940 | matching against the plugin vector, take priority from there not | |
941 | from TEMP. | |
942 | ||
9fb71ee4 NC |
943 | 2016-02-15 Nick Clifton <nickc@redhat.com> |
944 | ||
945 | * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values | |
946 | for length and type fields. Use a signed value for the | |
947 | suffix_length field. | |
948 | ||
32875eb1 L |
949 | 2016-02-10 H.J. Lu <hongjiu.lu@intel.com> |
950 | ||
951 | PR ld/19601 | |
952 | * elf32-i386.c (elf_i386_relocate_section): Mask off the least | |
953 | significant bit in GOT offset for R_386_GOT32X. | |
954 | ||
83da6e74 NC |
955 | 2016-02-10 Nick Clifton <nickc@redhat.com> |
956 | ||
957 | PR 19405 | |
958 | * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed | |
959 | immediate values. | |
960 | * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the | |
961 | number of messages about FDE encoding preventing .eh_frame_hdr | |
962 | generation. | |
963 | ||
027e9c75 NC |
964 | 2016-02-09 Nick Clifton <nickc@redhat.com> |
965 | ||
609332f1 NC |
966 | * oasys.c (oasys_archive_p): Fix indentation. |
967 | * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned | |
968 | constant for left shifting. | |
969 | ||
027e9c75 NC |
970 | * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more |
971 | helpful warning message to explain why certain AArch64 relocs | |
972 | might overflow. | |
973 | ||
6f57d046 SM |
974 | 2016-02-05 Simon Marchi <simon.marchi@ericsson.com> |
975 | ||
976 | * pe-mips.c (coff_mips_reloc): Fix formatting. | |
977 | ||
bdbca4e6 CM |
978 | 2016-02-05 Cupertino Miranda <Cupertino.Miranda@synopsys.com> |
979 | ||
980 | * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2 | |
981 | to bfd_mach_arc_arc600. | |
982 | ||
4f038ee5 AM |
983 | 2016-02-04 Alan Modra <amodra@gmail.com> |
984 | ||
985 | * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch | |
986 | for big-endian. | |
987 | ||
4a539596 L |
988 | 2016-02-02 H.J. Lu <hongjiu.lu@intel.com> |
989 | ||
990 | PR ld/19542 | |
991 | * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated | |
fb06f1c0 | 992 | distances in the compressed_size field of the output section. |
4a539596 | 993 | |
85fabe71 AM |
994 | 2016-02-02 Alan Modra <amodra@gmail.com> |
995 | ||
996 | * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict | |
997 | ELFv2 entry optimization. | |
998 | ||
14f2c699 L |
999 | 2016-02-02 H.J. Lu <hongjiu.lu@intel.com> |
1000 | ||
1001 | PR binutils/19547 | |
1002 | * elf.c (assign_section_numbers): Clear HAS_RELOC if there are | |
1003 | no relocations in relocatable files. | |
1004 | ||
aef28989 L |
1005 | 2016-02-01 H.J. Lu <hongjiu.lu@intel.com> |
1006 | ||
1007 | PR ld/19553 | |
1008 | * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED | |
1009 | if a symbol from a library loaded via DT_NEEDED doesn't match | |
1010 | the symbol referenced by regular object. | |
1011 | ||
655ed9ea NS |
1012 | 2016-02-01 Nathaniel Smith <njs@pobox.com> |
1013 | ||
1014 | * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both | |
1015 | CODE and DATA. | |
1016 | ||
ec1f73bb AM |
1017 | 2016-02-01 Alan Modra <amodra@gmail.com> |
1018 | ||
1019 | * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on | |
1020 | an out of range reloc_index. | |
1021 | * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise. | |
1022 | ||
b6471e6e KR |
1023 | 2016-02-01 Kamil Rytarowski <n54@gmx.com> |
1024 | ||
1025 | * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo. | |
1026 | (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c. | |
1027 | * Makefile.in: Regenerated. | |
1028 | ||
0bc7245a JK |
1029 | 2016-02-01 Jan Kratochvil <jan.kratochvil@redhat.com> |
1030 | ||
1031 | * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation. | |
1032 | ||
6d4b2867 JDA |
1033 | 2016-01-31 John David Anglin <danglin@gcc.gnu.org> |
1034 | ||
1035 | PR ld/19526 | |
1036 | * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output | |
1037 | files. | |
1038 | * elf64-hppa.c (elf32_hppa_final_link): Likewise. Remove retval. | |
1039 | ||
d9e3b590 L |
1040 | 2016-01-30 H.J. Lu <hongjiu.lu@intel.com> |
1041 | ||
1042 | PR ld/19539 | |
1043 | * elf32-i386.c (elf_i386_reloc_type_class): Check relocation | |
1044 | against STT_GNU_IFUNC symbol only with dynamic symbols. | |
1045 | * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise. | |
1046 | ||
bf150a0b L |
1047 | 2016-01-28 H.J. Lu <hongjiu.lu@intel.com> |
1048 | ||
1049 | PR binutils/19523 | |
1050 | * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to | |
1051 | decompress debug sections. | |
1052 | ||
840855c5 MR |
1053 | 2016-01-25 Maciej W. Rozycki <macro@imgtec.com> |
1054 | ||
1055 | * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to | |
1056 | `dynindx'. | |
1057 | ||
cf466c2a NC |
1058 | 2016-01-25 Nick Clifton <nickc@redhat.com> |
1059 | ||
1060 | PR target/19435 | |
1061 | * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free | |
1062 | dsym filename buffer. | |
1063 | ||
eb6b0cf4 MR |
1064 | 2016-01-24 Maciej W. Rozycki <macro@imgtec.com> |
1065 | ||
1066 | * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation. | |
1067 | ||
e67f83e5 MR |
1068 | 2016-01-24 Maciej W. Rozycki <macro@imgtec.com> |
1069 | ||
1070 | * elfxx-mips.c (BZ16_REG): Correct calculation. | |
1071 | ||
23a42089 NC |
1072 | 2016-01-21 Nick Clifton <nickc@redhat.com> |
1073 | ||
1074 | * elf32-arc.c (ADD_RELA): Fix compile time warning errors by | |
1075 | changing the type of _loc to be bfd_byte *. | |
1076 | (elf_arc_finish_dynamic_symbol): Likewise. | |
1077 | ||
aebf9be7 NC |
1078 | 2016-01-21 Nick Clifton <nickc@redhat.com> |
1079 | ||
1080 | PR ld/19455 | |
1081 | * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF | |
1082 | class of the linker stub bfd. | |
1083 | (elf32_arm_check_relocs): Skip check for pic format after | |
1084 | processing a vxWorks R_ARM_ABS12 reloc. | |
1085 | * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when | |
1086 | reporting a class mismatch. | |
1087 | ||
2f340668 JW |
1088 | 2016-01-21 Jiong Wang <jiong.wang@arm.com> |
1089 | ||
1090 | * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch | |
1091 | veneer for sym_sec != input_sec. | |
1092 | (elfNN_aarch64_size_stub): Support STT_SECTION symbol. | |
1093 | (elfNN_aarch64_final_link_relocate): Take rela addend into account when | |
1094 | calculation destination. | |
1095 | ||
aeb70569 AM |
1096 | 2016-01-21 Alan Modra <amodra@gmail.com> |
1097 | ||
1098 | * elf-linux-core.h (swap_linux_prpsinfo32_out): New function. | |
1099 | (swap_linux_prpsinfo64_out): New function. | |
1100 | (LINUX_PRPSINFO32_SWAP_FIELDS): Delete. | |
1101 | (LINUX_PRPSINFO64_SWAP_FIELDS): Delete. | |
1102 | * elf.c (elfcore_write_linux_prpsinfo32): Adjust. Don't memset. | |
1103 | (elfcore_write_linux_prpsinfo64): Likewise. | |
1104 | * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function. | |
1105 | (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete. | |
1106 | (elfcore_write_ppc_linux_prpsinfo32): Adjust. Don't memset. | |
1107 | ||
de64ce13 AM |
1108 | 2016-01-21 Alan Modra <amodra@gmail.com> |
1109 | ||
1110 | * elf-linux-core.h: Rename from elf-linux-psinfo.h. | |
1111 | * elf.c: Adjust #include. | |
1112 | * elf32-ppc.c: Don't #include elf-linux-psinfo.h | |
1113 | * Makefile.am (SOURCE_HFILES): Update. | |
1114 | * Makefile.in: Regenerate. | |
1115 | * po/SRC-PORFILES.in: Regenerate. | |
1116 | ||
c603b11b AM |
1117 | 2016-01-21 Alan Modra <amodra@gmail.com> |
1118 | ||
1119 | * configure.ac: Move corefile selection later in file. Move | |
1120 | tdefaults code immediately after other target vector code. | |
1121 | * configure: Regenerate. | |
1122 | ||
91f68a68 MG |
1123 | 2016-01-20 Mickael Guene <mickael.guene@st.com> |
1124 | ||
1125 | * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread | |
1126 | section using '.text.noread' pattern. | |
1127 | ||
5b2c414d JB |
1128 | 2016-01-19 John Baldwin <jhb@FreeBSD.org> |
1129 | ||
1130 | * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes. | |
1131 | ||
34e967a5 MC |
1132 | 2016-01-18 Miranda Cupertino <Cupertino.Miranda@synopsys.com> |
1133 | Zissulescu Claudiu <Claudiu.Zissulescu@synopsys.com> | |
1134 | ||
1135 | * arc-plt.def: New file. | |
1136 | * arc-plt.h: Likewise. | |
1137 | * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry, | |
1138 | elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry, | |
1139 | elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry, | |
1140 | elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove. | |
1141 | (name_for_global_symbol): Added. | |
1142 | (ADD_RELA): Helper to create dynamic relocs. | |
1143 | (new_got_entry_to_list): Create a new got entry in linked list. | |
1144 | (symbol_has_entry_of_type): Search for specific type of entry in | |
1145 | list. | |
1146 | (is_reloc_for_GOT): return FALSE for any TLS related relocs. | |
1147 | (is_reloc_for_TLS, arc_elf_set_private_flags) | |
1148 | (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data) | |
1149 | (arc_elf_merge_private_bfd_data): New functions. | |
1150 | (debug_arc_reloc): Cleaned debug info printing. | |
1151 | (PDATA reloc): Changed not to perform address alignment. | |
1152 | (reverse_me): Added. Fix for ARC_32 relocs. | |
1153 | (arc_do_relocation): Return bfd_reloc_of when no relocation should | |
1154 | occur. | |
1155 | (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets. | |
1156 | Changed function to access an array of list of GOT entries instead | |
1157 | of just an array of offsets. | |
1158 | (elf_arc_relocate_section): Added support for PIC and TLS related relocations. | |
1159 | (elf_arc_check_relocs): Likewise. | |
1160 | (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol, | |
1161 | (elf_arc_finish_dynamic_sections): Likewise | |
1162 | (arc_create_dynamic_sections): Modified conditions to create | |
1163 | dynamic sections. | |
1164 | (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro. | |
1165 | (plt_do_relocs_for_symbol, relocate_plt_for_symbol) | |
1166 | (relocate_plt_for_entry): Changed to support new way to define PLT | |
1167 | related code. | |
1168 | (add_symbol_to_plt): Likewise. | |
1169 | (arc_elf_link_hash_table_create): New function. | |
1170 | ||
9ae678af NC |
1171 | 2016-01-18 Nick Clifton <nickc@redhat.com> |
1172 | ||
1173 | PR ld/19440 | |
1174 | * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external | |
1175 | section number into internal section number. | |
1176 | * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise. | |
1177 | * coffswap.h (coff_swap_sym_in): Likewise. | |
1178 | * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise. | |
1179 | * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal | |
1180 | section number field is big enough to hold the external value. | |
1181 | ||
5c14705f AM |
1182 | 2016-01-17 Alan Modra <amodra@gmail.com> |
1183 | ||
1184 | * configure: Regenerate. | |
1185 | ||
ac06903d YU |
1186 | 2016-01-12 Yury Usishchev <y.usishchev@samsung.com> |
1187 | ||
1188 | * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind | |
1189 | when address in first unwind entry does not match start of | |
1190 | section. | |
1191 | ||
109575d7 JW |
1192 | 2016-01-08 Richard Sandiford <richard.sandiford@arm.com> |
1193 | Jiong Wang <jiong.wang@arm.com> | |
1194 | ||
1195 | PR ld/19368 | |
1196 | * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to | |
1197 | reloc_class_ifunc. | |
1198 | ||
b05a65d0 AB |
1199 | 2016-01-06 Andrew Burgess <andrew.burgess@embecosm.com> |
1200 | ||
1201 | * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to | |
1202 | place 'R_' before the reloc name returned. | |
1203 | (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before | |
1204 | the relocation string. | |
1205 | ||
a3dc0a7f MR |
1206 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1207 | ||
1208 | * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function, | |
1209 | factored out from... | |
1210 | (_bfd_mips_elf_merge_private_bfd_data): ... here. | |
1211 | ||
d537eeb5 MR |
1212 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1213 | ||
1214 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move | |
1215 | attribute check after ELF file header flag check. | |
1216 | ||
43d223b5 MR |
1217 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1218 | ||
1219 | * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the | |
1220 | return status from `_bfd_elf_merge_object_attributes'. | |
1221 | ||
b2e9744f MR |
1222 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1223 | ||
1224 | * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function, | |
1225 | factored out from... | |
1226 | (_bfd_mips_elf_merge_private_bfd_data): ... here. | |
1227 | ||
28d45e28 MR |
1228 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1229 | ||
1230 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the | |
1231 | handling of input MIPS ABI flags together. | |
1232 | ||
23ba6f18 MR |
1233 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1234 | ||
1235 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress | |
1236 | attribute checks for null input. | |
1237 | ||
cf8502c1 MR |
1238 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1239 | ||
1240 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local | |
1241 | pointers to target data. | |
1242 | ||
dcb1c796 MR |
1243 | 2016-01-04 Maciej W. Rozycki <macro@imgtec.com> |
1244 | ||
1245 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct | |
1246 | an FP ABI warning. | |
1247 | ||
6f2750fe AM |
1248 | 2016-01-01 Alan Modra <amodra@gmail.com> |
1249 | ||
1250 | Update year range in copyright notice of all files. | |
1251 | ||
3499769a AM |
1252 | For older changes see ChangeLog-2015 and doc/ChangeLog-0415 |
1253 | \f | |
1254 | Copyright (C) 2016 Free Software Foundation, Inc. | |
1255 | ||
1256 | Copying and distribution of this file, with or without modification, | |
1257 | are permitted in any medium without royalty provided the copyright | |
1258 | notice and this notice are preserved. | |
1259 | ||
1260 | Local Variables: | |
1261 | mode: change-log | |
1262 | left-margin: 8 | |
1263 | fill-column: 74 | |
1264 | version-control: never | |
1265 | End: |