2008-07-20 Sergei Poselenov <sposelenov@emcraft.com>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
a9dc9481
JM
12008-07-18 Joseph Myers <joseph@codesourcery.com>
2
3 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add new parameter.
4 * bfd-in2.h: Regenerate.
5 * elf32-arm.c (struct elf_arm_obj_tdata): Add field
6 no_wchar_size_warning.
7 (bfd_elf32_arm_set_target_relocs): Add new parameter
8 no_wchar_warn.
9 (elf32_arm_merge_eabi_attributes): Give a warning, not an error,
10 for conflicting wchar_t attributes. Do not warn if
11 --no-wchar-size-warning. Make diagnostic text more specific.
12
6cee0a6f
L
132008-07-18 H.J. Lu <hongjiu.lu@intel.com>
14
15 PR ld/6748
16 * elf32-arm.c (elf32_arm_link_hash_table_create): Initialize
17 new fields added for ARM long call support.
18
2b5c217d
NC
192008-07-18 Danny Backx <dannybackx@users.sourceforge.net>
20
21 * pe-arm-wince.c (pe_print_compressed_pdata): Define new function to
22 print compressed pdata structure as described on MSDN. This only
23 applies to a limited set of architectures (ARM, SH4).
24 (slurp_symtab, my_symbol_for_address): Define static helper
25 functions for pe_print_compressed_pdata.
26 * coffcode.h (bfd_coff_backend_data): Add _bfd_coff_print_pdata field.
27 (bfd_coff_have_print_pdata, bfd_coff_print_pdata): Define.
28 * bfd/peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add check on
29 bfd_coff_backend_data, call the function if non-null.
30 * pei-mcore.c: Add target dependent initialisation for
31 bfd_coff_backend_data.
32 * coff-sh.c: Likewise.
33 * coff64-rs6000.c: Likewise.
34 * coff-rs6000.c: Likewise.
35 * libcoff-in.h: Likewise.
36 * cf-i386lynx.c: Likewise.
37 * coff-alpha.c: Likewise.
38 * coff-apollo.c: Likewise.
39 * coff-arm.c: Likewise.
40 * coff-aux.c: Likewise.
41 * coff-h8300.c: Likewise.
42 * coff-h8500.c: Likewise.
43 * coff-i386.c: Likewise.
44 * coff-i860.c: Likewise.
45 * coff-i960.c: Likewise.
46 * coff-ia64.c: Likewise.
47 * coff-m68k.c: Likewise.
48 * coff-m88k.c: Likewise.
49 * coff-maxq.c: Likewise.
50 * coff-mips.c: Likewise.
51 * coff-or32.c: Likewise.
52 * coff-sparc.c: Likewise.
53 * coff-tic30.c: Likewise.
54 * coff-tic4x.c: Likewise.
55 * coff-tic54x.c: Likewise.
56 * coff-tic80.c: Likewise.
57 * coff-w65.c: Likewise.
58 * coff-we32k.c: Likewise.
59 * coff-x86_64.c: Likewise.
60 * coff-z80.c: Likewise.
61 * coff-z8k.c: Likewise.
62 * pe-mcore.c: Likewise.
63 * pe-mips.c: Likewise.
64 * pe-ppc.c: Likewise.
65 * peXXigen.c: Likewise.
66 * pei-ppc.c: Likewise.
67 * libcoff.h: Regenerate.
68
c96a8570
BS
692008-07-16 Bernd Schmidt <bernd.schmidt@analog.com>
70
71 * elf32-bfin.c (bfin_check_relocs, bfin_relocate_section,
72 bfin_final_link_relocate, bfin_gc_mark_hook, bfin_gc_sweep_hook,
73 ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE,
74 struct _bfinfdpic_dynamic_got_info): Moved around to keep FD-PIC code
75 separate from non-FD-PIC.
76
605d18d4
DD
772008-07-14 DJ Delorie <dj@redhat.com>
78
79 * elf-m10300.c (mn10300_elf_final_link_relocate): Correct overflow
80 checks for PCREL8, PCREL16, GOTPC16, GOTOFF16, PLT16, and GOT16
81 relocs.
82 (mn10300_elf_relax_section): Correct jump offset check when target
83 is in a different section.
84
b0a0b978
JZ
852008-07-15 Jie Zhang <jie.zhang@analog.com>
86
87 * elf32-bfin.c (elf32_bfin_special_sections[]): New.
88 (elf_backend_special_sections): Define.
89
aaf30c25
CS
902008-07-13 Craig Silverstein <csilvers@google.com>
91
08b78292 92 PR binutils/6743
aaf30c25
CS
93 * dwarf2.c (struct dwarf2_debug): New variable info_ptr_memory.
94 (find_line): Use info_ptr_memory instead of sec_info_ptr.
95 (_bfd_dwarf2_cleanup_debug_info): Likewise.
96
1bac266e
JZ
972008-07-12 Jie Zhang <jie.zhang@analog.com>
98
99 Revert
100 2008-07-12 Jie Zhang <jie.zhang@analog.com>
101 * elf.c (_bfd_elf_map_sections_to_segments): Don't put
102 executable sections into the same segment with other
103 read only sections if --sep-code.
104 * elf32-bfin.c (elf32_bfin_code_in_l1): New variable.
105 (elf32_bfin_data_in_l1): New variable.
106 (elf32_bfin_final_write_processing): New.
107 (elf32_bfin_special_sections[]): New.
108 (elf_backend_final_write_processing): Define.
109 (elf_backend_special_sections): Define.
110
8c684578
JZ
1112008-07-12 Jie Zhang <jie.zhang@analog.com>
112
113 * elf.c (_bfd_elf_map_sections_to_segments): Don't put
114 executable sections into the same segment with other
115 read only sections if --sep-code.
116 * elf32-bfin.c (elf32_bfin_code_in_l1): New variable.
117 (elf32_bfin_data_in_l1): New variable.
118 (elf32_bfin_final_write_processing): New.
119 (elf32_bfin_special_sections[]): New.
120 (elf_backend_final_write_processing): Define.
121 (elf_backend_special_sections): Define.
122
3076cd1f
AS
1232008-07-11 Andreas Schwab <schwab@suse.de>
124
125 * dwarf2.c (read_section): Take pointer to bfd_size_type instead
126 of unsigned long as last parameter.
127 (struct dwarf2_debug): Define dwarf_abbrev_size, dwarf_line_size,
128 dwarf_str_size and dwarf_ranges_size as bfd_size_type instead of
129 unsigned long.
130
0a61c8c2
RS
1312008-07-10 Richard Sandiford <rdsandiford@googlemail.com>
132
133 * elfxx-mips.c (mips_elf_calculate_relocation): Calculate GP and GP0
134 for all relocation types. Allow any type of relocation to refer to
135 __gnu_local_gp.
136
30c09090
RS
1372008-07-10 Richard Sandiford <rdsandiford@googlemail.com>
138
139 * elfxx-mips.c (mips_elf_check_mips16_stubs): Use ELF_ST_IS_MIPS16.
140 (mips_elf_calculate_relocation): Likewise.
141 (_bfd_mips_elf_add_symbol_hook): Likewise.
142 (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
143 (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
144
355d10dc
AS
1452008-07-10 Andreas Schwab <schwab@suse.de>
146
147 * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Add missing
148 paren.
149
1b315056
CS
1502008-07-09 Craig Silverstein <csilvers@google.com>
151
152 * Makefile.am (BFD32_LIBS): Add compress.lo.
153 (BFD32_LIBS_CFILES): Add compress.c.
154 (BFD_H_FILES): Likewise.
155 * Makefile.in: Regenerate.
156 * bfd-in2.h: Regenerate.
157 * config.in: Add HAVE_ZLIB_H
158 * configure.in: Add test for libz and zlib.h
159 * configure: Regenerate.
160 * dwarf2.c (read_section): New function.
161 (read_indirect_string): Call new function read_section.
162 (read_abbrevs): Likewise.
163 (decode_line_info): Likewise.
164 (read_debug_ranges): Likewise.
165 (find_line): Call new function read_section when just one
166 .zdebug_info section is found, otherwise read and compress
167 multiple sections.
168 (_bfd_dwarf2_cleanup_debug_info): Free sec_info_ptr.
169 * elf.c (_bfd_elf_make_section_from_shdr): Add zdebug prefix.
170 (special_sections_z): New struct.
171 (special_sections): Refer to special_sections_z.
172 * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Recognize
173 sections named .zdebug_*.
174 (_bfd_mips_elf_fake_sections): Likewise.
175 * compress.c: New file.
176 (bfd_uncompress_section_contents): New function.
177
329dcd78
NC
1782008-07-07 Christophe Lyon <christophe.lyon@st.com>
179
180 * elf32-arm.c (arm_type_of_stub): Don't crash on local symbols in
181 the presence of a PLT.
182
c29aae59
AM
1832008-07-07 Alan Modra <amodra@bigpond.net.au>
184
185 * bfd.c (bfd_demangle): Always trim off bfd_get_symbol_leading_char.
186
7382d32a
AM
1872008-07-02 Alan Modra <amodra@bigpond.net.au>
188
189 * elf32-ppc.c (is_pic_glink_stub): New function.
190 (ppc_elf_get_synthetic_symtab): Don't generate symbols when
191 multiple shared/pie stubs per plt entry.
192
cb53bf42
RS
1932008-06-30 Richard Sandiford <rdsandiford@googlemail.com>
194
195 * elf.c (_bfd_elf_get_synthetic_symtab): Increment p by
196 bed->s->int_rels_per_ext_rel.
197
6ba2a415
RS
1982008-06-30 Richard Sandiford <rdsandiford@googlemail.com>
199
200 * syms.c (BSF_SYNTHETIC): New flag.
201 * elf.c (_bfd_elf_get_synthetic_symtab): Set it.
202 * elf32-ppc.c (ppc_elf_get_synthetic_symtab): Likewise.
203 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise.
204 * bfd-in.h (bfd_asymbol_flavour): Return bfd_target_unknown_flavour
205 for synthetic symbols.
206 * bfd-in2.h: Regenerate.
207
3dccd7b7
DJ
2082008-06-30 Daniel Jacobowitz <dan@codesourcery.com>
209
210 * elf32-arm.c (record_arm_to_thumb_glue, record_thumb_to_arm_glue):
211 Expand comments.
212 (arm_map_one_stub): Use | 1 when setting the low bit.
213
f57718b4
AS
2142008-06-29 Andreas Schwab <schwab@suse.de>
215
216 * elf32-m68k.c (elf_m68k_relocate_section): Don't ignore existing
217 addend on _GLOBAL_OFFSET_TABLE_.
218
7413f23f
DJ
2192008-06-24 Daniel Jacobowitz <dan@codesourcery.com>
220
221 * elf32-arm.c (STUB_ENTRY_NAME): Define.
222 (arm_thumb_thumb_long_branch_stub): Use bx instead of b.n.
223 (arm_pic_long_branch_stub): Mention R_ARM_REL32 instead of
224 R_ARM_ABS32.
225 (struct elf32_arm_stub_hash_entry): Add output_name.
226 (arm_build_one_stub): Move offsets into the offset argument
227 of _bfd_final_link_relocate. Correct offset for
228 arm_thumb_arm_v4t_stub_long_branch.
229 (elf32_arm_size_stubs): Set stub_entry->output_name.
230 (elf32_arm_ouput_plt_map_sym): Rename to elf32_arm_output_map_sym.
231 Update all callers.
232 (elf32_arm_output_stub_sym): New.
233 (arm_map_one_stub): Correct formatting. Use elf32_arm_output_stub_sym.
234
7c39fb20
AM
2352008-06-20 Alan Modra <amodra@bigpond.net.au>
236
237 * elf32-spu.c (needs_ovl_stub): Correctly return nonovl_stub for
238 non-branch insns.
239
f3c29e8a
AM
2402008-06-20 Alan Modra <amodra@bigpond.net.au>
241
242 * elf32-spu.c (build_stub): Allow wraparound on stub branches.
243 (allocate_spuear_stubs, build_spuear_stubs): Return value from
244 count_stub/build_stub.
245 (spu_elf_build_stubs): Correct location of stub reloc error message.
246
de73c611
SR
2472008-06-18 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
248
249 * elf32-cr16.c (ELF_MACHINE_ALT1): Define to EM_CR16_OLD.
250
7a283e07
RW
2512008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
252
253 * configure: Regenerate.
254
99302af9
AM
2552008-06-17 Alan Modra <amodra@bigpond.net.au>
256
257 * elf32-spu.c (struct spu_link_hash_table): Add extra_stack_space.
258 (spu_elf_check_vma): Add extra_stack_space param, copy to htab.
259 (spu_elf_auto_overlay): Use it.
260 (RECURSE_UNMARK): Define as 0.
261 (unmark_overlay_section): Heed RECURSE_UNMARK.
262 * elf32-spu.h (spu_elf_check_vma): Update prototype.
263
ff7eeb89
DD
2642008-06-12 DJ Delorie <dj@redhat.com>
265
266 * elf32-m32c.c (ELF_MACHINE_ALT1): Define as EM_M32C_OLD.
267
c13bb2ea
PB
2682008-06-09 Paul Brook <paul@codesourcery.com>
269
270 bfd/
271 * elf32-arm.c (elf32_arm_merge_private_bfd_data): Allow BE8 shared
272 libraries.
273
f4ac8484
DJ
2742008-06-09 Christophe Lyon <christophe.lyon@st.com>
275
276 * elf32-arm.c (arm_stub_is_thumb): Define.
277 (elf32_arm_final_link_relocate): Handle near mode switching stubs.
278
6a267715
AM
2792008-06-07 Alan Modra <amodra@bigpond.net.au>
280
281 * elf32-spu.c (spu_elf_auto_overlay): Add valid area below sp
282 to stack calculation.
283
23684067
PB
2842008-06-06 Paul Brook <paul@codesourcery.com>
285
286 bfd/
287 * elf32-arm.c (elf32_arm_merge_private_bfd_data): Reject BE8 input.
288
97407faf
AM
2892008-06-06 Alan Modra <amodra@bigpond.net.au>
290
291 * elf32-spu.c (spu_elf_auto_overlay): Relax requirement that
292 file names be unique. Specify archive:path in overlay script.
293
7cfbafbc
AM
2942008-06-05 Alan Modra <amodra@bigpond.net.au>
295
296 PR ld/6590
297 * elf64-ppc.c (ppc_build_one_stub): Correct reloc offsets.
298
0f0a5e58
AM
2992008-06-04 Alan Modra <amodra@bigpond.net.au>
300
301 * elf.c (ignore_section_sym): Don't test section sym value here.
302 (elf_map_symbols): Instead check zero value here as was done prior
303 to 2006-05-26 change.
304
696b7ad2
NC
3052008-06-04 Nick Clifton <nickc@redhat.com>
306
307 PR ld/6019
308 * elf32-avr.c (elf32_avr_relax_section): Handle the case where
309 there are no local symbols.
310
1f27ab8d
AM
3112008-06-04 Alan Modra <amodra@bigpond.net.au>
312
313 * elf32-spu.c (get_sym_h): Don't attempt to read global syms.
314 (process_stubs): Likewise.
315 (discover_functions): Don't used cached symbols.
316 (maybe_insert_function): Correct condition under which function
317 array is realloc'd.
318 (mark_functions_via_relocs): Delete unused variable.
319
adfef0bd
NC
3202008-05-30 Frediano Ziglio <frediano.ziglio@vodafone.com>
321 Nick Clifton <nickc@redhat.com>
322
323 PR ld/6511
324 * elf64-hppa.c (allocate_global_data_opd): Default to using the
325 dynamic symbol table for local function names in shared libraries.
326
11701589
JK
3272008-05-29 Jan Kratochvil <jan.kratochvil@redhat.com>
328
329 * elf.c (assign_file_positions_for_load_sections): Adjust pre-section
330 gaps based on VMA and P_VADDR instead of LMA and P_PADDR addresses.
331
124b52c6
AM
3322008-05-28 Alan Modra <amodra@bigpond.net.au>
333
334 * elf32-spu.c (spu_elf_object_p): New function.
335 (elf_backend_object_p): Define.
336 (build_stub): Correct second word of 8 byte overlay stubs.
337 (spu_elf_relocate_section): Formatting.
338
bb864ac1
CES
3392008-05-24 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
340
341 * elf.c (elfcore_write_register_note): New function.
342 * elf-bfd.h (elfcore_write_register_note): New prototype.
343
da5938a2
NC
3442008-05-22 Christophe Lyon <christophe.lyon@st.com>
345
346 * elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols.
347 (elf32_arm_stub_add_mapping_symbol): Remove.
348 (elf32_arm_add_stub): Don't generate mapping symbols. Change
349 prototype.
350 (elf32_arm_size_stubs): Use new elf32_arm_add_stub
351 prototype. Don't generate thumb to arm glue for calls.
352 (arm_map_one_stub): Define.
353 (elf32_arm_output_arch_local_syms): Generate mapping symbols for
354 long calls stubs.
355
c2f950c8
L
3562008-05-21 Nick Clifton <nickc@redhat.com>
357
358 * elf32-arm.c (group_sections): Reformat comments.
359
360 PR ld/6446
361 * elf32-frv.c (elf32_frv_relocate_section): Set EF_FRV_PIC by
362 default (for FDPIC). Clear it if any inter-segment relocations
363 are found.
364
365 * elf64-hppa.c (elf64_hppa_finalize_opd): Check NULL return
366 from elf_link_hash_lookup.
367
7fb9f789
NC
3682008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com>
369
370 Add multi-GOT support for m68k.
371 * elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
372 glist): New fields.
373 (struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
374 struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
375 struct elf_m68k_multi_got): New data structures.
376 (struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
377 allow_multigot_p, multi_got_): New fields.
378 (elf_m68k_multi_got): New macro.
379 (elf_m68k_link_hash_newfunc): Initialize new fields of
380 struct elf_m68k_link_hash_entry.
381 (elf_m68k_link_hash_table_create): Initialize new fields of
382 struct elf_m68k_link_hash_table.
383 (elf_m68k_link_hash_table_free): New static function implementing hook.
384 (elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
385 static functions for struct elf_m68k_got.
386 (elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
387 elf_m68k_got_entry_eq): New static functions for
388 struct elf_m68k_got_entry.
389 (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
390 ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
391 (enum elf_m68k_get_entry_howto): New enum.
392 (elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
393 elf_m68k_remove_got_entry_type): New static functions for
394 struct elf_m68k_got_entry.
395 (elf_m68k_add_entry_to_got): New static function.
396 (elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
397 elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
398 functions for struct elf_m68k_bfd2got_entry.
399 (struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
400 elf_m68k_can_merge_gots): New traversal.
401 (struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
402 elf_m68k_merge_gots): Ditto.
403 (struct elf_m68k_finalize_got_offsets_arg,
404 elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
405 (struct elf_m68k_partition_multi_got_arg,
406 elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
407 elf_m68k_partition_multi_got): Ditto.
408 (elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
409 functions.
410 (elf_m68k_copy_indirect_symbol): New static function implementing
411 a hook.
412 (elf_m68k_check_relocs): Update to add entries to multi-GOT.
413 (elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
414 (elf_m68k_always_size_sections): Assign BFDs to GOTs.
415 (elf_m68k_relocate_section): Update to properly handle GOT relocations.
416 (elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
417 of a global symbol.
418 (bfd_elf_m68k_set_target_options): New function.
419 (bfd_elf32_bfd_link_hash_table_free): Define hook.
420 (bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
421 to skip generic calculation of GOT offsets.
422 (elf_backend_copy_indirect_symbol): Define hook.
423 * bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
424 * bfd-in2.h: Regenerate.
425