Make linker assigned symbol dynamic only for shared object
[external/binutils.git] / bfd / ChangeLog
1 2016-02-23  H.J. Lu  <hongjiu.lu@intel.com>
2
3         * elflink.c (bfd_elf_record_link_assignment): Check for shared
4         library, instead of PIC, and don't check PDE when making linker
5         assigned symbol dynamic.
6
7 2016-02-23  Faraz Shahbazker  <faraz.shahbazker@imgtec.com>
8
9         * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment
10         ABIVERSION for non-executable stack.
11
12 2016-02-23  Rich Felker  <bugdal@aerifal.cx>
13
14         PR target/19516
15         * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol):
16         Always produce a RELATIVE reloc for a local symbol.
17
18 2016-02-23  Hans-Peter Nilsson  <hp@axis.com>
19
20         Fix test-case ld-elf/pr19617b
21         * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
22         discard unused non-function symbols when --dynamic-list-data.
23
24 2016-02-22  H.J. Lu  <hongjiu.lu@intel.com>
25
26         * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the
27         dynsym section, even if it is empty, with dynamic sections.
28
29 2016-02-22  H.J. Lu  <hongjiu.lu@intel.com>
30
31         * syms.c: Remove BSF_COMMON from comments.
32         * bfd-in2.h: Regenerated.
33
34 2016-02-22  Jiong Wang  <jiong.wang@arm.com>
35
36         * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation
37         for destination.  Remove useless function parameters.
38         (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub.
39
40 2016-02-19  Nick Clifton  <nickc@redhat.com>
41
42         PR ld/19629
43         * aoutx.h (aout_link_add_symbols): Check for out of range string
44         table offsets.
45
46         PR ld/19628
47         * reloc.c (bfd_generic_get_relocated_section_contents): Stop
48         processing if we encounter a reloc without an associated symbol.
49
50 2016-02-18  H.J. Lu  <hongjiu.lu@intel.com>
51
52         PR ld/19617
53         * elflink.c (elf_link_add_object_symbols): Always create dynamic
54         sections for -E/--dynamic-list.
55
56 2016-02-17  H.J. Lu  <hongjiu.lu@intel.com>
57
58         * elf64-x86-64.c (elf_backend_omit_section_dynsym): New.  Defined
59         to bfd_true.
60
61 2016-02-16  Joseph Myers  <joseph@codesourcery.com>
62
63         * plugin.c (plugin_vec): Set match priority to 255.
64         * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When
65         matching against the plugin vector, take priority from there not
66         from TEMP.
67
68 2016-02-15  Nick Clifton  <nickc@redhat.com>
69
70         * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values
71         for length and type fields.  Use a signed value for the
72         suffix_length field.
73
74 2016-02-10  H.J. Lu  <hongjiu.lu@intel.com>
75
76         PR ld/19601
77         * elf32-i386.c (elf_i386_relocate_section): Mask off the least
78         significant bit in GOT offset for R_386_GOT32X.
79
80 2016-02-10  Nick Clifton  <nickc@redhat.com>
81
82         PR 19405
83         * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed
84         immediate values.
85         * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the
86         number of messages about FDE encoding preventing .eh_frame_hdr
87         generation.
88
89 2016-02-09  Nick Clifton  <nickc@redhat.com>
90
91         * oasys.c (oasys_archive_p): Fix indentation.
92         * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned
93         constant for left shifting.
94
95         * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more
96         helpful warning message to explain why certain AArch64 relocs
97         might overflow.
98
99 2016-02-05  Simon Marchi  <simon.marchi@ericsson.com>
100
101         * pe-mips.c (coff_mips_reloc): Fix formatting.
102
103 2016-02-05  Cupertino Miranda  <Cupertino.Miranda@synopsys.com>
104
105         * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2
106         to bfd_mach_arc_arc600.
107
108 2016-02-04  Alan Modra  <amodra@gmail.com>
109
110         * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch
111         for big-endian.
112
113 2016-02-02  H.J. Lu  <hongjiu.lu@intel.com>
114
115         PR ld/19542
116         * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated
117         distances in the compressed_size field of the output section.
118
119 2016-02-02  Alan Modra  <amodra@gmail.com>
120
121         * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict
122         ELFv2 entry optimization.
123
124 2016-02-02  H.J. Lu  <hongjiu.lu@intel.com>
125
126         PR binutils/19547
127         * elf.c (assign_section_numbers): Clear HAS_RELOC if there are
128         no relocations in relocatable files.
129
130 2016-02-01  H.J. Lu  <hongjiu.lu@intel.com>
131
132         PR ld/19553
133         * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
134         if a symbol from a library loaded via DT_NEEDED doesn't match
135         the symbol referenced by regular object.
136
137 2016-02-01  Nathaniel Smith  <njs@pobox.com>
138
139         * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both
140         CODE and DATA.
141
142 2016-02-01  Alan Modra  <amodra@gmail.com>
143
144         * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on
145         an out of range reloc_index.
146         * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise.
147
148 2016-02-01  Kamil Rytarowski  <n54@gmx.com>
149
150         * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo.
151         (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c.
152         * Makefile.in: Regenerated.
153
154 2016-02-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
155
156         * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation.
157
158 2016-01-31  John David Anglin  <danglin@gcc.gnu.org>
159
160         PR ld/19526
161         * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output
162         files.
163         * elf64-hppa.c (elf32_hppa_final_link): Likewise.  Remove retval.
164
165 2016-01-30  H.J. Lu  <hongjiu.lu@intel.com>
166
167         PR ld/19539
168         * elf32-i386.c (elf_i386_reloc_type_class): Check relocation
169         against STT_GNU_IFUNC symbol only with dynamic symbols.
170         * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise.
171
172 2016-01-28  H.J. Lu  <hongjiu.lu@intel.com>
173
174         PR binutils/19523
175         * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to
176         decompress debug sections.
177
178 2016-01-25  Maciej W. Rozycki  <macro@imgtec.com>
179
180         * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to
181         `dynindx'.
182
183 2016-01-25  Nick Clifton  <nickc@redhat.com>
184
185         PR target/19435
186         * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free
187         dsym filename buffer.
188
189 2016-01-24  Maciej W. Rozycki  <macro@imgtec.com>
190
191         * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation.
192
193 2016-01-24  Maciej W. Rozycki  <macro@imgtec.com>
194
195         * elfxx-mips.c (BZ16_REG): Correct calculation.
196
197 2016-01-21  Nick Clifton  <nickc@redhat.com>
198
199         * elf32-arc.c (ADD_RELA): Fix compile time warning errors by
200         changing the type of _loc to be bfd_byte *.
201         (elf_arc_finish_dynamic_symbol): Likewise.
202
203 2016-01-21  Nick Clifton  <nickc@redhat.com>
204
205         PR ld/19455
206         * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF
207         class of the linker stub bfd.
208         (elf32_arm_check_relocs): Skip check for pic format after
209         processing a vxWorks R_ARM_ABS12 reloc.
210         * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when
211         reporting a class mismatch.
212
213 2016-01-21  Jiong Wang  <jiong.wang@arm.com>
214
215         * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch
216         veneer for sym_sec != input_sec.
217         (elfNN_aarch64_size_stub): Support STT_SECTION symbol.
218         (elfNN_aarch64_final_link_relocate): Take rela addend into account when
219         calculation destination.
220
221 2016-01-21  Alan Modra  <amodra@gmail.com>
222
223         * elf-linux-core.h (swap_linux_prpsinfo32_out): New function.
224         (swap_linux_prpsinfo64_out): New function.
225         (LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
226         (LINUX_PRPSINFO64_SWAP_FIELDS): Delete.
227         * elf.c (elfcore_write_linux_prpsinfo32): Adjust.  Don't memset.
228         (elfcore_write_linux_prpsinfo64): Likewise.
229         * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function.
230         (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
231         (elfcore_write_ppc_linux_prpsinfo32): Adjust.  Don't memset.
232
233 2016-01-21  Alan Modra  <amodra@gmail.com>
234
235         * elf-linux-core.h: Rename from elf-linux-psinfo.h.
236         * elf.c: Adjust #include.
237         * elf32-ppc.c: Don't #include elf-linux-psinfo.h
238         * Makefile.am (SOURCE_HFILES): Update.
239         * Makefile.in: Regenerate.
240         * po/SRC-PORFILES.in: Regenerate.
241
242 2016-01-21  Alan Modra  <amodra@gmail.com>
243
244         * configure.ac: Move corefile selection later in file.  Move
245         tdefaults code immediately after other target vector code.
246         * configure: Regenerate.
247
248 2016-01-20  Mickael Guene  <mickael.guene@st.com>
249
250         * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread
251         section using '.text.noread' pattern.
252
253 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
254
255         * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes.
256
257 2016-01-18  Miranda Cupertino  <Cupertino.Miranda@synopsys.com>
258             Zissulescu Claudiu  <Claudiu.Zissulescu@synopsys.com>
259
260         * arc-plt.def: New file.
261         * arc-plt.h: Likewise.
262         * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry,
263                        elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry,
264                        elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry,
265                        elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove.
266         (name_for_global_symbol): Added.
267         (ADD_RELA): Helper to create dynamic relocs.
268         (new_got_entry_to_list): Create a new got entry in linked list.
269         (symbol_has_entry_of_type): Search for specific type of entry in
270         list.
271         (is_reloc_for_GOT): return FALSE for any TLS related relocs.
272         (is_reloc_for_TLS, arc_elf_set_private_flags)
273         (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data)
274         (arc_elf_merge_private_bfd_data): New functions.
275         (debug_arc_reloc): Cleaned debug info printing.
276         (PDATA reloc): Changed not to perform address alignment.
277         (reverse_me): Added. Fix for ARC_32 relocs.
278         (arc_do_relocation): Return bfd_reloc_of when no relocation should
279         occur.
280         (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets.
281         Changed function to access an array of list of GOT entries instead
282         of just an array of offsets.
283         (elf_arc_relocate_section): Added support for PIC and TLS related relocations.
284         (elf_arc_check_relocs): Likewise.
285         (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol,
286         (elf_arc_finish_dynamic_sections): Likewise
287         (arc_create_dynamic_sections): Modified conditions to create
288         dynamic sections.
289         (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro.
290         (plt_do_relocs_for_symbol, relocate_plt_for_symbol)
291         (relocate_plt_for_entry): Changed to support new way to define PLT
292         related code.
293         (add_symbol_to_plt): Likewise.
294         (arc_elf_link_hash_table_create): New function.
295
296 2016-01-18  Nick Clifton  <nickc@redhat.com>
297
298         PR ld/19440
299         * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external
300         section number into internal section number.
301         * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise.
302         * coffswap.h (coff_swap_sym_in): Likewise.
303         * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise.
304         * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal
305         section number field is big enough to hold the external value.
306
307 2016-01-17  Alan Modra  <amodra@gmail.com>
308
309         * configure: Regenerate.
310
311 2016-01-12  Yury Usishchev  <y.usishchev@samsung.com>
312
313         * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind
314         when address in first unwind entry does not match start of
315         section.
316
317 2016-01-08  Richard Sandiford  <richard.sandiford@arm.com>
318             Jiong Wang  <jiong.wang@arm.com>
319
320         PR ld/19368
321         * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to
322         reloc_class_ifunc.
323
324 2016-01-06  Andrew Burgess  <andrew.burgess@embecosm.com>
325
326         * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to
327         place 'R_' before the reloc name returned.
328         (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before
329         the relocation string.
330
331 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
332
333         * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function,
334         factored out from...
335         (_bfd_mips_elf_merge_private_bfd_data): ... here.
336
337 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
338
339         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move
340         attribute check after ELF file header flag check.
341
342 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
343
344         * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the
345         return status from `_bfd_elf_merge_object_attributes'.
346
347 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
348
349         * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function,
350         factored out from...
351         (_bfd_mips_elf_merge_private_bfd_data): ... here.
352
353 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
354
355         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the
356         handling of input MIPS ABI flags together.
357
358 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
359
360         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress
361         attribute checks for null input.
362
363 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
364
365         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local
366         pointers to target data.
367
368 2016-01-04  Maciej W. Rozycki  <macro@imgtec.com>
369
370         * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
371         an FP ABI warning.
372
373 2016-01-01  Alan Modra  <amodra@gmail.com>
374
375         Update year range in copyright notice of all files.
376
377 For older changes see ChangeLog-2015 and doc/ChangeLog-0415
378 \f
379 Copyright (C) 2016 Free Software Foundation, Inc.
380
381 Copying and distribution of this file, with or without modification,
382 are permitted in any medium without royalty provided the copyright
383 notice and this notice are preserved.
384
385 Local Variables:
386 mode: change-log
387 left-margin: 8
388 fill-column: 74
389 version-control: never
390 End: