mach-o: output output_section target_index to write relocs.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
47c50932
TG
12014-04-04 Tristan Gingold <gingold@adacore.com>
2
3 * mach-o-i386.c (bfd_mach_o_i386_swap_reloc_out): Use target index
4 of output_section.
5 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Ditto.
6
4ef27e04
TG
72014-04-04 Tristan Gingold <gingold@adacore.com>
8
9 * bfd.c (bfd_get_arch_size): Default is taken from arch.
10
b69c8728
JT
112014-04-03 Jon Turney <jon.turney@dronecode.org.uk>
12
13 * peXXigen.c (pe_print_edata): Verify edt.name lies inside
14 section before dereferencing.
15 (pe_print_idata, pe_print_edata, pe_print_reloc)
16 (rsrc_print_section): Don't bother interpreting the contents
17 of sections which have no contents.
18
1b6aeedb
MG
192014-04-03 Maria Guseva <m.guseva@samsung.com>
20
21 PR ld/16803
22 * elf.c (_bfd_elf_set_section_contents): Use correct type to hold
23 file position.
24
707e555b
TG
252014-04-03 Tristan Gingold <gingold@adacore.com>
26
27 * mach-o.c (bfd_mach_o_mangle_symbols): Use index from
28 output_section.
29 (bfd_mach_o_build_seg_command): Add comment. Realign segment.
30 Fix style.
31 (bfd_mach_o_build_commands, bfd_mach_o_read_thread): Fix style.
32
c3fcb775
AM
332014-04-03 Alan Modra <amodra@gmail.com>
34
35 * elf-bfd.h (struct elf_backend_data
36 <elf_backend_bfd_from_remote_memory>): Replace "size_t size"
37 with "bfd_size_type size".
38 (_bfd_elf32_bfd_from_remote_memory): Likewise.
39 (_bfd_elf64_bfd_from_remote_memory): Likewise.
40 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
41 * elfcode.h (bfd_from_remote_memory): Likewise.
2493504a
AM
42 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Likewise.
43 * bfd-in2.h: Regenerate.
c3fcb775 44
7a79c514
TG
452014-04-02 Tristan Gingold <gingold@adacore.com>
46
47 * mach-o.h (bfd_mach_o_twolevel_hints_command)
48 (bfd_mach_o_prebind_cksum_command): New types.
49 (bfd_mach_o_prebound_dylib_command): Rewrite.
50 (bfd_mach_o_load_command): Add prebind_cksum and twolevel_hints
51 fields.
52 * mach-o.c (bfd_mach_o_read_prebound_dylib): Read and decode the
53 command.
54 (bfd_mach_o_read_prebind_cksum): New function.
55 (bfd_mach_o_read_twolevel_hints): Ditto.
56 (bfd_mach_o_read_command): Handle prebind cksum and twolevel hints
57 commands.
58
5979d6b6
AM
592014-04-02 Alan Modra <amodra@gmail.com>
60
61 * elfcode.h (bfd_from_remote_memory): Add "size" parameter.
62 Consolidate code handling possible section headers past end of
63 segment. Don't use p_align for page size guess, instead use
64 minpagesize. Take note of ld.so clearing section headers when
65 p_memsz > p_filesz. Handle file header specifying no section
66 headers. Handle zero p_align throughout. Default loadbase to
67 zero. Add comments. Rename contents_size to high_offset, and
68 make it a bfd_vma. Delete unnecessary bfd_set_error calls.
69 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Update prototpe.
70 * elf-bfd.h (struct elf_backend_data <elf_backend_from_remote_memory>):
71 Likewise.
72 (_bfd_elf32_bfd_from_remote_memory): Likewise.
73 (_bfd_elf64_bfd_from_remote_memory): Likewise.
74 * elf.c (bfd_elf_bfd_from_remote_memory): Adjust.
75 * bfd-in2.h: Regnerate.
76
23d72939
TG
772014-04-01 Tristan Gingold <gingold@adacore.com>
78
79 * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Avoid to crash
80 when num == 0.
81
6a631e86
YG
822014-03-27 Yury Gribov <y.gribov@samsung.com>
83 Pavel Fedin <p.fedin@samsung.com>
84
85 * elf32-arm.c: Add support for limited pretty-printing of PLT
86 entries on eabi and nacl targets.
87 (elf32_arm_get_synthetic_symtab): Add new callback.
88 (elf32_arm_nacl_plt_sym_val): Likewise.
89 (elf32_arm_plt0_size): Add helper function.
90 (elf32_arm_plt_size): Likewise.
91
10be66a4
TG
922014-03-27 Tristan Gingold <gingold@adacore.com>
93
94 * mach-o.c (bfd_mach_o_read_dylinker): Remove assert.
95 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DYLD_ENVIRONMENT.
96
3cc27770
TG
972014-03-27 Tristan Gingold <gingold@adacore.com>
98
99 * mach-o.h (bfd_mach_o_get_base_address): New prototype.
100 * mach-o.c (bfd_mach_o_write_symtab)
101 (bfd_mach_o_write_contents)
102 (bfd_mach_o_set_section_flags_from_bfd)
103 (bfd_mach_o_build_seg_command): Fix indentation.
104 (bfd_mach_o_get_base_address): New function.
105
55bfc9ac
NC
1062014-03-26 Nick Clifton <nickc@redhat.com>
107
108 * cofflink.c (_bfd_coff_generic_relocate_section): Skip
109 relocations in discarded sections.
110
d8028530
TG
1112014-03-26 Tristan Gingold <gingold@adacore.com>
112
113 * mach-o.c (bfd_mach_o_convert_architecture): Add
114 BFD_MACH_O_CPU_TYPE_ARM64.
115
f6c7c3e8
AM
1162014-03-26 Alan Modra <amodra@gmail.com>
117
118 * elf64-ppc.c (ppc64_elf_check_relocs): Account for possibly
119 needed plt entries when taking the address of functions for
120 abiversion == 0 (ie. unknown) as well as abiversion == 2.
121 Move opd setup and abiversion checks to..
122 (ppc64_elf_before_check_relocs): ..here. Renamed from
123 ppc64_elf_process_dot_syms. Set output abiversion from input and
124 input abiversion from output, if either is not set.
125 (ppc64_elf_merge_private_bfd_data): Don't merge flags here.
126 (elf_backend_check_directives): Update.
127
c955de36
WN
1282014-03-25 Will Newton <will.newton@linaro.org>
129
130 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections):
131 Set value of DT_PLTRELSZ and DT_RELASZ based on the size
132 of input sections rather than output sections.
133
97323ad1
WN
1342014-03-20 Will Newton <will.newton@linaro.org>
135
136 PR ld/16715
137 * elf32-arm.c (elf32_arm_check_relocs): Set
138 pointer_equality_needed for absolute references within
139 executable links.
140 (elf32_arm_finish_dynamic_symbol): Set st_value to zero
141 unless pointer_equality_needed is set.
142
1d63324c
NC
1432014-03-19 Nick Clifton <nickc@redhat.com>
144
6caf7111
NC
145 * peXXigen.c (rsrc_process_section): Add code to scan input
146 sections and record their lengths. Use these lengths to find the
147 start of each merged .rsrc section.
1d63324c 148
fbe383b9
TG
1492014-03-17 Tristan Gingold <gingold@adacore.com>
150
151 * mach-o.c (bfd_mach_o_read_dylib): Handle lazy load dylib.
152 (bfd_mach_o_read_command): Ditto.
153
5a026fc9
NC
1542014-03-14 Meador Inge <meadori@codesourcery.com>
155
156 * configure.in: Add strnlen to AC_CHECK_DECLS.
157 * config.in: Regenerate.
158 * configure: Regenerate.
159 * sysdep.h (strnlen): Add prototype.
160
c3301df1
AM
1612014-03-14 Alan Modra <amodra@gmail.com>
162
163 * elf32-ppc.c (ppc_elf_relocate_section): Correct overflow
164 handling for VLE_SDA21 relocs.
165
167ad85b
TG
1662014-03-13 Tristan Gingold <gingold@adacore.com>
167
168 * peicode.h (pe_ILF_object_p): Adjust, as the version number
169 has been read.
170 (pe_bfd_object_p): Also read version number to detect ILF.
171 * pe-x86_64.c (COFF_WITH_PE_BIGOBJ): Define.
172 (x86_64pe_bigobj_vec): Define
173 * coffcode.h (bfd_coff_backend_data): Add _bfd_coff_max_nscns field.
174 (bfd_coff_max_nscns): New macro.
175 (coff_compute_section_file_positions): Use unsigned int for
176 target_index. Compare with bfd_coff_max_nscns.
177 (bfd_coff_std_swap_table, ticoff0_swap_table, ticoff1_swap_table):
178 Set a value for _bfd_coff_max_nscns.
179 (header_bigobj_classid): New constant.
180 (coff_bigobj_swap_filehdr_in, coff_bigobj_swap_filehdr_out)
181 (coff_bigobj_swap_sym_in, coff_bigobj_swap_sym_out)
182 (coff_bigobj_swap_aux_in, coff_bigobj_swap_aux_out): New
183 functions.
184 (bigobj_swap_table): New table.
185 * libcoff.h: Regenerate.
186 * coff-sh.c (bfd_coff_small_swap_table): Likewise.
187 * coff-alpha.c (alpha_ecoff_backend_data): Add value for
188 _bfd_coff_max_nscns.
189 * coff-mips.c (mips_ecoff_backend_data): Likewise.
190 * coff-rs6000.c (bfd_xcoff_backend_data)
191 (bfd_pmac_xcoff_backend_data): Likewise.
192 * coff64-rs6000.c (bfd_xcoff_backend_data)
193 (bfd_xcoff_aix5_backend_data): Likewise.
194 * targets.c (x86_64pe_bigobj_vec): Declare.
195 * configure.in (x86_64pe_bigobj_vec): New vector.
196 * configure: Regenerate.
197 * config.bfd: Add bigobj object format for Windows targets.
198
c792917c
NC
1992014-03-12 Nick Clifton <nickc@redhat.com>
200
201 PR ld/16671
202 * elf32-arm.c (elf32_arm_add_symbol_hook): Check for ARM format
203 before testing for vxworks.
204
fa47fa92
AM
2052014-03-12 Alan Modra <amodra@gmail.com>
206
207 * Makefile.in: Regenerate.
208
bbefd0a9
AM
2092014-03-12 Alan Modra <amodra@gmail.com>
210
211 PR 16690
212 * elf.c (copy_elf_program_header): Ignore first section lma if
213 non-alloc.
214
3c865fca
AM
2152014-03-11 Alan Modra <amodra@gmail.com>
216
217 PR 16686
218 * coff-rs6000.c: Include stdint.h.
219 * coff64-rs6000.c: Likewise.
220
ce15efd8
TG
2212014-03-10 Tristan Gingold <gingold@adacore.com>
222
223 * ticoff.h: Removed.
224
86c95733
AM
2252014-03-08 Alan Modra <amodra@gmail.com>
226
227 * elf32-ppc.c (ppc_elf_howto_raw): Correct overflow check for
228 many relocations. Correct bitsize and rightshift too for a number
229 of VLE relocs. Describe R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO.
230 Correct dst_mask on R_PPC_VLE_SDA21_LO.
231 (ppc_elf_vle_split16): Tidy, delete unnecessary prototype.
232 (ppc_elf_relocate_section): Modify overflow test for 16-bit
233 fields in instructions to signed/unsigned according to whether
234 the field takes a signed or unsigned value. Tidy vle split16 code.
235 Correct R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO handling.
236
b80eed39
AM
2372014-03-08 Alan Modra <amodra@gmail.com>
238
239 * elf64-ppc.c (ppc64_elf_howto_raw): Use complain_overflow_signed
240 for R_PPC64_ADDR14, R_PPC64_ADDR14_BRTAKEN, R_PPC64_ADDR14_BRNTAKEN,
241 R_PPC64_SECTOFF, R_PPC64_ADDR16_DS, R_PPC64_SECTOFF_DS,
242 R_PPC64_REL16 entries. Use complain_overflow_dont for R_PPC64_TOC.
243 (ppc64_elf_relocate_section): Modify overflow test for 16-bit
244 fields in instructions to signed/unsigned according to whether
245 the field takes a signed or unsigned value.
246
c38e8559
PA
2472014-03-07 Pedro Alves <palves@redhat.com>
248
5893c83a 249 PR gdb/16696
c38e8559
PA
250 * rs6000-core.c (rs6000coff_core_p): Cast pointers to bfd_vma
251 through ptr_to_uint instead of through long.
252
e9847026
NC
2532014-03-06 Nick Clifton <nickc@redhat.com>
254
255 PR 16664
256 * elf-attrs.c (_bfd_elf_parse_attributes): Add checks for corrupt
257 attribute section names.
258
4b95cf5c
AM
2592014-03-05 Alan Modra <amodra@gmail.com>
260
261 Update copyright years.
262
45965137
AM
2632014-03-05 Alan Modra <amodra@gmail.com>
264
265 * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_ADDR64_LOCAL entry.
266 (ppc64_elf_reloc_type_lookup): Support R_PPC64_ADDR64_LOCAL.
267 (ppc64_elf_check_relocs): Likewise.
268 (ppc64_elf_relocate_section): Likewise.
269 * Add BFD_RELOC_PPC64_ADDR64_LOCAL.
270 * bfd-in2.h: Regenerate.
271 * libbfd.h: Regenerate.
272
cd0c81e9 2732014-03-04 Heiher <r@hev.cc>
4ba154f5
RS
274
275 * elfxx-mips.c (mips_set_isa_flags): Use E_MIPS_ARCH_64R2 for
276 Loongson-3A.
277 (mips_mach_extensions): Make bfd_mach_mips_loongson_3a an
278 extension of bfd_mach_mipsisa64r2.
279
eed94f8f
NC
2802014-03-04 Nick Clifton <nickc@redhat.com>
281
282 PR ld/16017
283 * elf32-arm.c (elf32_thumb2_plt0_entry): New array.
284 (elf32_thumb2_plt_entry): New array.
285 (elf32_arm_create_dynamic_sections): Set PLT entry sizes when
286 using thumb2 based PLT.
287 (elf32_arm_populate_plt_entry): Handle generating Thumb2 based PLT
288 entries.
289 (elf32_arm_final_link_relocate): Do not bias jumps to Thumb based
290 PLT entries.
291 (elf32_arm_finish_dynamic_sections): Handle creation of Thumb2
292 based PLT 0-entry.
293 (elf32_arm_output_plt_map_1): Handle creation of local symbols for
294 Thumb2 based PLT 0-entry.
295 (elf32_arm_output_arch_local_syms): Handle creation of local
296 symbols for Thumb2 based PLT entries.
297
9850436d
AM
2982014-02-28 Alan Modra <amodra@gmail.com>
299
300 PR ld/16643
301 * elflink.c (elf_gc_sweep): Call gc_sweep_hook for exactly
302 the same conditions we called check_relocs.
303
1db37fe6
YG
3042014-02-27 Yuri Gribov <y.gribov@samsung.com>
305
306 * bfd-in.h: Add export of bfd_elf32_arm_use_long_plt.
307 * bfd-in2.h: Regenerate.
308 * elf32-arm.c (elf32_arm_plt_entry_long): New array.
309 (elf32_arm_link_hash_table_create): Set plt_entry_size to 16 if
310 using long PLT entries.
311 (bfd_elf32_arm_use_long_plt): New function.
312 (elf32_arm_populate_plt_entry): Add support for long PLT entries.
313
db434ba0
AM
3142014-02-27 Alan Modra <amodra@gmail.com>
315
316 * elf32-ppc.c (ppc_elf_link_hash_table_create): Provide default
317 params for targets that don't use ppc32elf.em.
318
d9972968
CLT
3192014-02-20 Chung-Lin Tang <cltang@codesourcery.com>
320
321 * elf32-nios2.c (nios2_elf32_relocate_section): Fix calculation
322 of GOTOFF relocations.
323
0ff2b86e
L
3242014-02-19 Igor Zamyatin <igor.zamyatin@intel.com>
325 H.J. Lu <hongjiu.lu@intel.com>
326
327 * elf64-x86-64.c (elf_x86_64_bnd_plt0_entry): New.
328 (elf_x86_64_legacy_plt_entry): Likewise.
329 (elf_x86_64_bnd_plt_entry): Likewise.
330 (elf_x86_64_legacy_plt2_entry): Likewise.
331 (elf_x86_64_bnd_plt2_entry): Likewise.
332 (elf_x86_64_bnd_arch_bed): Likewise.
333 (elf_x86_64_link_hash_entry): Add has_bnd_reloc and plt_bnd.
334 (elf_x86_64_link_hash_table): Add plt_bnd.
335 (elf_x86_64_link_hash_newfunc): Initialize has_bnd_reloc and
336 plt_bnd.
337 (elf_x86_64_copy_indirect_symbol): Also copy has_bnd_reloc.
338 (elf_x86_64_check_relocs): Create the second PLT for Intel MPX
339 in 64-bit mode.
340 (elf_x86_64_allocate_dynrelocs): Handle the second PLT for IFUNC
341 symbols. Resolve call to the second PLT if it is created.
342 (elf_x86_64_size_dynamic_sections): Keep the second PLT section.
343 (elf_x86_64_relocate_section): Resolve PLT references to the
344 second PLT if it is created.
345 (elf_x86_64_finish_dynamic_symbol): Use BND PLT0 and fill the
346 second PLT entry for BND relocation.
347 (elf_x86_64_finish_dynamic_sections): Use MPX backend data if
348 the second PLT is created.
349 (elf_x86_64_get_synthetic_symtab): New.
350 (bfd_elf64_get_synthetic_symtab): Likewise. Undefine for NaCl.
351
7d4c687d
AM
3522014-02-19 Alan Modra <amodra@gmail.com>
353
354 * elf64-ppc.h (struct ppc64_elf_params): Add save_restore_funcs.
355 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Use it to control
356 provision of out-of-line register save/restore routines.
357
5db3e65d
JC
3582014-02-18 Jack Carter <jack.carter@imgtec.com>
359
360 * elfxx-mips.c(_bfd_mips_elf_modify_segment_map): Deleted hard coding of
361 PT_DYNAMIC segment flags.
362
024a2310
JK
3632014-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
364
365 PR binutils/16595
366 * simple.c (struct saved_offsets): New.
367 (simple_save_output_info): Use it for ptr.
368 (simple_restore_output_info): Use it for ptr. Check section_count.
369 (bfd_simple_get_relocated_section_contents): Use it for saved_offsets.
370
e7d1c40c
AM
3712014-02-17 Alan Modra <amodra@gmail.com>
372
373 * elf64-ppc.h (struct ppc64_elf_params): Define.
374 (ppc64_elf_init_stub_bfd, ppc64_elf_edit_opd, ppc64_elf_tls_setup,
375 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
376 ppc64_elf_build_stubs): Update prototype.
377 * elf64-ppp.c (struct ppc_link_hash_table): Add params, delete other
378 fields now in params. Adjust code throughout file.
379 (ppc64_elf_init_stub_bfd): Delete "abfd" parameter, add "params".
380 Save params pointer in htab.
381 (ppc64_elf_edit_opd, ppc64_elf_tls_setup,
382 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
383 ppc64_elf_build_stubs): Remove parameters now in "params".
384
668e22e5
AM
3852014-02-17 Alan Modra <amodra@gmail.com>
386
387 * elf32-ppc.c (ppc_elf_relocate_section): Move relocs on insns
388 patched for ppc476 workaround. Reapply branch taken/not taken
389 relocs.
390
9f7552cf
AM
3912014-02-12 Alan Modra <amodra@gmail.com>
392
393 * elf32-ppc.c (ppc_elf_relax_section): Don't build long-branch
394 stubs for calls to __tls_get_addr that we know will later be
395 optimised away.
396
795bc6b3
AM
3972014-02-12 Alan Modra <amodra@gmail.com>
398
399 * elf32-ppc.c (ppc_elf_relax_section): Enable ppc476 workaround
400 for ld -r, when code sections are sufficiently aligned.
401 * elf32-ppc.h (struct ppc_elf_params): Delete pagesize. Add
402 pagesize_p2.
403
b407645f
AM
4042014-02-12 Alan Modra <amodra@gmail.com>
405
406 PR gold/15530
407 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support
408 --export-dynamic and --dynamic-list marking of symbols.
409 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Reorder
410 cheap tests first.
411
d6f6f455
L
4122014-02-10 H.J. Lu <hongjiu.lu@intel.com>
413
414 PR gold/16530
415 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark symbol in
416 executables if it matches dynamic_list.
417
c1c69e83
AM
4182014-02-10 Alan Modra <amodra@gmail.com>
419
420 * po/SRC-POTFILES.in: Regenerate.
421 * po/bfd.pot: Regenerate.
422
53291d1f
AM
4232014-02-09 Alan Modra <amodra@gmail.com>
424
425 * elf-bfd.h (struct elf_backend_data): Add caches_rawsize.
426 * elfxx-target.h (elf_backend_caches_rawsize): Define.
427 (elfNN_bed): Init new field.
428 * elflink.c (elf_link_input_bfd): Handle caches_rawsize.
429 * elf32-ppc.c (shared_stub_entry): Zero addi offset.
430 (ppc_elf_relax_section): Don't reallocate section here, write
431 stubs, or write out relocs for ld -r here..
432 (ppc_elf_relocate_section): ..instead write stubs here, and use
433 existing code to write out relocs for ld -r. Fix offset
434 adjustment on reloc for little-endian.
435 (elf_backend_caches_rawsize): Define.
436
d1eb5696
RO
4372014-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
438
85773039 439 PR build/16550
d1eb5696
RO
440 * cache.c (bfd_cache_max_open): Cast RLIM_INFINITY to rlim_t.
441
2915c55b
JK
4422014-02-04 Jan Kratochvil <jan.kratochvil@redhat.com>
443
444 * coff-rs6000.c (xcoff_write_archive_contents_big): Free OFFSETS in
445 return paths. Three times.
446 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Free HTAB in all
447 return paths.
448 (ppc64_elf_tls_optimize): Free TOC_REF in return path.
449 (ppc64_elf_edit_toc): Free USED in return path.
450
1c2de463
SL
4512014-02-03 Sandra Loosemore <sandra@codesourcery.com>
452
453 * reloc.c (BFD_RELOC_NIOS2_GOT_LO, BFD_RELOC_NIOS2_GOT_HA): New.
454 (BFD_RELOC_NIOS2_CALL_LO, BFD_RELOC_NIOS2_CALL_HA): New.
455 * libbfd.h: Regenerated.
456 * bfd-in2.h: Regenerated.
457 * elf32-nios2.c (elf_nios2_howto_table_rel): Add new relocations.
458 (nios2_reloc_map): Likewise.
459 (GOT_USED, CALL_USED): Renamed from GOT16_USED and CALL16_USED.
460 Fixed all references.
461 (nios2_elf32_relocate_section): Add new relocations.
462 (nios2_elf32_check_relocs): Likewise.
463 (nios2_elf32_gc_sweep_hook): Likewise.
464
5446cbdf
AM
4652014-02-03 Alan Modra <amodra@gmail.com>
466
467 * elf32-ppc.c (struct ppc_elf_link_hash_table): Add params.
468 Delete emit_stub_syms, no_tls_get_addr_opt. Update all uses.
469 (ppc_elf_link_params): New function.
470 (ppc_elf_create_glink): Align .glink to 64 bytes for ppc476
471 workaround.
472 (ppc_elf_select_plt_layout): Remove plt_style and emit_stub_syms
473 parameters. Use htab->params instead.
474 (ppc_elf_tls_setup): Remove no_tls_get_addr_opt parameter.
475 (ppc_elf_size_dynamic_sections): Align __glink_PLTresolve to
476 64 bytes for ppc476 workaround.
477 (struct ppc_elf_relax_info): New.
478 (ppc_elf_relax_section): Exclude linker created sections and
479 those too small to hold one instruction. Don't add another
480 branch around trampolines on later relax passes. Don't
481 generate trampolines for undefined symbols when !relocatable,
482 nor for plugin symbols. Allocate space for ppc476 workaround
483 patch area. Free fixups on error return path.
484 (ppc_elf_relocate_section): Handle ppc476 workaround patching.
485 * elf32-ppc.h (struct ppc_elf_params): New.
486 (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Update prototype.
487 (ppc_elf_link_params): Declare.
488 * section.c (SEC_INFO_TYPE_TARGET): Define.
489 * bfd-in2.h: Regenerate.
490
82e91538
SL
4912014-02-02 Sandra Loosemore <sandra@codesourcery.com>
492
493 * elf32-nios2.c (struct elf32_nios2_link_hash_table): Add
494 h_gp_got field.
495 (nios2_elf32_relocate_section): Use got_base to adjust
496 GOT-pointer-relative relocations relative to _gp_got.
497 (create_got_section): Create _gp_got symbol.
498 (nios2_elf32_finish_dynamic_symbol): Make _gp_got absolute.
499 (nios2_elf32_size_dynamic_sections): Set _gp_got offset.
500
78058a5e
SL
5012014-01-30 Sandra Loosemore <sandra@codesourcery.com>
502
503 * bfd-in2.h: Update from reloc.c.
504 * elf32-nios2.c: Include elf32-nios2.h.
505 (elf_nios2_howto_table_rel): Add entry for R_NIOS2_CALL26_NOAT.
506 (nios2_reloc_map): Likewise.
507 (enum elf32_nios2_stub_type): Declare.
508 (struct elf32_nios2_stub_hash_entry): Declare.
509 (nios2_stub_hash_entry, nios2_stub_hash_lookup): New macros.
510 (struct elf32_nios2_link_hash_entry): Add hsh_cache field.
511 (struct elf32_nios2_link_hash_table): Add new fields bstab,
512 stub_bfd, add_stub_section, layout_sections_again, stub_group,
513 bfd_count, top_index, input_list, all_local_syms.
514 (nios2_call26_stub_entry): New.
515 (nios2_elf32_install_imm16): Move up in file.
516 (nios2_elf32_install_data): Move up in file.
517 (hiadj): Move up in file.
518 (stub_hash_newfunc): New.
519 (link_hash_newfunc): Initialize hsh_cache field.
520 (STUB_SUFFIX): New.
521 (nios2_stub_name): New.
522 (nios2_get_stub_entry): New.
523 (nios2_add_stub): New.
524 (nios2_elf32_setup_section_lists): New.
525 (nios2_elf32_next_input_section): New.
526 (CALL26_SEGMENT): New.
527 (MAX_STUB_SECTION_SIZE): New.
528 (group_sections): New.
529 (nios2_type_of_stub): New.
530 (nios2_build_one_stub): New.
531 (nios2_size_one_stub): New.
532 (get_local_syms): New.
533 (nios2_elf32_size_stubs): New.
534 (nios2_elf32_build_stubs): New.
535 (nios2_elf32_do_call26_relocate): Correct CALL26 overflow test.
536 (nios2_elf32_relocate_section): Handle R_NIOS2_CALL26_NOAT. Add
537 trampolines for R_NIOS2_CALL26 stubs.
538 (nios2_elf32_check_relocs): Handle R_NIOS2_CALL26_NOAT.
539 (nios2_elf32_gc_sweep_hook): Likewise.
540 (nios2_elf32_link_hash_table_create): Initialize the stub hash table.
541 (nios2_elf32_link_hash_table_free): New.
542 (bfd_elf32_bfd_link_hash_table_free): Define.
543 * elf32-nios2.h: New file.
544 * libbfd.h: Update from reloc.c.
545 * reloc.c (BFD_RELOC_NIOS2_CALL26_NOAT): New.
546
df3ce959
NC
5472014-01-29 Nick Clifton <nickc@redhat.com>
548
549 PR binutils/16318
550 * elf32-metag.c (elf_metag_post_process_headers): Call
551 _bfd_elf_post_process_headers.
552 * elf32-sh64.c (sh64_elf_copy_private_data): Call
553 _bfd_elf_copy_private_data.
554 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
555
27b829ee
NC
5562014-01-29 Nick Clifton <nickc@redhat.com>
557
558 * bfd-in.h (bfd_set_section_vma): Delete.
559 (bfd_set_section_alignment): Delete.
560 (bfd_set_section_userdata): Delete.
561 (bfd_set_cacheable): Delete.
562 * bfd.c (bfd_set_cacheable): New static inline function.
563 * section.c (bfd_set_section_userdata): Likewise.
564 (bfd_set_section_vma): Likewise.
565 (bfd_set_section_alignment): Likewise.
566 * bfd-in2.h: Regenerate.
567
0a9c7b2b
NC
5682014-01-28 Nick Clifton <nickc@redhat.com>
569
570 * dwarf2.c (find_abstract_instance_name): For DW_FORM_ref_addr
571 attributes select the CU containing the abbreviation, which may not
572 be the current CU.
573
3ba720c7
AM
5742014-01-24 Alan Modra <amodra@gmail.com>
575
576 * elf64-ppc.c (ppc_build_one_stub): Correct reloc count passed
577 to get_relocs for ELFv2.
578
d923cae0
L
5792014-01-23 H.J. Lu <hongjiu.lu@intel.com>
580
581 PR ld/16498
3ba720c7 582 * elf.c (_bfd_elf_map_sections_to_segments): Issue a linker error
d923cae0
L
583 if TLS sections are not adjacent.
584
16e4ecc0
AM
5852014-01-22 Alan Modra <amodra@gmail.com>
586
587 * elflink.c (elf_link_add_object_symbols): Call minfo for --as-needed.
588
eb8d7fda
AM
5892014-01-22 Alan Modra <amodra@gmail.com>
590
591 * elf64-ppc.c (STK_LINKER): Comment typo fix.
592
4584ec12
L
5932014-01-21 H.J. Lu <hongjiu.lu@intel.com>
594
595 PR ld/16467
596 * elflink.c (_bfd_elf_merge_symbol): When types of the existing
597 regular default symbol definition and the versioned dynamic
598 symbol definition mismatch, skip the default symbol definition
599 if one of them is IFUNC.
600
22ef172a
L
6012014-01-21 H.J. Lu <hongjiu.lu@intel.com>
602
603 PR ld/2404
604 * elflink.c (_bfd_elf_merge_symbol): Don't check info->shared,
605 info->export_dynamic nor h->ref_dynamic for type mismatch when
606 adding the default version.
607
b75d42bc
AM
6082014-01-16 Alan Modra <amodra@gmail.com>
609
610 * elfxx-mips.c (mips_elf_record_got_page_entry): Pass in a
611 mips_elf_traverse_got_arg* rather than mips_got_info*.
612 Adjust caller. Alloc on output_bfd rather than symbol section
613 owner.
614
c353e543
L
6152014-01-15 H.J. Lu <hongjiu.lu@intel.com>
616
617 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
618 change.
619 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
620
818d220a
L
6212014-01-14 H.J. Lu <hongjiu.lu@intel.com>
622
623 PR ld/16428
624 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't discard relocs
625 against __ehdr_start.
626 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
627
c3ce498c
L
6282014-01-14 H.J. Lu <hongjiu.lu@intel.com>
629
630 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
631 change.
632 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
633
d1ec1e40
L
6342014-01-14 H.J. Lu <hongjiu.lu@intel.com>
635
636 PR ld/16428
637 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc
638 count if there are any non pc-relative relocs.
639 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
640
f44a1f8e
CL
6412014-01-14 Michael Hudson-Doyle <michael.hudson@linaro.org>
642 Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org>
643
644 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use correct
645 offset while calculating relocation address.
646 (elfNN_aarch64_create_small_pltn_entry): Likewise.
647 (elfNN_aarch64_init_small_plt0_entry): Likewise.
648
fd0fd00c
MJ
6492014-01-13 Ma Jiang <ma.jiang@zte.com.cn>
650
651 PR ld/16202
652 * elf32-arm.c (elf32_arm_final_link_relocate): Refetch addends for
653 R_ARM_ABS8 and R_ARM_ABS16.
654
aa726b9e
AM
6552014-01-13 Alan Modra <amodra@gmail.com>
656
657 * elf32-ppc.c (ppc_elf_check_relocs): For @local call to ifunc,
658 error when shared and force a plt call otherwise.
659 (ppc_elf_size_dynamic_sections): Don't emit DT_PPC_GOT unless
660 plt_type == PLT_NEW.
661 (ppc_elf_relocate_section): Add missing test to resolve ifuncs to
662 the appropriate call stub.
663
eec2f3ed
AM
6642014-01-10 Alan Modra <amodra@gmail.com>
665
666 PR ld/14207
667 PR ld/16322
668 PR binutils/16323
669 * elf.c (assign_file_positions_for_load_sections): Revert last change.
670 (assign_file_positions_for_non_load_sections): When setting up
671 PT_GNU_RELRO header, don't require a corresponding PT_LOAD
672 header that completely covers the relro region.
673
09bf66a8
TG
6742014-01-09 Tristan Gingold <gingold@adacore.com>
675
676 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): use jump
677 table macros and add macros to initializa the structure.
678
43a8475c
L
6792014-01-08 H.J. Lu <hongjiu.lu@intel.com>
680
681 PR ld/14207
682 PR ld/16322
683 PR binutils/16323
684 * elf.c (_bfd_elf_map_sections_to_segments): Don't check section
685 size for PT_GNU_RELRO segment.
686 (assign_file_positions_for_load_sections): If PT_LOAD segment
687 doesn't fit PT_GNU_RELRO segment, adjust its p_filesz and p_memsz.
688
1651e569
TT
6892014-01-07 Tom Tromey <tromey@redhat.com>
690
691 * elf32-xtensa.c (vsprint_msg): Don't use old VA_* compatibility
692 wrappers.
693
dc9155b2
NC
6942014-01-03 Nick Clifton <nickc@redhat.com>
695
696 PR binutils/16199
697 * elf.c (vma_page_aligned_bias): Handle a maxpagesize value of
698 zero.
699
dd8dfa39 7002014-01-02 Yuanhui Zhang <asmwarrior@gmail.com>
044387af
A
701
702 PR binutils/14289
703 * pef.c (bfd_pef_xlib_read_header): Increase buffer size to 80.
704
1be5090b
NC
7052014-01-02 Nick Clifton <nickc@redhat.com>
706
707 PR binutils/11983
708 * archive.c (_bfd_get_elt_at_filepos): Store a copy of the
709 filename in the bfd's filename field.
710 * elfcode.h (bfd_from_remote_memory): Likewise.
711 * ieee.c (ieee_object_p): Likewise.
712 * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
713 * oasys.c (oasys_openr_next_archived_file): Likewise.
714 * vms-lib.c (_bfd_vms_lib_get_module): Likewise.
715 * opncls.c (bfd_fopen): Likewise.
716 (bfd_openstreamr): Likewise.
717 (bfd_openr_iovec): Likewise.
718 (bfd_openw): Likewise.
719 (bfd_create): Likewise.
720 (_bfd_delete_bfd): Free filename.
721
5fb776a6 722For older changes see ChangeLog-2013
56882138 723\f
5fb776a6 724Copyright (C) 2014 Free Software Foundation, Inc.
752937aa
NC
725
726Copying and distribution of this file, with or without modification,
727are permitted in any medium without royalty provided the copyright
728notice and this notice are preserved.
729
56882138
AM
730Local Variables:
731mode: change-log
732left-margin: 8
733fill-column: 74
734version-control: never
735End:
This page took 0.747164 seconds and 4 git commands to generate.