]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
Extend .reloc to accept some BFD_RELOCs
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
0ba38529
AM
12015-01-19 Alan Modra <amodra@gmail.com>
2
3 * elf32-bfin.c (bfin_bfd_reloc_type_lookup): Correct loop iteration
4 to allow return of first howto.
5 * elf32-fr30.c (fr30_reloc_type_lookup): Likewise.
6 * elf32-m32c.c (m32c_reloc_type_lookup): Likewise.
7 * elf32-moxie.c (moxie_reloc_type_lookup): Likewise.
8 * elf32-or1k.c (or1k_reloc_type_lookup): Likewise.
9 * elf32-rl78.c (rl78_reloc_type_lookup): Likewise.
10 * elf32-rx.c (rx_reloc_type_lookup): Likewise.
11 * elf32-tilepro.c (tilepro_reloc_type_lookup): Likewise.
12 * elf32-xstormy16.c (xstormy16_reloc_type_lookup): Likewise.
13 * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
14 * elf32-nios2.c (nios2_reloc_map): Add mapping for R_NIOS2_NONE.
15 * elf32-spu.c (spu_elf_bfd_to_reloc_type): Allow return of R_SPU_NONE.
16 (spu_elf_reloc_type_lookup): Adjust to suit.
17
6346d5ca
AM
182015-01-19 Alan Modra <amodra@gmail.com>
19
20 * bfd-in.h (bfd_get_section_limit_octets): New define, extracted from..
21 (bfd_get_section_limit): ..here.
22 * reloc.c (bfd_perform_relocation): Correct bfd_reloc_outofrange check.
23 (bfd_install_relocation, _bfd_final_link_relocate): Add same check here.
24 * elf32-sh.c (sh_elf_reloc): Correct bfd_reloc_outofrange check.
25 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Remove duplicated
26 bfd_reloc_outofrange check.
27 * bfd-in2.h: Regenerate.
28
29 * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Return bfd_reloc_ok
30 on zero size relocs.
31 * ecoff.c (ecoff_reloc_link_order): Likewise.
32 * elf32-nds32.c (nds32_relocate_contents): Likewise.
33 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
34
35 * reloc.c (_bfd_relocate_contents): Don't bomb on zero size relocs.
36 (_bfd_clear_contents): Likewise.
37 * elfxx-mips.c (mips_elf_obtain_contents): Likewise.
38 (mips_elf_perform_relocation): Likewise.
39
40 * aoutx.h (aout_link_reloc_link_order): Allow for NULL return
41 from malloc on zero size alloc.
42 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
43 * elflink.c (elf_reloc_link_order): Likewise.
44 * linker.c (_bfd_generic_reloc_link_order): Likewise.
45 * pdp11.c (aout_link_reloc_link_order): Likewise.
46 * xcofflink.c (xcoff_reloc_link_order): Likewise.
47
48 * aoutx.h (howto_table_ext): Ensure NONE relocs have size 3,
49 bitsize 0, and complain_overflow_dont.
50 * coff-sparc.c (coff_sparc_howto_table): Likewise.
51 * elf-hppa.h (elf_hppa_howto_table): Likewise.
52 * elf-m10200.c (elf_mn10200_howto_table): Likewise.
53 * elf-m10300.c (elf_mn10300_howto_table): Likewise.
54 * elf32-arc.c (elf_arc_howto_table): Likewise.
55 * elf32-arm.c (elf32_arm_howto_table_1): Likewise.
56 * elf32-avr.c (elf_avr_howto_table): Likewise.
57 * elf32-bfin.c (bfin_howto_table): Likewise.
58 * elf32-cr16.c (cr16_elf_howto_table): Likewise.
59 * elf32-cris.c (cris_elf_howto_table): Likewise.
60 * elf32-crx.c (crx_elf_howto_table): Likewise.
61 * elf32-d10v.c (elf_d10v_howto_table): Likewise.
62 * elf32-d30v.c (elf_d30v_howto_table): Likewise.
63 * elf32-dlx.c (dlx_elf_howto_table): Likewise.
64 * elf32-epiphany.c (epiphany_elf_howto_table): Likewise.
65 * elf32-fr30.c (fr30_elf_howto_table): Likewise.
66 * elf32-frv.c (elf32_frv_howto_table): Likewise.
67 * elf32-h8300.c (h8_elf_howto_table): Likewise.
68 * elf32-i370.c (i370_elf_howto_raw): Likewise.
69 * elf32-i386.c (elf_howto_table): Likewise.
70 * elf32-i860.c (elf32_i860_howto_table): Likewise.
71 * elf32-i960.c (elf32_i960_relocate): Likewise.
72 * elf32-ip2k.c (ip2k_elf_howto_table): Likewise.
73 * elf32-iq2000.c (iq2000_elf_howto_table): Likewise.
74 * elf32-lm32.c (lm32_elf_howto_table): Likewise.
75 * elf32-m32c.c (m32c_elf_howto_table): Likewise.
76 * elf32-m32r.c (m32r_elf_howto_table): Likewise.
77 * elf32-m68hc11.c (elf_m68hc11_howto_table): Likewise.
78 * elf32-m68hc12.c (elf_m68hc11_howto_table): Likewise.
79 * elf32-m68k.c (howto_table): Likewise.
80 * elf32-mcore.c (mcore_elf_howto_raw): Likewise.
81 * elf32-mep.c (mep_elf_howto_table): Likewise.
82 * elf32-metag.c (elf_metag_howto_table): Likewise.
83 * elf32-microblaze.c (microblaze_elf_howto_raw): Likewise.
84 * elf32-mips.c (elf_mips_howto_table_rel): Likewise.
85 * elf32-moxie.c (moxie_elf_howto_table): Likewise.
86 * elf32-msp430.c (elf_msp430_howto_table): Likewise.
87 * elf32-mt.c (mt_elf_howto_table): Likewise.
88 * elf32-nds32.c (nds32_elf_howto_table): Likewise.
89 * elf32-nios2.c (elf_nios2_howto_table_rel): Likewise.
90 * elf32-or1k.c (or1k_elf_howto_table): Likewise.
91 * elf32-pj.c (pj_elf_howto_table): Likewise.
92 * elf32-ppc.c (ppc_elf_howto_raw): Likewise.
93 * elf32-rl78.c (rl78_elf_howto_table): Likewise.
94 * elf32-rx.c (rx_elf_howto_table): Likewise.
95 * elf32-s390.c (elf_howto_table): Likewise.
96 * elf32-score.c (elf32_score_howto_table): Likewise.
97 * elf32-score7.c (elf32_score_howto_table): Likewise.
98 * elf32-sh-relocs.h (R_SH_NONE): Likewise.
99 * elf32-spu.c (elf_howto_table): Likewise.
100 * elf32-tic6x.c (elf32_tic6x_howto_table): Likewise.
101 * elf32-tilepro.c (tilepro_elf_howto_table): Likewise.
102 * elf32-v850.c (v850_elf_howto_table): Likewise.
103 * elf32-vax.c (howto_table): Likewise.
104 * elf32-visium.c (visium_elf_howto_table): Likewise.
105 * elf32-xc16x.c (xc16x_elf_howto_table): Likewise.
106 * elf32-xgate.c (elf_xgate_howto_table): Likewise.
107 * elf32-xstormy16.c (xstormy16_elf_howto_table): Likewise.
108 * elf32-xtensa.c (elf_howto_table): Likewise.
109 * elf64-alpha.c (elf64_alpha_howto_table): Likewise.
110 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
111 * elf64-mmix.c (elf_mmix_howto_table): Likewise.
112 * elf64-ppc.c (ppc64_elf_howto_raw): Likewise.
113 * elf64-s390.c (elf_howto_table): Likewise.
114 * elf64-sh64.c (sh_elf64_howto_table): Likewise.
115 * elf64-x86-64.c (x86_64_elf_howto_table): Likewise.
116 * elfn32-mips.c (elf_mips_howto_table_rel): Likewise.
117 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Likewise.
118 (elfNN_aarch64_howto_none): Likewise.
119 * elfxx-ia64.c (ia64_howto_table): Likewise.
120 * elfxx-sparc.c (_bfd_sparc_elf_howto_table): Likewise.
121 * elfxx-tilegx.c (tilegx_elf_howto_table): Likewise.
122 * nlm32-sparc.c (nlm32_sparc_howto_table): Likewise.
123
6333bc0d
L
1242015-01-15 H.J. Lu <hongjiu.lu@intel.com>
125
126 PR ld/17847
127 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't complain
128 about -fPIC if the symbol is undefined when building executable.
129
cd21f5da
NC
1302015-01-15 Nick Clifton <nickc@redhat.com>
131
132 PR binutils/17512
133 * elf-m10300.c (mn10300_info_to_howto): Replace assertion with an
134 error message. Never return an invalid howto pointer.
135 * elf32-cr16.c (cr16_info_to_howto): Likewise.
136 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
137 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
138 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
139 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
140 * elf32-mips.c (mips_elf32_rtype_to_howto): Likewise.
141 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
142 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
143 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
144 * elf32-v850.c (v850_elf_info_to_howto_rela): Likewise.
145 * elf32-vax.c (rtype_to_howto): Likewise.
146 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
147 * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
148 * elfn32-mips.c (sh_elf_info_to_howto): Likewise.
149 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
150 (sh_elf_reloc): Check that the reloc is in range.
151 * reloc.c (bfd_perform_relocation): Check that the section is big
152 enough for the entire reloc.
153 (bfd_generic_get_relocated_section_contents): Report unexpected
154 return values from perform_reloc.
155
2d071cfc
NC
1562015-01-15 Nick Clifton <nickc@redhat.com>
157
158 * elf32-msp430.c (msp430_elf_relax_section): Skip unhandled
159 relocs. Include PC-relative adjustment for R_MSP430X_ABS16
160 relaxation.
161
ca55926c
AM
1622015-01-15 Alan Modra <amodra@gmail.com>
163
164 * elflink.c (_bfd_elf_link_omit_section_dynsym): Return true for
165 any output section matching a linker created dynobj section.
166
8539e4e8
AM
1672015-01-15 Alan Modra <amodra@gmail.com>
168
169 PR 17842
170 * elflink.c (elf_link_output_sym): Assert elf_onesymtab set.
171 (bfd_elf_final_link): Always create a symbol table when emit_relocs.
172 Don't assign symtab file position unless symbols will be output.
173 Merge blocks with condition in common. Don't call
174 elf_backend_output_arch_local_syms or elf_backend_output_arch_syms
175 unless other symbols are output. Move assignment of symtab_shndx
176 file position. Localize variable.
177
52db4ec2
JW
1782015-01-14 Jiong Wang <jiong.wang@arm.com>
179
180 * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when
181 trying to defer them to runtime.
182
0941db69
JW
1832015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
184
185 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use SYMBOLIC_BIND
186 to check if a symbol should be bound symbolically.
187
0172429c
JW
1882015-01-13 Jiong Wang <jiong.wang@arm.com>
189
190 * elfnn-aarch64.c: (elfNN_aarch64_howto_table): Enable overflow check
191 for TLSLE_MOVW_TPREL_G2.
192
bab91cce
JW
1932015-01-13 Jiong Wang <jiong.wang@arm.com>
194
195 PR ld/17415
196 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Mark
197 R_AARCH64_TLSLE_ADD_TPREL_HI12 as complain_overflow_unsigned.
198 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Correct the
199 bit mask.
200
3c758495
TG
2012015-01-12 Terry Guo <terry.guo@arm.com>
202
203 * elflink.c (_bfd_elf_gc_mark_debug_special_section_group): New
204 function.
205 (_bfd_elf_gc_mark_extra_sections): Use it.
206
9d1d54d5
L
2072015-01-11 H.J. Lu <hongjiu.lu@intel.com>
208
209 PR ld/17827
210 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): For PIE,
211 only discard space for pc-relative relocs symbols which turn
212 out to need copy relocs.
213
c6e8e93a
NC
2142015-01-09 Nick Clifton <nickc@redhat.com>
215
216 * tekhex.c (getvalue): Fix thinko in test for correct extraction
217 of value.
218 (getsym): Return false if there was not enough data to extract the
219 symbol.
220
400cf8cb
AG
2212015-01-09 Anthony Green <green@moxielogic.com>
222
223 * elf32-moxie.c (ELF_MACHINE_ALT1): Define.
224
23d4663e
NC
2252015-01-08 Nick Clifton <nickc@redhat.com>
226
227 * elf32-msp430.c (msp430_elf_relax_section): Add relaxation of
228 16-bit absolute BR instructions to 10-bit pc-relative JMP
229 instructions.
230
063bb025
NC
2312015-01-08 Nick Clifton <nickc@redhat.com>
232
233 PR binutils/17512
234 * coffcode.h (coff_slurp_symbol_table): Return false if we failed
235 to load the line table.
236 * elf.c (_bfd_elf_map_sections_to_segments): Enforce a minimum
237 maxpagesize of 1.
238 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if
239 the Data Directory Size is too large.
240
6f25f223
L
2412015-01-06 H.J. Lu <hongjiu.lu@intel.com>
242
243 PR binutils/17512
244 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
245 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
246
85880250
NC
2472015-01-06 Nick Clifton <nickc@redhat.com>
248
249 PR binutils/17512
e7287c7f
NC
250 * mach-o.c (bfd_mach_o_read_symtab_strtab): Zero terminate the
251 string table.
252
ec93045b
NC
253 * reloc.c (bfd_get_reloc_size): Handle a reloc size of -1.
254 (bfd_perform_relocation): Include the size of the reloc in the
255 test for an out of range relocation.
256 (bfd_generic_get_relocated_section_contents): Remove reloc range
257 test.
258
85880250
NC
259 * coff-i860.c (CALC_ADDEND): Always set an addend value.
260 * tekhex.c (getvalue): Add an end pointer parameter. Use it to
261 avoid reading off the end of the buffer.
262 (getsym): Likewise.
263 (first_phase): Likewise.
264 (pass_over): Pass an end pointer to the invoked function.
265
533d0af0
L
2662015-01-05 H.J. Lu <hongjiu.lu@intel.com>
267
268 PR binutils/17512
269 * elf32-i386.c (elf_i386_get_plt_sym_val): Return NULL on corrupt
270 input.
271 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
272
896ca098
NC
2732015-01-05 Nick Clifton <nickc@redhat.com>
274
275 PR binutils/17512
276 * archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
277 is at least big enough for the header to be read.
278 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
279 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
280 (bfd_mach_o_read_command): Prevetn duplicate error messages about
281 unrecognized commands.
282 * syms.c (_bfd_stab_section_find_nearest_line): Add range checks
283 when indexing into the string table.
284
b90efa5b 2852015-01-01 Alan Modra <amodra@gmail.com>
ee3b52e9 286
b90efa5b 287 Update year range in copyright notice of all files.
ee3b52e9 288
b90efa5b 289For older changes see ChangeLog-2014
56882138 290\f
b90efa5b 291Copyright (C) 2015 Free Software Foundation, Inc.
752937aa
NC
292
293Copying and distribution of this file, with or without modification,
294are permitted in any medium without royalty provided the copyright
295notice and this notice are preserved.
296
56882138
AM
297Local Variables:
298mode: change-log
299left-margin: 8
300fill-column: 74
301version-control: never
302End: