addr2line: fix missing inlined frames.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
4ba3b326
TG
12014-05-28 Tristan Gingold <gingold@adacore.com>
2
3 * dwarf2.c (lookup_address_in_function_table): Add best_fit_len
4 to keep the length of the best fit range.
5 (lookup_symbol_in_function_table, info_hash_lookup_funcinfo):
6 Likewise.
7
7a2f2d82
DD
82014-05-27 DJ Delorie <dj@redhat.com>
9
10 * bfd/elf32-rx.c (get_symbol_value_maybe): New.
11 (rx_elf_relocate_section): If we find a reloc against
12 $tableentry$default$<name>, redirect it to the appropriate
13 $tableentry$<n>$.
14 (RX_Table_Info): New.
15 (rx_table_find): New. Check all tables and SEC_KEEP all sections
16 with table parts in them.
17 (rx_check_directives): New.
18 (rx_table_map_2): New.
19 (rx_table_map): New.
20 (rx_additional_link_map_text): New. Called to dump tables to the
21 map file.
22 * bfd/elf32-rx.h: New.
23
bceec4b9
DD
242014-05-20 DJ Delorie <dj@redhat.com>
25
26 * elf32-msp430.c (msp430_elf_relax_adjust_locals): Avoid overflow.
27
93d1b056
AM
282014-05-20 Alan Modra <amodra@gmail.com>
29
30 PR 16952
31 * elf32-ppc.c (ppc_elf_create_linker_section): Move earlier.
32 Remove redundant setting of htab->elf.dynobj. Don't align.
33 Define .sdata symbols using _bfd_elf_define_linkage_sym.
34 (ppc_elf_create_glink): Call ppc_elf_create_linker_section.
35 (create_sdata_sym): Delete.
36 (elf_allocate_pointer_linker_section): Rename from
37 elf_create_pointer_linker_section. Align section.
38 (ppc_elf_check_relocs): Don't call ppc_elf_creat_linker_section
39 directly here, or create_sdata_sym. Set ref_regular on _SDA_BASE_
40 and _SDA2_BASE_.
41 (ppc_elf_size_dynamic_sections): Remove ATTRIBUTE_UNUSED on param.
42 Remove unnecessary tests on _SDA_BASE_ sym.
43 (maybe_strip_sdasym, ppc_elf_maybe_strip_sdata_syms): New functions.
44 (ppc_elf_relocate_section): Tighten SDA reloc symbol section checks.
45 * elf32-ppc.h (ppc_elf_set_sdata_syms): Delete.
46 (ppc_elf_maybe_strip_sdata_syms): Declare.
47
a7c7b2ba
RM
482014-05-16 Ryan Mansfield <rmansfield@qnx.com>
49
50 * config.bfd: Move QNX target_cflags from arm-*-netbsd* to arm-*-nto*.
51
522014-05-16 Jon Turney <jon.turney@dronecode.org.uk>
6e6e7cfc
JT
53
54 * peXXigen.c (pe_print_debugdata): Don't interpret debug directory
55 in a section with no contents.
56 (is_vma_in_section, find_section_by_vma): New functions.
57 (_bfd_XX_bfd_copy_private_bfd_data_common): Recalculate file
58 offsets in the debug directory.
59 (_bfd_XXi_slurp_codeview_record, _bfd_XXi_write_codeview_record):
60 Byte-swap GUID from little-endian to big-endian order for
61 consistent and conventional display.
62
856ea05c
KP
632014-05-16 Kaushik Phata <Kaushik.Phatak@kpit.com>
64
65 * elf32-rl78.c (rl78_elf_merge_private_bfd_data): Complain if
66 64-bit doubles objects mix with 32-bit doubles objects.
67 (rl78_elf_print_private_bfd_data): Describe 64-bit doubles flag.
68
68e0f6b1
HPN
692014-05-08 Hans-Peter Nilsson <hp@bitrange.com>
70
71 * mmo.c: Update URLs in documentation comments.
72
1058c753
VA
732014-05-02 Volodymyr Arbatov <arbatov@cadence.com>
74 David Weatherford <weath@cadence.com>
75 Max Filippov <jcmvbkbc@gmail.com>
76
77 * elf32-xtensa.c (relax_section): treat R_XTENSA_DIFF* relocations as
78 signed.
79
e59bc75b
AT
802014-05-07 Andreas Tobler <andreast@fgznet.ch>
81
82 * config.bfd: Add proper arm config for *-*-freebsd*.
83
ae52f483
AB
842014-05-07 Andrew Bennett <andrew.bennett@imgtec.com>
85
86 * aoutx.h (NAME (aout, machine_type)): Add mips32r3, mips64r3,
87 mips32r5 and mips64r5.
88 * archures.c (bfd_architecture): Likewise.
89 * bfd-in2.h (bfd_architecture): Likewise.
90 * cpu-mips.c (arch_info_struct): Likewise.
91 * elfxx-mips.c (mips_set_isa_flags): Likewise.
92
757a636f
RS
932014-05-06 Richard Sandiford <rdsandiford@googlemail.com>
94
95 * elfxx-mips.h (elfxx-mips.h): Declare.
96 * elfxx-mips.c (mips_elf_merge_obj_attributes): Use it to report
97 Tag_GNU_MIPS_ABI_FP mismatches.
98 (_bfd_mips_fp_abi_string): New function.
99
2f67d686
AM
1002014-05-02 Alan Modra <amodra@gmail.com>
101
102 * targets.c: Sort bfd_target vectors somewhat alphabetically.
103 * configure.in: Likewise.
104 * configure: Regenerate.
105
6d00b590
AM
1062014-05-02 Alan Modra <amodra@gmail.com>
107
108 * aix386-core.c, * aout-adobe.c, * aout-arm.c, * aout-ns32k.c,
109 * aout-sparcle.c, * aout0.c, * aoutx.h, * armnetbsd.c, * bout.c,
110 * cf-i386lynx.c, * cf-sparclynx.c, * cisco-core.c, * coff-alpha.c,
111 * coff-apollo.c, * coff-arm.c, * coff-aux.c, * coff-go32.c,
112 * coff-h8300.c, * coff-h8500.c, * coff-i386.c, * coff-i860.c,
113 * coff-i960.c, * coff-m68k.c, * coff-m88k.c, * coff-mips.c,
114 * coff-rs6000.c, * coff-sh.c, * coff-sparc.c, * coff-stgo32.c,
115 * coff-svm68k.c, * coff-tic80.c, * coff-u68k.c, * coff-w65.c,
116 * coff-we32k.c, * coff-x86_64.c, * coff-z80.c, * coff-z8k.c,
117 * coff64-rs6000.c, * config.bfd, * configure.com, * configure.in,
118 * demo64.c, * elf-m10200.c, * elf-m10300.c, * elf32-am33lin.c,
119 * elf32-arc.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
120 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
121 * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
122 * elf32-fr30.c, * elf32-frv.c, * elf32-gen.c, * elf32-h8300.c,
123 * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c, * elf32-i860.c,
124 * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
125 * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
126 * elf32-m68k.c, * elf32-m88k.c, * elf32-mcore.c, * elf32-mep.c,
127 * elf32-metag.c, * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
128 * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-nios2.c,
129 * elf32-or1k.c, * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c,
130 * elf32-rx.c, * elf32-s390.c, * elf32-score.c, * elf32-sh-symbian.c,
131 * elf32-sh.c, * elf32-sh64.c, * elf32-sparc.c, * elf32-spu.c,
132 * elf32-tic6x.c, * elf32-tilegx.c, * elf32-tilepro.c, * elf32-v850.c,
133 * elf32-vax.c, * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
134 * elf32-xtensa.c, * elf64-alpha.c, * elf64-gen.c, * elf64-hppa.c,
135 * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c, * elf64-ppc.c,
136 * elf64-s390.c, * elf64-sh64.c, * elf64-sparc.c, * elf64-tilegx.c,
137 * elf64-x86-64.c, * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
138 * epoc-pe-arm.c, * epoc-pei-arm.c, * hp300bsd.c, * hp300hpux.c,
139 * hppabsd-core.c, * hpux-core.c, * i386aout.c, * i386bsd.c,
140 * i386dynix.c, * i386freebsd.c, * i386linux.c, * i386lynx.c,
141 * i386mach3.c, * i386msdos.c, * i386netbsd.c, * i386os9k.c,
142 * irix-core.c, * m68k4knetbsd.c, * m68klinux.c, * m68knetbsd.c,
143 * m88kmach3.c, * m88kopenbsd.c, * mach-o-i386.c, * mach-o-x86-64.c,
144 * makefile.vms, * mipsbsd.c, * mmo.c, * netbsd-core.c, * newsos3.c,
145 * nlm32-alpha.c, * nlm32-i386.c, * nlm32-ppc.c, * nlm32-sparc.c,
146 * ns32knetbsd.c, * osf-core.c, * pc532-mach.c, * pe-arm-wince.c,
147 * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-mips.c, * pe-ppc.c,
148 * pe-sh.c, * pe-x86_64.c, * pei-arm-wince.c, * pei-arm.c,
149 * pei-i386.c, * pei-ia64.c, * pei-mcore.c, * pei-mips.c, * pei-ppc.c,
150 * pei-sh.c, * pei-x86_64.c, * ppcboot.c, * ptrace-core.c, * riscix.c,
151 * sco5-core.c, * som.c, * sparclinux.c, * sparclynx.c,
152 * sparcnetbsd.c, * sunos.c, * targets.c, * trad-core.c,
153 * vax1knetbsd.c, * vaxbsd.c, * vaxnetbsd.c, * versados.c,
154 * vms-alpha.c, * vms-lib.c: Rename bfd targets to
155 <cpu>_<format>_<other>_<endian>_vec. Adjust associated MY macros
156 on aout targets.
157 * configure: Regenerate.
158
1218d67d
HPN
1592014-05-01 Hans-Peter Nilsson <hp@bitrange.com>
160
161 * mmo.c (mmo File layout documentation): Add note about low bits
162 of address.
163 (mmo_write_chunk): When handling data remainder, assert that
164 previous remaining data is flushed.
165 (mmo_write_loc_chunk): Only look for trailing and leading zeros
166 when dealing with an aligned VMA and for aligned lengths. Don't skip
167 the last 32-bit-word of zeros.
168 (mmo_write_loc_chunk): Emit an error if the VMA is not aligned.
169 (mmo_scan) <case LOP_QUOTE>: Move re-alignment of vma before
170 emitting data, not after updating it.
171 <case LOP_LOC>: Call mmo_decide_section with aligned vma.
172
a953eec9
NC
1732014-04-30 Nick Clifton <nickc@redhat.com>
174
175 * compress.c (bfd_is_section_compressed): When checking the
176 .debug_str section, also check the fifth byte in the section is
177 not part of a string.
178
5087d529
AM
1792014-04-30 Alan Modra <amodra@gmail.com>
180
181 * elf-eh-frame.c (struct cie.personality): Replace val with sym.
182 (find_merged_cie): Identify personality functions by (bfd_id,index)
183 pair when a local sym is used.
184
230977a4
CS
1852014-04-29 Christian Svensson <blue@cmd.nu>
186
187 * elf32-or1k.c: Fix a bug where non-TLS relocations would be forced
188 into .rela.got if it contained TLS relocations as well.
189
40af4a36
NC
1902014-04-28 Nick Clifton <nickc@redhat.com>
191
192 PR ld/16821
193 * peXXigen.c (_bfd_XXi_swap_sym_out): Rework fix to avoid compile
194 time warning.
195
a9e18c6a
AM
1962014-04-26 Alan Modra <amodra@gmail.com>
197
198 * po/SRC-POTFILES.in: Regenerate.
199 * configure: Regenerate.
200
88667baf
NC
2012014-04-25 Nick Clifton <nickc@redhat.com>
202
203 PR ld/16821
204 * peXXigen.c (_bfd_XXi_swap_sym_out): Another fix for building on
205 a 342-bit host. This time for older versions of gcc.
206
08937d80
NC
2072014-04-24 Nick Clifton <nickc@redhat.com>
208
209 * peXXigen.c (rsrc_print_section): Fix compile time warning for
210 32-bit hosts.
211
93ee1e36
AM
2122014-04-24 Alan Modra <amodra@gmail.com>
213
214 PR 16867
215 * dwarf2.c: Formatting.
216 (struct dwarf2_debug): Make adjusted_section_count signed.
217 (unset_sections): Make i signed.
218 (set_debug_vma): New function.
219 (place_sections): Handle separate debug object file. Set VMA
220 on debug sections, even if they have an output section. Also
221 set VMA on zero size sections, and non-load but alloc sections.
222 Set adjusted_section_count to -1 when no section adjustment.
223 Malloc adjusted_sections. Don't double last_vma. Transfer
224 alloc section VMAs to separate debug file.
225 (_bfd_dwarf2_cleanup_debug_info): Free adjusted_sections.
226 (_bfd_dwarf2_slurp_debug_info): Add do_place parameter. Drop
227 test on symbols being the same before using old stash. Read
228 and use separate debug file symbols. Call place_sections.
229 (find_line): Don't call place_sections here.
230 * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Update proto.
231 * libbfd.h: Regenerate.
232 * mach-o.c (bfd_mach_o_find_nearest_line): Adjust
233 _bfd_dwarf2_slurp_debug_info call.
234 * simple.c (simple_save_output_info): Clarify comment.
235
3714081c
NC
2362014-04-24 Nick Clifton <nickc@redhat.com>
237
238 PR ld/16807
239 * peXXigen.c (struct rsrc_regions): New structure.
240 (rsrc_print_resource_directory): Use new structure. Include
241 offset of directory in listing.
242 (rsrc_print_resource_entry): Likewise.
243 (rsrc_print_section): Likewise.
244 (rsrc_count_entries): Do not increment sizeof_strings or
245 sizeof_leaves.
246 (rsrc_count_directory): Do not increment sizeof_tables.
247 (rsrc_compute_region_sizes): New function.
248 (rsrc_write_leaf): Maintain 8-byte alignment for resource data.
249 (rsrc_process_section): Compute size of regions after merging
250 entries.
251
cd0449ab
AM
2522014-04-23 Alan Modra <amodra@gmail.com>
253
254 PR ld/16787
255 * dwarf2.c (struct dwarf2_debug): Add sec_vma field.
256 (place_sections): Do not modify VMA of sections when called from
257 linker after sections have been placed in output sections. Short
258 circuit single section case.
259 (save_section_vma, section_vma_same): New functions.
260 (_bfd_dwarf2_slurp_debug_info): Throw away stash if section VMAs
261 change.
262 * reloc.c (bfd_perform_relocation): Do not modify reloc addend
263 when non-relocatable.
264
d5f59c10
NC
2652014-04-22 Nick Clifton <nickc@redhat.com>
266
267 PR ld/16821
268 * peXXigen.c (_bfd_XXi_swap_sym_out): Fix for 32-bit hosts.
269
73589c9d
CS
2702014-04-22 Christian Svensson <blue@cmd.nu>
271
272 * Makefile.am: Remove openrisc and or32 support. Add support for or1k.
273 * archures.c: Likewise.
274 * coffcode.h: Likewise.
275 * config.bfd: Likewise.
276 * configure.in: Likewise.
277 * reloc.c: Likewise.
278 * targets.c: Likewise.
279 * cpu-or1k.c: New file.
280 * elf32-or1k.c: New file.
281 * coff-or32.c: Delete.
282 * cpu-openrisc.c: Delete.
283 * cpu-or32.c: Delete.
284 * elf32-openrisc.c: Delete.
285 * elf32-or32.c: Delete.
286 * Makefile.in: Regenerate.
287 * bfd-in2.h: Regenerate.
288 * configure: Regenerate.
289 * libbfd.h: Regenerate.
290
285fc9d8
YZ
2912014-04-22 Yuanhui Zhang <asmwarrior@gmail.com>
292
293 PR ld/16821
294 * peXXigen.c (abs_finder): Fix for 32-bit host builds.
295
5d3b02f0
WN
2962014-04-22 Will Newton <will.newton@linaro.org>
297
298 * elfnn-aarch64.c (elfNN_aarch64_section_flags): Remove
299 function. (elf_backend_section_flags): Remove define.
300
cc75d373
RH
3012014-04-21 Richard Henderson <rth@redhat.com>
302
d1c109de
RH
303 * elf64-alpha.c (elf64_alpha_size_got_sections): New may_merge
304 parameter; honor it and disable got merging when false.
305 (elf64_alpha_relax_got_load): Do not relax to GPREL relocs during
306 the first pass of relaxation.
307 (elf64_alpha_relax_with_lituse): Likewise. Move relaxed relocs to
308 the end of the LITERAL+LITUSE chain.
309 (elf64_alpha_relax_section): Only process LITERAL relocs during the
310 second pass of relaxation.
311
cc75d373
RH
312 * configure.ac (use_secureplt): Enable by default.
313 * configure: Rebuild.
314
c9ffd2ea
TG
3152014-04-18 Tristan Gingold <gingold@adacore.com>
316
317 * mach-o.h (bfd_mach_o_dyld_info_command): Add rebase_content,
318 bind_content, weak_bind_content, lazy_bind_content,
319 export_content.
320 (bfd_mach_o_load_command): Add comments, add next field.
321 (mach_o_data_struct): Replace commands field by first_command
322 and last_command.
323 * mach-o.c (bfd_mach_o_append_command): New function.
324 (bfd_mach_o_bfd_copy_private_symbol_data): Add blank lines.
325 (bfd_mach_o_bfd_copy_private_section_data): Check flavour,
326 copy fields.
327 (bfd_mach_o_bfd_copy_private_header_data): Copy load commands.
328 (bfd_mach_o_pad4, bfd_mach_o_pad_command): New functions.
329 (bfd_mach_o_write_thread): Use macro instead of literal.
330 (bfd_mach_o_write_dylinker, bfd_mach_o_write_dylib)
331 (bfd_mach_o_write_main, bfd_mach_o_write_dyld_info): New
332 functions.
333 (bfd_mach_o_write_symtab_content): New function (extracted
334 from bfd_mach_o_write_symtab).
335 (bfd_mach_o_write_symtab): Split.
336 (bfd_mach_o_count_indirect_symbols): Move
337 (bfd_mach_o_build_dysymtab): Remove layout code.
338 (bfd_mach_o_write_contents): Rewritten to build commands in order.
339 (bfd_mach_o_count_sections_for_seg): Remove.
340 (bfd_mach_o_build_obj_seg_command): New function (extracted from
341 bfd_mach_o_build_seg_command).
342 (bfd_mach_o_build_exec_seg_command): New function.
343 (bfd_mach_o_build_dysymtab_command): Remove.
344 (bfd_mach_o_layout_commands): New function.
345 (bfd_mach_o_init_segment): New function.
346 (bfd_mach_o_build_commands): Major rework to handle non-object
347 files.
348 (bfd_mach_o_alloc_and_read, bfd_mach_o_read_dyld_content): New
349 function.
350 (bfd_mach_o_read_dyld_info): Clear content fields.
351 (bfd_mach_o_read_segment): Adjust call.
352 (bfd_mach_o_flatten_sections): Adjust as now load commands are
353 chained.
354 (bfd_mach_o_scan_start_address, bfd_mach_o_scan)
355 (bfd_mach_o_mkobject_init, bfd_mach_o_get_base_address)
356 (bfd_mach_o_lookup_command, bfd_mach_o_core_fetch_environment):
357 Likewise.
358
967b2c53
TG
3592014-04-18 Tristan Gingold <gingold@adacore.com>
360
361 * mach-o-target.c (bfd_mach_o_bfd_copy_private_header_data):
362 Define instead of bfd_mach_o_bfd_copy_private_bfd_data.
363 * mach-o.c (bfd_mach_o_bfd_copy_private_bfd_data): Rename.
364 * mach-o.h (bfd_mach_o_bfd_copy_private_bfd_data): Likewise.
365
4525c51a
TG
3662014-04-18 Tristan Gingold <gingold@adacore.com>
367
368 * mach-o.h (bfd_mach_o_dylinker_command)
369 (bfd_mach_o_dylib_command, bfd_mach_o_fvmlib_command): Remove
370 name_len field.
371 * mach-o.c (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib)
372 (bfd_mach_o_read_fvmlib): Adjust after name_len removal.
373
4384b284
TG
3742014-04-18 Tristan Gingold <gingold@adacore.com>
375
376 * mach-o.h (bfd_mach_o_backend_data): Add page_size field.
377 * mach-o-target.c: Check TARGET_PAGESIZE is defined.
378 (TARGET_NAME_BACKEND): Add TARGET_PAGESIZE.
379 * mach-o.c (TARGET_PAGESIZE): Define and undefined for
380 each targets declared.
381 * mach-o-x86-64.c (TARGET_PAGESIZE): Define.
382 * mach-o-i386.c (TARGET_PAGESIZE): Define.
383
452216ab
TG
3842014-04-18 Tristan Gingold <gingold@adacore.com>
385
386 * mach-o.c (bfd_mach_o_write_thread)
387 (bfd_mach_o_write_section_32, bfd_mach_o_write_section_64)
388 (bfd_mach_o_write_segment_32, bfd_mach_o_write_segment_64)
389 (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib)
390 (bfd_mach_o_read_prebound_dylib, bfd_mach_o_read_prebind_cksum)
391 (bfd_mach_o_read_twolevel_hints, bfd_mach_o_read_fvmlib)
392 (bfd_mach_o_read_thread, bfd_mach_o_read_dysymtab)
393 (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid)
394 (bfd_mach_o_read_linkedit, bfd_mach_o_read_str)
395 (bfd_mach_o_read_dyld_info, bfd_mach_o_read_segment)
396 (bfd_mach_o_read_segment_32, bfd_mach_o_read_segment_64)
397 (bfd_mach_o_read_command): Now return a boolean status.
398 Adjust return statements.
399 (bfd_mach_o_write_contents, bfd_mach_o_scan): Adjust tests.
400 (bfd_mach_o_core_file_failing_command): Remove useless initialization.
401
cb22ccf4
KCY
4022014-04-17 Kwok Cheung Yeung <kcy@codesourcery.com>
403
404 * elfxx-mips.c (struct mips_got_info): Delete assigned_gotno
405 field. Add assigned_low_gotno and assigned_high_gotno fields.
406 (mips_elf_create_local_got_entry): Update out-of-space condition.
407 Set index of new GOT entry to assigned_low_gotno if required by
408 the current relocation, else set it to assigned_high_gotno.
409 (mips_elf_set_global_gotidx): Replace uses of assigned_gotno
410 with assigned_low_gotno.
411 (mips_elf_multi_got): Initialize assigned_low_gotno and
412 assigned_high_gotno in secondary GOTs. Use assigned_low_gotno
413 in place of assigned_gotno when handling global GOT entries.
414 (mips_elf_lay_out_got): Initialize assigned_low_gotno and
415 assigned_high_gotno.
416 (_bfd_mips_elf_finish_dynamic_sections): Account for a possible
417 gap in the middle of local GOT space.
418
4c34aff8
AM
4192014-04-17 Alan Modra <amodra@gmail.com>
420
421 PR 16846
422 * elflink.c (_bfd_elf_merge_symbol): Ignore TLS mismatch when
423 current bfd is a plugin. Don't always set type_change_ok
424 when old bfd is a plugin.
425
12241a34
TG
4262014-04-16 Tristan Gingold <gingold@adacore.com>
427
428 * mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Adjust cpusubtype
429 flag.
430
40fd06d1
AM
4312014-04-16 Alan Modra <amodra@gmail.com>
432
433 * elf32-ppc.c (ppc_elf_relocate_section): Fill 476 fixup area
434 with "ba 0" rather than zeros.
435
fa85fb9a
MS
4362014-04-15 Marcus Shawcroft <marcus.shawcroft@arm.com>
437
438 * (elfNN_aarch64_tls_relax): Fix instruction mask.
439
da3a2088
AM
4402014-04-14 Alan Modra <amodra@gmail.com>
441
442 * elf32-ppc.c (BA): Define
443 (ppc_elf_link_hash_table_create): Correct default_params.
444 (write_glink_stub): Pad small plt call stub with "ba 0" rather
445 than "nop" for ppc476_workaround.
446 (ppc_elf_finish_dynamic_sections): Likewise for branch table
447 and __glink_PLTresolve. Ensure plt call stub at end of page
448 doesn't allow fall-thru prefetch.
449
32ae0d80
NC
4502014-04-11 Nick Clifton <nickc@redhat.com>
451
452 PR ld/16821
453 * peXXigen.c (abs_finder): New function.
454 (_bfd_XXi_swap_sym_out): For absolute symbols with values larger
455 than 1^32 try to convert them into section relative values
456 instead.
457
85cf705b
NC
4582014-04-11 Nick Clifton <nickc@redhat.com>
459
460 * bfd-in2.h: Regenerate.
461 * libbfd.h: Regenerate.
462
1511baec
SL
4632014-04-10 Cesar Philippidis <cesar@codesourcery.com>
464
465 * elf32-nios2.c (nios2_elf32_build_stubs): Ignore dynobjs
466 when building function stubs.
467
e4ef1b6c
DC
4682014-04-10 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
469
470 * elf32-avr.c: Add DIFF relocations for AVR.
471 (avr_final_link_relocate): Handle the DIFF relocs.
472 (bfd_elf_avr_diff_reloc): New.
473 (elf32_avr_is_diff_reloc): New.
474 (elf32_avr_adjust_diff_reloc_value): Reduce difference value.
475 (elf32_avr_relax_delete_bytes): Recompute difference after deleting
476 bytes.
477
478 * reloc.c: Add BFD_RELOC_AVR_DIFF8/16/32 relocations
479
e30d16e9
AM
4802014-04-09 Alan Modra <amodra@gmail.com>
481
482 * libcoff.h: Regenerate.
483
b4ab4364
AM
4842014-04-09 Alan Modra <amodra@gmail.com>
485
486 * elf32-ppc.c (ppc_elf_relocate_section): Remove bctr from list
487 of safe ppc476 insns at end of page. Also remove non-branch insns.
488 Expand comments.
489
6e6e7cfc 4902014-04-08 Jon Turney <jon.turney@dronecode.org.uk>
61e2488c
JT
491
492 * peXXigen.c (pe_print_debugdata): New function: Displays the
493 contents of the debug directory and decodes codeview entries.
494 (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
495 (_bfd_XXi_slurp_codeview_record, _bfd_XXi_write_codeview_record):
496 Add functions for reading and writing debugdir and codeview
497 records.
498 * libpei.h (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
499 (_bfd_XXi_write_codeview_record): Add prototypes and macros.
500 * libcoff-in.h (pe_tdata): Add build-id data.
501 * libcoff.h: Regenerate.
502 * coffcode.h (coff_write_object_contents): Run build_id
503 after_write_object_contents hook.
504
115c6d5c
AM
5052014-04-05 Alan Modra <amodra@gmail.com>
506
507 * elflink.c (_bfd_elf_add_default_symbol): Pass poldbfd when
508 merging non-default sym.
509
26954155
TG
5102014-04-04 Tristan Gingold <gingold@adacore.com>
511
512 * mach-o.c (bfd_mach_o_header_p): Reject 64 bit target when not
513 configured for.
514
ca148c5a
TG
5152014-04-04 Tristan Gingold <gingold@adacore.com>
516
517 * mach-o.c (bfd_mach_o_convert_section_name_to_mach_o): Fix
518 thinko on names length.
519
47c50932
TG
5202014-04-04 Tristan Gingold <gingold@adacore.com>
521
522 * mach-o-i386.c (bfd_mach_o_i386_swap_reloc_out): Use target index
523 of output_section.
524 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Ditto.
525
4ef27e04
TG
5262014-04-04 Tristan Gingold <gingold@adacore.com>
527
528 * bfd.c (bfd_get_arch_size): Default is taken from arch.
529
b69c8728
JT
5302014-04-03 Jon Turney <jon.turney@dronecode.org.uk>
531
532 * peXXigen.c (pe_print_edata): Verify edt.name lies inside
533 section before dereferencing.
534 (pe_print_idata, pe_print_edata, pe_print_reloc)
535 (rsrc_print_section): Don't bother interpreting the contents
536 of sections which have no contents.
537
1b6aeedb
MG
5382014-04-03 Maria Guseva <m.guseva@samsung.com>
539
540 PR ld/16803
541 * elf.c (_bfd_elf_set_section_contents): Use correct type to hold
542 file position.
543
707e555b
TG
5442014-04-03 Tristan Gingold <gingold@adacore.com>
545
546 * mach-o.c (bfd_mach_o_mangle_symbols): Use index from
547 output_section.
548 (bfd_mach_o_build_seg_command): Add comment. Realign segment.
549 Fix style.
550 (bfd_mach_o_build_commands, bfd_mach_o_read_thread): Fix style.
551
c3fcb775
AM
5522014-04-03 Alan Modra <amodra@gmail.com>
553
554 * elf-bfd.h (struct elf_backend_data
555 <elf_backend_bfd_from_remote_memory>): Replace "size_t size"
556 with "bfd_size_type size".
557 (_bfd_elf32_bfd_from_remote_memory): Likewise.
558 (_bfd_elf64_bfd_from_remote_memory): Likewise.
559 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
560 * elfcode.h (bfd_from_remote_memory): Likewise.
2493504a
AM
561 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Likewise.
562 * bfd-in2.h: Regenerate.
c3fcb775 563
7a79c514
TG
5642014-04-02 Tristan Gingold <gingold@adacore.com>
565
566 * mach-o.h (bfd_mach_o_twolevel_hints_command)
567 (bfd_mach_o_prebind_cksum_command): New types.
568 (bfd_mach_o_prebound_dylib_command): Rewrite.
569 (bfd_mach_o_load_command): Add prebind_cksum and twolevel_hints
570 fields.
571 * mach-o.c (bfd_mach_o_read_prebound_dylib): Read and decode the
572 command.
573 (bfd_mach_o_read_prebind_cksum): New function.
574 (bfd_mach_o_read_twolevel_hints): Ditto.
575 (bfd_mach_o_read_command): Handle prebind cksum and twolevel hints
576 commands.
577
5979d6b6
AM
5782014-04-02 Alan Modra <amodra@gmail.com>
579
580 * elfcode.h (bfd_from_remote_memory): Add "size" parameter.
581 Consolidate code handling possible section headers past end of
582 segment. Don't use p_align for page size guess, instead use
583 minpagesize. Take note of ld.so clearing section headers when
584 p_memsz > p_filesz. Handle file header specifying no section
585 headers. Handle zero p_align throughout. Default loadbase to
586 zero. Add comments. Rename contents_size to high_offset, and
587 make it a bfd_vma. Delete unnecessary bfd_set_error calls.
588 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Update prototpe.
589 * elf-bfd.h (struct elf_backend_data <elf_backend_from_remote_memory>):
590 Likewise.
591 (_bfd_elf32_bfd_from_remote_memory): Likewise.
592 (_bfd_elf64_bfd_from_remote_memory): Likewise.
593 * elf.c (bfd_elf_bfd_from_remote_memory): Adjust.
594 * bfd-in2.h: Regnerate.
595
23d72939
TG
5962014-04-01 Tristan Gingold <gingold@adacore.com>
597
598 * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Avoid to crash
599 when num == 0.
600
6a631e86
YG
6012014-03-27 Yury Gribov <y.gribov@samsung.com>
602 Pavel Fedin <p.fedin@samsung.com>
603
604 * elf32-arm.c: Add support for limited pretty-printing of PLT
605 entries on eabi and nacl targets.
606 (elf32_arm_get_synthetic_symtab): Add new callback.
607 (elf32_arm_nacl_plt_sym_val): Likewise.
608 (elf32_arm_plt0_size): Add helper function.
609 (elf32_arm_plt_size): Likewise.
610
10be66a4
TG
6112014-03-27 Tristan Gingold <gingold@adacore.com>
612
613 * mach-o.c (bfd_mach_o_read_dylinker): Remove assert.
614 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DYLD_ENVIRONMENT.
615
3cc27770
TG
6162014-03-27 Tristan Gingold <gingold@adacore.com>
617
618 * mach-o.h (bfd_mach_o_get_base_address): New prototype.
619 * mach-o.c (bfd_mach_o_write_symtab)
620 (bfd_mach_o_write_contents)
621 (bfd_mach_o_set_section_flags_from_bfd)
622 (bfd_mach_o_build_seg_command): Fix indentation.
623 (bfd_mach_o_get_base_address): New function.
624
55bfc9ac
NC
6252014-03-26 Nick Clifton <nickc@redhat.com>
626
627 * cofflink.c (_bfd_coff_generic_relocate_section): Skip
628 relocations in discarded sections.
629
d8028530
TG
6302014-03-26 Tristan Gingold <gingold@adacore.com>
631
632 * mach-o.c (bfd_mach_o_convert_architecture): Add
633 BFD_MACH_O_CPU_TYPE_ARM64.
634
f6c7c3e8
AM
6352014-03-26 Alan Modra <amodra@gmail.com>
636
637 * elf64-ppc.c (ppc64_elf_check_relocs): Account for possibly
638 needed plt entries when taking the address of functions for
639 abiversion == 0 (ie. unknown) as well as abiversion == 2.
640 Move opd setup and abiversion checks to..
641 (ppc64_elf_before_check_relocs): ..here. Renamed from
642 ppc64_elf_process_dot_syms. Set output abiversion from input and
643 input abiversion from output, if either is not set.
644 (ppc64_elf_merge_private_bfd_data): Don't merge flags here.
645 (elf_backend_check_directives): Update.
646
c955de36
WN
6472014-03-25 Will Newton <will.newton@linaro.org>
648
649 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections):
650 Set value of DT_PLTRELSZ and DT_RELASZ based on the size
651 of input sections rather than output sections.
652
97323ad1
WN
6532014-03-20 Will Newton <will.newton@linaro.org>
654
655 PR ld/16715
656 * elf32-arm.c (elf32_arm_check_relocs): Set
657 pointer_equality_needed for absolute references within
658 executable links.
659 (elf32_arm_finish_dynamic_symbol): Set st_value to zero
660 unless pointer_equality_needed is set.
661
1d63324c
NC
6622014-03-19 Nick Clifton <nickc@redhat.com>
663
6caf7111
NC
664 * peXXigen.c (rsrc_process_section): Add code to scan input
665 sections and record their lengths. Use these lengths to find the
666 start of each merged .rsrc section.
1d63324c 667
fbe383b9
TG
6682014-03-17 Tristan Gingold <gingold@adacore.com>
669
670 * mach-o.c (bfd_mach_o_read_dylib): Handle lazy load dylib.
671 (bfd_mach_o_read_command): Ditto.
672
5a026fc9
NC
6732014-03-14 Meador Inge <meadori@codesourcery.com>
674
675 * configure.in: Add strnlen to AC_CHECK_DECLS.
676 * config.in: Regenerate.
677 * configure: Regenerate.
678 * sysdep.h (strnlen): Add prototype.
679
c3301df1
AM
6802014-03-14 Alan Modra <amodra@gmail.com>
681
682 * elf32-ppc.c (ppc_elf_relocate_section): Correct overflow
683 handling for VLE_SDA21 relocs.
684
167ad85b
TG
6852014-03-13 Tristan Gingold <gingold@adacore.com>
686
687 * peicode.h (pe_ILF_object_p): Adjust, as the version number
688 has been read.
689 (pe_bfd_object_p): Also read version number to detect ILF.
690 * pe-x86_64.c (COFF_WITH_PE_BIGOBJ): Define.
691 (x86_64pe_bigobj_vec): Define
692 * coffcode.h (bfd_coff_backend_data): Add _bfd_coff_max_nscns field.
693 (bfd_coff_max_nscns): New macro.
694 (coff_compute_section_file_positions): Use unsigned int for
695 target_index. Compare with bfd_coff_max_nscns.
696 (bfd_coff_std_swap_table, ticoff0_swap_table, ticoff1_swap_table):
697 Set a value for _bfd_coff_max_nscns.
698 (header_bigobj_classid): New constant.
699 (coff_bigobj_swap_filehdr_in, coff_bigobj_swap_filehdr_out)
700 (coff_bigobj_swap_sym_in, coff_bigobj_swap_sym_out)
701 (coff_bigobj_swap_aux_in, coff_bigobj_swap_aux_out): New
702 functions.
703 (bigobj_swap_table): New table.
704 * libcoff.h: Regenerate.
705 * coff-sh.c (bfd_coff_small_swap_table): Likewise.
706 * coff-alpha.c (alpha_ecoff_backend_data): Add value for
707 _bfd_coff_max_nscns.
708 * coff-mips.c (mips_ecoff_backend_data): Likewise.
709 * coff-rs6000.c (bfd_xcoff_backend_data)
710 (bfd_pmac_xcoff_backend_data): Likewise.
711 * coff64-rs6000.c (bfd_xcoff_backend_data)
712 (bfd_xcoff_aix5_backend_data): Likewise.
713 * targets.c (x86_64pe_bigobj_vec): Declare.
714 * configure.in (x86_64pe_bigobj_vec): New vector.
715 * configure: Regenerate.
716 * config.bfd: Add bigobj object format for Windows targets.
717
c792917c
NC
7182014-03-12 Nick Clifton <nickc@redhat.com>
719
720 PR ld/16671
721 * elf32-arm.c (elf32_arm_add_symbol_hook): Check for ARM format
722 before testing for vxworks.
723
fa47fa92
AM
7242014-03-12 Alan Modra <amodra@gmail.com>
725
726 * Makefile.in: Regenerate.
727
bbefd0a9
AM
7282014-03-12 Alan Modra <amodra@gmail.com>
729
730 PR 16690
731 * elf.c (copy_elf_program_header): Ignore first section lma if
732 non-alloc.
733
3c865fca
AM
7342014-03-11 Alan Modra <amodra@gmail.com>
735
736 PR 16686
737 * coff-rs6000.c: Include stdint.h.
738 * coff64-rs6000.c: Likewise.
739
ce15efd8
TG
7402014-03-10 Tristan Gingold <gingold@adacore.com>
741
742 * ticoff.h: Removed.
743
86c95733
AM
7442014-03-08 Alan Modra <amodra@gmail.com>
745
746 * elf32-ppc.c (ppc_elf_howto_raw): Correct overflow check for
747 many relocations. Correct bitsize and rightshift too for a number
748 of VLE relocs. Describe R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO.
749 Correct dst_mask on R_PPC_VLE_SDA21_LO.
750 (ppc_elf_vle_split16): Tidy, delete unnecessary prototype.
751 (ppc_elf_relocate_section): Modify overflow test for 16-bit
752 fields in instructions to signed/unsigned according to whether
753 the field takes a signed or unsigned value. Tidy vle split16 code.
754 Correct R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO handling.
755
b80eed39
AM
7562014-03-08 Alan Modra <amodra@gmail.com>
757
758 * elf64-ppc.c (ppc64_elf_howto_raw): Use complain_overflow_signed
759 for R_PPC64_ADDR14, R_PPC64_ADDR14_BRTAKEN, R_PPC64_ADDR14_BRNTAKEN,
760 R_PPC64_SECTOFF, R_PPC64_ADDR16_DS, R_PPC64_SECTOFF_DS,
761 R_PPC64_REL16 entries. Use complain_overflow_dont for R_PPC64_TOC.
762 (ppc64_elf_relocate_section): Modify overflow test for 16-bit
763 fields in instructions to signed/unsigned according to whether
764 the field takes a signed or unsigned value.
765
c38e8559
PA
7662014-03-07 Pedro Alves <palves@redhat.com>
767
5893c83a 768 PR gdb/16696
c38e8559
PA
769 * rs6000-core.c (rs6000coff_core_p): Cast pointers to bfd_vma
770 through ptr_to_uint instead of through long.
771
e9847026
NC
7722014-03-06 Nick Clifton <nickc@redhat.com>
773
774 PR 16664
775 * elf-attrs.c (_bfd_elf_parse_attributes): Add checks for corrupt
776 attribute section names.
777
4b95cf5c
AM
7782014-03-05 Alan Modra <amodra@gmail.com>
779
780 Update copyright years.
781
45965137
AM
7822014-03-05 Alan Modra <amodra@gmail.com>
783
784 * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_ADDR64_LOCAL entry.
785 (ppc64_elf_reloc_type_lookup): Support R_PPC64_ADDR64_LOCAL.
786 (ppc64_elf_check_relocs): Likewise.
787 (ppc64_elf_relocate_section): Likewise.
788 * Add BFD_RELOC_PPC64_ADDR64_LOCAL.
789 * bfd-in2.h: Regenerate.
790 * libbfd.h: Regenerate.
791
cd0c81e9 7922014-03-04 Heiher <r@hev.cc>
4ba154f5
RS
793
794 * elfxx-mips.c (mips_set_isa_flags): Use E_MIPS_ARCH_64R2 for
795 Loongson-3A.
796 (mips_mach_extensions): Make bfd_mach_mips_loongson_3a an
797 extension of bfd_mach_mipsisa64r2.
798
eed94f8f
NC
7992014-03-04 Nick Clifton <nickc@redhat.com>
800
801 PR ld/16017
802 * elf32-arm.c (elf32_thumb2_plt0_entry): New array.
803 (elf32_thumb2_plt_entry): New array.
804 (elf32_arm_create_dynamic_sections): Set PLT entry sizes when
805 using thumb2 based PLT.
806 (elf32_arm_populate_plt_entry): Handle generating Thumb2 based PLT
807 entries.
808 (elf32_arm_final_link_relocate): Do not bias jumps to Thumb based
809 PLT entries.
810 (elf32_arm_finish_dynamic_sections): Handle creation of Thumb2
811 based PLT 0-entry.
812 (elf32_arm_output_plt_map_1): Handle creation of local symbols for
813 Thumb2 based PLT 0-entry.
814 (elf32_arm_output_arch_local_syms): Handle creation of local
815 symbols for Thumb2 based PLT entries.
816
9850436d
AM
8172014-02-28 Alan Modra <amodra@gmail.com>
818
819 PR ld/16643
820 * elflink.c (elf_gc_sweep): Call gc_sweep_hook for exactly
821 the same conditions we called check_relocs.
822
1db37fe6
YG
8232014-02-27 Yuri Gribov <y.gribov@samsung.com>
824
825 * bfd-in.h: Add export of bfd_elf32_arm_use_long_plt.
826 * bfd-in2.h: Regenerate.
827 * elf32-arm.c (elf32_arm_plt_entry_long): New array.
828 (elf32_arm_link_hash_table_create): Set plt_entry_size to 16 if
829 using long PLT entries.
830 (bfd_elf32_arm_use_long_plt): New function.
831 (elf32_arm_populate_plt_entry): Add support for long PLT entries.
832
db434ba0
AM
8332014-02-27 Alan Modra <amodra@gmail.com>
834
835 * elf32-ppc.c (ppc_elf_link_hash_table_create): Provide default
836 params for targets that don't use ppc32elf.em.
837
d9972968
CLT
8382014-02-20 Chung-Lin Tang <cltang@codesourcery.com>
839
840 * elf32-nios2.c (nios2_elf32_relocate_section): Fix calculation
841 of GOTOFF relocations.
842
0ff2b86e
L
8432014-02-19 Igor Zamyatin <igor.zamyatin@intel.com>
844 H.J. Lu <hongjiu.lu@intel.com>
845
846 * elf64-x86-64.c (elf_x86_64_bnd_plt0_entry): New.
847 (elf_x86_64_legacy_plt_entry): Likewise.
848 (elf_x86_64_bnd_plt_entry): Likewise.
849 (elf_x86_64_legacy_plt2_entry): Likewise.
850 (elf_x86_64_bnd_plt2_entry): Likewise.
851 (elf_x86_64_bnd_arch_bed): Likewise.
852 (elf_x86_64_link_hash_entry): Add has_bnd_reloc and plt_bnd.
853 (elf_x86_64_link_hash_table): Add plt_bnd.
854 (elf_x86_64_link_hash_newfunc): Initialize has_bnd_reloc and
855 plt_bnd.
856 (elf_x86_64_copy_indirect_symbol): Also copy has_bnd_reloc.
857 (elf_x86_64_check_relocs): Create the second PLT for Intel MPX
858 in 64-bit mode.
859 (elf_x86_64_allocate_dynrelocs): Handle the second PLT for IFUNC
860 symbols. Resolve call to the second PLT if it is created.
861 (elf_x86_64_size_dynamic_sections): Keep the second PLT section.
862 (elf_x86_64_relocate_section): Resolve PLT references to the
863 second PLT if it is created.
864 (elf_x86_64_finish_dynamic_symbol): Use BND PLT0 and fill the
865 second PLT entry for BND relocation.
866 (elf_x86_64_finish_dynamic_sections): Use MPX backend data if
867 the second PLT is created.
868 (elf_x86_64_get_synthetic_symtab): New.
869 (bfd_elf64_get_synthetic_symtab): Likewise. Undefine for NaCl.
870
7d4c687d
AM
8712014-02-19 Alan Modra <amodra@gmail.com>
872
873 * elf64-ppc.h (struct ppc64_elf_params): Add save_restore_funcs.
874 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Use it to control
875 provision of out-of-line register save/restore routines.
876
5db3e65d
JC
8772014-02-18 Jack Carter <jack.carter@imgtec.com>
878
879 * elfxx-mips.c(_bfd_mips_elf_modify_segment_map): Deleted hard coding of
880 PT_DYNAMIC segment flags.
881
024a2310
JK
8822014-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
883
884 PR binutils/16595
885 * simple.c (struct saved_offsets): New.
886 (simple_save_output_info): Use it for ptr.
887 (simple_restore_output_info): Use it for ptr. Check section_count.
888 (bfd_simple_get_relocated_section_contents): Use it for saved_offsets.
889
e7d1c40c
AM
8902014-02-17 Alan Modra <amodra@gmail.com>
891
892 * elf64-ppc.h (struct ppc64_elf_params): Define.
893 (ppc64_elf_init_stub_bfd, ppc64_elf_edit_opd, ppc64_elf_tls_setup,
894 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
895 ppc64_elf_build_stubs): Update prototype.
896 * elf64-ppp.c (struct ppc_link_hash_table): Add params, delete other
897 fields now in params. Adjust code throughout file.
898 (ppc64_elf_init_stub_bfd): Delete "abfd" parameter, add "params".
899 Save params pointer in htab.
900 (ppc64_elf_edit_opd, ppc64_elf_tls_setup,
901 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
902 ppc64_elf_build_stubs): Remove parameters now in "params".
903
668e22e5
AM
9042014-02-17 Alan Modra <amodra@gmail.com>
905
906 * elf32-ppc.c (ppc_elf_relocate_section): Move relocs on insns
907 patched for ppc476 workaround. Reapply branch taken/not taken
908 relocs.
909
9f7552cf
AM
9102014-02-12 Alan Modra <amodra@gmail.com>
911
912 * elf32-ppc.c (ppc_elf_relax_section): Don't build long-branch
913 stubs for calls to __tls_get_addr that we know will later be
914 optimised away.
915
795bc6b3
AM
9162014-02-12 Alan Modra <amodra@gmail.com>
917
918 * elf32-ppc.c (ppc_elf_relax_section): Enable ppc476 workaround
919 for ld -r, when code sections are sufficiently aligned.
920 * elf32-ppc.h (struct ppc_elf_params): Delete pagesize. Add
921 pagesize_p2.
922
b407645f
AM
9232014-02-12 Alan Modra <amodra@gmail.com>
924
925 PR gold/15530
926 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support
927 --export-dynamic and --dynamic-list marking of symbols.
928 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Reorder
929 cheap tests first.
930
d6f6f455
L
9312014-02-10 H.J. Lu <hongjiu.lu@intel.com>
932
933 PR gold/16530
934 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark symbol in
935 executables if it matches dynamic_list.
936
c1c69e83
AM
9372014-02-10 Alan Modra <amodra@gmail.com>
938
939 * po/SRC-POTFILES.in: Regenerate.
940 * po/bfd.pot: Regenerate.
941
53291d1f
AM
9422014-02-09 Alan Modra <amodra@gmail.com>
943
944 * elf-bfd.h (struct elf_backend_data): Add caches_rawsize.
945 * elfxx-target.h (elf_backend_caches_rawsize): Define.
946 (elfNN_bed): Init new field.
947 * elflink.c (elf_link_input_bfd): Handle caches_rawsize.
948 * elf32-ppc.c (shared_stub_entry): Zero addi offset.
949 (ppc_elf_relax_section): Don't reallocate section here, write
950 stubs, or write out relocs for ld -r here..
951 (ppc_elf_relocate_section): ..instead write stubs here, and use
952 existing code to write out relocs for ld -r. Fix offset
953 adjustment on reloc for little-endian.
954 (elf_backend_caches_rawsize): Define.
955
d1eb5696
RO
9562014-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
957
85773039 958 PR build/16550
d1eb5696
RO
959 * cache.c (bfd_cache_max_open): Cast RLIM_INFINITY to rlim_t.
960
2915c55b
JK
9612014-02-04 Jan Kratochvil <jan.kratochvil@redhat.com>
962
963 * coff-rs6000.c (xcoff_write_archive_contents_big): Free OFFSETS in
964 return paths. Three times.
965 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Free HTAB in all
966 return paths.
967 (ppc64_elf_tls_optimize): Free TOC_REF in return path.
968 (ppc64_elf_edit_toc): Free USED in return path.
969
1c2de463
SL
9702014-02-03 Sandra Loosemore <sandra@codesourcery.com>
971
972 * reloc.c (BFD_RELOC_NIOS2_GOT_LO, BFD_RELOC_NIOS2_GOT_HA): New.
973 (BFD_RELOC_NIOS2_CALL_LO, BFD_RELOC_NIOS2_CALL_HA): New.
974 * libbfd.h: Regenerated.
975 * bfd-in2.h: Regenerated.
976 * elf32-nios2.c (elf_nios2_howto_table_rel): Add new relocations.
977 (nios2_reloc_map): Likewise.
978 (GOT_USED, CALL_USED): Renamed from GOT16_USED and CALL16_USED.
979 Fixed all references.
980 (nios2_elf32_relocate_section): Add new relocations.
981 (nios2_elf32_check_relocs): Likewise.
982 (nios2_elf32_gc_sweep_hook): Likewise.
983
5446cbdf
AM
9842014-02-03 Alan Modra <amodra@gmail.com>
985
986 * elf32-ppc.c (struct ppc_elf_link_hash_table): Add params.
987 Delete emit_stub_syms, no_tls_get_addr_opt. Update all uses.
988 (ppc_elf_link_params): New function.
989 (ppc_elf_create_glink): Align .glink to 64 bytes for ppc476
990 workaround.
991 (ppc_elf_select_plt_layout): Remove plt_style and emit_stub_syms
992 parameters. Use htab->params instead.
993 (ppc_elf_tls_setup): Remove no_tls_get_addr_opt parameter.
994 (ppc_elf_size_dynamic_sections): Align __glink_PLTresolve to
995 64 bytes for ppc476 workaround.
996 (struct ppc_elf_relax_info): New.
997 (ppc_elf_relax_section): Exclude linker created sections and
998 those too small to hold one instruction. Don't add another
999 branch around trampolines on later relax passes. Don't
1000 generate trampolines for undefined symbols when !relocatable,
1001 nor for plugin symbols. Allocate space for ppc476 workaround
1002 patch area. Free fixups on error return path.
1003 (ppc_elf_relocate_section): Handle ppc476 workaround patching.
1004 * elf32-ppc.h (struct ppc_elf_params): New.
1005 (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Update prototype.
1006 (ppc_elf_link_params): Declare.
1007 * section.c (SEC_INFO_TYPE_TARGET): Define.
1008 * bfd-in2.h: Regenerate.
1009
82e91538
SL
10102014-02-02 Sandra Loosemore <sandra@codesourcery.com>
1011
1012 * elf32-nios2.c (struct elf32_nios2_link_hash_table): Add
1013 h_gp_got field.
1014 (nios2_elf32_relocate_section): Use got_base to adjust
1015 GOT-pointer-relative relocations relative to _gp_got.
1016 (create_got_section): Create _gp_got symbol.
1017 (nios2_elf32_finish_dynamic_symbol): Make _gp_got absolute.
1018 (nios2_elf32_size_dynamic_sections): Set _gp_got offset.
1019
78058a5e
SL
10202014-01-30 Sandra Loosemore <sandra@codesourcery.com>
1021
1022 * bfd-in2.h: Update from reloc.c.
1023 * elf32-nios2.c: Include elf32-nios2.h.
1024 (elf_nios2_howto_table_rel): Add entry for R_NIOS2_CALL26_NOAT.
1025 (nios2_reloc_map): Likewise.
1026 (enum elf32_nios2_stub_type): Declare.
1027 (struct elf32_nios2_stub_hash_entry): Declare.
1028 (nios2_stub_hash_entry, nios2_stub_hash_lookup): New macros.
1029 (struct elf32_nios2_link_hash_entry): Add hsh_cache field.
1030 (struct elf32_nios2_link_hash_table): Add new fields bstab,
1031 stub_bfd, add_stub_section, layout_sections_again, stub_group,
1032 bfd_count, top_index, input_list, all_local_syms.
1033 (nios2_call26_stub_entry): New.
1034 (nios2_elf32_install_imm16): Move up in file.
1035 (nios2_elf32_install_data): Move up in file.
1036 (hiadj): Move up in file.
1037 (stub_hash_newfunc): New.
1038 (link_hash_newfunc): Initialize hsh_cache field.
1039 (STUB_SUFFIX): New.
1040 (nios2_stub_name): New.
1041 (nios2_get_stub_entry): New.
1042 (nios2_add_stub): New.
1043 (nios2_elf32_setup_section_lists): New.
1044 (nios2_elf32_next_input_section): New.
1045 (CALL26_SEGMENT): New.
1046 (MAX_STUB_SECTION_SIZE): New.
1047 (group_sections): New.
1048 (nios2_type_of_stub): New.
1049 (nios2_build_one_stub): New.
1050 (nios2_size_one_stub): New.
1051 (get_local_syms): New.
1052 (nios2_elf32_size_stubs): New.
1053 (nios2_elf32_build_stubs): New.
1054 (nios2_elf32_do_call26_relocate): Correct CALL26 overflow test.
1055 (nios2_elf32_relocate_section): Handle R_NIOS2_CALL26_NOAT. Add
1056 trampolines for R_NIOS2_CALL26 stubs.
1057 (nios2_elf32_check_relocs): Handle R_NIOS2_CALL26_NOAT.
1058 (nios2_elf32_gc_sweep_hook): Likewise.
1059 (nios2_elf32_link_hash_table_create): Initialize the stub hash table.
1060 (nios2_elf32_link_hash_table_free): New.
1061 (bfd_elf32_bfd_link_hash_table_free): Define.
1062 * elf32-nios2.h: New file.
1063 * libbfd.h: Update from reloc.c.
1064 * reloc.c (BFD_RELOC_NIOS2_CALL26_NOAT): New.
1065
df3ce959
NC
10662014-01-29 Nick Clifton <nickc@redhat.com>
1067
1068 PR binutils/16318
1069 * elf32-metag.c (elf_metag_post_process_headers): Call
1070 _bfd_elf_post_process_headers.
1071 * elf32-sh64.c (sh64_elf_copy_private_data): Call
1072 _bfd_elf_copy_private_data.
1073 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
1074
27b829ee
NC
10752014-01-29 Nick Clifton <nickc@redhat.com>
1076
1077 * bfd-in.h (bfd_set_section_vma): Delete.
1078 (bfd_set_section_alignment): Delete.
1079 (bfd_set_section_userdata): Delete.
1080 (bfd_set_cacheable): Delete.
1081 * bfd.c (bfd_set_cacheable): New static inline function.
1082 * section.c (bfd_set_section_userdata): Likewise.
1083 (bfd_set_section_vma): Likewise.
1084 (bfd_set_section_alignment): Likewise.
1085 * bfd-in2.h: Regenerate.
1086
0a9c7b2b
NC
10872014-01-28 Nick Clifton <nickc@redhat.com>
1088
1089 * dwarf2.c (find_abstract_instance_name): For DW_FORM_ref_addr
1090 attributes select the CU containing the abbreviation, which may not
1091 be the current CU.
1092
3ba720c7
AM
10932014-01-24 Alan Modra <amodra@gmail.com>
1094
1095 * elf64-ppc.c (ppc_build_one_stub): Correct reloc count passed
1096 to get_relocs for ELFv2.
1097
d923cae0
L
10982014-01-23 H.J. Lu <hongjiu.lu@intel.com>
1099
1100 PR ld/16498
3ba720c7 1101 * elf.c (_bfd_elf_map_sections_to_segments): Issue a linker error
d923cae0
L
1102 if TLS sections are not adjacent.
1103
16e4ecc0
AM
11042014-01-22 Alan Modra <amodra@gmail.com>
1105
1106 * elflink.c (elf_link_add_object_symbols): Call minfo for --as-needed.
1107
eb8d7fda
AM
11082014-01-22 Alan Modra <amodra@gmail.com>
1109
1110 * elf64-ppc.c (STK_LINKER): Comment typo fix.
1111
4584ec12
L
11122014-01-21 H.J. Lu <hongjiu.lu@intel.com>
1113
1114 PR ld/16467
1115 * elflink.c (_bfd_elf_merge_symbol): When types of the existing
1116 regular default symbol definition and the versioned dynamic
1117 symbol definition mismatch, skip the default symbol definition
1118 if one of them is IFUNC.
1119
22ef172a
L
11202014-01-21 H.J. Lu <hongjiu.lu@intel.com>
1121
1122 PR ld/2404
1123 * elflink.c (_bfd_elf_merge_symbol): Don't check info->shared,
1124 info->export_dynamic nor h->ref_dynamic for type mismatch when
1125 adding the default version.
1126
b75d42bc
AM
11272014-01-16 Alan Modra <amodra@gmail.com>
1128
1129 * elfxx-mips.c (mips_elf_record_got_page_entry): Pass in a
1130 mips_elf_traverse_got_arg* rather than mips_got_info*.
1131 Adjust caller. Alloc on output_bfd rather than symbol section
1132 owner.
1133
c353e543
L
11342014-01-15 H.J. Lu <hongjiu.lu@intel.com>
1135
1136 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
1137 change.
1138 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
1139
818d220a
L
11402014-01-14 H.J. Lu <hongjiu.lu@intel.com>
1141
1142 PR ld/16428
1143 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't discard relocs
1144 against __ehdr_start.
1145 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
1146
c3ce498c
L
11472014-01-14 H.J. Lu <hongjiu.lu@intel.com>
1148
1149 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
1150 change.
1151 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
1152
d1ec1e40
L
11532014-01-14 H.J. Lu <hongjiu.lu@intel.com>
1154
1155 PR ld/16428
1156 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc
1157 count if there are any non pc-relative relocs.
1158 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
1159
f44a1f8e
CL
11602014-01-14 Michael Hudson-Doyle <michael.hudson@linaro.org>
1161 Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org>
1162
1163 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use correct
1164 offset while calculating relocation address.
1165 (elfNN_aarch64_create_small_pltn_entry): Likewise.
1166 (elfNN_aarch64_init_small_plt0_entry): Likewise.
1167
fd0fd00c
MJ
11682014-01-13 Ma Jiang <ma.jiang@zte.com.cn>
1169
1170 PR ld/16202
1171 * elf32-arm.c (elf32_arm_final_link_relocate): Refetch addends for
1172 R_ARM_ABS8 and R_ARM_ABS16.
1173
aa726b9e
AM
11742014-01-13 Alan Modra <amodra@gmail.com>
1175
1176 * elf32-ppc.c (ppc_elf_check_relocs): For @local call to ifunc,
1177 error when shared and force a plt call otherwise.
1178 (ppc_elf_size_dynamic_sections): Don't emit DT_PPC_GOT unless
1179 plt_type == PLT_NEW.
1180 (ppc_elf_relocate_section): Add missing test to resolve ifuncs to
1181 the appropriate call stub.
1182
eec2f3ed
AM
11832014-01-10 Alan Modra <amodra@gmail.com>
1184
1185 PR ld/14207
1186 PR ld/16322
1187 PR binutils/16323
1188 * elf.c (assign_file_positions_for_load_sections): Revert last change.
1189 (assign_file_positions_for_non_load_sections): When setting up
1190 PT_GNU_RELRO header, don't require a corresponding PT_LOAD
1191 header that completely covers the relro region.
1192
09bf66a8
TG
11932014-01-09 Tristan Gingold <gingold@adacore.com>
1194
1195 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): use jump
1196 table macros and add macros to initializa the structure.
1197
43a8475c
L
11982014-01-08 H.J. Lu <hongjiu.lu@intel.com>
1199
1200 PR ld/14207
1201 PR ld/16322
1202 PR binutils/16323
1203 * elf.c (_bfd_elf_map_sections_to_segments): Don't check section
1204 size for PT_GNU_RELRO segment.
1205 (assign_file_positions_for_load_sections): If PT_LOAD segment
1206 doesn't fit PT_GNU_RELRO segment, adjust its p_filesz and p_memsz.
1207
1651e569
TT
12082014-01-07 Tom Tromey <tromey@redhat.com>
1209
1210 * elf32-xtensa.c (vsprint_msg): Don't use old VA_* compatibility
1211 wrappers.
1212
dc9155b2
NC
12132014-01-03 Nick Clifton <nickc@redhat.com>
1214
1215 PR binutils/16199
1216 * elf.c (vma_page_aligned_bias): Handle a maxpagesize value of
1217 zero.
1218
dd8dfa39 12192014-01-02 Yuanhui Zhang <asmwarrior@gmail.com>
044387af
A
1220
1221 PR binutils/14289
1222 * pef.c (bfd_pef_xlib_read_header): Increase buffer size to 80.
1223
1be5090b
NC
12242014-01-02 Nick Clifton <nickc@redhat.com>
1225
1226 PR binutils/11983
1227 * archive.c (_bfd_get_elt_at_filepos): Store a copy of the
1228 filename in the bfd's filename field.
1229 * elfcode.h (bfd_from_remote_memory): Likewise.
1230 * ieee.c (ieee_object_p): Likewise.
1231 * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
1232 * oasys.c (oasys_openr_next_archived_file): Likewise.
1233 * vms-lib.c (_bfd_vms_lib_get_module): Likewise.
1234 * opncls.c (bfd_fopen): Likewise.
1235 (bfd_openstreamr): Likewise.
1236 (bfd_openr_iovec): Likewise.
1237 (bfd_openw): Likewise.
1238 (bfd_create): Likewise.
1239 (_bfd_delete_bfd): Free filename.
1240
5fb776a6 1241For older changes see ChangeLog-2013
56882138 1242\f
5fb776a6 1243Copyright (C) 2014 Free Software Foundation, Inc.
752937aa
NC
1244
1245Copying and distribution of this file, with or without modification,
1246are permitted in any medium without royalty provided the copyright
1247notice and this notice are preserved.
1248
56882138
AM
1249Local Variables:
1250mode: change-log
1251left-margin: 8
1252fill-column: 74
1253version-control: never
1254End:
This page took 1.287091 seconds and 4 git commands to generate.