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