Make tls_mask unsigned in elf32-ppc.c
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2018-03-21 Alan Modra <amodra@gmail.com>
2
3 * elf32-ppc.c (struct ppc_elf_link_hash_entry): Make tls_mask
4 field unsigned.
5 (update_local_sym_info): Likewise for local_got_tls_masks.
6 (ppc_elf_tls_optimize): Likewise for lgot_masks.
7
8 2018-03-21 Alan Modra <amodra@gmail.com>
9
10 * elf64-ppc.c (ppc_size_one_stub): Fix comment typo.
11 (ppc64_elf_layout_multitoc): Allocate relocs for tprel as we
12 do in size_dynamic_sections.
13
14 2018-03-21 Alan Modra <amodra@gmail.com>
15
16 * elf64-ppc.c (ppc64_elf_relocate_section): Don't access rel[1]
17 without first checking array bounds.
18 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
19
20 2018-03-20 H.J. Lu <hongjiu.lu@intel.com>
21
22 PR ld/22983
23 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Set
24 non_ir_ref_dynamic if a symbol is made dynamic by --dynamic-list.
25
26 2018-03-19 Nick Clifton <nickc@redhat.com>
27
28 * po/es.po: Updated Spanish translation.
29
30 2018-03-15 Max Filippov <jcmvbkbc@gmail.com>
31
32 * elf32-xtensa.c (xlate_map_entry): Change types of address
33 fields from 'unsigned' to 'bfd_vma'.
34 (xlate_offset_with_removed_text): Use struct xlate_map_entry as
35 the key argument to bsearch. Allow offsets past the end of a
36 section, use the last map entry for translation of such offsets.
37
38 2018-03-15 Kuan-Lin Chen <kuanlinchentw@gmail.com>
39
40 * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Removed.
41 Not support the target feature.
42 (nds32_elf_ex9_itb_base): Likewise.
43 (nds32_elf_ex9_import_table): Likewise.
44 (nds32_elf_ex9_finish): Likewise.
45 (nds32_elf_ex9_reloc_jmp): Likewise.
46 (nds32_elf_get_insn_with_reg): Likewise.
47 (nds32_get_local_syms): Likewise.
48 (nds32_elf_ex9_replace_instruction): Likewise.
49 (nds32_elf_ifc_calc): Likewise.
50 (nds32_elf_ifc_finish): Likewise.
51 (nds32_elf_ifc_replace): Likewise.
52 (nds32_elf_ifc_reloc): Likewise.
53
54 2018-03-14 Alan Modra <amodra@gmail.com>
55
56 * elf64-ppc.c (sfpr_define): Adjust for stub_sec size having
57 sfpr size added before defining alias symbols.
58 (ppc64_elf_build_stubs): Add stub section padding before
59 copying sfpr contents and defining save/restore alias symbols.
60
61 2018-03-14 H.J. Lu <hongjiu.lu@intel.com>
62
63 PR ld/20882
64 * elflink.c (elf_gc_mark_debug_section): Also check the local
65 debug definition section.
66
67 2018-03-13 Nick Clifton <nickc@redhat.com>
68
69 PR 22113
70 * pei-x86_64.c (pex64_get_unwind_info): Change to a boolean
71 function. Add an end address parameter. Check access of the data
72 pointer to make sure that they do not extend beyond the end
73 address. Return FALSE if any check fails. Add the end address
74 pointer to the ui structure.
75 (pex64_xdata_print_uwd_codes): Check accesses of the raw unwind
76 codes to make sure that they do not extend beyond the end address
77 pointer. Print an error message and return immediately if any
78 check fails.
79
80 2018-03-09 Nick Clifton <nickc@redhat.com>
81
82 * elf64-s390.c (elf_s390_relocate_section): Move check for
83 relocations against non-allocated sections to before the code that
84 handles ifunc relocations.
85 * elf32-s390.c (elf_s390_relocate_section): Likewise.
86 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Treat
87 relocs against IFUNC symbols in non-allocated sections as relocs
88 against FUNC symbols.
89 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
90
91 2018-03-08 H.J. Lu <hongjiu.lu@intel.com>
92
93 PR ld/22929
94 * elf32-i386.c (elf_i386_relocate_section): Treat relocation
95 against IFUNC symbol in SHT_NOTE section without SHF_ALLOC as
96 relocation against FUNC symbol.
97 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
98
99 2018-03-07 Renlin Li <renlin.li@arm.com>
100
101 PR ld/20402
102 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Check absolute
103 symbol, and don't emit relocation in specific case.
104
105 2018-03-07 Alan Modra <amodra@gmail.com>
106
107 * elf64-mips.c (mips_elf64_rtype_to_howto): Return NULL on error.
108 (mips_elf64_slurp_one_reloc_table): Pass on error.
109
110 2018-03-03 James Cowgill <james.cowgill@mips.com>
111 Maciej W. Rozycki <macro@mips.com>
112
113 PR ld/21900
114 * elfxx-mips.c (mips_elf_calculate_relocation): Only return
115 after calling `undefined_symbol' hook if this is an error
116 condition. Assume the value of 0 for the symbol requested
117 otherwise.
118
119 2018-03-02 Jim Wilson <jimw@sifive.com>
120
121 PR 22903
122 * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Add 8 bytes for branch
123 and nop instead of 4.
124 (elfNN_arch64_build_stubs): Add nop after branch. Increase size by
125 8 instead of 4.
126
127 2018-03-01 Jim Wilson <jimw@sifive.com>
128
129 PR 22756
130 * elfnn-riscv.c (riscv_relax_delete_bytes): When adjust st_size, use
131 else if instead of if.
132
133 2018-03-01 Alan Modra <amodra@gmail.com>
134
135 * elf32-ft32.c (ft32_info_to_howto_rela): Correct range test.
136
137 2018-02-28 Alan Modra <amodra@gmail.com>
138
139 PR 22887
140 * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
141
142 2018-02-28 Nick Clifton <nickc@redhat.com>
143
144 PR 22895
145 PR 22893
146 * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
147 pointer. Drop unused abfd parameter. Check the size of the block
148 before initialising the data field. Return the end pointer if the
149 size is invalid.
150 (read_attribute_value): Adjust invocations of read_n_bytes.
151
152 PR 22894
153 * dwarf1.c (parse_die): Check the length of form blocks before
154 advancing the data pointer.
155
156 2018-02-28 Alan Modra <amodra@gmail.com>
157
158 PR 22887
159 * aoutx.h (translate_symbol_table): Print an error message and set
160 bfd_error on finding an invalid name string offset.
161
162 2018-02-27 H.J. Lu <hongjiu.lu@intel.com>
163
164 * config.in: Regenerated.
165 * configure: Likewise.
166 * configure.ac: Add --enable-separate-code.
167 (DEFAULT_LD_Z_SEPARATE_CODE): New AC_DEFINE_UNQUOTED. Default
168 to 1 for Linux/x86 targets,
169 * elf64-x86-64.c (ELF_MAXPAGESIZE): Set to 0x1000 if
170 DEFAULT_LD_Z_SEPARATE_CODE is 1.
171
172 2018-02-27 Nick Clifton <nickc@redhat.com>
173
174 * aout-cris.c (swap_ext_reloc_out): Standadize error/warning
175 message.
176 * elf-hppa.h (elf_hppa_info_to_howto_rel): Likewise.
177 * elf32-i386.c (elf_i386_reloc_type_lookup): Likewise.
178 * elf32-xtensa.c (elf_xtensa_reloc_type_lookup): Likewise.
179 * elf64-ppc.c (ppc64_elf_reloc_type_lookup): Likewise.
180 * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
181 * elf64-sh64.c (sh_elf64_info_to_howto): Likewise.
182 * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
183 * elfxx-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Likewise.
184 * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
185
186 PR 22875
187 * elf-bfd.h (struct elf_backend_data): Change the return type of
188 the elf_info_to_howto and elf_info_to_howto_rel function pointers
189 to bfd_boolean.
190 * elfcode.h (elf_slurp_reloc_table_from_section): Check the return
191 value from the info_to_howto function and fail if that function
192 failed.
193 * elf32-h8300.c (elf32_h8_relocate_section): Check return value
194 from the info_to_howto function.
195 (elf32_h8_relax_section): Likewise.
196 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
197 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
198 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
199 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
200 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
201 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
202 * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise.
203 * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise.
204 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
205 * elfnn-riscv.c (riscv_elf_check_relocs): Likewise.
206 (riscv_elf_relocate_section): Likewise.
207 * elf-hppa.h (elf_hppa_info_to_howto): Change return type to
208 bfd_boolean. Issue an error message, set an error value and
209 return FALSE if the reloc is not recognized.
210 (elf_hppa_info_to_howto_rel): Likewise.
211 * elf-m10200.c (mn10200_info_to_howto): Likewise.
212 * elf-m10300.c (mn10300_info_to_howto): Likewise.
213 * elf.c (_bfd_elf_no_info_to_howto): Likewise.
214 * elf32-arc.c (arc_info_to_howto_rel): Likewise.
215 * elf32-arm.c (elf32_arm_info_to_howto): Likewise.
216 * elf32-avr.c (avr_info_to_howto_rela): Likewise.
217 * elf32-bfin.c (bfin_info_to_howto): Likewise.
218 * elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
219 * elf32-cr16c.c (elf_cr16c_info_to_howto): Likewise.
220 * elf32-cris.c (elf_cr16c_info_to_howto_rel)
221 (cris_info_to_howto_rela): Likewise.
222 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
223 * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
224 * elf32-d30v.c (d30v_info_to_howto_rel, d30v_info_to_howto_rela):
225 Likewise.
226 * elf32-dlx.c (dlx_rtype_to_howto, elf32_dlx_info_to_howto)
227 (elf32_dlx_info_to_howto_rel): Likewise.
228 * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
229 * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
230 * elf32-frv.c (frv_info_to_howto_rela)
231 (frvfdpic_info_to_howto_rel): Likewise.
232 * elf32-ft32.c (ft32_info_to_howto_rela): Likewise.
233 * elf32-gen.c (elf_generic_info_to_howto)
234 (elf_generic_info_to_howto_rel): Likewise.
235 * elf32-h8300.c (elf32_h8_info_to_howto)
236 (elf32_h8_info_to_howto_rel): Likewise.
237 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
238 * elf32-i386.c (elf_i386_reloc_type_lookup)
239 (elf_i386_rtype_to_howto, elf_i386_info_to_howto_rel): Likewise.
240 * elf32-i860.c (lookup_howto, elf32_i860_info_to_howto_rela):
241 Likewise.
242 * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
243 * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
244 * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
245 * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
246 * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
247 * elf32-m32r.c (m32r_info_to_howto_rel, m32r_info_to_howto):
248 Likewise.
249 * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
250 * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
251 * elf32-m68k.c (rtype_to_howto): Likewise.
252 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
253 * elf32-mep.c (mep_info_to_howto_rela): Likewise.
254 * elf32-metag.c (metag_info_to_howto_rela): Likewise.
255 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
256 * elf32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela):
257 Likewise.
258 * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
259 * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
260 * elf32-mt.c (mt_info_to_howto_rela): Likewise.
261 * elf32-nds32.c (nds32_info_to_howto_rel, nds32_info_to_howto):
262 Likewise.
263 * elf32-nios2.c (nios2_elf32_info_to_howto): Likewise.
264 * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
265 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
266 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
267 * elf32-pru.c (pru_elf32_info_to_howto): Likewise.
268 * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
269 * elf32-rx.c (rx_info_to_howto_rela): Likewise.
270 * elf32-s390.c (elf_s390_info_to_howto): Likewise.
271 * elf32-score.c (s3_bfd_score_info_to_howto)
272 (_bfd_score_info_to_howto): Likewise.
273 * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
274 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
275 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
276 * elf32-tic6x.c (elf32_tic6x_info_to_howto)
277 (elf32_tic6x_info_to_howto_rel): Likewise.
278 * elf32-tilepro.c (tilepro_info_to_howto_rela): Likewise.
279 * elf32-v850.c (v850_elf_info_to_howto_rel)
280 (v850_elf_info_to_howto_rela, v800_elf_info_to_howto): Likewise.
281 * elf32-vax.c (rtype_to_howto): Likewise.
282 * elf32-visium.c (visium_info_to_howto_rela): Likewise.
283 * elf32-wasm32.c (elf32_wasm32_rtype_to_howto)
284 (elf32_wasm32_info_to_howto_rela): Likewise.
285 * elf32-xc16x.c (elf32_xc16x_info_to_howto): Likewise.
286 * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
287 * elf32-xstormy16.c (xstormy16_info_to_howto_rela): Likewise.
288 * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
289 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
290 * elf64-gen.c (elf_generic_info_to_howto)
291 (elf_generic_info_to_howto_rel): Likewise.
292 * elf64-ia64-vms.c (elf64_ia64_info_to_howto): Likewise.
293 * elf64-mips.c (mips_elf64_info_to_howto_rela): Likewise.
294 * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
295 * elf64-ppc.c (ppc64_elf_info_to_howto): Likewise.
296 * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
297 * elf64-sh64.c (elf_s390_info_to_howto, sh_elf64_info_to_howto):
298 Likewise.
299 * elf64-x86-64.c (elf_x86_64_info_to_howto): Likewise.
300 * elfn32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela):
301 Likewise.
302 * elfnn-aarch64.c (elfNN_aarch64_info_to_howto): Likewise.
303 * elfnn-ia64.c (elfNN_ia64_info_to_howto): Likewise.
304 * elfnn-riscv.c (riscv_info_to_howto_rela): Likewise.
305 * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
306 * elfxx-sparc.c (_bfd_sparc_elf_info_to_howto): Likewise.
307 * elfxx-tilegx.c (tilegx_info_to_howto_rela): Likewise.
308 * elf32-score.h (s7_bfd_score_info_to_howto): Update prototype.
309 * elfxx-sparc.h (_bfd_sparc_elf_info_to_howto): Update prototype.
310 * elfxx-tilegx.h (tilegx_info_to_howto_rela): Update prototype.
311 * elfxx-target.h (elf_info_to_howto, elf_info_to_howto_rel):
312 Default to NULL.
313
314 2018-02-26 Jim Wilson <jimw@sifive.com>
315 Stephan Schreiber <info@fs-driver.org>
316
317 PR 15904
318 * elfnn-ia64.c (elfNN_ia64_relax_section): After ia64_elf_relax_brl
319 call, set changed_contents and changed_relocs. Likewise after
320 successful ia64_elf_relax_br call.
321
322 2018-02-26 Alan Modra <amodra@gmail.com>
323
324 * elf.c (assign_file_positions_except_relocs): Don't segfault
325 when actual number of phdrs is less than allocated. Delete
326 outdated comment. Formatting.
327
328 2018-02-26 Alan Modra <amodra@gmail.com>
329
330 * elf-m10300.c, * elf-s390-common.c, * elf32-arc.c, * elf32-cris.c,
331 * elf32-dlx.c, * elf32-frv.c, * elf32-i370.c, * elf32-lm32.c,
332 * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c,
333 * elf32-microblaze.c, * elf32-msp430.c, * elf32-nds32.c,
334 * elf32-nios2.c, * elf32-or1k.c, * elf32-rl78.c, * elf32-rx.c,
335 * elf32-score.c, * elf32-score7.c, * elf32-sh-symbian.c,
336 * elf32-sh.c, * elf32-spu.c, * elf32-v850.c, * elf32-xtensa.c,
337 * elf64-alpha.c, * elf64-ia64-vms.c, * elf64-mmix.c,
338 * elf64-sh64.c, * elf64-sparc.c, * elfnn-ia64.c, * elfxx-tilegx.c,
339 * mmo.c, * osf-core.c, * srec.c, * vms-alpha.c: Standardize
340 error/warning messages.
341
342 2018-02-26 Alan Modra <amodra@gmail.com>
343
344 * archive.c, * bfd.c, * linker.c, * reloc.c, * stabs.c,
345 * syms.c: Standardize error/warning messages.
346
347 2018-02-26 Alan Modra <amodra@gmail.com>
348
349 * aout-adobe.c, * aout-cris.c, * i386linux.c, * m68klinux.c,
350 * sparclinux.c, * coff-alpha.c, * coff-arm.c, * coff-mcore.c,
351 * coffcode.h, * coffgen.c, * cofflink.c, * ecoff.c, * pe-mips.c,
352 * peXXigen.c, * peicode.h: Standardize error/warning messages.
353
354 2018-02-26 Alan Modra <amodra@gmail.com>
355
356 * elf32-arm.c, * elfnn-aarch64.c: Standardize error/warning messages.
357
358 2018-02-26 Alan Modra <amodra@gmail.com>
359
360 * elfxx-mips.c: Standardize error/warning messages.
361
362 2018-02-26 Alan Modra <amodra@gmail.com>
363
364 * dwarf2.c, * elf-attrs.c, * elf-eh-frame.c, * elf.c, * elf32-gen.c,
365 * elflink.c: Standardize error/warning messages. Replace use of
366 linker callback einfo with _bfd_error_handler when possible.
367
368 2018-02-26 Alan Modra <amodra@gmail.com>
369
370 * aoutx.h, * coff-alpha.c, * coff-i860.c, * coff-m68k.c,
371 * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c,
372 * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, * coff-w65.c,
373 * elf-bfd.h, * elf-m10300.c, * elf.c, * elf32-avr.c, * elf32-bfin.c,
374 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
375 * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
376 * elf32-fr30.c, * elf32-frv.c, * elf32-i370.c, * elf32-i386.c,
377 * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
378 * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
379 * elf32-m68k.c, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
380 * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
381 * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-or1k.c,
382 * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-rx.c,
383 * elf32-s390.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
384 * elf32-v850.c, * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
385 * elf32-xgate.c, * elf32-xtensa.c, * elf64-alpha.c,
386 * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c,
387 * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
388 * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
389 * elfnn-riscv.c, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-riscv.h,
390 * elfxx-sparc.c, * elfxx-sparc.h, * reloc.c: Standardize
391 unrecognized/unsupported reloc message.
392
393 2018-02-26 Alan Modra <amodra@gmail.com>
394
395 * elf32-ppc.c: Standardize error/warning messages. Use
396 _bfd_error_handler rather than einfo when einfo features not used.
397 * elf64-ppc.c: Likewise.
398
399 2018-02-23 Alan Modra <amodra@gmail.com>
400
401 PR 22881
402 * elf.c (assign_file_positions_for_non_load_sections): Remove RELRO
403 segment if no matching LOAD segment.
404
405 2018-02-23 Kuan-Lin Chen <kuanlinchentw@gmail.com>
406
407 * elf32-nds32.h: Define mask for ict_model.
408
409 2018-02-20 Jason Duerstock <jason.duerstock@gmail.com>
410
411 * elfnn-ia64.c (elf_backend_can_gc_sections): Enable.
412
413 2018-02-19 Maciej W. Rozycki <macro@mips.com>
414
415 Revert
416 2018-01-12 Vlad Ivanov <vlad@ivanov.email>
417
418 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
419 .reginfo section has wrong size.
420
421 2018-02-19 Maciej W. Rozycki <macro@mips.com>
422
423 * elfxx-mips.c (_bfd_mips_elf_always_size_sections): Set
424 SEC_FIXED_SIZE and SEC_HAS_CONTENTS flags for `.reginfo' and
425 `.MIPS.abiflags' sections.
426 (_bfd_mips_elf_final_link): Avoid reading beyond `.reginfo'
427 section's end.
428
429 2018-02-19 Maciej W. Rozycki <macro@mips.com>
430
431 * section.c (SEC_FIXED_SIZE): New macro.
432 * bfd-in2.h: Regenerate.
433
434 2018-02-19 Maciej W. Rozycki <macro@mips.com>
435
436 * section.c (SEC_HAS_GOT_REF): Remove macro.
437 * bfd-in2.h: Regenerate.
438
439 2018-02-19 Alan Modra <amodra@gmail.com>
440
441 * elf-attrs.c (_bfd_elf_parse_attributes): Correct _bfd_error_handler
442 arguments.
443 * elfxx-mips.c (_bfd_mips_elf_final_link): Likewise.
444 * elfnn-riscv.c (_bfd_riscv_relax_align): Likewise.
445 (_bfd_riscv_relax_pc): Likewise and fix typos.
446 * libbfd-in.h (_bfd_error_handler): Add attribute printf.
447 * libbfd.h: Regenerate.
448
449 2018-02-19 Alan Modra <amodra@gmail.com>
450
451 * dwarf2.c (read_section): Don't use 'll' format modifier.
452 (find_abstract_instance): Likewise.
453 * elfcore.h (elf_core_file_p): Likewise.
454
455 2018-02-19 Alan Modra <amodra@gmail.com>
456
457 * bfd-in.h: Include inttypes.h or if not available define
458 PRId64, PRIu64 and PRIx64.
459 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Remove support for L
460 modifier to print bfd_vma.
461 * coff-arm.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c,
462 * coff-sh.c, * coff-tic80.c, * coffcode.h, * coffgen.c, * cofflink.c,
463 * compress.c, * dwarf2.c, * elf-m10300.c, * elf.c, * elf32-arc.c,
464 * elf32-arm.c, * elf32-bfin.c, * elf32-cris.c, * elf32-hppa.c,
465 * elf32-i386.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32r.c,
466 * elf32-m68k.c, * elf32-metag.c, * elf32-nds32.c, * elf32-nios2.c,
467 * elf32-ppc.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
468 * elf32-score7.c, * elf32-sh.c, * elf32-sh64.c, * elf32-spu.c,
469 * elf32-tic6x.c, * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c,
470 * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
471 * elf64-mmix.c, * elf64-s390.c, * elf64-sh64.c, * elf64-x86-64.c,
472 * elfcode.h, * elfcore.h, * elflink.c, * elfnn-aarch64.c,
473 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, * elfxx-sparc.c,
474 * elfxx-tilegx.c, * ieee.c, * ihex.c, * mach-o.c, * merge.c, * mmo.c,
475 * peXXigen.c, * xcofflink.c: Replace use of Lx modifier with PRIx64,
476 and cast input to uint64_t, and similarly for Ld and Lu.
477 * bfd-in2.h: Regenerate.
478
479 2018-02-19 Alan Modra <amodra@gmail.com>
480
481 * elf32-arm.c, * elf32-hppa.c, * elf32-lm32.c, * elf32-m32r.c,
482 * elf32-metag.c, * elf32-nds32.c, * elf32-or1k.c, * elf32-ppc.c,
483 * elf32-s390.c, * elf32-sh.c, * elf32-tic6x.c, * elf32-tilepro.c,
484 * elf64-ppc.c, * elf64-s390.c, * elflink.c, * elfnn-aarch64.c,
485 * elfnn-riscv.c, * elfxx-sparc.c, * elfxx-tilegx.c, * elfxx-x86.c,
486 * reloc.c: Replace use of %R and %T in format strings passed to
487 einfo and friends by %pR and %pT.
488
489 2018-02-19 Alan Modra <amodra@gmail.com>
490
491 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Handle %pA and %pB in place
492 of %A and %B.
493 * aout-adobe.c: Update all messages using %A and %B.
494 * aout-cris.c: Likewise.
495 * aoutx.h: Likewise.
496 * archive.c: Likewise.
497 * binary.c: Likewise.
498 * cache.c: Likewise.
499 * coff-alpha.c: Likewise.
500 * coff-arm.c: Likewise.
501 * coff-i860.c: Likewise.
502 * coff-mcore.c: Likewise.
503 * coff-ppc.c: Likewise.
504 * coff-rs6000.c: Likewise.
505 * coff-sh.c: Likewise.
506 * coff-tic4x.c: Likewise.
507 * coff-tic54x.c: Likewise.
508 * coff-tic80.c: Likewise.
509 * coff64-rs6000.c: Likewise.
510 * coffcode.h: Likewise.
511 * coffgen.c: Likewise.
512 * cofflink.c: Likewise.
513 * coffswap.h: Likewise.
514 * compress.c: Likewise.
515 * cpu-arm.c: Likewise.
516 * ecoff.c: Likewise.
517 * elf-attrs.c: Likewise.
518 * elf-eh-frame.c: Likewise.
519 * elf-ifunc.c: Likewise.
520 * elf-m10300.c: Likewise.
521 * elf-properties.c: Likewise.
522 * elf-s390-common.c: Likewise.
523 * elf.c: Likewise.
524 * elf32-arc.c: Likewise.
525 * elf32-arm.c: Likewise.
526 * elf32-avr.c: Likewise.
527 * elf32-bfin.c: Likewise.
528 * elf32-cr16.c: Likewise.
529 * elf32-cr16c.c: Likewise.
530 * elf32-cris.c: Likewise.
531 * elf32-crx.c: Likewise.
532 * elf32-d10v.c: Likewise.
533 * elf32-d30v.c: Likewise.
534 * elf32-epiphany.c: Likewise.
535 * elf32-fr30.c: Likewise.
536 * elf32-frv.c: Likewise.
537 * elf32-gen.c: Likewise.
538 * elf32-hppa.c: Likewise.
539 * elf32-i370.c: Likewise.
540 * elf32-i386.c: Likewise.
541 * elf32-i960.c: Likewise.
542 * elf32-ip2k.c: Likewise.
543 * elf32-iq2000.c: Likewise.
544 * elf32-lm32.c: Likewise.
545 * elf32-m32c.c: Likewise.
546 * elf32-m32r.c: Likewise.
547 * elf32-m68hc11.c: Likewise.
548 * elf32-m68hc12.c: Likewise.
549 * elf32-m68hc1x.c: Likewise.
550 * elf32-m68k.c: Likewise.
551 * elf32-mcore.c: Likewise.
552 * elf32-mep.c: Likewise.
553 * elf32-metag.c: Likewise.
554 * elf32-microblaze.c: Likewise.
555 * elf32-moxie.c: Likewise.
556 * elf32-msp430.c: Likewise.
557 * elf32-mt.c: Likewise.
558 * elf32-nds32.c: Likewise.
559 * elf32-nios2.c: Likewise.
560 * elf32-or1k.c: Likewise.
561 * elf32-pj.c: Likewise.
562 * elf32-ppc.c: Likewise.
563 * elf32-rl78.c: Likewise.
564 * elf32-rx.c: Likewise.
565 * elf32-s390.c: Likewise.
566 * elf32-score.c: Likewise.
567 * elf32-score7.c: Likewise.
568 * elf32-sh-symbian.c: Likewise.
569 * elf32-sh.c: Likewise.
570 * elf32-sh64.c: Likewise.
571 * elf32-sparc.c: Likewise.
572 * elf32-spu.c: Likewise.
573 * elf32-tic6x.c: Likewise.
574 * elf32-tilepro.c: Likewise.
575 * elf32-v850.c: Likewise.
576 * elf32-vax.c: Likewise.
577 * elf32-visium.c: Likewise.
578 * elf32-wasm32.c: Likewise.
579 * elf32-xgate.c: Likewise.
580 * elf32-xtensa.c: Likewise.
581 * elf64-alpha.c: Likewise.
582 * elf64-gen.c: Likewise.
583 * elf64-hppa.c: Likewise.
584 * elf64-ia64-vms.c: Likewise.
585 * elf64-mmix.c: Likewise.
586 * elf64-ppc.c: Likewise.
587 * elf64-s390.c: Likewise.
588 * elf64-sh64.c: Likewise.
589 * elf64-sparc.c: Likewise.
590 * elf64-x86-64.c: Likewise.
591 * elfcode.h: Likewise.
592 * elfcore.h: Likewise.
593 * elflink.c: Likewise.
594 * elfnn-aarch64.c: Likewise.
595 * elfnn-ia64.c: Likewise.
596 * elfnn-riscv.c: Likewise.
597 * elfxx-mips.c: Likewise.
598 * elfxx-sparc.c: Likewise.
599 * elfxx-tilegx.c: Likewise.
600 * elfxx-x86.c: Likewise.
601 * hpux-core.c: Likewise.
602 * ieee.c: Likewise.
603 * ihex.c: Likewise.
604 * libbfd.c: Likewise.
605 * linker.c: Likewise.
606 * mach-o.c: Likewise.
607 * merge.c: Likewise.
608 * mmo.c: Likewise.
609 * oasys.c: Likewise.
610 * pdp11.c: Likewise.
611 * pe-mips.c: Likewise.
612 * peXXigen.c: Likewise.
613 * peicode.h: Likewise.
614 * reloc.c: Likewise.
615 * rs6000-core.c: Likewise.
616 * srec.c: Likewise.
617 * stabs.c: Likewise.
618 * vms-alpha.c: Likewise.
619 * xcofflink.c: Likewise.
620
621 2018-02-19 Alan Modra <amodra@gmail.com>
622
623 PR 22845
624 * elf.c (IS_TBSS): Define.
625 (_bfd_elf_map_sections_to_segments): Use IS_TBSS.
626 (assign_file_positions_for_non_load_sections): Revert last change.
627 Properly calculate load segment limits to compare against relro limits.
628
629 2018-02-17 Alan Modra <amodra@gmail.com>
630
631 PR 22845
632 * elf.c (assign_file_positions_for_non_load_sections): Ignore
633 degenerate zero size PT_LOAD segments when finding one overlapping
634 the PT_GNU_RELRO segment.
635
636 2018-02-16 Alan Modra <amodra@gmail.com>
637
638 * libbfd.c (_bfd_bool_bfd_false_error): Rename from bfd_false.
639 (_bfd_bool_bfd_true): Rename from bfd_true.
640 (_bfd_ptr_bfd_null_error): Rename from bfd_nullvoidptr.
641 (_bfd_int_bfd_0): Rename from bfd_0.
642 (_bfd_uint_bfd_0): Rename from bfd_0u.
643 (_bfd_long_bfd_0): Rename from bfd_0l.
644 (_bfd_long_bfd_n1_error): Rename from _bfd_n1.
645 (_bfd_void_bfd): Rename from bfd_void.
646 (_bfd_bool_bfd_false, _bfd_bool_bfd_asymbol_false),
647 (_bfd_bool_bfd_link_false_error),
648 (_bfd_bool_bfd_link_true, _bfd_bool_bfd_bfd_true),
649 (_bfd_bool_bfd_uint_true, _bfd_bool_bfd_ptr_true),
650 (_bfd_bool_bfd_asection_bfd_asection_true),
651 (_bfd_bool_bfd_asymbol_bfd_asymbol_true),
652 (_bfd_void_bfd_link, _bfd_void_bfd_asection): New functions.
653 * archive.c (_bfd_noarchive_get_elt_at_index),
654 (_bfd_noarchive_openr_next_archived_file),
655 (_bfd_noarchive_construct_extended_name_table),
656 (_bfd_noarchive_write_ar_hdr, _bfd_noarchive_truncate_arname),
657 (_bfd_noarchive_write_armap): New functions.
658 * archures.c (_bfd_nowrite_set_arch_mach): New function.
659 * coff-alpha.c (alpha_ecoff_swap_coff_aux_in),
660 (alpha_ecoff_swap_coff_sym_in, alpha_ecoff_swap_coff_lineno_in),
661 (alpha_ecoff_swap_coff_aux_out, alpha_ecoff_swap_coff_sym_out),
662 (alpha_ecoff_swap_coff_lineno_out),
663 (alpha_ecoff_swap_coff_reloc_out): New functions.
664 * coff-mips.c (mips_ecoff_swap_coff_aux_in),
665 (mips_ecoff_swap_coff_sym_in, mips_ecoff_swap_coff_lineno_in),
666 (mips_ecoff_swap_coff_aux_out, mips_ecoff_swap_coff_sym_out),
667 (mips_ecoff_swap_coff_lineno_out),
668 (mips_ecoff_swap_coff_reloc_out): New functions.
669 * coffcode.h (coff_set_alignment_hook): Replace define with
670 new function.
671 (symname_in_debug_hook): Likewise.
672 * ecoff.c (_bfd_ecoff_set_alignment_hook): New function.
673 * elfxx-target.h (elf_backend_allow_non_load_phdr): Default to 0.
674 * elf.c (assign_file_positions_except_relocs): Test
675 elf_backend_allow_non_load_phdr for NULL.
676 * elflink.c (_bfd_elf_omit_section_dynsym_default): Rename from
677 _bfd_elf_link_omit_section_dynsym. Update uses.
678 (_bfd_elf_omit_section_dynsym_all): New function.
679 * elf-bfd.h (_bfd_elf_link_omit_section_dynsym): Delete.
680 (_bfd_elf_omit_section_dynsym_default): Declare.
681 (_bfd_elf_omit_section_dynsym_all): Declare.
682 * linker.c (_bfd_nolink_sizeof_headers, _bfd_nolink_bfd_relax_section),
683 (_bfd_nolink_bfd_get_relocated_section_contents),
684 (_bfd_nolink_bfd_lookup_section_flags),
685 (_bfd_nolink_bfd_is_group_section, _bfd_nolink_bfd_discard_group),
686 (_bfd_nolink_bfd_link_hash_table_create),
687 (_bfd_nolink_bfd_link_just_syms),
688 (_bfd_nolink_bfd_copy_link_hash_symbol_type),
689 (_bfd_nolink_bfd_link_split_section),
690 (_bfd_nolink_section_already_linked),
691 (_bfd_nolink_bfd_define_common_symbol),
692 (_bfd_nolink_bfd_define_start_stop): New functions.
693 * reloc.c (_bfd_norelocs_bfd_reloc_type_lookup),
694 (_bfd_norelocs_bfd_reloc_name_lookup),
695 (_bfd_nodynamic_canonicalize_dynamic_reloc): New functions.
696 * section.c (_bfd_nowrite_set_section_contents): New function.
697 * syms.c (_bfd_nosymbols_canonicalize_symtab),
698 (_bfd_nosymbols_print_symbol, _bfd_nosymbols_get_symbol_info),
699 (_bfd_nosymbols_get_symbol_version_string),
700 (_bfd_nosymbols_bfd_is_local_label_name),
701 (_bfd_nosymbols_get_lineno, _bfd_nosymbols_find_nearest_line),
702 (_bfd_nosymbols_find_line, _bfd_nosymbols_find_inliner_info),
703 (_bfd_nosymbols_bfd_make_debug_symbol),
704 ( _bfd_nosymbols_read_minisymbols),
705 ( _bfd_nosymbols_minisymbol_to_symbol),
706 (_bfd_nodynamic_get_synthetic_symtab): New functions.
707 * libbfd-in.h: Declare new functions. Update existing defines,
708 removing casts.
709 * aix386-core.c: Update to use new hooks. Formatting.
710 * aout-adobe.c: Likewise.
711 * aout-arm.c: Likewise.
712 * aout-target.h: Likewise.
713 * aout-tic30.c: Likewise.
714 * aoutf1.h: Likewise.
715 * binary.c: Likewise.
716 * bout.c: Likewise.
717 * cisco-core.c: Likewise.
718 * coff-alpha.c: Likewise.
719 * coff-i386.c: Likewise.
720 * coff-i860.c: Likewise.
721 * coff-i960.c: Likewise.
722 * coff-ia64.c: Likewise.
723 * coff-mips.c: Likewise.
724 * coff-ppc.c: Likewise.
725 * coff-rs6000.c: Likewise.
726 * coff-sh.c: Likewise.
727 * coff-tic30.c: Likewise.
728 * coff-tic54x.c: Likewise.
729 * coff-x86_64.c: Likewise.
730 * coff64-rs6000.c: Likewise.
731 * coffcode.h: Likewise.
732 * elf-m10300.c: Likewise.
733 * elf32-cr16.c: Likewise.
734 * elf32-lm32.c: Likewise.
735 * elf32-m32r.c: Likewise.
736 * elf32-metag.c: Likewise.
737 * elf32-score.c: Likewise.
738 * elf32-score7.c: Likewise.
739 * elf32-tilepro.c: Likewise.
740 * elf32-xstormy16.c: Likewise.
741 * elf32-xtensa.c: Likewise.
742 * elf64-alpha.c: Likewise.
743 * elf64-hppa.c: Likewise.
744 * elf64-ia64-vms.c: Likewise.
745 * elf64-mmix.c: Likewise.
746 * elf64-sh64.c: Likewise.
747 * elfnn-ia64.c: Likewise.
748 * elfxx-sparc.c: Likewise.
749 * elfxx-target.h: Likewise.
750 * elfxx-tilegx.c: Likewise.
751 * elfxx-x86.h: Likewise.
752 * hp300hpux.c: Likewise.
753 * hppabsd-core.c: Likewise.
754 * hpux-core.c: Likewise.
755 * i386msdos.c: Likewise.
756 * i386os9k.c: Likewise.
757 * ieee.c: Likewise.
758 * ihex.c: Likewise.
759 * irix-core.c: Likewise.
760 * libaout.h: Likewise.
761 * libecoff.h: Likewise.
762 * mach-o-target.c: Likewise.
763 * mach-o.c: Likewise.
764 * mipsbsd.c: Likewise.
765 * mmo.c: Likewise.
766 * netbsd-core.c: Likewise.
767 * nlm-target.h: Likewise.
768 * oasys.c: Likewise.
769 * osf-core.c: Likewise.
770 * pdp11.c: Likewise.
771 * pe-mips.c: Likewise.
772 * pe-x86_64.c: Likewise.
773 * pef.c: Likewise.
774 * plugin.c: Likewise.
775 * ppcboot.c: Likewise.
776 * ptrace-core.c: Likewise.
777 * sco5-core.c: Likewise.
778 * som.c: Likewise.
779 * sparclynx.c: Likewise.
780 * srec.c: Likewise.
781 * tekhex.c: Likewise.
782 * trad-core.c: Likewise.
783 * verilog.c: Likewise.
784 * versados.c: Likewise.
785 * vms-alpha.c: Likewise.
786 * vms-lib.c: Likewise.
787 * wasm-module.c: Likewise.
788 * xsym.c: Likewise.
789 * libbfd.h: Regenerate.
790
791 2018-02-15 Jim Wilson <jimw@sifive.com>
792
793 * elfnn-riscv.c (_bfd_riscv_relax_section): Ifdef out check to ignore
794 symbols whose section address is zero.
795
796 * elfnn-riscv.c (riscv_elf_relocate_section): Use bfd_reloc_dangerous
797 when pcrel_lo reloc has an addend. Use reloc_dangerous callback for
798 bfd_reloc_dangerous. Use einfo instead of warning callback for errors.
799 Add %X%P to error messages.
800
801 2018-02-15 Eric Botcazou <ebotcazou@adacore.com>
802
803 PR ld/22832
804 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
805 Pass FALSE instead of TRUE as 'create' argument to bfd_link_hash_lookup
806 and assert that the result of the call is not NULL.
807
808 2018-02-14 Nick Clifton <nickc@redhat.com>
809
810 PR 22823
811 Revert previous delta. Add extra casts to avoid compile time
812 warnings instead.
813 * libbfd-in.h (_bfd_generic_bfd_copy_private_bfd_data): Add extra
814 cast to avoid warning from gcc v8 compiler.
815 (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
816 (_bfd_generic_bfd_set_private_flags): Likewise.
817 (_bfd_generic_bfd_copy_private_section_data): Likewise.
818 (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
819 (_bfd_generic_bfd_copy_private_header_data): Likewise.
820 (_bfd_generic_bfd_print_private_bfd_data): Likewise.
821 (_bfd_noarchive_construct_extended_name_table): Likewise.
822 (_bfd_noarchive_truncate_arname): Likewise.
823 (_bfd_noarchive_write_ar_hdr): Likewise.
824 (_bfd_noarchive_get_elt_at_index): Likewise.
825 (_bfd_nosymbols_canonicalize_symtab): Likewise.
826 (_bfd_nosymbols_print_symbol): Likewise.
827 (_bfd_nosymbols_get_symbol_info): Likewise.
828 (_bfd_nosymbols_get_symbol_version_string): Likewise.
829 (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
830 (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
831 (_bfd_nosymbols_get_lineno): Likewise.
832 (_bfd_nosymbols_find_nearest_line): Likewise.
833 (_bfd_nosymbols_find_line): Likewise.
834 (_bfd_nosymbols_find_inliner_info): Likewise.
835 (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
836 (_bfd_nosymbols_read_minisymbols): Likewise.
837 (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
838 (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
839 (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
840 (_bfd_nowrite_set_arch_mach): Likewise.
841 (_bfd_nowrite_set_section_contents): Likewise.
842 (_bfd_nolink_sizeof_headers): Likewise.
843 (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
844 (_bfd_nolink_bfd_relax_section): Likewise.
845 (_bfd_nolink_bfd_gc_sections): Likewise.
846 (_bfd_nolink_bfd_lookup_section_flags): Likewise.
847 (_bfd_nolink_bfd_merge_sections): Likewise.
848 (_bfd_nolink_bfd_is_group_section): Likewise.
849 (_bfd_nolink_bfd_discard_group): Likewise.
850 (_bfd_nolink_bfd_link_hash_table_create): Likewise.
851 (_bfd_nolink_bfd_link_add_symbols): Likewise.
852 (_bfd_nolink_bfd_link_just_syms): Likewise.
853 (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
854 (_bfd_nolink_bfd_final_link): Likewise.
855 (_bfd_nolink_bfd_link_split_section): Likewise.
856 (_bfd_nolink_section_already_linked): Likewise.
857 (_bfd_nolink_bfd_define_common_symbol): Likewise.
858 (_bfd_nolink_bfd_define_start_stop): Likewise.
859 (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
860 (_bfd_nodynamic_get_synthetic_symtab): Likewise.
861 (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
862 (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
863 * libbfd.c (bfd_false_any): Delete.
864 (bfd_true_any, bfd_nullvoidptr_any, bfd_0_any): Delete.
865 (bfd_0u_any, bfd_0l_any, _bfd_n1_any, bfd_void_any): Delete.
866 * libbfd.h (extern): Regenerate
867 * aout-target.h (MY_bfd_is_target_special_symbol): Add extra
868 cast to avoid warning from gcc v8 compiler.
869 * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
870 * binary.c (binary_get_symbol_info): Likewise.
871 * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
872 * coff-mips.c (mips_ecoff_backend_data): Likewise.
873 * coffcode.h (coff_set_alignment_hook): Likewise.
874 (symname_in_debug_hook): Likewise.
875 (bfd_coff_backend_data bigobj_swap_table): Likewise.
876 * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
877 * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
878 * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
879 * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
880 * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
881 * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
882 * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
883 * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
884 * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
885 * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
886 * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
887 * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
888 * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
889 * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
890 * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
891 * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
892 (bfd_elfNN_bfd_make_debug_symbol): Likewise.
893 (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
894 (bfd_elfNN_bfd_set_private_flags): Likewise.
895 (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
896 (elf_backend_init_index_section): Likewise.
897 (elf_backend_allow_non_load_phdr): Likewise.
898 * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
899 * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
900 * ieee.c (ieee_construct_extended_name_table): Likewise.
901 (ieee_write_armap): Likewise.
902 (ieee_write_ar_hdr): Likewise.
903 (ieee_bfd_is_target_special_symbol): Likewise.
904 * ihex.c (ihex_canonicalize_symtab): Likewise.
905 (ihex_bfd_is_target_special_symbol): Likewise.
906 * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
907 * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
908 (_bfd_ecoff_set_alignment_hook): Likewise.
909 * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
910 * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
911 * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
912 * oasys.c (oasys_construct_extended_name_table): Likewise.
913 (oasys_write_armap): Likewise.
914 (oasys_write_ar_hdr): Likewise.
915 (oasys_bfd_is_target_special_symbol): Likewise.
916 * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
917 * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
918 * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
919 * som.c (som_bfd_is_target_special_symbol): Likewise.
920 * srec.c (srec_bfd_is_target_special_symbol): Likewise.
921 * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
922 * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
923 * versados.c (versados_bfd_is_target_special_symbol): Likewise.
924 (versados_bfd_reloc_name_lookup): Likewise.
925 * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
926 (vms_bfd_define_start_stop): Likewise.
927 (alpha_vms_bfd_is_target_special_symbol): Likewise.
928 * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
929 * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
930
931 2018-02-14 H.J. Lu <hongjiu.lu@intel.com>
932
933 PR ld/22842
934 * elf32-i386.c (elf_i386_check_relocs): Pass FALSE for non
935 PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
936 * elf64-x86-64.c (elf_x86_64_check_relocs): Create PLT for
937 R_X86_64_PC32 reloc against dynamic function in data section.
938 Pass TRUE for PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
939 (elf_x86_64_relocate_section): Use PLT for R_X86_64_PC32 reloc
940 against dynamic function in data section.
941 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Use PLT in PIE as
942 function address only if pcrel_plt is true.
943 (_bfd_x86_elf_link_hash_table_create): Set pcrel_plt.
944 * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): Add PCREL_PLT for
945 PC-relative PLT. If PLT is PC-relative, don't generate dynamic
946 PC-relative relocation against a function definition in data
947 secton in PIE. Remove the obsolete comments.
948 (elf_x86_link_hash_table): Add pcrel_plt.
949
950 2018-02-13 H.J. Lu <hongjiu.lu@intel.com>
951
952 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check bfd_link_dll,
953 instead of bfd_link_pic, for building shared library.
954
955 2018-02-13 H.J. Lu <hongjiu.lu@intel.com>
956
957 PR gas/22791
958 * elf64-x86-64.c (is_32bit_relative_branch): Removed.
959 (elf_x86_64_relocate_section): Check PIC relocations in PIE.
960 Remove is_32bit_relative_branch usage. Disallow PC32 reloc
961 against protected function in shared object.
962
963 2018-02-13 Sergei Trofimovich <slyfox@inbox.ru>
964
965 PR 22828
966 * po/ru.po: Fix typo in Russian translation.
967
968 2018-02-13 Maciej W. Rozycki <macro@mips.com>
969
970 * wasm-module.c (wasm_scan_name_function_section): Rename
971 `index' local variable to `idx'.
972
973 2018-02-13 Nick Clifton <nickc@redhat.com>
974
975 PR 22823
976 Fix compile time warnings generated by gcc version 8.
977 * libbfd-in.h: Remove extraneous text from prototypes.
978 Add prototypes for bfd_false_any, bfd_true_any,
979 bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any,
980 bfd_n1_any, bfd_void_any.
981 (_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy
982 function.
983 (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
984 (_bfd_generic_bfd_set_private_flags): Likewise.
985 (_bfd_generic_bfd_copy_private_section_data): Likewise.
986 (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
987 (_bfd_generic_bfd_copy_private_header_data): Likewise.
988 (_bfd_generic_bfd_print_private_bfd_data): Likewise.
989 (_bfd_noarchive_construct_extended_name_table): Likewise.
990 (_bfd_noarchive_truncate_arname): Likewise.
991 (_bfd_noarchive_write_ar_hdr): Likewise.
992 (_bfd_noarchive_get_elt_at_index): Likewise.
993 (_bfd_nosymbols_canonicalize_symtab): Likewise.
994 (_bfd_nosymbols_print_symbol): Likewise.
995 (_bfd_nosymbols_get_symbol_info): Likewise.
996 (_bfd_nosymbols_get_symbol_version_string): Likewise.
997 (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
998 (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
999 (_bfd_nosymbols_get_lineno): Likewise.
1000 (_bfd_nosymbols_find_nearest_line): Likewise.
1001 (_bfd_nosymbols_find_line): Likewise.
1002 (_bfd_nosymbols_find_inliner_info): Likewise.
1003 (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
1004 (_bfd_nosymbols_read_minisymbols): Likewise.
1005 (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
1006 (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
1007 (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
1008 (_bfd_nowrite_set_arch_mach): Likewise.
1009 (_bfd_nowrite_set_section_contents): Likewise.
1010 (_bfd_nolink_sizeof_headers): Likewise.
1011 (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
1012 (_bfd_nolink_bfd_relax_section): Likewise.
1013 (_bfd_nolink_bfd_gc_sections): Likewise.
1014 (_bfd_nolink_bfd_lookup_section_flags): Likewise.
1015 (_bfd_nolink_bfd_merge_sections): Likewise.
1016 (_bfd_nolink_bfd_is_group_section): Likewise.
1017 (_bfd_nolink_bfd_discard_group): Likewise.
1018 (_bfd_nolink_bfd_link_hash_table_create): Likewise.
1019 (_bfd_nolink_bfd_link_add_symbols): Likewise.
1020 (_bfd_nolink_bfd_link_just_syms): Likewise.
1021 (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
1022 (_bfd_nolink_bfd_final_link): Likewise.
1023 (_bfd_nolink_bfd_link_split_section): Likewise.
1024 (_bfd_nolink_section_already_linked): Likewise.
1025 (_bfd_nolink_bfd_define_common_symbol): Likewise.
1026 (_bfd_nolink_bfd_define_start_stop): Likewise.
1027 (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
1028 (_bfd_nodynamic_get_synthetic_symtab): Likewise.
1029 (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
1030 (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
1031 * libbfd.c (bfd_false_any): New function. Like bfd_false but
1032 accepts one or more arguments.
1033 (bfd_true_any): Likewise.
1034 (bfd_nullvoidptr_any): Likewise.
1035 (bfd_0_any): Likewise.
1036 (bfd_0u_any): Likewise.
1037 (bfd_0l_any): Likewise.
1038 (_bfd_n1_any): Likewise.
1039 (bfd_void_any): Likewise.
1040 * libbfd.h (extern): Regenerate
1041 * aout-target.h (MY_bfd_is_target_special_symbol): Use vararg
1042 based dummy function.
1043 * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
1044 * binary.c (binary_get_symbol_info): Likewise.
1045 * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
1046 * coff-mips.c (mips_ecoff_backend_data): Likewise.
1047 * coffcode.h (coff_set_alignment_hook): Likewise.
1048 (symname_in_debug_hook): Likewise.
1049 (bfd_coff_backend_data bigobj_swap_table): Likewise.
1050 * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
1051 * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
1052 * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
1053 * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
1054 * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
1055 * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
1056 * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
1057 * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
1058 * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
1059 * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
1060 * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
1061 * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
1062 * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
1063 * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
1064 * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
1065 * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
1066 (bfd_elfNN_bfd_make_debug_symbol): Likewise.
1067 (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
1068 (bfd_elfNN_bfd_set_private_flags): Likewise.
1069 (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
1070 (elf_backend_init_index_section): Likewise.
1071 (elf_backend_allow_non_load_phdr): Likewise.
1072 * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
1073 * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
1074 * ieee.c (ieee_construct_extended_name_table): Likewise.
1075 (ieee_write_armap): Likewise.
1076 (ieee_write_ar_hdr): Likewise.
1077 (ieee_bfd_is_target_special_symbol): Likewise.
1078 * ihex.c (ihex_canonicalize_symtab): Likewise.
1079 (ihex_bfd_is_target_special_symbol): Likewise.
1080 * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
1081 * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
1082 (_bfd_ecoff_set_alignment_hook): Likewise.
1083 * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
1084 * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
1085 * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
1086 * oasys.c (oasys_construct_extended_name_table): Likewise.
1087 (oasys_write_armap): Likewise.
1088 (oasys_write_ar_hdr): Likewise.
1089 (oasys_bfd_is_target_special_symbol): Likewise.
1090 * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
1091 * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
1092 * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
1093 * som.c (som_bfd_is_target_special_symbol): Likewise.
1094 * srec.c (srec_bfd_is_target_special_symbol): Likewise.
1095 * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
1096 * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
1097 * versados.c (versados_bfd_is_target_special_symbol): Likewise.
1098 (versados_bfd_reloc_name_lookup): Likewise.
1099 * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
1100 (vms_bfd_define_start_stop): Likewise.
1101 (alpha_vms_bfd_is_target_special_symbol): Likewise.
1102 * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
1103 * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
1104 * elf32-arc.c (get_replace_function): Assign replacement function
1105 to func pointer.
1106 * elf32-i370.c (i370_noop): Update prototype.
1107
1108 2018-02-13 Alan Modra <amodra@gmail.com>
1109
1110 PR 22836
1111 * elf.c (_bfd_elf_fixup_group_sections): Account for removed
1112 relocation sections. If size reduces to just the flag word,
1113 remove that too and mark with SEC_EXCLUDE.
1114 * elflink.c (bfd_elf_final_link): Strip empty group sections.
1115
1116 2018-02-13 Alan Modra <amodra@gmail.com>
1117
1118 PR 22829
1119 * elf.c (assign_file_positions_for_non_load_sections): Rewrite
1120 PT_GNU_RELRO setup.
1121
1122 2018-02-12 Zebediah Figura <z.figura12@gmail.com>
1123
1124 * i386msdos.c (msdos_mkobject); New function.
1125 (msdos_object_p): New function.
1126 (i386_msdos_vec): Use msdos_object_p as the check_format
1127 function.
1128 * peicode.h: Rename external_PEI_DOS_hdr, DOSMAGIC, and
1129 NT_SIGNATURE to external_DOS_hdr, IMAGE_DOS_SIGNATURE, and
1130 IMAGE_NT_SIGNATURE.
1131 * peXXigen.c: Likewise.
1132 * coff-ia64.c: Likewise.
1133
1134 2018-02-12 Nick Clifton <nickc@redhat.com>
1135
1136 * elf32-nds32.c (nds32_elf_relax_longjump3): Remove redundant
1137 assignment.
1138 * elf32-arc.c (elf_arc_relocate_section): Likewise.
1139
1140 2018-02-09 Eric Botcazou <ebotcazou@adacore.com>
1141
1142 * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Reorder conditions.
1143 (sparc_elf_append_rela): Assert that there is enough room in section.
1144 (_bfd_sparc_elf_copy_indirect_symbol): Fix formatting.
1145 (_bfd_sparc_elf_adjust_dynamic_symbol): Minor tweak.
1146 (allocate_dynrelocs): Remove outdated comments and reorder conditions.
1147 For a symbol subject to a GOT relocation, reserve a slot in the
1148 relocation section if the symbol isn't dynamic and we are in PIC mode.
1149 (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: If relocation
1150 is relaxed and a slot was reserved, generate a R_SPARC_NONE relocation.
1151 <R_SPARC_GOTDATA_OP_HIX22>: Adjust comments.
1152 <R_SPARC_PC10>: Reorder conditions. Remove always-false assertion.
1153 (_bfd_sparc_elf_finish_dynamic_symbol): Rename local_undefweak into
1154 resolved_to_zero. Do not generate a dynamic GOT relocation for an
1155 undefined weak symbol with non-default visibility. Remove superfluous
1156 'else' and fix formatting.
1157
1158 2018-02-09 H.J. Lu <hongjiu.lu@intel.com>
1159
1160 * elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle
1161 is_solaris.
1162 (i386_elf32_sol2_vec): Don't declare.
1163 (elf_i386_link_setup_gnu_properties): Also handle is_solaris.
1164 Don't set need_global_offset_table.
1165 (elf_i386_solaris_arch_bed): New.
1166 (elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for
1167 Solaris.
1168 * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check
1169 target_os != is_nacl instead of target_os == is_normal.
1170 (x86_64_elf64_sol2_vec): Don't declare.
1171 (elf_x86_64_link_setup_gnu_properties): Check target_os !=
1172 is_nacl instead of target_os == is_normal. Don't set
1173 need_global_offset_table.
1174 (elf_x86_64_solaris_arch_bed): New.
1175 (elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for
1176 Solaris.
1177 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep
1178 _GLOBAL_OFFSET_TABLE_ for Solaris.
1179 (_bfd_x86_elf_link_setup_gnu_properties): Don't copy
1180 need_global_offset_table.
1181 * elfxx-x86.h (elf_x86_target_os): Add is_solaris.
1182 (elf_x86_link_hash_table): Remove need_global_offset_table.
1183 (elf_x86_init_table): Likewise.
1184
1185 2018-02-08 H.J. Lu <hongjiu.lu@intel.com>
1186
1187 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
1188 Remove prototype.
1189 (i386_elf32_sol2_vec): Declared.
1190 (elf_i386_link_setup_gnu_properties): Set
1191 need_global_offset_table with info->output_bfd->xvec.
1192 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
1193 Remove prototype.
1194 (x86_64_elf64_sol2_vec): Declared.
1195 (elf_x86_64_link_setup_gnu_properties): Set
1196 need_global_offset_table with info->output_bfd->xvec.
1197
1198 2018-02-08 H.J. Lu <hongjiu.lu@intel.com>
1199
1200 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
1201 New prototype.
1202 (elf_i386_link_setup_gnu_properties): Set need_global_offset_table
1203 for Solaris.
1204 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
1205 New prototype.
1206 (elf_x86_64_link_setup_gnu_properties): Set
1207 need_global_offset_table for Solaris.
1208 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the
1209 unused _GLOBAL_OFFSET_TABLE_ for Solaris.
1210 (_bfd_x86_elf_link_setup_gnu_properties): Copy
1211 need_global_offset_table.
1212 * elfxx-x86.h (elf_x86_link_hash_table): Add
1213 need_global_offset_table.
1214 (elf_x86_init_table): Likewise.
1215
1216 2018-02-08 Jim Wilson <jimw@sifive.com>
1217
1218 * elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous
1219 change.
1220
1221 2018-02-08 Nick Clifton <nickc@redhat.com>
1222
1223 PR 22788
1224 * elf.c (elf_parse_notes): Reject notes with excessuively large
1225 alignments.
1226
1227 2018-02-07 Alan Modra <amodra@gmail.com>
1228
1229 Revert 2018-01-17 Alan Modra <amodra@gmail.com>
1230 * elf32-ppc.c: Remove speculation barrier support.
1231 * elf32-ppc.h: Likewise.
1232 * elf64-ppc.c: Likewise.
1233 * elf64-ppc.h: Likewise.
1234
1235 2018-02-06 Jim Wilson <jimw@sifive.com>
1236
1237 * elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used
1238 callback to report an error.
1239
1240 2018-02-06 Eric Botcazou <ebotcazou@adacore.com>
1241
1242 PR ld/22263
1243 * elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic
1244 into call to !bfd_link_executable and tidy up.
1245 (_bfd_sparc_elf_check_relocs): Fix formatting and tidy up.
1246 <R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to
1247 !bfd_link_executable.
1248 <R_SPARC_TLS_IE_HI22>: Likewise.
1249 <GOT relocations>: Remove useless code, tidy and merge related blocks.
1250 <R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to
1251 !bfd_link_executable.
1252 <R_SPARC_WPLT30>: Tidy up.
1253 (_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call to
1254 !bfd_link_executable.
1255 (allocate_dynrelocs): Likewise.
1256 (_bfd_sparc_elf_relocate_section): Fix formatting and tidy up.
1257 <R_SPARC_TLS_GD_HI22>: Merge into...
1258 <R_SPARC_TLS_GD_LO10>: ...this. Adjust 4th argument in call to
1259 sparc_elf_tls_transition and remove redundant code.
1260 <R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to
1261 !bfd_link_executable.
1262 <R_SPARC_TLS_LDO_HIX22>: Likewise.
1263 <R_SPARC_TLS_LE_HIX22>: Likewise. Tidy up.
1264 <R_SPARC_TLS_LDM_CALL>: Likewise.
1265 <R_SPARC_TLS_GD_CALL>: Likewise. Tidy up.
1266 <R_SPARC_TLS_GD_ADD>: Likewise.
1267 <R_SPARC_TLS_LDM_ADD>: Likewise.
1268 <R_SPARC_TLS_LDO_ADD>: Likewise.
1269 <R_SPARC_TLS_IE_LD>: Likewise.
1270
1271 2018-02-06 Miloš Stojanović <milos.stojanovic@rt-rk.com>
1272
1273 PR 22789
1274 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf
1275 functions failed to find the function name, try the generic elf
1276 find function instead.
1277
1278 2018-02-06 Sergio Durigan Junior <sergiodj@redhat.com>
1279
1280 * coff-rs6000.c (xcoff_write_archive_contents_old): Use
1281 'memcpy' instead of 'strncpy' when writing the magic number.
1282
1283 2018-02-06 Nick Clifton <nickc@redhat.com>
1284
1285 PR 22794
1286 * opncls.c (bfd_get_debug_link_info_1): Check the size of the
1287 section before attempting to read it in.
1288 (bfd_get_alt_debug_link_info): Likewise.
1289
1290 2018-02-06 Paul Carroll <pcarroll@codesourcery.com>
1291
1292 * bfd/dwarf2.c (find_abstract_name): Modified to return file and
1293 line information in addition to name, if they can be found.
1294
1295 2018-02-05 Renlin Li <renlin.li@arm.com>
1296
1297 PR ld/22764
1298 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the
1299 R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the
1300 check for writeable section as well.
1301
1302 2018-02-05 H.J. Lu <hongjiu.lu@intel.com>
1303
1304 PR ld/22782
1305 * elf32-i386.c (elf_i386_check_relocs): Set got_referenced if
1306 _GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve
1307 undefined weak symbol to 0.
1308 * elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced
1309 if _GLOBAL_OFFSET_TABLE_ is referenced.
1310 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check
1311 got_referenced instead of ref_regular_nonweak. Remove the
1312 unused _GLOBAL_OFFSET_TABLE_ from symbol table.
1313 * elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced.
1314
1315 2018-02-05 Maciej W. Rozycki <macro@mips.com>
1316
1317 * elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to
1318 initialize `hi_reloc'.
1319
1320 2018-02-05 Maciej W. Rozycki <macro@mips.com>
1321
1322 * elfxx-mips.c (_bfd_mips_elf_section_processing): For
1323 SHT_MIPS_REGINFO sections don't assert the correct size and
1324 report an error instead.
1325
1326 2018-02-05 Maciej W. Rozycki <macro@mips.com>
1327
1328 * elf.c (_bfd_elf_write_object_contents): Propagate a failure
1329 status from `->elf_backend_section_processing'.
1330
1331 2018-02-02 Jim Wilson <jimw@sifive.com>
1332
1333 PR ld/22756
1334 * elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info.
1335 If link_info->wrap_hash, check for a duplicate symbol and ignore.
1336 (_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le):
1337 Pass new argument to riscv_relax_delete_bytes.
1338 (_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise. Remove
1339 ATTRIBUTE_UNUSED from link_info parameter.
1340
1341 2018-02-02 Alan Modra <amodra@gmail.com>
1342
1343 * elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops
1344 emitted for toc sequence optimization. Set and use "howto" later.
1345
1346 2018-02-01 Simon Marchi <simon.marchi@ericsson.com>
1347
1348 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer
1349 arithmetic on NULL pointer.
1350 * elflink.c (_bfd_elf_archive_symbol_lookup,
1351 elf_link_add_archive_symbols): Likewise.
1352
1353 2018-01-31 Michael Matz <matz@suse.de>
1354
1355 * elflink.c (bfd_elf_define_start_stop): Fix check of
1356 def_dynamic.
1357
1358 2018-01-31 H.J. Lu <hongjiu.lu@intel.com>
1359
1360 PR ld/21964
1361 * elflink.c (bfd_elf_define_start_stop): Check if __start and
1362 __stop symbols are referenced by shared objects.
1363
1364 2018-01-30 Alan Modra <amodra@gmail.com>
1365
1366 PR 22758
1367 * elf.c (_bfd_elf_map_sections_to_segments): Don't start a new
1368 segment when demand paged with lma on the same page. Test this
1369 before load/non-load, executable/non-executable,
1370 writable/non-writable tests and simplify. Delete bogus relro
1371 condition in writable/non-writable test. Delete outdated
1372 comment. Formatting.
1373
1374 2018-01-30 Alan Modra <amodra@gmail.com>
1375
1376 * elflink.c (bfd_elf_define_start_stop): Make __start and __stop
1377 symbols dynamic.
1378
1379 2018-01-29 Alan Modra <amodra@gmail.com>
1380
1381 PR 22741
1382 * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
1383 range before converting to a symbol table pointer.
1384
1385 2018-01-27 Nick Clifton <nickc@redhat.com>
1386
1387 * po/ru.po: Updated Russian translation.
1388
1389 2018-01-26 Alan Modra <amodra@gmail.com>
1390
1391 * elflink.c (bfd_elf_define_start_stop): Override symbols when
1392 they are defined dynamically.
1393
1394 2018-01-26 Alan Modra <amodra@gmail.com>
1395
1396 * elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when
1397 .branch_lt changes size.
1398
1399 2018-01-25 Alan Modra <amodra@gmail.com>
1400
1401 PR 22746
1402 * elfcode.h (elf_object_p): Avoid integer overflow.
1403
1404 2018-01-25 Eric Botcazou <ebotcazou@adacore.com>
1405
1406 PR ld/22727
1407 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
1408 Do a mere lookup of the __tls_get_addr symbol instead of adding it.
1409
1410 Revert
1411 2017-10-19 H.J. Lu <hongjiu.lu@intel.com>
1412
1413 PR ld/22263
1414 * elfxx-sparc.c (sparc_elf_tls_transition): Replace
1415 bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
1416 bfd_link_executable for TLS check.
1417 (_bfd_sparc_elf_check_relocs): Likewise.
1418 (allocate_dynrelocs): Likewise.
1419 (_bfd_sparc_elf_relocate_section): Likewise.
1420
1421 2018-01-24 Renlin Li <renlin.li@arm.com>
1422
1423 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for
1424 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
1425 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
1426 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
1427 BFD_RELOC_AARCH64_MOVW_PREL_G3.
1428 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
1429 (_bfd_aarch64_elf_resolve_relocation): Likewise.
1430
1431 2018-01-24 Renlin Li <renlin.li@arm.com>
1432
1433 * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0,
1434 BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1,
1435 BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2,
1436 BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3.
1437 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for
1438 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
1439 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
1440 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
1441 BFD_RELOC_AARCH64_MOVW_PREL_G3.
1442 * bfd-in2.h: Regenerate.
1443 * libbfd.h: Regenerate.
1444
1445 2018-01-23 Maciej W. Rozycki <macro@mips.com>
1446
1447 * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale
1448 `mips_elf32_section_processing' comment reference.
1449
1450 2018-01-20 H.J. Lu <hongjiu.lu@intel.com>
1451
1452 PR ld/22721
1453 * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the
1454 versioned __tls_get_addr symbol.
1455
1456 2018-01-19 Nick Clifton <nickc@redhat.com>
1457
1458 * po/fr.po: Updated French translation.
1459
1460 2018-01-18 Alan Modra <amodra@gmail.com>
1461
1462 * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink.
1463 * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align.
1464 (ppc64_elf_build_stubs): Likewise.
1465
1466 2018-01-17 Nick Clifton <nickc@redhat.com>
1467
1468 * po/ru.po: Updated Russian translation.
1469 * po/uk/po: Updated Ukranian translation.
1470
1471 2018-01-17 Alan Modra <amodra@gmail.com>
1472
1473 * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning.
1474
1475 2018-01-17 Alan Modra <amodra@gmail.com>
1476
1477 * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier.
1478 (CRSETEQ, BEQCTRM): Define.
1479 (is_nonpic_glink_stub): Don't check bctr.
1480 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
1481 (ppc_elf_relax_section): Size speculation barrier.
1482 (output_bctr): New function.
1483 (write_glink_stub): Use output_bctr.
1484 (ppc_elf_relocate_section): Use output_bctr for long branch stub.
1485 (ppc_elf_finish_dynamic_symbol): Likewise.
1486 (ppc_elf_finish_dynamic_sections): Use output_bctr.
1487 * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps.
1488 * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define.
1489 (GLINK_PLTRESOLVE_SIZE): Size speculation barrier.
1490 (size_global_entry_stubs): Handle speculation barrier sizing.
1491 (plt_stub_size): Likewise.
1492 (output_bctr): New function.
1493 (build_plt_stub, build_tls_get_addr_stub): Output speculation
1494 barrier.
1495 (ppc_build_one_stub): Likewise for ppc_stub_plt_branch.
1496 (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch.
1497 (build_global_entry_stubs): Output speculation barrier.
1498 (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub.
1499 * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps.
1500
1501 2018-01-17 Alan Modra <amodra@gmail.com>
1502
1503 * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle
1504 __tls_get_addr_opt, and alignment sizing.
1505 (TLS_GET_ADDR_GLINK_SIZE): Delete.
1506 (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE.
1507 (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6,
1508 or 8 insns.
1509 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
1510 (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE.
1511 (ppc_elf_size_dynamic_sections): Likewise. Size branch table
1512 by PLT reloc count.
1513 (write_glink_stub): Handle __tls_get_addr_opt stub.
1514 Pad out to size given by GLINK_ENTRY_SIZE.
1515 (ppc_elf_relocate_section): Adjust write_glink_stub call.
1516 (ppc_elf_finish_dynamic_symbol): Likewise.
1517 (ppc_elf_finish_dynamic_sections): Write PLTresolve without using
1518 insn array since so many need rewriting.
1519 * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align.
1520 * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from
1521 GLINK_CALL_STUB_SIZE. Add htab param and evaluate to size without
1522 nops. Adjust all uses.
1523 (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE
1524 in glink_vma calculation.
1525 (struct ppc_link_hash_table): Add global_entry section pointer.
1526 (create_linkage_sections): Create separate section for global
1527 entry stubs.
1528 (PPC_LO, PPC_HI, PPC_HA): Move earlier.
1529 (size_global_entry_stubs): Handle sizing for aligned stubs.
1530 (ppc64_elf_size_dynamic_sections): Handle global_entry alloc,
1531 and don't stash end of glink branch table in rawsize.
1532 (ppc_build_one_stub): Rewrite stub size calculations.
1533 (build_global_entry_stubs): Use new section.
1534 (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops.
1535 Build lazy link stubs out to end of section. Build global entry
1536 stubs in new section.
1537
1538 2018-01-15 Nick Clifton <nickc@redhat.com>
1539
1540 * po/uk.po: Updated Ukranian translation.
1541
1542 2018-01-13 Nick Clifton <nickc@redhat.com>
1543
1544 * po/bfd.pot: Regenerated.
1545
1546 2018-01-13 Nick Clifton <nickc@redhat.com>
1547
1548 * version.m4: Bump version to 2.30.51
1549 * configure: Regenerate.
1550
1551 2018-01-13 Nick Clifton <nickc@redhat.com>
1552
1553 2.30 branch created.
1554
1555 2018-01-12 Jens Widell <jl@opera.com>
1556
1557 * elf.c (setup_group): Optimize search for group by remembering
1558 last found group and restarting search at that index.
1559 * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field.
1560
1561 2018-01-12 Gunther Nikl <gnikl@users.sourceforge.net>
1562
1563 * aoutx.h (aout_link_check_ar_symbols): Remove default and handle
1564 bfd_link_common_skip_none in switch.
1565
1566 2018-01-12 Alan Modra <amodra@gmail.com>
1567
1568 PR ld/22649
1569 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic
1570 references on forced local symbols.
1571
1572 2018-01-12 Vlad Ivanov <vlad@ivanov.email>
1573
1574 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
1575 .reginfo section has wrong size.
1576
1577 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
1578
1579 PR ld/22393
1580 * elf.c (_bfd_elf_map_sections_to_segments): When generating
1581 separate code and read-only data LOAD segments, create a new
1582 LOAD segment if the previous section contains text and the
1583 current section doesn't or vice versa. Don't put a writable
1584 section in a read-only segment if there is a RELRO segment.
1585
1586 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
1587
1588 PR ld/22649
1589 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic
1590 references on forced local symbols.
1591
1592 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
1593
1594 PR ld/22677
1595 * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY,
1596 INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section.
1597
1598 2018-01-09 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1599
1600 PR 22662
1601 * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error.
1602
1603 2018-01-03 John Baldwin <jhb@FreeBSD.org>
1604
1605 * elf.c (elfcore_grok_freebsd_note): Handle
1606 NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and
1607 NT_FREEBSD_PROCSTAT_VMMAP.
1608
1609 2018-01-03 Alan Modra <amodra@gmail.com>
1610
1611 Update year range in copyright notice of all files.
1612
1613 For older changes see ChangeLog-2017
1614 \f
1615 Copyright (C) 2018 Free Software Foundation, Inc.
1616
1617 Copying and distribution of this file, with or without modification,
1618 are permitted in any medium without royalty provided the copyright
1619 notice and this notice are preserved.
1620
1621 Local Variables:
1622 mode: change-log
1623 left-margin: 8
1624 fill-column: 74
1625 version-control: never
1626 End:
This page took 0.094326 seconds and 4 git commands to generate.