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