Don't resolve size relocation against non-zero TLS symbol
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2013-02-06 H.J. Lu <hongjiu.lu@intel.com>
2
3 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
4 for non-zero TLS symbol.
5 (elf_i386_relocate_section): Don't resolve size relocation against
6 non-zero TLS symbol.
7 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
8 pc_count for non-zero TLS symbol.
9 (elf_x86_64_relocate_section): Don't resolve size relocation
10 against non-zero TLS symbol.
11
12 2013-02-06 Sandra Loosemore <sandra@codesourcery.com>
13 Andrew Jenner <andrew@codesourcery.com>
14
15 Based on patches from Altera Corporation.
16
17 * Makefile.am (ALL_MACHINES): Add cpu-nios2.lo.
18 (ALL_MACHINES_CFILES): Add cpu-nios2.c.
19 (BFD_BACKENDS): Add elf32-nios2.lo.
20 (BFD32_BACKENDS_CFILES): Add elf32-nios2.c.
21 * Makefile.in: Regenerated.
22 * configure.in: Add entries for bfd_elf32_bignios2_vec and
23 bfd_elf32_littlenios2_vec.
24 * configure: Regenerated.
25 * config.bfd: Add cases for nios2.
26 * archures.c (enum bfd_architecture): Add bfd_arch_nios2.
27 (bfd_mach_nios2): Define.
28 (bfd_nios2_arch): Declare.
29 (bfd_archures_list): Add bfd_nios2_arch.
30 * targets.c (bfd_elf32_bignios2_vec): Declare.
31 (bfd_elf32_littlenios2_vec): Declare.
32 (_bfd_target_vector): Add entries for bfd_elf32_bignios2_vec and
33 bfd_elf32_littlenios2_vec.
34 * elf-bfd.h (enum elf_target_id): Add NIOS2_ELF_DATA.
35 * reloc.c (enum bfd_reloc_code_real): Add Nios II relocations.
36 * bfd-in2.h: Regenerated.
37 * libbfd.h: Regenerated.
38 * cpu-nios2.c: New file.
39 * elf32-nios2.c: New file.
40
41 2013-02-06 Alan Modra <amodra@gmail.com>
42
43 * elf32-arm.c (elf32_arm_final_link_relocate): Only test for
44 stubs in stub_bfd.
45
46 2013-02-06 Alan Modra <amodra@gmail.com>
47
48 * Makefile.am (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
49 * Makefile.in: Regenerate.
50
51 2013-02-04 Sergio Durigan Junior <sergiodj@redhat.com>
52 Pedro Alves <palves@redhat.com>
53
54 * Makefile.in (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
55 * elf-bfd.h (elf_internal_linux_prpsinfo): New structure
56 declaration.
57 (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64)
58 (elfcore_write_ppc32_linux_prpsinfo32): New declarations.
59 * elf-linux-psinfo.h: New file.
60 * elf.c: Include elf-linux-psinfo.h.
61 (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64):
62 New functions.
63 * elf32-ppc.c: Include `elf-linux-psinfo.h'.
64 (elf_external_ppc_linux_prpsinfo32): New structure declaration.
65 (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): New macro.
66 (elfcore_write_ppc_linux_prpsinfo32): New function.
67
68 2013-02-04 Tristan Gingold <gingold@adacore.com>
69
70 * mach-o.c (bfd_mach_o_scan_start_address): Do not fail if no
71 start address.
72
73 2013-02-04 Alan Modra <amodra@gmail.com>
74
75 * Makefile.am (BFD64_BACKENDS): Remove elf-nacl.lo.
76 (BFD64_BACKENDS_CFILES): Remove elf-nacl.c.
77 * Makefile.in: Regenerate.
78 * po/SRC-POTFILES.in: Regenerate.
79
80 2013-02-04 Alan Modra <amodra@gmail.com>
81
82 * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Delete.
83 * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Delete.
84
85 2013-02-01 Alan Modra <amodra@gmail.com>
86
87 * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
88 clears def_regular.
89
90 2013-01-31 Tristan Gingold <gingold@adacore.com>
91
92 * mach-o.c (bfd_mach_o_scan): Call bfd_mach_o_flatten_sections
93 earlier. Fix status checking of bfd_mach_o_scan_start_address.
94 (bfd_mach_o_scan_start_address): Handle LC_MAIN.
95
96 2013-01-31 Alan Modra <amodra@gmail.com>
97 David S. Miller <davem@davemloft.net>
98
99 PR ld/15056
100 * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
101 references to __tls_get_addr.
102 * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise. Correct
103 vtinherit and vtentry reloc handling too.
104 * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
105
106 2013-01-31 Alan Modra <amodra@gmail.com>
107
108 * elf64-ppc.c (ppc_stub_name): Trim off trailing "+0".
109
110 2013-01-31 Alan Modra <amodra@gmail.com>
111
112 * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
113
114 2013-01-28 Alan Modra <amodra@gmail.com>
115
116 * elf64-ppc.c: Use %T to print symbols names and remove redundant
117 "relocation" in error messages throughout file.
118 (ppc64_elf_relocate_section): Remove sibling call error message,
119 replace with "call lacks nop". Specially report errors for
120 branches to function entry points via OPD lookup and branches
121 to stubs. Remove NULL symbol handling now done by %T.
122
123 2013-01-28 Alan Modra <amodra@gmail.com>
124
125 * archive.c (bfd_generic_archive_p): Return target and keep
126 ardata on partial matches.
127 * format.c (bfd_check_format_matches): Adjust for above
128 change. Remove bfd_error_file_ambiguously_recognized dead
129 code.
130
131 2013-01-26 Alan Modra <amodra@gmail.com>
132
133 * bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
134 bfd_preserve_finish): Move to..
135 * format.c: ..here, splitting out..
136 (bfd_reinit): ..this. New function.
137 (bfd_check_format_matches): Use bfd_preserve_save/restore to
138 keep bfd state for a match.
139 * elfcode.h (elf_object_p): Don't use bfd_preserve_save/restore.
140 * elfcore.h (elf_core_file_p): Likewise.
141 * mach-o.c (bfd_mach_o_header_p): Likewise.
142 * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
143 * xsym.c (bfd_sym_object_p): Likewise.
144 * mmo.c (mmo_scan): Clear abfd->symcount.
145 * opncls.c (_bfd_new_bfd): Use a smaller section hash table.
146 * section.c (bfd_section_list_clear): Clear section_htab.count.
147 * bfd-in2.h: Regenerate.
148
149 2013-01-25 Michael Schewe <michael.schewe@gmx.net>
150
151 * elf32-h8300.c (elf32_h8_relax_section): When checking for a
152 second reloc, make sure that the reloc potentially exists first.
153
154 2013-01-24 Nick Clifton <nickc@redhat.com>
155
156 * archures.c: Add bfd_mach_v850e3v5.
157 * bfd-in2.h: Regenerate.
158 * cpu-v850.c: Add entries for v850e2v5 and v850e3v5.
159 * cpu-v850_rh850.c: Likewise.
160 * elf32-v850.c: Add support for v850e3v5 architecture.
161
162 2013-01-23 Markos Chandras <markos.chandras@imgtec.com>
163
164 * elf32-metag.c: Error on HIADDR16/LOADDR16 in shared link.
165
166 2013-01-23 Leif Ekblad <leif@rdos.net>
167
168 * config.bfd (x86_64-*-rdos*): Remove targ_selvecs.
169
170 2013-01-18 H.J. Lu <hongjiu.lu@intel.com>
171
172 * elf32-i386.c (elf_i386_allocate_dynrelocs): Clear pc_count for
173 non-zero TLS symbol.
174 (elf_i386_relocate_section): Resolve size relocation against
175 non-zero TLS symbol.
176 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Clear pc_count
177 for non-zero TLS symbol.
178 (elf_x86_64_relocate_section): Resolve size relocation against
179 non-zero TLS symbol.
180
181 2013-01-18 Mike Frysinger <vapier@gentoo.org>
182
183 * elflink.c (bfd_elf_size_dynamic_sections): Only add DT_RPATH
184 when new_dtags is false. Only add DT_RUNPATH when new_dtags is
185 true.
186
187 2013-01-17 H.J. Lu <hongjiu.lu@intel.com>
188
189 * elf32-i386.c (elf_i386_check_relocs): Count size relocation as
190 PC-relative relocation.
191 * elf64-x86-64.c (elf_x86_64_check_relocs): Count size relocation
192 as PC-relative relocation.
193
194 2013-01-16 H.J. Lu <hongjiu.lu@intel.com>
195
196 * elf32-i386.c (elf_i386_check_relocs): Update R_386_SIZE32
197 check.
198 (elf_i386_relocate_section): Don't check TLS for R_386_SIZE32.
199
200 * elf64-x86-64.c (elf_x86_64_check_relocs): Update R_X86_64_SIZE32
201 and R_X86_64_SIZE64 check.
202 (elf_x86_64_relocate_section): Don't check TLS for R_X86_64_SIZE32
203 nor R_X86_64_SIZE64.
204
205 2013-01-16 H.J. Lu <hongjiu.lu@intel.com>
206
207 * bfd-in2.h: Regenerated.
208 * libbfd.h: Likewise.
209
210 * elf32-i386.c (elf_howto_table): Fill R_386_SIZE32 entry.
211 (elf_i386_reloc_type_lookup): Support BFD_RELOC_SIZE32.
212 (elf_i386_check_relocs): Handle R_386_SIZE32.
213 (elf_i386_gc_sweep_hook): Likewise.
214 (elf_i386_relocate_section): Likewise.
215
216 * elf64-x86-64.c (x86_64_elf_howto_table): Fill R_X86_64_SIZE32
217 and R_X86_64_SIZE64 entries.
218 (x86_64_reloc_map): Add BFD_RELOC_SIZE32 and BFD_RELOC_SIZE64,
219 (elf_x86_64_rtype_to_howto): Handle R_X86_64_SIZE32 for x32.
220 (elf_x86_64_reloc_name_lookup): Likewise.
221 (elf_x86_64_check_relocs): Handle R_X86_64_SIZE32 and
222 R_X86_64_SIZE64.
223 (elf_x86_64_gc_sweep_hook): Likewise.
224 (elf_x86_64_relocate_section): Likewise.
225
226 * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SIZE32 and
227 BFD_RELOC_SIZE64.
228
229 2013-01-15 H.J. Lu <hongjiu.lu@intel.com>
230
231 * elf64-x86-64.c (R_X86_64_standard): Replace R_X86_64_IRELATIVE
232 with R_X86_64_RELATIVE64.
233
234 2013-01-15 Nick Clifton <nickc@redhat.com>
235
236 * elf32-msp430.c: Fix spelling typo.
237
238 2013-01-15 Alan Modra <amodra@gmail.com>
239
240 * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
241 plt-thread-safe.
242
243 2013-01-14 Alan Modra <amodra@gmail.com>
244
245 PR binutils/14813
246 * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
247 (memory_bclose): Likewise. Return 0 on success.
248 * cache.c (cache_bclose): Likewise.
249 * opncls.c (opncls_bclose, bfd_close): Likewise.
250 * vms-lib.c (vms_lib_bclose): Likewise.
251 * libbfd.h: Regenerate.
252
253 2013-01-13 Alan Modra <amodra@gmail.com>
254
255 * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
256 Add ref_dynamic_nonweak.
257 * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
258 (_bfd_elf_merge_symbol): Don't call above function. Move
259 setting of ref_dynamic_nonweak and dynamic_def earlier. Don't
260 clear dynamic_def.
261 (elf_link_add_object_symbols): Delete redundant "override" test.
262 Don't set dynamic_def here.
263 (elf_link_output_extsym): Update.
264
265 2013-01-12 H.J. Lu <hongjiu.lu@intel.com>
266
267 * elf32-i386.c (elf_i386_check_relocs): Set bfd errror for
268 normal and TLS symbol access.
269 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
270
271 2013-01-12 Alan Modra <amodra@gmail.com>
272
273 * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
274 * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
275 * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
276
277 2013-01-12 Alan Modra <amodra@gmail.com>
278
279 PR ld/12549
280 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
281 (_bfd_elf_strtab_clear_all_refs): Define.
282 * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
283 (_bfd_elf_strtab_clear_all_refs): Delete.
284 * elflink.c (elf_link_add_object_symbols): Clear out added
285 strtab refs. Correct handling of warning common symbols.
286
287 2013-01-10 H.J. Lu <hongjiu.lu@intel.com>
288
289 * aout0.c: Remove trailing white spaces.
290 * archive.c: Likewise.
291 * archures.c: Likewise.
292 * bfd-in.h: Likewise.
293 * bfd-in2.h: Likewise.
294 * coff-alpha.c: Likewise.
295 * coff-i860.c: Likewise.
296 * coff-mips.c: Likewise.
297 * coff-ppc.c: Likewise.
298 * coff-tic80.c: Likewise.
299 * coff-x86_64.c: Likewise.
300 * coff-z80.c: Likewise.
301 * coffcode.h: Likewise.
302 * coffgen.c: Likewise.
303 * cofflink.c: Likewise.
304 * compress.c: Likewise.
305 * corefile.c: Likewise.
306 * cpu-arm.c: Likewise.
307 * cpu-avr.c: Likewise.
308 * cpu-bfin.c: Likewise.
309 * cpu-cr16.c: Likewise.
310 * cpu-cr16c.c: Likewise.
311 * cpu-crx.c: Likewise.
312 * cpu-h8300.c: Likewise.
313 * cpu-i386.c: Likewise.
314 * cpu-lm32.c: Likewise.
315 * cpu-m68k.c: Likewise.
316 * cpu-moxie.c: Likewise.
317 * cpu-msp430.c: Likewise.
318 * cpu-sh.c: Likewise.
319 * cpu-xc16x.c: Likewise.
320 * dwarf2.c: Likewise.
321 * ecofflink.c: Likewise.
322 * ecoffswap.h: Likewise.
323 * elf-ifunc.c: Likewise.
324 * elf-m10300.c: Likewise.
325 * elf-vxworks.c: Likewise.
326 * elf32-avr.c: Likewise.
327 * elf32-avr.h: Likewise.
328 * elf32-cr16.c: Likewise.
329 * elf32-cr16c.c: Likewise.
330 * elf32-cris.c: Likewise.
331 * elf32-crx.c: Likewise.
332 * elf32-frv.c: Likewise.
333 * elf32-hppa.c: Likewise.
334 * elf32-i860.c: Likewise.
335 * elf32-ip2k.c: Likewise.
336 * elf32-iq2000.c: Likewise.
337 * elf32-m32c.c: Likewise.
338 * elf32-m68hc1x.c: Likewise.
339 * elf32-msp430.c: Likewise.
340 * elf32-mt.c: Likewise.
341 * elf32-ppc.c: Likewise.
342 * elf32-rl78.c: Likewise.
343 * elf32-s390.c: Likewise.
344 * elf32-score.h: Likewise.
345 * elf32-sh-symbian.c: Likewise.
346 * elf32-sh.c: Likewise.
347 * elf32-spu.c: Likewise.
348 * elf32-tic6x.c: Likewise.
349 * elf32-v850.c: Likewise.
350 * elf32-xc16x.c: Likewise.
351 * elf32-xtensa.c: Likewise.
352 * elf64-alpha.c: Likewise.
353 * elf64-hppa.c: Likewise.
354 * elf64-ppc.c: Likewise.
355 * elf64-s390.c: Likewise.
356 * elfcore.h: Likewise.
357 * elflink.c: Likewise.
358 * elfxx-mips.c: Likewise.
359 * elfxx-sparc.c: Likewise.
360 * elfxx-tilegx.c: Likewise.
361 * ieee.c: Likewise.
362 * libcoff.h: Likewise.
363 * libpei.h: Likewise.
364 * libxcoff.h: Likewise.
365 * linker.c: Likewise.
366 * mach-o-i386.c: Likewise.
367 * mach-o-target.c: Likewise.
368 * mach-o.c: Likewise.
369 * mach-o.h: Likewise.
370 * mmo.c: Likewise.
371 * opncls.c: Likewise.
372 * pdp11.c: Likewise.
373 * pe-x86_64.c: Likewise.
374 * peXXigen.c: Likewise.
375 * pef-traceback.h: Likewise.
376 * pei-x86_64.c: Likewise.
377 * peicode.h: Likewise.
378 * plugin.c: Likewise.
379 * reloc.c: Likewise.
380 * riscix.c: Likewise.
381 * section.c: Likewise.
382 * som.c: Likewise.
383 * syms.c: Likewise.
384 * tekhex.c: Likewise.
385 * ticoff.h: Likewise.
386 * vaxbsd.c: Likewise.
387 * xcofflink.c: Likewise.
388 * xtensa-isa.c: Likewise.
389
390 2013-01-10 Will Newton <will.newton@imgtec.com>
391
392 * Makefile.am: Add Meta.
393 * Makefile.in: Regenerate.
394 * archures.c (bfd_mach_metag): New.
395 * bfd-in2.h: Regenerate.
396 * config.bfd: Add Meta.
397 * configure: Regenerate.
398 * configure.in: Add Meta.
399 * cpu-metag.c: New file.
400 * elf-bfd.h: Add Meta.
401 * elf32-metag.c: New file.
402 * elf32-metag.h: New file.
403 * libbfd.h: Regenerate.
404 * reloc.c: Add Meta relocations.
405 * targets.c: Add Meta.
406
407 2013-01-08 Yufeng Zhang <yufeng.zhang@arm.com>
408
409 * elf-bfd.h (elfcore_write_aarch_tls): Add prototype.
410 (elfcore_write_aarch_hw_break): Likewise.
411 (elfcore_write_aarch_hw_watch): Likewise.
412 * elf.c (elfcore_grok_aarch_tls): New function.
413 (elfcore_grok_aarch_hw_break): Likewise.
414 (elfcore_grok_aarch_hw_watch): Likewise.
415 (elfcore_grok_note): Call the new functions to handle the
416 corresponding notes.
417 (elfcore_write_aarch_tls): New function.
418 (elfcore_write_aarch_hw_break): Likewise.
419 (elfcore_write_aarch_hw_watch): Likewise.
420 (elfcore_write_register_note): Call the new functions to handle the
421 corresponding pseudo sections.
422
423 2013-01-07 Tom Tromey <tromey@redhat.com>
424
425 * section.c (_bfd_std_section): Rename from std_section.
426 (bfd_com_section_ptr, bfd_und_section_ptr, bfd_abs_section_ptr)
427 (STD_SECTION): Update.
428 * bfd-in2.h: Rebuild.
429
430 2013-01-04 Juergen Urban <JuergenUrban@gmx.de>
431
432 * archures.c (bfd_mach_mips5900): Define.
433 * bfd-in2.h: Regenerate.
434 * config.bfd: Add mips64-ps2-elf and mips-ps2-elf targets.
435 * cpu-mips.c: Add support for MIPS r5900.
436 * elfxx-mips.c: Add support for MIPS r5900 (extension of r4000).
437
438 2013-01-03 Nickolai Zeldovich <nickolai@csail.mit.edu>
439 Nick Clifton <nickc@redhat.com>
440
441 * elflink.c (get_value): Prevent the use of an undefined shift
442 operation. Add sanity checks.
443
444 2013-01-02 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
445
446 * config.bfd (cr16*-*-uclinux*): New target support.
447
448
449 For older changes see ChangeLog-2012
450 \f
451 Copyright (C) 2013 Free Software Foundation, Inc.
452
453 Copying and distribution of this file, with or without modification,
454 are permitted in any medium without royalty provided the copyright
455 notice and this notice are preserved.
456
457 Local Variables:
458 mode: change-log
459 left-margin: 8
460 fill-column: 74
461 version-control: never
462 End:
This page took 0.039633 seconds and 5 git commands to generate.