]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
bfd/elf32-arm.c: Improve comment in elf32_arm_finish_dynamic_symbol
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
3a635617
WN
12015-02-03 Will Newton <will.newton@linaro.org>
2
3 * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Improve
4 comment discussing why we clear st_value for some symbols.
5
0c4bd9d9
KLC
62015-02-02 Kuan-Lin Chen <kuanlinchentw@gmail.com>
7
8 * elf32-nds32.c (nds32_get_section_contents): Add one more argument.
9 (nds32_elf_relocate_section): Do not relocate R_NDS32_LONGJUMP7.
10
b86ac8e3
AM
112015-01-29 Alan Modra <amodra@gmail.com>
12
13 * elf64-ppc.c (ppc64_elf_relocate_section): Correct GOT_TLSLD
14 optimization. Tidy mask for GOT_TLSGD optimization.
15 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. Correct
16 location of nop zapping high insn too.
17
dbd1e97e
AM
182015-01-28 Alan Modra <amodra@gmail.com>
19
20 * elf64-ppc.h (struct ppc64_elf_params): Add "object_in_toc".
21 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Assume that global symbols
22 in .toc indicate xlc compiled code that might require a rw .toc.
23
3f8107ab
AM
242015-01-28 James Bowman <james.bowman@ftdichip.com>
25
26 * Makefile.am: Add FT32 files.
27 * archures.c (enum bfd_architecture): Add bfd_arch_ft32.
28 (bfd_mach_ft32): Define.
29 (bfd_ft32_arch): Declare.
30 (bfd_archures_list): Add bfd_ft32_arch.
31 * config.bfd: Handle FT32.
32 * configure.ac: Likewise.
33 * cpu-ft32.c: New file.
34 * elf32-ft32.c: New file.
35 * reloc.c (BFD_RELOC_FT32_10, BFD_RELOC_FT32_20, BFD_RELOC_FT32_17,
36 BFD_RELOC_FT32_18): Define.
37 * targets.c (_bfd_target_vector): Add ft32_elf32_vec.
38 * bfd-in2.h: Regenerate.
39 * libbfd.h: Regenerate.
40 * Makefile.in: Regenerate.
41 * configure: Regenerate.
42 * po/SRC-POTFILES.in: Regenerate.
43
37e3922e
NC
442015-01-27 Nick Clifton <nickc@redhat.com>
45
46 PR binutils/17512
47 * pdp11.c (aout_get_external_symbols): Return false if there are
48 no symbols.
49
877a8638
NC
50 * dwarf2.c (concat_filename): Check for an empty directory table.
51 (scan_unit_for_symbols): Check for reading off the end of the
52 unit.
53 (parse_comp_unit): Check for a DW_AT_comp_dir attribute with a
54 non-string form.
55 * elf64-ppc.c (opd_entry_value): Fail if there are no relocs
56 available.
57
18393a2e
KLC
582015-01-26 Kuan-Lin Chen <kuanlinchentw@gmail.com>
59
60 * elf32-nds32.c (nds32_elf_pick_relax): Fix again setting.
61
055173ca
DD
622015-01-22 DJ Delorie <dj@redhat.com>
63
64 * elf32-m32c.c (m32c_apply_reloc_24): New.
65 (m32c_elf_howto_table): Use it for R_M32C_24.
66 (m32c_elf_relocate_section): Handle R_M32C_24 specially.
67
4e5cb37e
NC
682015-01-22 Nick Clifton <nickc@redhat.com>
69
70 PR binutils/17512
71 * coffcode.h (handle_COMDAT): When searching for the section
72 symbol, make sure that there is space left in the symbol table.
73 * vms-alpha.c (_bfd_vms_slurp_ehdr): Add range checks.
74
86eafac0
NC
752015-01-21 Nick Clifton <nickc@redhat.com>
76
77 PR binutils/17512
78 * coffcode.h (coff_set_arch_mach_hook): Check return value from
79 bfd_malloc.
80 (coff_slurp_line_table): Return FALSE if the line number
81 information was corrupt.
82 (coff_slurp_symbol_table): Return FALSE if the symbol information
83 was corrupt.
84 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Always
85 initialise the fields of the dyld_info structure.
86 (bfd_mach_o_build_exec_seg_command): Replace assertion with an
87 error message and a return value.
88 (bfd_mach_o_layout_commands): Change the function to boolean.
89 Return FALSE if the function fails.
90 (bfd_mach_o_build_commands): Fail if bfd_mach_o_layout_commands
91 fails.
92 (bfd_mach_o_read_command): Fail if an unrecognised command is
93 encountered.
94 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Set bfd_error if the
95 read fails.
96 (slurp_symtab): Check the return from bfd_malloc.
97 (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if the copy
98 encountered an error.
99 (_bfd_XXi_final_link_postscript): Fail if a section could not be
100 copied.
101 * peicode.h (pe_bfd_object_p): Fail if the header could not be
102 swapped in.
103 * tekhex.c (first_phase): Fail if the section is too big.
104 * versados.c (struct esdid): Add content_size field.
105 (process_otr): Use and check the new field.
106 (versados_get_section_contents): Check that the section exists and
107 that the requested data is available.
108
03d5b773
CLT
1092015-01-20 Chung-Lin Tang <cltang@codesourcery.com>
110
111 * elf32-nios2.c (elf_backend_default_execstack): Define as 0.
112
1c9177d9
AM
1132015-01-20 Alan Modra <amodra@gmail.com>
114
115 PR ld/17615
116 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Don't drop
117 ELF_COMMON_DEF syms.
118
c4621b33
AM
1192015-01-19 Alan Modra <amodra@gmail.com>
120
3e2aa5bb 121 PR ld/17615
c4621b33
AM
122 * elf-bfd.h (ELF_COMMON_DEF_P): Note that this might be true for
123 linker script assignments too.
124 * elflink.c (elf_gc_sweep_symbol): Don't drop ELF_COMMON_DEF syms.
125 (bfd_elf_gc_mark_dynamic_ref_symbol): Similarly.
126
0ba38529
AM
1272015-01-19 Alan Modra <amodra@gmail.com>
128
129 * elf32-bfin.c (bfin_bfd_reloc_type_lookup): Correct loop iteration
130 to allow return of first howto.
131 * elf32-fr30.c (fr30_reloc_type_lookup): Likewise.
132 * elf32-m32c.c (m32c_reloc_type_lookup): Likewise.
133 * elf32-moxie.c (moxie_reloc_type_lookup): Likewise.
134 * elf32-or1k.c (or1k_reloc_type_lookup): Likewise.
135 * elf32-rl78.c (rl78_reloc_type_lookup): Likewise.
136 * elf32-rx.c (rx_reloc_type_lookup): Likewise.
137 * elf32-tilepro.c (tilepro_reloc_type_lookup): Likewise.
138 * elf32-xstormy16.c (xstormy16_reloc_type_lookup): Likewise.
139 * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
140 * elf32-nios2.c (nios2_reloc_map): Add mapping for R_NIOS2_NONE.
141 * elf32-spu.c (spu_elf_bfd_to_reloc_type): Allow return of R_SPU_NONE.
142 (spu_elf_reloc_type_lookup): Adjust to suit.
143
6346d5ca
AM
1442015-01-19 Alan Modra <amodra@gmail.com>
145
146 * bfd-in.h (bfd_get_section_limit_octets): New define, extracted from..
147 (bfd_get_section_limit): ..here.
148 * reloc.c (bfd_perform_relocation): Correct bfd_reloc_outofrange check.
149 (bfd_install_relocation, _bfd_final_link_relocate): Add same check here.
150 * elf32-sh.c (sh_elf_reloc): Correct bfd_reloc_outofrange check.
151 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Remove duplicated
152 bfd_reloc_outofrange check.
153 * bfd-in2.h: Regenerate.
154
155 * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Return bfd_reloc_ok
156 on zero size relocs.
157 * ecoff.c (ecoff_reloc_link_order): Likewise.
158 * elf32-nds32.c (nds32_relocate_contents): Likewise.
159 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
160
161 * reloc.c (_bfd_relocate_contents): Don't bomb on zero size relocs.
162 (_bfd_clear_contents): Likewise.
163 * elfxx-mips.c (mips_elf_obtain_contents): Likewise.
164 (mips_elf_perform_relocation): Likewise.
165
166 * aoutx.h (aout_link_reloc_link_order): Allow for NULL return
167 from malloc on zero size alloc.
168 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
169 * elflink.c (elf_reloc_link_order): Likewise.
170 * linker.c (_bfd_generic_reloc_link_order): Likewise.
171 * pdp11.c (aout_link_reloc_link_order): Likewise.
172 * xcofflink.c (xcoff_reloc_link_order): Likewise.
173
174 * aoutx.h (howto_table_ext): Ensure NONE relocs have size 3,
175 bitsize 0, and complain_overflow_dont.
176 * coff-sparc.c (coff_sparc_howto_table): Likewise.
177 * elf-hppa.h (elf_hppa_howto_table): Likewise.
178 * elf-m10200.c (elf_mn10200_howto_table): Likewise.
179 * elf-m10300.c (elf_mn10300_howto_table): Likewise.
180 * elf32-arc.c (elf_arc_howto_table): Likewise.
181 * elf32-arm.c (elf32_arm_howto_table_1): Likewise.
182 * elf32-avr.c (elf_avr_howto_table): Likewise.
183 * elf32-bfin.c (bfin_howto_table): Likewise.
184 * elf32-cr16.c (cr16_elf_howto_table): Likewise.
185 * elf32-cris.c (cris_elf_howto_table): Likewise.
186 * elf32-crx.c (crx_elf_howto_table): Likewise.
187 * elf32-d10v.c (elf_d10v_howto_table): Likewise.
188 * elf32-d30v.c (elf_d30v_howto_table): Likewise.
189 * elf32-dlx.c (dlx_elf_howto_table): Likewise.
190 * elf32-epiphany.c (epiphany_elf_howto_table): Likewise.
191 * elf32-fr30.c (fr30_elf_howto_table): Likewise.
192 * elf32-frv.c (elf32_frv_howto_table): Likewise.
193 * elf32-h8300.c (h8_elf_howto_table): Likewise.
194 * elf32-i370.c (i370_elf_howto_raw): Likewise.
195 * elf32-i386.c (elf_howto_table): Likewise.
196 * elf32-i860.c (elf32_i860_howto_table): Likewise.
197 * elf32-i960.c (elf32_i960_relocate): Likewise.
198 * elf32-ip2k.c (ip2k_elf_howto_table): Likewise.
199 * elf32-iq2000.c (iq2000_elf_howto_table): Likewise.
200 * elf32-lm32.c (lm32_elf_howto_table): Likewise.
201 * elf32-m32c.c (m32c_elf_howto_table): Likewise.
202 * elf32-m32r.c (m32r_elf_howto_table): Likewise.
203 * elf32-m68hc11.c (elf_m68hc11_howto_table): Likewise.
204 * elf32-m68hc12.c (elf_m68hc11_howto_table): Likewise.
205 * elf32-m68k.c (howto_table): Likewise.
206 * elf32-mcore.c (mcore_elf_howto_raw): Likewise.
207 * elf32-mep.c (mep_elf_howto_table): Likewise.
208 * elf32-metag.c (elf_metag_howto_table): Likewise.
209 * elf32-microblaze.c (microblaze_elf_howto_raw): Likewise.
210 * elf32-mips.c (elf_mips_howto_table_rel): Likewise.
211 * elf32-moxie.c (moxie_elf_howto_table): Likewise.
212 * elf32-msp430.c (elf_msp430_howto_table): Likewise.
213 * elf32-mt.c (mt_elf_howto_table): Likewise.
214 * elf32-nds32.c (nds32_elf_howto_table): Likewise.
215 * elf32-nios2.c (elf_nios2_howto_table_rel): Likewise.
216 * elf32-or1k.c (or1k_elf_howto_table): Likewise.
217 * elf32-pj.c (pj_elf_howto_table): Likewise.
218 * elf32-ppc.c (ppc_elf_howto_raw): Likewise.
219 * elf32-rl78.c (rl78_elf_howto_table): Likewise.
220 * elf32-rx.c (rx_elf_howto_table): Likewise.
221 * elf32-s390.c (elf_howto_table): Likewise.
222 * elf32-score.c (elf32_score_howto_table): Likewise.
223 * elf32-score7.c (elf32_score_howto_table): Likewise.
224 * elf32-sh-relocs.h (R_SH_NONE): Likewise.
225 * elf32-spu.c (elf_howto_table): Likewise.
226 * elf32-tic6x.c (elf32_tic6x_howto_table): Likewise.
227 * elf32-tilepro.c (tilepro_elf_howto_table): Likewise.
228 * elf32-v850.c (v850_elf_howto_table): Likewise.
229 * elf32-vax.c (howto_table): Likewise.
230 * elf32-visium.c (visium_elf_howto_table): Likewise.
231 * elf32-xc16x.c (xc16x_elf_howto_table): Likewise.
232 * elf32-xgate.c (elf_xgate_howto_table): Likewise.
233 * elf32-xstormy16.c (xstormy16_elf_howto_table): Likewise.
234 * elf32-xtensa.c (elf_howto_table): Likewise.
235 * elf64-alpha.c (elf64_alpha_howto_table): Likewise.
236 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
237 * elf64-mmix.c (elf_mmix_howto_table): Likewise.
238 * elf64-ppc.c (ppc64_elf_howto_raw): Likewise.
239 * elf64-s390.c (elf_howto_table): Likewise.
240 * elf64-sh64.c (sh_elf64_howto_table): Likewise.
241 * elf64-x86-64.c (x86_64_elf_howto_table): Likewise.
242 * elfn32-mips.c (elf_mips_howto_table_rel): Likewise.
243 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Likewise.
244 (elfNN_aarch64_howto_none): Likewise.
245 * elfxx-ia64.c (ia64_howto_table): Likewise.
246 * elfxx-sparc.c (_bfd_sparc_elf_howto_table): Likewise.
247 * elfxx-tilegx.c (tilegx_elf_howto_table): Likewise.
248 * nlm32-sparc.c (nlm32_sparc_howto_table): Likewise.
249
6333bc0d
L
2502015-01-15 H.J. Lu <hongjiu.lu@intel.com>
251
252 PR ld/17847
253 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't complain
254 about -fPIC if the symbol is undefined when building executable.
255
cd21f5da
NC
2562015-01-15 Nick Clifton <nickc@redhat.com>
257
258 PR binutils/17512
259 * elf-m10300.c (mn10300_info_to_howto): Replace assertion with an
260 error message. Never return an invalid howto pointer.
261 * elf32-cr16.c (cr16_info_to_howto): Likewise.
262 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
263 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
264 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
265 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
266 * elf32-mips.c (mips_elf32_rtype_to_howto): Likewise.
267 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
268 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
269 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
270 * elf32-v850.c (v850_elf_info_to_howto_rela): Likewise.
271 * elf32-vax.c (rtype_to_howto): Likewise.
272 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
273 * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
274 * elfn32-mips.c (sh_elf_info_to_howto): Likewise.
275 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
276 (sh_elf_reloc): Check that the reloc is in range.
277 * reloc.c (bfd_perform_relocation): Check that the section is big
278 enough for the entire reloc.
279 (bfd_generic_get_relocated_section_contents): Report unexpected
280 return values from perform_reloc.
281
2d071cfc
NC
2822015-01-15 Nick Clifton <nickc@redhat.com>
283
284 * elf32-msp430.c (msp430_elf_relax_section): Skip unhandled
285 relocs. Include PC-relative adjustment for R_MSP430X_ABS16
286 relaxation.
287
ca55926c
AM
2882015-01-15 Alan Modra <amodra@gmail.com>
289
290 * elflink.c (_bfd_elf_link_omit_section_dynsym): Return true for
291 any output section matching a linker created dynobj section.
292
8539e4e8
AM
2932015-01-15 Alan Modra <amodra@gmail.com>
294
295 PR 17842
296 * elflink.c (elf_link_output_sym): Assert elf_onesymtab set.
297 (bfd_elf_final_link): Always create a symbol table when emit_relocs.
298 Don't assign symtab file position unless symbols will be output.
299 Merge blocks with condition in common. Don't call
300 elf_backend_output_arch_local_syms or elf_backend_output_arch_syms
301 unless other symbols are output. Move assignment of symtab_shndx
302 file position. Localize variable.
303
52db4ec2
JW
3042015-01-14 Jiong Wang <jiong.wang@arm.com>
305
306 * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when
307 trying to defer them to runtime.
308
0941db69
JW
3092015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
310
311 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use SYMBOLIC_BIND
312 to check if a symbol should be bound symbolically.
313
0172429c
JW
3142015-01-13 Jiong Wang <jiong.wang@arm.com>
315
316 * elfnn-aarch64.c: (elfNN_aarch64_howto_table): Enable overflow check
317 for TLSLE_MOVW_TPREL_G2.
318
bab91cce
JW
3192015-01-13 Jiong Wang <jiong.wang@arm.com>
320
321 PR ld/17415
322 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Mark
323 R_AARCH64_TLSLE_ADD_TPREL_HI12 as complain_overflow_unsigned.
324 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Correct the
325 bit mask.
326
3c758495
TG
3272015-01-12 Terry Guo <terry.guo@arm.com>
328
329 * elflink.c (_bfd_elf_gc_mark_debug_special_section_group): New
330 function.
331 (_bfd_elf_gc_mark_extra_sections): Use it.
332
9d1d54d5
L
3332015-01-11 H.J. Lu <hongjiu.lu@intel.com>
334
335 PR ld/17827
336 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): For PIE,
337 only discard space for pc-relative relocs symbols which turn
338 out to need copy relocs.
339
c6e8e93a
NC
3402015-01-09 Nick Clifton <nickc@redhat.com>
341
342 * tekhex.c (getvalue): Fix thinko in test for correct extraction
343 of value.
344 (getsym): Return false if there was not enough data to extract the
345 symbol.
346
400cf8cb
AG
3472015-01-09 Anthony Green <green@moxielogic.com>
348
349 * elf32-moxie.c (ELF_MACHINE_ALT1): Define.
350
23d4663e
NC
3512015-01-08 Nick Clifton <nickc@redhat.com>
352
353 * elf32-msp430.c (msp430_elf_relax_section): Add relaxation of
354 16-bit absolute BR instructions to 10-bit pc-relative JMP
355 instructions.
356
063bb025
NC
3572015-01-08 Nick Clifton <nickc@redhat.com>
358
359 PR binutils/17512
360 * coffcode.h (coff_slurp_symbol_table): Return false if we failed
361 to load the line table.
362 * elf.c (_bfd_elf_map_sections_to_segments): Enforce a minimum
363 maxpagesize of 1.
364 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if
365 the Data Directory Size is too large.
366
6f25f223
L
3672015-01-06 H.J. Lu <hongjiu.lu@intel.com>
368
369 PR binutils/17512
370 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
371 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
372
85880250
NC
3732015-01-06 Nick Clifton <nickc@redhat.com>
374
375 PR binutils/17512
e7287c7f
NC
376 * mach-o.c (bfd_mach_o_read_symtab_strtab): Zero terminate the
377 string table.
378
ec93045b
NC
379 * reloc.c (bfd_get_reloc_size): Handle a reloc size of -1.
380 (bfd_perform_relocation): Include the size of the reloc in the
381 test for an out of range relocation.
382 (bfd_generic_get_relocated_section_contents): Remove reloc range
383 test.
384
85880250
NC
385 * coff-i860.c (CALC_ADDEND): Always set an addend value.
386 * tekhex.c (getvalue): Add an end pointer parameter. Use it to
387 avoid reading off the end of the buffer.
388 (getsym): Likewise.
389 (first_phase): Likewise.
390 (pass_over): Pass an end pointer to the invoked function.
391
533d0af0
L
3922015-01-05 H.J. Lu <hongjiu.lu@intel.com>
393
394 PR binutils/17512
395 * elf32-i386.c (elf_i386_get_plt_sym_val): Return NULL on corrupt
396 input.
397 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
398
896ca098
NC
3992015-01-05 Nick Clifton <nickc@redhat.com>
400
401 PR binutils/17512
402 * archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
403 is at least big enough for the header to be read.
404 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
405 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
406 (bfd_mach_o_read_command): Prevetn duplicate error messages about
407 unrecognized commands.
408 * syms.c (_bfd_stab_section_find_nearest_line): Add range checks
409 when indexing into the string table.
410
b90efa5b 4112015-01-01 Alan Modra <amodra@gmail.com>
ee3b52e9 412
b90efa5b 413 Update year range in copyright notice of all files.
ee3b52e9 414
b90efa5b 415For older changes see ChangeLog-2014
56882138 416\f
b90efa5b 417Copyright (C) 2015 Free Software Foundation, Inc.
752937aa
NC
418
419Copying and distribution of this file, with or without modification,
420are permitted in any medium without royalty provided the copyright
421notice and this notice are preserved.
422
56882138
AM
423Local Variables:
424mode: change-log
425left-margin: 8
426fill-column: 74
427version-control: never
428End: