objcopy: Add --update-section option.
[deliverable/binutils-gdb.git] / binutils / ChangeLog
CommitLineData
acf1419f
AB
12015-02-28 Andrew Burgess <andrew.burgess@embecosm.com>
2
3 * objcopy.c (update_sections): New list.
4 (command_line_switch): Add OPTION_UPDATE_SECTION.
5 (copy_options): Add update-section.
6 (copy_usage): Document new option.
7 (is_update_section): New function.
8 (is_strip_section_1): Add check for attempt to update and remove
9 the same section.
10 (copy_object): Update size and content of requested sections.
11 (skip_section): Don't copy for updated sections.
12 (copy_main): Handle --update-section.
13 * doc/binutils.texi (objcopy): Add description of --update-section
14 option.
15 * NEWS: Mention --update-section option.
16
d93c7787
NC
172015-02-26 Nick Clifton <nickc@redhat.com>
18
19 PR binutils/17512
20 * coffgrok.c (do_type): Check for an out of range tag index.
21 Check for integer overflow computing array dimension.
22 (do_define): Likewise.
23
06b73f41
AB
242015-02-26 Andrew Burgess <andrew.burgess@embecosm.com>
25
26 * objcopy.c (init_section_add): Rename optarg to arg in order to
27 avoid shadowing a global variable.
28
e3ee4005
NC
292015-02-26 Nick Clifton <nickc@redhat.com>
30
31 PR binutils/17512
32 * resrc.c (write_rc_messagetable): Tighten check for invalid
33 message lengths.
34
c8071705
NC
35 * dwarf.c (display_debug_loc): Pacify the undefined behaviour
36 sanitizer by simplifying address difference calculation.
37 (struct Frame_Chunk): Change type of cfa_offset to dwarf_vma in
38 order to avoid arithmetic overflows.
39 (frame_display_row): Cast cfa_offset before printing it.
40 (display_debug_frames): Likewise.
41 Check for an unexpected segment size.
42 Chnage type of 'l' local to dwarf_vma and cast it back to an int
43 when printing.
44 (process_cu_tu_index): Tighten check for an invalid ncols value.
45 * readelf.c (process_corefile_note_segment): Check for
46 inote.descdata extending beyond the end of the section.
47 (process_v850_notes): Likewise.
48
99654aaf
TG
492015-02-26 Terry Guo <terry.guo@arm.com>
50
51 * readelf.c (arm_attr_tag_ABI_HardFP_use): Update how we
52 display it.
53
7173b38a
AB
542015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
55
56 * objcopy.c (init_section_add): New function.
57 (section_add_load_file): New function.
58 (copy_main): Make use of new functions.
59
137c83d6
AB
602015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
61
62 * od-elf32_avr.c: Add elf32-avr.h include.
63 (OPT_AVRPROP): Define.
64 (options[]): Add 'avr-prop' entry.
65 (elf32_avr_help): Add avr-prop help text.
66 (elf32_avr_dump_avr_prop): New function.
67 (elf32_avr_dump): Add check for avr-prop.
68
685080f2
NC
692015-02-24 Nick Clifton <nickc@redhat.com>
70
71 * readelf.c (get_machine_flags): Remove deprecated V850 machine
72 flags.
73 (get_v850_section_type_name): New function. Handles V850 special
74 sections.
75 (get_section_type_name): Add support for V850.
76 (get_v850_elf_note_type): New function. Returns the name of a
77 V850 note.
78 (print_v850_note): New function. Prints a V850 note.
79 (process_v850_notes): New function. Prints V850 notes.
80 (process_note_sections): Add support for V850.
81
94d15024
MF
822015-02-24 Mike Frysinger <vapier@gentoo.org>
83
84 PR binutils/17531
85 * readelf.c (process_symbol_table): Declare chained. Increment it
86 in every loop. Abort when chained is larger than nchains. Move
87 error check outside of chain loop.
88
948f632f
DA
892015-02-24 Dmitry Antipov <dantipov@nvidia.com>
90
91 * readelf.c (find_symbol_for_address): Use a binary search to
92 speed up symbol location. Skip check for function symbol type.
93 (*_unw_aux_info): Add funtab and nfuns fields contains a sorted
94 list of function symbols.
95 (dump_ia64_unwind): Initialise the funtab and nfuns fields and
96 pass them to find_symbol_for_address.
97 (dump_hppa_unwind): Likewise.
98 (arm_print_vma_and_name): Pass funtab to find_symbol_for_address.
99 (dump_arm_unwind): Initialise the funtab and nfuns fields.
100
0821d5b1
NC
1012015-02-24 Nick Clifton <nickc@redhat.com>
102
103 * objdump.c (dump_section): Extend the warning message displayed
104 when a section cannot be loaded.
105
9035ed51
MF
1062015-02-21 Mike Frysinger <vapier@gentoo.org>
107
108 * readelf.c (process_program_headers): Add newline to warning
109 message.
110
4ef9f41a
AA
1112015-02-20 Andreas Arnez <arnez@linux.vnet.ibm.com>
112
113 * readelf.c (get_note_type): Add NT_S390_VXRS_LOW and
114 NT_S390_VXRS_HIGH.
115
951eaaec
NC
1162015-02-13 Nick Clifton <nickc@redhat.com>
117
118 PR binutils/17512
119 * dwarf.c (read_leb128): Fix test for shift becoming too large.
120
121 * coffgrok.c (do_define): Add check for type size overflow.
122 * srconv.c (walk_tree_sfile): Check that enough sections are
123 available before parsing.
124 (prescan): Likewise.
125
ffc0f143
NC
126 PR binutils/17531
127 * dwarf.c (display_debug_aranges): Add check for an excessive
128 ar_length value.
129 (process_cu_tu_index): Check for a row * columns sum being too
130 large.
131
b4eb7656
AM
1322015-02-13 Alan Modra <amodra@gmail.com>
133
134 * dwarf.c: Formatting, whitespace.
135 (process_debug_info): Style fix.
136
0e7f931f
NC
1372015-02-11 Nick Clifton <nickc@redhat.com>
138
139 * rl78-decode.opc: Add 'a' attribute to instructions that support
140 [HL+0] addressing.
141 * rl78-decode.c: Regenerate.
142 * rl78-dis.c (print_insn_rl78): Display the offset in [HL+0]
143 addresses.
144
362beea4
NC
1452015-02-11 Nick Clifton <nickc@redhat.com>
146
147 PR binutils/17531
148 * dwarf.c (display_debug_pubnames_worker): Work around compiler
149 bug checking address ranges.
150 (display_debug_frames): Likewise.
151 (display_gdb_index): Likewise.
152 (process_cu_tu_index): Add range check on the ncols value.
153
77ef8654
NC
1542015-02-10 Nick Clifton <nickc@redhat.com>
155
156 PR binutils/17512
157 * dwarf.c (eh_addr_size): Use an unsigned type.
158 (size_of_encoded_value): Return an unsigned type.
159 (read_leb128): Break if the shift becomes too big.
160 (process_extended_line_op): Do not read the address if the length
161 is too long.
162 (read_cie): Warn and fail if the pointer size or segment size are
163 too big.
164 * dwarf.h (DWARF2_External_LineInfo): Delete unused and incorrect
165 structure definition.
166 (DWARF2_External_PubNames): Likewise.
167 (DWARF2_External_CompUnit): Likewise.
168 (DWARF2_External_ARange): Likewise.
169 (DWARF2_Internal_LineInfo): Use dwarf_vma type for
170 li_prologue_length.
171 (eh_addr_size): Update prototype.
172
03a91817
NC
173 PR binutils/17531
174 * dwarf.c (process_debug_info): Zero the debug information array
175 since correct initialisation cannot be relied upon.
176 (process_cu_tu_index): Improve range checks.
177
834f871c
NC
178 PR binutils/17531
179 * dwarf.c (display_debug_pubnames_worker): Use dwarf_vma type for
180 offset.
181 * readelf.c (dump_relocations): Handle printing offsets which are
182 MIN_INT.
183 (process_corefile_note_segment): Add range check of the namesz
184 field.
185
5a195044
MW
1862015-02-09 Mark Wielaard <mjw@redhat.com>
187
188 * dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03
189 and DW_LANG_Fortran08.
190
5929c344
NC
1912015-02-06 Nick Clifton <nickc@redhat.com>
192
193 PR binutils/17512
194 * dwarf.c (display_debug_frames): Fix range checks to work on
195 32-bit binaries complied on a 64-bit host.
196
8490fb40
NC
197 PR binutils/17531
198 * dwarf.c (xcmalloc): Fail if the arguments are too big.
199 (xcrealloc): Likewise.
200 (xcalloc2): Likewise.
55325047
NC
201 * readelf.c (process_mips_specific): Fail if an option has an
202 invalid size.
8490fb40 203
7cc78d07
AM
2042015-02-05 Alan Modra <amodra@gmail.com>
205
206 PR binutils/17926
207 * dwarf.c (dwarf_select_sections_by_letters): Don't refer to optarg.
208
f3853b34
NC
2092015-02-04 Nick Clifton <nickc@redhat.com>
210
211 PR binutils/17531
212 * dwarf.c (read_and_display_attr_value): Test for a block length
213 being so long that it wraps around to before the start of the block.
214 (process_debug_info): Test for section_begin wrapping around to
215 before the start of the section.
216 (display_gdb_index): Test for num_cus being so large that the end
217 address wraps around to before the start of the section.
218 (process_cu_tu_index): Test for j being so large that the section
219 index pool wraps around to before the start of the section.
220
57028622
NC
2212015-02-03 Nick Clifton <nickc@redhat.com>
222
223 PR binutils/17531
224 * dwarf.c (process_debug_info): Add range check.
225 (display_debug_pubnames_worker): Likewise.
226 (display_gdb_index): Fix range check.
227 (process_cu_tu_index): Add range check.
228 * readelf.c (get_data): Change parameter types from size_t to
229 bfd_size_type. Add checks for loss of accuracy when casting from
230 bfd_size_type to size_t.
231 (get_dynamic_data): Likewise.
232 (process_section_groups): Limit number of error messages.
233
64d29018
NC
2342015-02-03 Nick Clifton <nickc@redhat.com>
235
236 PR binutils/17512
237 * objdump.c (display_any_bfd): Fail if archives nest too deeply.
238
3f8107ab
AM
2392015-01-28 James Bowman <james.bowman@ftdichip.com>
240
241 * readelf.c: Add FT32 support.
242
37e3922e
NC
2432015-01-27 Nick Clifton <nickc@redhat.com>
244
245 PR binutils/17512
246 * dlltool.c (identify_search_archive): If the last archive was the
247 same as the current archive, terminate the loop.
248
877a8638
NC
249 * addr2line.c (slurp_symtab): If the symcount is zero, free the
250 symbol table pointer.
251
0897ec15
NC
252 * rcparse.y: Add checks to avoid integer divide by zero.
253 * rescoff.c (read_coff_rsrc): Add check on the size of the
254 resource section.
255 (read_coff_res_dir): Add check on the nesting level.
256 Check for resource names overrunning the buffer.
257 * resrc.c (write_rc_messagetable): Update formatting.
258 Add check of 'elen' being zero.
259
bb97bdd7
NC
2602015-01-23 Nick Clifton <nickc@redhat.com>
261
262 * nlmconv.c (powerpc_mangle_relocs): Fix build errors introduced
263 by recent delta, when compiling on for a 32-bit host.
264
86eafac0
NC
2652015-01-21 Nick Clifton <nickc@redhat.com>
266
267 PR binutils/17512
268 * addr2line.c (main): Call bfd_set_error_program_name.
269 * ar.c (main): Likewise.
270 * coffdump.c (main): Likewise.
271 * cxxfilt.c (main): Likewise.
272 * dlltool.c (main): Likewise.
273 * nlmconv.c (main): Likewise.
274 * nm.c (main): Likewise.
275 * objdump.c (main): Likewise.
276 * size.c (main): Likewise.
277 * srconv.c (main): Likewise.
278 * strings.c (main): Likewise.
279 * sysdump.c (main): Likewise.
280 * windmc.c (main): Likewise.
281 * windres.c (main): Likewise.
282 * objcopy.c (main): Likewise.
283 (copy_relocations_in_section): Check for relocs without associated
284 symbol pointers.
285
6c1965f9
RR
2862015-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
287
288 * MAINTAINERS: Add self to ARM maintainers list.
289
5b7d6237
NC
2902015-01-21 Nick Clifton <nickc@redhat.com>
291
292 PR binutils/17512
293 * coffgrok.c (do_type): Check that computed ref exists.
294 (doit): Add range checks when computing section for scope.
295
a0a3b04c
L
2962015-01-12 H.J. Lu <hongjiu.lu@intel.com>
297
298 * dwarf.c (process_debug_info): Properly check abbrev size.
299
72c61a0d
NC
3002015-01-12 Nick Clifton <nickc@redhat.com>
301
302 PR binutils/17531
303 * dwarf.c (process_debug_info): Check for abbrev_base being larger
304 than the section size.
305 (process_cu_tu_index): Use xcalloc2 to allocate the CU and TU
306 arrays.
307 (xcalloc2): New function. Like xcalloc, but checks for overflow.
1306a742
NC
308 (display_debug_addr): Use xcalloc to allocate the debug_addr_info
309 array. Check for an address_base that is too large.
310
72c61a0d
NC
311 * dwarf.h (xcalloc2): Prototype.
312
b38ead21
AM
3132015-01-12 Alan Modra <amodra@gmail.com>
314
315 * prdbg.c (print_debugging_info): Don't use void* for function
316 pointer param.
317 * budbg.h (print_debugging_info): Update prototype.
318
3565cf8f
NC
3192015-01-08 Nick Clifton <nickc@redhat.com>
320
321 PR binutils/17512
063bb025
NC
322 * ojcopy.c (copy_object): Free the symbol table if no symbols
323 could be loaded.
324 (copy_file): Use bfd_close_all_done to close files that could not
325 be copied.
326
848cde35
NC
327 * sysdump.c (getINT): Fail if reading off the end of the buffer.
328 Replace call to abort with a call to fatal.
329 (getCHARS): Prevetn reading off the end of the buffer.
330
3565cf8f
NC
331 * nlmconv.c (i386_mangle_relocs): Skip relocs without an
332 associated symbol.
333 (powerpc_mangle_relocs): Skip unrecognised relocs. Check address
334 range before applying a reloc.
335
c88f5b8e
NC
3362015-01-07 Nick Clifton <nickc@redhat.com>
337
338 PR binutils/17512
d7b24d29
NC
339 * dlltool.c (scan_obj_file): Break loop if the last archive
340 displayed matches the current archive.
341
c88f5b8e
NC
342 * objdump.c (display_any_bfd): Add a depth limit to nested archive
343 display in order to avoid infinite loops.
344 * srconv.c: Replace calls to abort with calls to fatal with an
345 error message.
346
85880250
NC
3472015-01-06 Nick Clifton <nickc@redhat.com>
348
349 PR binutils/17512
350 * coffdump.c (dump_coff_section): Check for a symbol being
351 available before printing its name.
352 (main): Check the return value from coff_grok.
353 * coffgrok.c: Reformat and tidy.
354 Add range checks to most functions.
355 (coff_grok): Return NULL if the input bfd is not in a COFF
356 format.
357 * coffgrok.h: Reformat and tidy.
358 (struct coff_section): Change the nrelocs field to unsigned.
359 * srconv.c (main): Check the return value from coff_grok.
360
896ca098
NC
3612015-01-05 Nick Clifton <nickc@redhat.com>
362
363 PR binutils/17512
364 * nm.c (print_symbol): Add 'is_synthetic' parameter. Use it to
365 help initialize the info.elfinfo field.
366 (print_size_symbols): Add 'synth_count' parameter. Use it to set
367 the is_synthetic parameter when calling print_symbol.
368 (print_symbols): Likewise.
369 (display_rel_file): Pass synth_count to printing function.
370 (display_archive): Break loop if the last archive displayed
371 matches the current archive.
372 * size.c (display_archive): Likewise.
373
82b1b41b
NC
3742015-01-05 Nick Clifton <nickc@redhat.com>
375
376 PR binutils/17531
377 * dwarf.c (alloc_num_debug_info_entries): New variable.
378 (process_debug_info): Set it. Use it to avoid displaying
379 attributes for which there is no info.
380 (display_debug_abbrev): Check that the debug_info_entry index is
381 valid before using it.
382 (display_loc_list_dwo): Likewise.
383 (process_cu_tu_index): Add range check for an overlarge dw_sect
384 value.
385 (free_debug_memory): Reset alloc_num_debug_info_entries.
386 * readelf.c (slurp_ia64_unwind_table): Warn if the reloc could not
387 be indentified.
388 (dynamic_section_mips_val): Warn if the timestamp is invalid.
389 (print_mips_got_entry): Add a data_end parameter. Warn if a read
390 would go beyond the end of the data, and return an error value.
391 (process_mips_specific): Do not read options from beyond the end
392 of the section.
393 Correct code to display optional data at the end of an option.
394 Warn if there are too many GOT symbols.
395 Update calls to print_mips_got_entry, and handle error returns.
396
c1724c7f
DK
3972015-01-05 Daniel Klauer <daniel.c.klauer@web.de>
398
399 PR binutils/17489
400 * doc/binutils.texi (dlltool): Correct description of --kill-at
401 option.
402
efd321f9
AM
4032015-01-01 Alan Modra <amodra@gmail.com>
404
405 * version.c (print_version): Just print current year.
406
b90efa5b 4072015-01-01 Alan Modra <amodra@gmail.com>
5c294fee 408
b90efa5b 409 Update year range in copyright notice of all files.
5c294fee 410
b90efa5b 411For older changes see ChangeLog-2014
252b5132 412\f
b90efa5b 413Copyright (C) 2015 Free Software Foundation, Inc.
752937aa
NC
414
415Copying and distribution of this file, with or without modification,
416are permitted in any medium without royalty provided the copyright
417notice and this notice are preserved.
418
252b5132
RH
419Local Variables:
420mode: change-log
421left-margin: 8
422fill-column: 74
423version-control: never
424End:
This page took 0.708972 seconds and 4 git commands to generate.