* configure.ac: Add quotes to not lose brackets in help text.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
4f360784
L
12009-04-21 H.J. Lu <hongjiu.lu@intel.com>
2
3 * coff-ia64.c (COFF_PAGE_SIZE): Changed to 8K.
4
5 * coffcode.h (coff_compute_section_file_positions): Clear
6 D_PAGED if PE section alignment is smaller than COFF_PAGE_SIZE.
7
8 * libcoff-in.h (pe_tdata): Remove force_minimum_alignment and
9 force_minimum_alignment.
10
11 * libcoff.h: Regenerated.
12
13 * pei-ia64.c (PEI_TARGET_SUBSYSTEM): Removed.
14 (PEI_FORCE_MINIMUM_ALIGNMENT): Likewise.
15
16 * peicode.h (pe_mkobject): Don't set force_minimum_alignment
17 nor target_subsystem.
18
19 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't check
20 force_minimum_alignment nor target_subsystem.
21
e48570bb
DK
222009-04-21 Kai Tietz <kai.tietz@onevision.com>
23
24 * coff-x86_64.c (PEI_HEADERS): Protect includes.
25 (bfd_pe_print_pdata): Remove #ifdef PE variation.
26 * pei-x86_64.c (PEI_HEADERS): Define to prevent double
27 include in coff-x86_64.c of headers.
28 (PDATA_ROW_SIZE): New define.
29 (pex_regs[]): New static array.
30 (pex64_get_runtime_function): New static function.
31 (pex64_get_unwind_info): Likewise.
32 (pex64_get_scope_entry): Likewise.
33 (pex64_xdata_print_uwd_codes): Likewise.
34 (pex64_get_section_by_rva): Likewise.
35 (pex64_dump_xdata): Likewise.
36 (pex64_bfd_print_pdata): Likewise.
37 (bfd_pe_print_pdata): Define as pex64_bfd_print_pdata.
38 * peXXigen.c (_bfd_pex64_print_pdata): Removed implementation.
39 * libpei.h (_bfd_pex64_print_pdata): Removed declaration.
40
383c383f 412009-04-19 Peter O'Gorman <binutils@mlists.thewrittenword.com>
4f360784
L
42 Alan Modra <amodra@bigpond.net.au>
43 Dave Korn <dave.korn.cygwin@gmail.com>
383c383f
AM
44
45 * peXXigen.c (_bfd_XXi_swap_sym_in): Fix name handling w.r.t
46 long names and non-NUL-terminated strings.
47
b6b450f1
L
482009-04-17 H.J. Lu <hongjiu.lu@intel.com>
49
50 * bfd-in2.h: Regenerated.
51
d9118602
L
522009-04-17 H.J. Lu <hongjiu.lu@intel.com>
53
54 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Replace
55 IMAGE_SUBSYSTEM_EFI_ROM with IMAGE_SUBSYSTEM_SAL_RUNTIME_DRIVER.
56
92dd4511
L
572009-04-17 H.J. Lu <hongjiu.lu@intel.com>
58
59 PR binutils/10074
60 * coffcode.h (bfd_pei_p): New.
61
62 * config.bfd: Remove bfd_efi_bsdrv_ia32_vec,
63 bfd_efi_rtdrv_ia32_vec, bfd_efi_bsdrv_x86_64_vec,
64 bfd_efi_rtdrv_x86_64_vec, bfd_efi_bsdrv_ia64_vec and
65 bfd_efi_rtdrv_ia64_vec. Replace bfd_efi_app_ia32_vec,
66 bfd_efi_app_x86_64_vec and bfd_efi_app_ia64_vec with
67 i386pei_vec, x86_64pei_vec and bfd_pei_ia64_vec, respectively.
68
69 * configure.in: Remove bfd_efi_bsdrv_ia32_vec,
70 bfd_efi_rtdrv_ia32_vec, bfd_efi_bsdrv_x86_64_vec,
71 bfd_efi_rtdrv_x86_64_vec,
72 bfd_efi_bsdrv_ia64_vec and bfd_efi_rtdrv_ia64_vec. Replace
73 bfd_efi_ia64_vec with bfd_pei_ia64_vec.
74 * targets.c: Likewise.
75
76 * configure: Regenerated.
77 * libcoff.h: Likewise.
78 * Makefile.in: Likewise.
79
80 * efi-app-ia32.c: Removed.
81 * efi-app-x86_64.c: Likewise.
82 * efi-bsdrv-ia32.c: Likewise.
83 * efi-bsdrv-ia64.c: Likewise.
84 * efi-bsdrv-x86_64.c: Likewise.
85 * efi-rtdrv-ia32.c: Likewise.
86 * efi-rtdrv-ia64.c: Likewise.
87 * efi-rtdrv-x86_64.c: Likewise.
88 * efi-rtdrv-ia32.c: Likewise.
89
90 * efi-app-ia64.c: Moved to ...
91 * pei-ia64.c: This.
92 (TARGET_SYM): Set to bfd_pei_ia64_vec.
93 (TARGET_NAME): Set to pei-ia64.
94
95 * libpei.h (bfd_target_pei_p): Removed.
96 (bfd_target_pei_arch): Likewise.
97 (bfd_target_efi_app_p): Likewise.
98 (bfd_target_efi_app_arch): Likewise.
99 (bfd_target_efi_bsdrv_p): Likewise.
100 (bfd_target_efi_bsdrv_arch): Likewise.
101 (bfd_target_efi_rtdrv_p): Likewise.
102 (bfd_target_efi_rtdrv_arch): Likewise.
103 (bfd_pe_executable_p): Likewise.
104
105 * Makefile.am (BFD32_BACKENDS): Remove efi-app-ia32.lo,
106 efi-bsdrv-ia32.lo and efi-rtdrv-ia32.lo.
107 (BFD32_BACKENDS_CFILES): Remove efi-app-ia32.c, efi-bsdrv-ia32.c
108 and efi-rtdrv-ia32.c.
109 (BFD64_BACKENDS): Remove efi-app-ia64.lo, efi-bsdrv-ia64.lo,
110 efi-rtdrv-ia64.lo, efi-app-x86_64.lo, efi-bsdrv-x86_64.lo and
111 efi-rtdrv-x86_64.lo. Add pei-ia64.lo.
112 (BFD64_BACKENDS_CFILES): Remove efi-app-ia64.c, efi-bsdrv-ia64.c,
113 efi-rtdrv-ia64.c, efi-app-x86_64.c, efi-bsdrv-x86_64.c and
114 efi-rtdrv-x86_64.c. Add pei-ia64.c.
115 (efi-app-ia64.lo): Removed.
116 (efi-bsdrv-ia32.lo): Likewise.
117 (efi-rtdrv-ia32.lo): Likewise.
118 (efi-app-ia64.lo): Likewise.
119 (efi-bsdrv-ia64.lo): Likewise.
120 (efi-rtdrv-ia64.lo): Likewise.
121 (efi-app-x86_64.lo): Likewise.
122 (efi-bsdrv-x86_64.lo): Likewise.
123 (efi-rtdrv-x86_64.lo): Likewise.
124 (pei-ia64.lo): New.
125
126 * peicode.h (coff_swap_scnhdr_in): Replace bfd_pe_executable_p
127 with bfd_pei_p.
128 (arch_type): Removed.
129 (pe_arch): Likewise.
130 (pe_bfd_object_p): Just return coff_object_p.
131
132 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Replace
133 bfd_pe_executable_p with bfd_pei_p.
134
69c5861e
CL
1352009-04-17 Christophe Lyon <christophe.lyon@st.com>
136
137 * elf32-arm.c (elf32_arm_size_stubs): Handle long branches through
138 PLT entries to an undefined symbol when generating a shared
139 library.
140
e9cd0660
NC
1412009-04-17 Nick Clifton <nickc@redhat.com>
142
143 PR 9909
144 * coffcode.h (handle_COMDAT): Allow for external COMDAT symbols.
145
3023e3f6
RS
1462009-04-16 Richard Sandiford <r.sandiford@uk.ibm.com>
147
148 * aout-adobe.c (aout_32_bfd_define_common_symbol): Define.
149 * aout-target.h (MY_bfd_define_common_symbol): Likewise.
150 * aout-tic30.c (MY_bfd_define_common_symbol): Likewise.
151 * binary.c (binary_bfd_define_common_symbol): Likewise.
152 * bout.c (b_out_bfd_define_common_symbol): Likewise.
153 * coff-alpha.c (_bfd_ecoff_bfd_define_common_symbol): Likewise.
154 * coff-mips.c (_bfd_ecoff_bfd_define_common_symbol): Likewise.
155 * coffcode.h (coff_bfd_define_common_symbol): Likewise.
156 * elfxx-target.h (bfd_elfNN_bfd_define_common_symbol): Likewise.
157 * i386msdos.c (msdos_bfd_define_common_symbol): Likewise.
158 * i386os9k.c (os9k_bfd_define_common_symbol): Likewise.
159 * ieee.c (ieee_bfd_define_common_symbol): Likewise.
160 * ihex.c (ihex_bfd_define_common_symbol): Likewise.
161 * libbfd-in.h (_bfd_nolink_bfd_define_common_symbol): Likewise.
162 * mach-o.c (bfd_mach_o_bfd_define_common_symbol): Likewise.
163 * mmo.c (mmo_bfd_define_common_symbol): Likewise.
164 * nlm-target.h (nlm_bfd_define_common_symbol): Likewise.
165 * oasys.c (oasys_bfd_define_common_symbol): Likewise.
166 * pef.c (bfd_pef_bfd_define_common_symbol): Likewise.
167 * ppcboot.c (ppcboot_bfd_define_common_symbol): Likewise.
168 * som.c (som_bfd_define_common_symbol): Likewise.
169 * srec.c (srec_bfd_define_common_symbol): Likewise.
170 * tekhex.c (tekhex_bfd_define_common_symbol): Likewise.
171 * versados.c (versados_bfd_define_common_symbol): Likewise.
172 * vms.c (vms_bfd_define_common_symbol): Likewise.
173 * xcoff-target.h (_bfd_xcoff_bfd_define_common_symbol): Likewise.
174 * xsym.c (bfd_sym_bfd_define_common_symbol): Likewise.
175 * coff-rs6000.c (rs6000coff_vec): Add _bfd_xcoff_define_common_symbol.
176 (pmac_xcoff_vec): Likewise.
177 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
178 (aix5coff64_vec): Likewise.
179 * linker.c (bfd_generic_define_common_symbol): New function.
180 * targets.c (BFD_JUMP_TABLE_LINK): Add NAME##_bfd_define_common_symbol.
181 (_bfd_define_common_symbol): New field.
182 * libcoff-in.h (_bfd_xcoff_define_common_symbol): Declare.
183 * xcofflink.c (_bfd_xcoff_define_common_symbol): New function.
184 (xcoff_build_ldsyms): Don't set XCOFF_DEF_REGULAR for common
185 symbols here.
186 * bfd-in2.h: Regenerate.
187 * libbfd.h: Likewise.
188 * libcoff.h: Likewise.
189
20135e4c
NC
1902009-04-15 Anthony Green <green@moxielogic.com>
191
192 * targets.c: Add moxie support.
193 * Makefile.am: Ditto.
194 * Makefile.in: Rebuilt.
195 * cpu-moxie.c, elf32-moxie.c: New files.
196 * archures.c: Add moxie support.
197 * configure.in: Add moxie support.
198 * configure: Rebuilt.
199 * config.bfd, archures.c: Add moxie support.
200 * bfd-in2.h: Rebuilt.
201
82b5c97a
CL
2022009-04-15 Christophe Lyon <christophe.lyon@st.com>
203
204 * elf32-arm.c (elf32_arm_final_link_relocate): Don't convert ARM
205 branch to an undef weak symbol into a jump to next instruction if
206 a PLT entry will be created.
207
0408dee6
DK
2082009-04-14 Dave Korn <dave.korn.cygwin@gmail.com>
209
210 * coffgen.c (make_a_section_from_file): Set the backend long
211 section names enable if long section names found on input.
212 * coffcode.h: Extend long section names documentation to match.
213
a0c402a5
L
2142009-04-08 H.J. Lu <hongjiu.lu@intel.com>
215
216 * elflink.c (elf_link_add_object_symbols): Warn alternate ELF
217 machine code.
218
4d28413b
DD
2192009-04-07 DJ Delorie <dj@redhat.com>
220
221 * archures.c: Add bfd_mach_mep_c5.
222 * bfd-in2.h: Likewise.
223 * cpu-mep.c: Add bfd_c5_arch.
224 * elf32-mep.c: Support it.
225
bb6198d2
L
2262009-04-07 H.J. Lu <hongjiu.lu@intel.com>
227
228 * elflink.c (_bfd_elf_section_already_linked): Add `\n' for
229 info->callbacks->einfo.
230 * linker.c (_bfd_generic_section_already_linked): Likewise.
231
bcb012d3
DD
2322009-04-06 DJ Delorie <dj@redhat.com>
233
234 * elf32-h8300.c (elf32_h8_relax_section): Relax MOVA opcodes.
235
db1fe6e9
L
2362009-04-06 H.J. Lu <hongjiu.lu@intel.com>
237
238 * coff-x86_64.c (bfd_pe_print_pdata): Defined to
239 _bfd_pex64_print_pdata only if PE is defined.
240
241 * libpei.h (_bfd_pep_print_x64_pdata): Renamed to ...
242 (_bfd_pex64_print_pdata): This.
243
244 * peXXigen.c (_bfd_pep_print_x64_pdata): Renamed to ...
245 (_bfd_pex64_print_pdata): This. Defined only if COFF_WITH_pex64
246 is defined.
247
c7c7219d
KT
2482009-04-05 Kai Tietz <kai.tietz@onevision.com>
249
250 * coff-x86_64.c (bfd_pe_print_pdata): Define as
251 _bfd_pep_print_x64_pdata.
252 * libpei.h (_bfd_pep_print_x64_pdata): Add prototype.
253 * peXXigen.c (_bfd_pep_print_x64_pdata): New.
254
3df502ae
SA
2552009-04-02 Sterling Augustine <sterling@jaw.hq.tensilica.com>
256
257 * elf32-xtensa.c (relax_property_section): Always set r_offset
258 to zero.
259
d3626fb0
CL
2602009-04-02 Christophe Lyon <christophe.lyon@st.com>
261
262 * elf32-arm.c (elf32_arm_stub_long_branch_v4t_thumb_thumb,
263 elf32_arm_stub_long_branch_v4t_thumb_thumb_pic): Two new long
264 branch stubs.
265 (elf32_arm_stub_type): New enum values for the two new stubs.
266 (arm_type_of_stub): Make use of the two new stubs.
267 (arm_size_one_stub): Handle the two new stubs.
268
fe723c87
MT
2692009-04-01 Matt Thomas <matt@netbsd.org>
270
271 * elf32-vax.c (elf_vax_check_relocs): Do not put relocations against
272 hidden symbols into the GOT or PLT.GOT.
273 (elf_vax_relocate_section): Do not emit a PCREL reloc
274 into a shared object if it is against a hidden symbol.
275
ee698300
RS
2762009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
277
278 * xcofflink.c (xcoff_archive_info): Add contains_shared_object_p
279 and know_contains_shared_object_p.
280 (xcoff_archive_contains_shared_object_p): Add an "info" parameter.
281 Cache the result in the archive_info table.
282 (xcoff_auto_export_p): Add an "info" parameter and update the
283 call to xcoff_archive_contains_shared_object_p.
284 (xcoff_mark_auto_exports): Update accordingly.
285 (xcoff_post_gc_symbol): Likewise.
286
54e2dbe0
RS
2872009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
288
289 * xcofflink.c (bfd_link_input_bfd): Treat __rtinit as C_HIDEXT
290 rather than C_EXT.
291
2e470849
RS
2922009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
293
294 * coff-rs6000.c (member_layout): New structure.
295 (archive_iterator): Likewise.
296 (member_layout_init): New function.
297 (archive_iterator_begin): Likewise.
298 (archive_iterator_next): Likewise.
299 (xcoff_write_armap_old): Use the new iterator functions.
300 (do_shared_object_padding): Delete.
301 (xcoff_write_armap_big): Use the new iterator functions. Simplify
302 handling of arch_info.
303 (xcoff_write_archive_contents_old): Allocate arelt_data in the
304 first loop rather than the second. Allocate a member header if
305 there isn't one, then work out the stat information and length
306 in the first loop too. Use the new iterators for the second loop.
307 (xcoff_write_archive_contents_big): Likewise.
308
24c611d1
RS
3092009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
310
311 * bfd-in.h (bfd_xcoff_split_import_path): Declare.
312 (bfd_xcoff_set_archive_import_path): Likewise.
313 * bfd-in2.h: Regenerate.
314 * xcofflink.c: Include libiberty.h.
315 (xcoff_archive_info): New structure.
316 (xcoff_archive_info_hash): New function.
317 (xcoff_archive_info_eq): Likewise.
318 (xcoff_get_archive_info): Likewise.
319 (_bfd_xcoff_bfd_link_hash_table_create): Initialize archive_info.
320 (bfd_xcoff_split_import_path): New function.
321 (bfd_xcoff_set_archive_import_path): Likewise.
322 (xcoff_set_import_path): Move earlier in file.
323 (xcoff_link_add_dynamic_symbols): Set the import path of a non-archive
324 object to the the directory part of the bfd's filename. Get the
325 import path and filename of an archive object from the archive's
326 xcoff_tdata, initializing it if necessary. Update use of
327 import_file_id.
328 (bfd_link_input_bfd): Update use of import_file_id.
329 (xcoff_write_global_symbol): Likewise.
330
d286971a
RS
3312009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
332
333 * xcofflink.c (xcoff_link_hash_table): Moved from include/coff/xcoff.h.
334
3352009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
336
337 * xcofflink.c (xcoff_link_create_extra_sections): Don't create
338 a .loader section for relocatable links.
339 (xcoff_need_ldrel_p): New function.
340 (xcoff_mark): Use it.
341 (bfd_xcoff_link_count_reloc): Only count loader relocs if there's
342 a loader section.
343 (xcoff_build_ldsym): New function, split out from...
344 (xcoff_build_ldsyms): ...here. Rename to...
345 (xcoff_post_gc_symbol): ...this. Only export symbols, and only
346 call xcoff_build_ldsym, if there's a loader section.
347 (xcoff_build_loader_section): New function, extracted verbatim from...
348 (bfd_xcoff_size_dynamic_sections): ...here. Only call it if
349 there's a loader section. Only add an __rtinit loader symbol
350 if there's a loader section. Update after above name change.
351 (xcoff_symbol_section, xcoff_create_ldrel): New functions.
352 (bfd_link_input_bfd): Use xcoff_need_ldrel_p, xcoff_symbol_section
353 and xcoff_create_ldrel.
354 (xcoff_write_global_symbol): Use xcoff_create_ldrel.
355 (xcoff_reloc_link_order): Likewise, but only call it if there's
356 a loader section. Use xcoff_symbol_section.
357 (_bfd_xcoff_bfd_final_link): Only use fdinfo.ldrel and fdinfo.ldsym
358 if there's a loader section.
359
8707bb87
RS
3602009-04-01 Richard Sandiford <rdsandiford@googlemail.com>
361
362 * xcofflink.c (bfd_link_input_bfd): Fix buffer overrun.
363
e780aef2
CL
3642009-04-01 Christophe Lyon <christophe.lyon@st.com>
365
366 * elf32-arm.c (group_sections): Rewrite loops for better
367 readability.
368
c301e700
DD
3692009-03-30 DJ Delorie <dj@redhat.com>
370
371 * elflink.c (elf_link_input_bfd): Don't try to resolve complex
372 relocs when doing a relocatable link.
373
3895f852
MM
3742009-03-28 Mark Mitchell <mark@codesourcery.com>
375
376 * coff-arm.c (coff_arm_merge_private_bfd_data): Use "error:", not
377 "ERROR:", in error messages.
378 * cpu-arm.c (bfd_arm_merge_machines): Likewise.
379 * elf-attrs.c (_bfd_elf_merge_object_attributes): Likewise.
380 * elf32-arm.c (tag_cpu_arch_combine): Likewise.
381 (elf32_arm_merge_eabi_attributes): Likewise.
382 (elf32_arm_merge_private_bfd_data): Likewise.
383
ea882e87
NC
3842009-03-27 Nick Clifton <nickc@redhat.com>
385
386 * section.c (bfd_get_section_contents): Detect and handle the case
387 where a section has the SEC_IN_MEMORY flag set but no actual
388 contents allocated.
389
9433b9b1
AM
3902009-03-26 Alan Modra <amodra@bigpond.net.au>
391
392 PR 6494
393 * elf.c (copy_elf_program_header): Do not check that PT_GNU_RELRO
394 p_filesz and p_memsz are equal. Use p_memsz as the segment size.
395 (assign_file_positions_for_non_load_sections): Zap PT_GNU_RELRO
396 if we don't find matching PT_LOAD when copying.
397
dc1aa734
SR
3982009-03-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
399
400 * elf32-crx.c (crx_elf_howto_table): Zero the src_mask field of
401 the reloc descriptions.
402
34d3d6b9
HPN
4032009-03-25 Hans-Peter Nilsson <hp@axis.com>
404
405 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
406 <R_CRIS_16_GOT_GD, case R_CRIS_32_GOT_GD>: Handle COMMON symbols.
407 <case R_CRIS_16_TPREL, R_CRIS_32_TPREL>: Ditto.
408
34274ccc
L
4092009-03-24 H.J. Lu <hongjiu.lu@intel.com>
410
411 * cpu-i386.c (bfd_x86_64_arch_intel_syntax): Make it static.
412 (bfd_i386_arch_intel_syntax): Likewise.
413 (i8086_arch): Likewise.
414 (bfd_x86_64_arch): Likewise.
415
019c5a2e
HPN
4162009-03-24 Hans-Peter Nilsson <hp@axis.com>
417
6718f446
HPN
418 * elf32-cris.c (cris_elf_relocate_section): <case
419 R_CRIS_16_DTPREL, R_CRIS_32_DTPREL>: Allow use of non-local
420 symbols for non-allocated sections. Don't check whether to
421 generate R_CRIS_DTPMOD for non-allocated sections.
422 (cris_elf_gc_sweep_hook) <case R_CRIS_32_DTPREL>: Don't
423 handle relocation GC:ing if applied to non-allocated section.
424 (cris_elf_check_relocs): Similar.
425
019c5a2e
HPN
426 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
427 <R_CRIS_16_GOT_GD, R_CRIS_32_GOT_GD>: Don't include the TLS size
428 when emitting a known TP offset in the GOT.
429
ffcfec52
AM
4302009-03-23 Alan Modra <amodra@bigpond.net.au>
431
432 * elf64-ppc.c (synthetic_opd): Delete.
433 (compare_symbols): Look for .opd name rather than section match.
434 (ppc64_elf_get_synthetic_symtab): Likewise.
435
c6dd29ce
AM
4362009-03-21 Alan Modra <amodra@bigpond.net.au>
437
438 * elf32-ppc.c (is_pic_glink_stub): Delete.
439 (is_nonpic_glink_stub): New function.
440 (ppc_elf_get_synthetic_symtab): Check for last non-pic stub rather
441 than first pic one.
442 (struct ppc_elf_link_hash_table <glink_pltresolve>): Comment fix.
443
8c21ca21
AK
4442009-03-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
445 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
446
447 * elf32-s390.c (elf_s390_check_relocs): Use the SYMBOL_*
4f360784 448 macros for visibilty and locality checks.
8c21ca21
AK
449 (elf_s390_adjust_dynamic_symbol): Likewise.
450 (allocate_dynrelocs): Likewise.
451 (elf_s390_relocate_section): Likewise.
452 (elf_s390_finish_dynamic_symbol): Likewise.
453 * elf64-s390.c (elf_s390_check_relocs): Likewise.
454 (elf_s390_adjust_dynamic_symbol): Likewise.
455 (allocate_dynrelocs): Likewise.
456 (elf_s390_relocate_section): Likewise.
457 (elf_s390_finish_dynamic_symbol): Likewise.
458
156621f3
KT
4592009-03-19 Kai Tietz <kai.tietz@onevision.com>
460
461 * bfd-in2.h: Regenerated.
462 * coffcode.h (sec_to_styp_flags): For pe-coff add SEC_READONLY
463 for debugging sections and map memory read/write dependent on
464 SEC_COFF_NOREAD.
465 (styp_to_sec_flags): Set SEC_COFF_NOREAD for sections
466 without memory read flags set.
467 * section.c: Add SEC_COFF_NOREAD to section flags.
468
d1fa68d3
AS
4692009-03-19 Andreas Schwab <schwab@linux-m68k.org>
470
471 * elf32-hppa.c (final_link_relocate): Cast bfd_vma values to long
472 for format string.
473
ad2adbc8
AM
4742009-03-19 Alan Modra <amodra@bigpond.net.au>
475
476 * elf32-spu.c (spu_elf_find_overlays): Separate error return from
477 "no overlays" return. If there are overlays, create overlay
478 manager entry symbols here, so that..
479 (spu_elf_build_stubs): ..we don't need to set them up here.
480 Simplify entry symbol tests.
481 * elf32-spu.h (spu_elf_find_overlays): Update prototype.
482
67cc5033
MK
4832009-03-18 Mark Kettenis <kettenis@gnu.org>
484
d1fa68d3 485 * elf.c (elfcore_grok_openbsd_procinfo)
67cc5033
MK
486 (elfcore_grok_openbsd_note): New functions.
487 (elf_parse_notes): Handle notes from OpenBSD ELF core files.
488
8d25cc3d
AM
4892009-03-18 Alan Modra <amodra@bigpond.net.au>
490
3889c459 491 * vms-hdr.c: Don't include alloca.h.
8d25cc3d
AM
492 * elf32-m68hc1x.c: Include alloca-conf.h.
493 * xsym.c: Likewise.
494 * elf64-hppa.c: Likewise. Remove existing #if's handling alloca.
495 * som.c: Likewise.
496 * Makefile.am: Run "make dep-am".
497 * Makefile.in: Regenerate.
498
a89e6478
DJ
4992009-03-17 Daniel Jacobowitz <dan@codesourcery.com>
500
501 * elf32-arm.c (elf32_arm_check_relocs): Correct symbian_p test.
502
a7e11ee1
AM
5032009-03-17 Alan Modra <amodra@bigpond.net.au>
504
505 * elf32-spu.h (struct spu_elf_params): ovly_flavour now only 1 bit.
506 Add compact_stub.
507 (emum _ovly_flavour): Delete ovly_compact, ovly_none.
508 * elf32-spu.c (struct spu_link_hash_table): Replace ovly_load and
509 ovly_return fields with ovly_entry[2]. Adjust all users.
510 (spu_elf_find_overlays): Set ovly_entry[1] from __icache_call_handler
511 when soft-icache.
512 (spu_elf_build_stubs): Likewise.
513 (ovl_stub_size): Change arg to spu_elf_params pointer. Adjust for
514 ovly_flavour changes. Update all callers.
515 (ovl_stub_size_log2): New function.
516 (build_stub): Handle compact icache stubs. Use different manager
517 entry point for stubs in non-icache area.
518 (spu_elf_size_stubs): Don't allocate space for indirect branch
519 descriptors.
520 (spu_elf_build_stubs): And don't built them.
521
607a83c9
AS
5222009-03-16 Andrew Stubbs <ams@codesourcery.com>
523
524 * dwarf2.c (read_section): Always use rawsize, if available.
525
588f62fc
AM
5262009-03-16 Alan Modra <amodra@bigpond.net.au>
527
528 * simple.c (bfd_simple_get_relocated_section_contents): Use larger
529 of rawsize and size for buffer.
530
a14c90c1
UW
5312009-03-15 Ulrich Weigand <uweigand@de.ibm.com>
532
533 * elf32-spu.c (spu_elf_check_vma): Do not reset auto_overlay
534 parameter just because fixed sections fit into local store.
535 (spu_elf_auto_overlay): Do not declare as "noreturn". Skip
536 generating overlays if fixed sections plus reserved stack
537 and heap space fit into local store.
538
30c665df
AM
5392009-03-15 Alan Modra <amodra@bigpond.net.au>
540
541 * elf32-spu.c (build_stub): Correct icache set_id.
542 (spu_elf_relocate_section): Likewise.
543
f95942a3
RS
5442009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
545
546 * xcofflink.c (xcoff_link_check_archive_element): Only free the
547 symbol table if it was created by the current call.
548
670562e9
RS
5492009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
550
551 * xcofflink.c (xcoff_build_ldsyms): Give imported descriptors
552 class XMC_DS rather than XMC_UA.
553
b64232cc
RS
5542009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
555
556 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Replace the
557 bfd_boolean export_defineds parameter with an unsigned int
558 auto_export_flags parameter.
559 * bfd-in2.h: Regenerate.
560 * xcofflink.c (xcoff_archive_contains_shared_object_p): New function,
561 split out from xcoff_build_ldsyms.
562 (xcoff_covered_by_expall_p): New function.
563 (xcoff_auto_export_p): New function, split out from xcoff_build_ldsyms
564 but with extra code to handle -bexpfull and -bexpall.
565 (xcoff_mark_auto_exports): New function.
566 (xcoff_build_ldsyms): Use xcoff_auto_export_p to decide whether
567 a function should be automatically exported.
568 (bfd_xcoff_size_dynamic_sections): Replace the export_defineds
569 parameter with an auto_export_flags parameter. Update ldinfo
570 accordingly. Use xcoff_mark_auto_exports to mark all automatically-
571 exported symbols.
572
7d504122
RS
5732009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
574
575 * xcofflink.c (xcoff_mark_symbol_by_name): New function.
576 (bfd_xcoff_size_dynamic_sections): Use it to mark the entry,
577 init and fini functions. Do garbage collection for objects
578 without an entry point too.
579
8602d4fe
RS
5802009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
581
582 * coffcode.h (coff_pointerize_aux_hook): Update CSECT_SYM_P to
583 check whether a symbol has csect information.
584 (coff_print_aux): Likewise.
585 * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Handle auxillary csect
586 information for C_AIX_WEAKEXT too.
587 (_bfd_xcoff_swap_aux_out): Likewise.
588 (xcoff_reloc_type_br): Handle defweak symbols too.
589 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Handle auxillary csect
590 information for C_AIX_WEAKEXT too.
591 (_bfd_xcoff64_swap_aux_out): Likewise.
592 (xcoff64_reloc_type_br): Handle defweak symbols too.
593 * coffgen.c (coff_print_symbol): Handle auxillary function
594 information for C_AIX_WEAKEXT too.
595 * xcofflink.c (_bfd_xcoff_canonicalize_dynamic_symtab): Set BSF_WEAK
596 instead of BSF_GLOBAL if the L_WEAK flag is set.
597 (xcoff_dynamic_definition_p): New function.
598 (xcoff_link_add_dynamic_symbols): Use it to decide whether ldsym
599 defines h. Don't change h if ldsym isn't the definition. Otherwise,
600 always take the symbol class from the ldsym. Use weak bfd symbol
601 types for weak ldsyms.
602 (xcoff_link_add_symbols): Use CSECT_SYM_P and EXTERN_SYM_P.
603 Fix the check for whether a definition is from a shared object.
604 Allow redefinitions of weak symbols.
605 (xcoff_link_check_ar_symbols): Use EXTERN_SYM_P.
606 (xcoff_keep_symbol_p): Likewise.
607 (bfd_xcoff_size_dynamic_sections): Use CSECT_SYM_P.
608 (xcoff_link_input_bfd): Use CSECT_SYM_P and EXTERN_SYM_P.
609 Add .loader entries for C_AIX_WEAKEXT as well as C_EXT symbols,
610 but mark them as L_WEAK.
611 (xcoff_write_global_symbol): Treat weak symbols as C_AIX_WEAKEXT
612 instead of C_EXT if C_AIX_WEAKEXT == C_WEAKEXT.
613
5b49f6dc
RS
6142009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
615
616 * xcofflink.c (xcoff_mark): When walking the relocations,
617 only mark the target symbol or the target section, not both.
618 (xcoff_final_definition_p): New function.
619 (xcoff_keep_symbol_p): Use it to check whether an external XCOFF
620 symbol is a valid definition of the associated output symbol.
621 Use XCOFF_ALLOCATED to stop the same hash table entry having
622 two output symbols.
623 (bfd_xcoff_size_dynamic_sections): Set XCOFF_ALLOCATED when
624 keeping a symbol.
625 (xcoff_link_input_bfd): Use xcoff_final_definition_p.
626
c4037431
RS
6272009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
628
629 * xcofflink.c (bfd_xcoff_import_symbol): Treat imported absolute
630 symbols as XMC_XO.
631
3df13c4a
RS
6322009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
633
634 * libcoff-in.h (xcoff_tdata): Add a lineno_counts field.
635 * libcoff.h: Regenerate.
636 * xcofflink.c (xcoff_link_add_symbols): Record per-symbol
637 line-number counts in the bfd's lineno_counts field.
638 Don't keep per-csect line-number counts.
639 (xcoff_sweep): Don't update per-csect line-number counts.
640 (bfd_xcoff_size_dynamic_sections): Count the number of line-number
641 entries in each output section.
642 (xcoff_link_input_bfd): Get the number of line numbers from
643 the bfd's lineno_counts field, rather than recalculating it
644 from scratch. Fix the range check when updating C_BINCL and
645 C_EINCL symbols.
646 (_bfd_xcoff_bfd_final_link): Don't count the output line numbers
647 here. Don't expect csects to have line-number counts.
648
e450936a
RS
6492009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
650
651 * libcoff-in.h (xcoff_tdata): Change debug_indices to a signed long.
652 * libcoff.h: Regenerate.
653 * xcofflink.c (xcoff_keep_symbol_p): New function, using the
654 "skip" logic from xcoff_link_input_bfd.
655 (bfd_xcoff_size_dynamic_sections): Explicitly skip dynamic
656 objects in a dynamic link, rather than checking whether csectpp
657 is null. Always allocate debug_index for other objects,
658 and always go through the loop. Update the type of debug_index
659 after the change above. Read the auxillary csect information
660 and use xcoff_keep_symbol_p to decide whether a symbol should
661 be kept. Set its debug_index to -2 if not.
662 (xcoff_link_input_bfd): Update the type of debug_index after
663 the change above and always expect it to be nonnull. Use it to
664 test whether a symbol should be stripped, rather than making the
665 decision here. Postpone all symbol creation to the second pass.
666
47dfb2ca
RS
6672009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
668
669 * xcofflink.c: (xcoff_mark_symbol): Mark the TOC section when
670 creating a descriptor.
671 (xcoff_sweep): Don't mark toc_section unless it's needed.
672 (bfd_xcoff_size_dynamic_sections): Skip the toc_section
673 when marking every bfd.
674 (xcoff_link_input_bfd): Skip all TOC anchors.
675 (xcoff_toc_section_p, xcoff_find_tc0): New functions.
676 (_bfd_xcoff_bfd_final_link): Don't set the output bfd's TOC anchor
677 to -1; call xcoff_find_tc0 instead.
678
4cc02a02
RS
6792009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
680
681 * libcoff-in.h (xcoff_section_tdata): Update commentary.
682 * libcoff.h: Regenerate.
683 * xcofflink.c (xcoff_link_add_symbols): Set the csect of XTY_ER
684 symbols to bfd_und_section_ptr or bfd_abs_section_ptr, rather than
685 the previous symbol's csect. Treat last_symndx as an inclusive value
686 and simplify its handling.
687 (xcoff_mark): Treat last_symndx as an inclusive value. Only mark
688 symbols with the right csect. Don't mark rsec when processing
d1fa68d3 689 relocations against undefined or absolute sections.
4cc02a02
RS
690 (bfd_xcoff_size_dynamic_sections): Don't check the SEC_MARK flag
691 of bfd_und_section_ptr.
692 (xcoff_link_input_bfd): Likewise.
693
858ef0ce
RS
6942009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
695
696 * coff-rs6000.c (xcoff_ppc_relocate_section): Report relocations
697 against undefined symbols if the symbol's XCOFF_WAS_UNDEFINED
698 flag is set. Assert that all undefined symbols are either
699 imported or defined by a dynamic object.
700 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
701 * xcofflink.c (xcoff_link_add_symbols): Extend function-symbol
702 handling to all relocations. Only set XCOFF_CALLED for function
703 symbols.
704 (xcoff_find_function): New function, split out from...
705 (bfd_xcoff_export_symbol) ...here.
706 (xcoff_set_import_path): New function, split out from...
707 (bfd_xcoff_import_symbol): ...here. Remove assertion for old
708 meaning of XCOFF_CALLED.
709 (xcoff_mark_symbol): If we mark an undefined and unimported
710 symbol, find some way of defining it. If the symbol is a function
711 descriptor, fill in its definition automatically. If the symbol
712 is a function, mark its descriptor and allocate room for global
713 linkage code. Otherwise mark the symbol as implicitly imported.
714 Move the code for creating function descriptors from...
d1fa68d3 715 (xcoff_build_ldsyms): ...here. Use XCOFF_WAS_UNDEFINED to
858ef0ce
RS
716 check for symbols that were implicitly defined.
717 (xcoff_mark): Don't count any dynamic relocations against
718 function symbols.
719 (bfd_xcoff_size_dynamic_sections): Save the rtld parameter
720 in the xcoff link info.
721 (xcoff_link_input_bfd): Remove handling of undefined and
722 unexported symbols.
723
12b2cce9
RS
7242009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
725
726 * coff-rs6000.c (xcoff_reloc_type_br): Make the branch absolute
727 if the target is absolute. Fix comment typo.
728 (xcoff_ppc_relocate_section): Remove FIXME.
729 * coff64-rs6000.c (xcoff64_reloc_type_br): Make the branch absolute
730 if the target is absolute.
731
0e3212ad
RS
7322009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
733
734 * xcofflink.c (xcoff_mark, xcoff_link_input_bfd): Don't copy
735 R_POS and R_NEG relocations against absolute symbols to the
736 .loader section.
737
d19d97e9
RS
7382009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
739
740 * coff64-rs6000.c (xcoff64_write_object_contents): Set the cputype
741 to 2 for bfd_mach_ppc_620.
742
e5231592
RS
7432009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
744
745 * config.bfd: Treat AIX 6+ in the same way as AIX 5.
746 * configure.in: Likewise.
747 * configure: Regenerate.
748
3516e984
L
7492009-03-13 H.J. Lu <hongjiu.lu@intel.com>
750
751 PR binutils/9945
752 * elf.c (assign_section_numbers): Generate symbol table if there
753 is any relocation in output.
754 (_bfd_elf_compute_section_file_positions): Likewise.
755
ce98a316
NC
7562009-03-13 Nick Clifton <nickc@redhat.com>
757
758 PR 9934
759 * elf-bfd.h (NUM_SHDR_ENTRIES): Cope with an empty section.
760 * elflink.c (elf_link_read_relocs_from_section): Use
761 NUM_SHDR_ENTRIES. Gracefully handle the case where there are
762 relocs but no symbol table.
763 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
764
c4fb387b
L
7652009-03-12 H.J. Lu <hongjiu.lu@intel.com>
766
767 PR ld/9938
768 * elf32-i386.c (elf_i386_check_tls_transition): Use strncmp
769 to check ___tls_get_addr.
770
771 * elf64-x86-64.c (elf64_x86_64_check_tls_transition): Use
772 strncmp to check __tls_get_addr.
773
53638231
AS
7742009-03-12 Andrew Stubbs <ams@codesourcery.com>
775
776 * dwarf2.c (read_section): Always check the offset, even when the
777 section has been read before.
778
09e8c3bf
L
7792009-03-11 H.J. Lu <hongjiu.lu@intel.com>
780
781 * elf32-i386.c (elf_i386_check_tls_transition): Fix a typo in
782 comments.
783
36e4dce6
CD
7842009-03-11 Chris Demetriou <cgd@google.com>
785
786 * bfd.c (BFD_DETERMINISTIC_OUTPUT): New flag.
787 * bfd-in2.h: Regenerate.
788 * archive.c (bfd_ar_hdr_from_filesystem): If BFD_DETERMINISTIC_OUTPUT
789 flag is set, use 0 for uid, gid, and timestamp, and use 0644 for file
790 mode.
791 (bsd_write_armap): Likewise.
792 (_bfd_archive_bsd_update_armap_timestamp): If BFD_DETERMINISTIC_OUTPUT
793 flag is set, do nothing.
794 (coff_write_armap): If BFD_DETERMINISTIC_OUTPUT flag is set, use 0
795 for timestamp.
796
9b175a76
UW
7972009-03-11 Ulrich Weigand <uweigand@de.ibm.com>
798
799 * elf32-spu.c (find_function_stack_adjust): Handle sf instruction
800 used to update stack pointer.
801
f501de17
DA
8022009-03-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
803
804 PR binutils/9921
805 * som.c (som_bfd_derive_misc_symbol_info): Set symbol type ST_ABSOLUTE
806 for unknown symbols in absolute section.
807
d11fd249
NC
8082009-03-06 Nick Clifton <nickc@redhat.com>
809
810 * po/es.po: Updated Spanish translation.
811
8cd931b7
CL
8122009-03-05 Christophe Lyon <christophe.lyon@st.com>
813
814 * elf32-arm.c (group_sections): Take next section size into
815 account before accepting to group it.
816
5fa9e92f
CL
8172009-03-05 Christophe Lyon <christophe.lyon@st.com>
818
819 * elf32-arm.c (arm_type_of_stub): Handle long branches targetting
820 PLT entries.
821 (elf32_arm_final_link_relocate): Likewise.
822
b92997d6
AM
8232009-03-05 Moritz Kroll <Moritz.Kroll@gmx.de>
824
825 PR 9923
826 * peXXigen.c (_bfd_XXi_final_link_postscript): Check h->root.type.
827
727fc41e
AM
8282009-03-04 Alan Modra <amodra@bigpond.net.au>
829
830 * reloc.c (BFD_RELOC_PPC_TLSGD, BFD_RELOC_PPC_TLSLD): New.
831 * section.c (struct bfd_section): Add has_tls_get_addr_call.
832 (BFD_FAKE_SECTION): Init new flag.
833 * ecoff.c (bfd_debug_section): Likewise.
834 * bfd-in2.h: Regenerate.
835 * libbfd.h: Regenerate.
836 * elf32-ppc.c (ppc_elf_howto_raw): Add R_PPC_TLSGD and R_PPC_TLSLD.
837 (ppc_elf_reloc_type_lookup): Handle new relocs.
838 (ppc_elf_check_relocs): Set has_tls_get_addr_call on finding such
839 without marker relocs.
840 (ppc_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs
841 if section has no old-style calls.
842 (ppc_elf_relocate_section): Set tls_mask for non-tls relocs too.
843 Don't try to optimize new-style __tls_get_addr call when handling
844 arg setup relocs. Instead do so for R_PPC_TLSGD and R_PPC_TLSLD
845 relocs.
846 * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_TLSGD, R_PPC64_TLSLD.
847 (ppc64_elf_reloc_type_lookup): Handle new relocs.
848 (ppc64_elf_check_relocs): Set has_tls_get_addr_call on finding such
849 without marker relocs.
850 (ppc64_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs
851 if section has no old-style calls. Set toc_ref for new relocs as
852 appropriate.
853 (ppc64_elf_relocate_section): Set tls_mask for non-tls relocs too.
854 Don't try to optimize new-style __tls_get_addr call when handling
855 arg setup relocs. Instead do so for R_PPC_TLSGD and R_PPC_TLSLD
856 relocs.
857
51dec227
AM
8582009-03-04 Alan Modra <amodra@bigpond.net.au>
859
860 PR 6768
861 * configure.in: Test for ld --as-needed support. Link shared
862 libbfd against libm.
863 * configure: Regenerate.
864
a1f7ca36
AM
8652009-03-03 Alan Modra <amodra@bigpond.net.au>
866
867 * Makefile.am: Run "make dep-am".
868 * Makefile.in: Regenerate.
869
c3b7224a
NC
8702009-03-02 Qinwei <qinwei@sunnorth.com.cn>
871
872 * elf32-score7.c: New file.
873 * elf32-score.h: New file.
874 * elf32-score.c: Add code to support score 7. Set score7 as the
875 default.
876 * cpu-score.c: Add score7 architecure.
877 (compatibile): New function.
878 * Makefile.am: Add rules for building elf32-score7 object.
879 * Makefile.in: Regenerate.
880 * configure.in: Add elf32-score7 object to score vectors.
881 * configure: Regenerate.
882 * reloc.c: Add score7 relocs.
883 * archures.c: Add score3 and score7 machine numbers.
884 * bfd-in2.h: Regenerate.
885 * libbfd.h: Regenerate.
886
58e24671
RW
8872009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
888
889 * configure: Regenerate.
890
5887528b
DA
8912009-03-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
892
d45b7d74
DA
893 * elf32-hppa.c (hppa32_elf_local_refcounts): New function.
894 (elf32_hppa_check_relocs): Use it.
895
5887528b
DA
896 * elf_hppa_add_symbol_hook (elf_hppa_add_symbol_hook): Move to
897 elf64-hppa.c.
898 (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
899 (elf_hppa_remark_useless_dynamic_symbols): Likewise.
900 (elf_hppa_is_dynamic_loader_symbol): Likewise.
901 (elf_hppa_record_segment_addrs): Likewise.
902 (elf_hppa_final_link): Likewise.
903 (elf_hppa_relocate_insn): Likewise.
904 (elf_hppa_final_link_relocate): Likewise.
905 (elf64_hppa_relocate_section): Likewise.
906 * elf64-hppa.c: Insert above.
907
a03bd320
DA
9082009-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
909
910 * elf-hppa.h (elf_hppa_final_link): Use elf_hppa_final_link.
911 (elf_hppa_final_link_relocate ): Rewrite eliminating dynamic hash table.
912 (elf_hppa_relocate_section): Likewise.
913 * elf64-hppa.c (struct elf64_hppa_link_hash_entry): Change to derive
914 from struct elf_link_hash_entry. Add count field.
915 (struct elf64_hppa_dyn_hash_table): Delete.
916 (struct elf64_hppa_link_hash_table): Delete dyn_hash_table field.
917 (elf64_hppa_hash_table): Rename to hppa_link_hash_table.
918 (hppa_elf_hash_entry, eh_name): Define.
919 (elf64_hppa_new_dyn_hash_entry): Delete.
920 (elf64_hppa_dyn_hash_lookup): Delete.
921 (elf64_hppa_dyn_hash_traverse): Delete.
922 (get_dyn_name): Delete.
923 (elf64_hppa_finalize_opd): Use struct elf_link_hash_entry * instead
924 of struct elf64_hppa_dyn_hash_entry *.
925 (elf64_hppa_finalize_dlt, llocate_global_data_dlt,
926 allocate_global_data_plt, allocate_global_data_stub,
927 allocate_global_data_opd, count_dyn_reloc, allocate_dynrel_entries):
928 Likewise.
929 (hppa64_link_hash_newfunc): New.
930 (elf64_hppa_hash_table_create): Rework.
931 (count_dyn_reloc): Likewise.
932 (hppa64_elf_local_refcounts): New.
933 (elf64_hppa_check_relocs): Rework using standard technique for recording
934 local DLT, PLT and OPD reference counts.
935 (elf64_hppa_dynamic_symbol_p): Revise using "eh" for struct
936 elf_link_hash_entry *.
937 (elf64_hppa_mark_exported_functions, allocate_global_data_dlt,
938 allocate_global_data_plt, allocate_global_data_stub,
939 allocate_global_data_opd, allocate_dynrel_entries,
940 elf64_hppa_adjust_dynamic_symbol,
941 elf64_hppa_mark_milli_and_exported_functions): Likewise.
942 (elf64_hppa_create_dynamic_sections, elf64_hppa_size_dynamic_sections):
943 Use hppa_link_hash_table. Rework.
944 (elf64_hppa_link_output_symbol_hook): Rework.
945 (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd,
946 elf64_hppa_finalize_dlt, elf64_hppa_finalize_dynreloc,
947 elf64_hppa_finish_dynamic_sections): Likewise.
948
ebe24dd4
CL
9492009-02-26 Christophe Lyon <christophe.lyon@st.com>
950
951 * elf32-arm.c (stub_reloc_type): Removed.
952 (insn_sequence): Renamed reloc_type field to r_type.
953 (elf32_arm_stub_long_branch_v4t_arm_thumb_pic): New stub.
954 (elf32_arm_stub_long_branch_v4t_thumb_arm_pic): Likewise.
955 (elf32_arm_stub_long_branch_thumb_only_pic): Likewise.
956 (elf32_arm_stub_type): Add new enum entries for the new stubs.
957 (arm_stub_is_thumb): Catch new stubs.
958 (arm_type_of_stub): Handle new stubs.
959 (arm_size_one_stub): Use ARRAY_SIZE. Handle new stubs.
960 (bfd_elf32_arm_process_before_allocation): Remove useless
961 condition.
962
b9d678e0
L
9632009-02-25 H.J. Lu <hongjiu.lu@intel.com>
964
965 * elf.c (elf_find_function): Use is_function_type to check
966 function symbol.
967
56fb3749
SA
9682009-02-24 Sterling Augustine <sterling@jaw.hq.tensilica.com>
969
970 * xtensa-modules.c: Revert to previous version 1.11 due
971 to inadvertant commit.
972
658ff993
SA
9732009-02-24 Sterling Augustine <sterling@tensilica.com>
974
975 * elf32-xtensa.c (text_action_add): Separate test for action
976 type. Break if saved action is ta_widen_insn at same offset.
977
cf3eccff
DJ
9782009-02-24 Daniel Jacobowitz <dan@codesourcery.com>
979
980 * elf32-arm.c (elf32_arm_stub_long_branch_any_any_pic): Rename
981 to elf32_arm_stub_long_branch_any_arm_pic.
982 (elf32_arm_stub_long_branch_any_thumb_pic): New.
983 (enum elf32_arm_stub_type, arm_type_of_stub)
984 (arm_size_one_stub): Handle any to ARM PIC and any to Thumb PIC
985 separately.
986
07d72278
DJ
9872009-02-24 Joseph Myers <joseph@codesourcery.com>
988
989 * elf32-arm.c (PREV_SEC): Update comment.
990 (group_sections): Rename argument to stubs_always_after_branch.
991 Reverse the list and place stubs at the end of input sections.
992 Undefine NEXT_SEC.
993 (elf32_arm_size_stubs): Update to use stubs_always_after_branch.
994
4e31c731
DJ
9952009-02-23 Daniel Jacobowitz <dan@codesourcery.com>
996
997 * elf32-arm.c (arm_build_one_stub): Initialize stub_reloc_offset.
998 Fix formatting.
999 (arm_size_one_stub): Remove unnecessary break.
1000 (arm_map_one_stub): Fix formatting. Return after BFD_FAIL.
1001
10022009-02-23 Christophe Lyon <christophe.lyon@st.com>
461a49ca
DJ
1003
1004 * elf32-arm.c (stub_insn_type): New type.
1005 (stub_reloc_type): Likewise.
1006 (insn_sequence): Likewise.
1007 (elf32_arm_stub_long_branch_any_any): Encode using insn_sequence.
1008 (elf32_arm_stub_long_branch_v4t_arm_thumb): Likewise.
1009 (elf32_arm_stub_long_branch_thumb_only): Likewise.
1010 (elf32_arm_stub_long_branch_v4t_thumb_arm): Likewise.
1011 (elf32_arm_stub_short_branch_v4t_thumb_arm): Likewise.
1012 (elf32_arm_stub_long_branch_any_any_pic): Likewise.
1013 (elf32_arm_stub_hash_entry): Add new helper fields.
1014 (stub_hash_newfunc): Initialize these new fields.
1015 (arm_build_one_stub): Encode Arm and Thumb instructions separately
1016 to take endianness into account.
1017 (arm_size_one_stub): Compute size of stubs using insn_sequence.
1018 (arm_map_one_stub): Code is now more generic, thanks to
1019 insn_sequence.
1020
c2b4a39d
CL
10212009-02-23 Christophe Lyon <christophe.lyon@st.com>
1022
1023 * elf32-arm.c (elf32_arm_stub_long_branch_thumb_only): Fix stub
1024 code.
1025 (elf32_arm_stub_long_branch_v4t_thumb_arm): Likewise.
1026 (arm_type_of_stub): Use Thumb-only long branch stub (non-PIC) when
1027 BLX is not available. Fix typo in warning message. Add comments
1028 and improve formatting.
1029 (arm_build_one_stub): Adjust to new
1030 elf32_arm_stub_long_branch_v4t_thumb_arm stub.
1031 (arm_map_one_stub): Likewise.
1032
0c376465 10332009-02-23 Tristan Gingold <gingold@adacore.com>
a60a89d6
TG
1034 Eric Botcazou <ebotcazou@adacore.com>
1035 Douglas B Rupp <rupp@gnat.com>
0c376465
TG
1036
1037 * vms.h: Update copyright year, fix comments, reorder declarations.
1038 (_bfd_save_vms_section): Remove the prototype.
1039 (EGPS_S_V_NO_SHIFT): New constant.
1040 (bfd_vms_set_section_flags): New prototype.
1041 (EGPS_S_B_ALIGN, EGPS_S_W_FLAGS, EGPS_S_L_ALLOC, EGPS_S_B_NAMLNG): New
1042 constants.
1043 (EGSY_S_W_FLAGS): Ditto.
1044 (EGSY_S_V_QUAD_VAL): Ditto.
1045 (ESDF_S_L_VALUE, ESDF_S_L_PSINDX, ESDF_S_B_NAMLNG): Ditto.
1046 (EGST_S_W_FLAGS, EGST_S_Q_LP_1, EGST_S_Q_LP_2, EGST_S_L_PSINDX,
1047 EGST_S_B_NAMLNG): Ditto.
1048 (ESRF_S_B_NAMLNG): Ditto.
1049 (ETIR_S_C_HEADER_SIZE): Ditto.
1050 (EGPS_S_V_ALLOC_64BIT): Ditto.
1051 (DST_S_C_EPILOG): Ditto.
1052 (DST_S_C_SRC_SETLNUM_L, DST_S_C_SRC_SETLNUM_W) : Ditto.
1053 (DST_S_C_SRC_INCRLNUM_B): Ditto.
1054 (DST_S_B_PCLINE_UNSBYTE, DST_S_W_PCLINE_UNSWORD): Ditto.
1055 (DST_S_L_PCLINE_UNSLONG): Ditto.
1056 (DST_S_B_MODBEG_NAME, DST_S_L_RTNBEG_ADDRESS) : Ditto
1057 (DST_S_B_RTNBEG_NAME, DST_S_L_RTNEND_SIZE): Ditto
1058 (DST_S_C_SOURCE_HEADER_SIZE): Ditto.
1059 (DST_S_B_SRC_DF_LENGTH, DST_S_W_SRC_DF_FILEID): Ditto.
1060 (DST_S_B_SRC_DF_FILENAME, DST_S_B_SRC_UNSBYTE): Ditto.
1061 (DST_S_B_SRC_UNSBYTE): Ditto.
1062 (DST_S_W_SRC_UNSWORD, DST_S_L_SRC_UNSLONG): Ditto.
1063 Add prototypes.
1064 (vms_section, vms_reloc): Remove types.
1065 (hdr_struc): Replaced by ...
1066 (hdr_struct): ... new type.
1067 (EMH_S_W_HDRTYP, EMH_S_B_STRLVL, EMH_S_L_ARCH1): New constants.
1068 (EMH_S_L_ARCH2, EMH_S_L_RECSIZ, EMH_S_B_NAMLNG): Ditto.
1069 (EMH_DATE_LENGTH): Ditto.
1070 (eom_struc): Replaced by ...
1071 (eom_struct): ... new type.
1072 (EEOM_S_L_TOTAL_LPS, EEOM_S_W_COMCOD, EEOM_S_B_TFRFLG): New constants.
1073 (EEOM_S_L_PSINDX, EEOM_S_L_TFRADR): Ditto.
1074 (EIHD_S_K_MAJORID, EIHD_S_K_MINORID, EIHD_S_K_EXE): Ditto.
1075 (EIHD_S_L_SIZE, EIHD_S_L_ISDOFF, EIHD_S_L_SYMDBGOFF): Ditto.
1076 (EIHD_S_Q_SYMVVA, EIHD_S_L_IMGTYPE): Ditto.
1077 (EISD_S_L_EISDSIZE, EISD_S_L_SECSIZE, EISD_S_Q_VIR_ADDR): Ditto.
1078 (EISD_S_L_FLAGS, EISD_S_L_VBN, EISD_S_R_CONTROL): Ditto.
1079 (EISD_S_L_IDENT, EISD_S_T_GBLNAM): Ditto.
1080 (EISD_S_M_GBL, EISD_S_M_CRF, EISD_S_M_DZRO, EISD_S_M_WRT): Ditto.
1081 (EISD_S_M_INITALCODE, EISD_S_M_BASED, EISD_S_M_FIXUPVEC): Ditto.
1082 (EISD_S_M_RESIDENT, EISD_S_M_VECTOR, EISD_S_M_PROTECT): Ditto.
1083 (EISD_S_M_LASTCLU, EISD_S_M_EXE, EISD_S_M_NONSHRADR): Ditto.
1084 (EISD_S_M_QUAD_LENGTH, EISD_S_M_ALLOC_64BIT): Ditto.
1085 (EIHS_S_L_DSTVBN, EIHS_S_L_DSTSIZE, EIHS_S_L_GSTVBN): Ditto.
1086 (EIHS_S_L_GSTSIZE, EIHS_S_L_DMTVBN, EIHS_S_L_DMTBYTES): Ditto.
1087 (DBG_S_L_DMT_MODBEG, DBG_S_L_DST_SIZE): Ditto.
1088 (DBG_S_W_DMT_PSECT_COUNT, DBG_S_C_DMT_HEADER_SIZE): Ditto.
1089 (DBG_S_L_DMT_PSECT_START, DBG_S_L_DMT_PSECT_LENGTH)
1090 (DBG_S_C_DMT_PSECT_SIZE): Ditto.
1091 (enum file_type_enum): New type.
1092 (struct location_struct): Removed.
1093 (struct fileinfo, struct srecinfo, struct lineinfo): New types.
1094 (struct funcinfo, struct module): Ditto.
1095 (struct vms_private_data_struct): Update fields.
1096 (struct vms_section_data_struct): New type.
1097
1098 * vms.c: Update copyright year, fix comments,
1099 Fix includes for DECC, add prototypes.
1100 (vms_initialize): Use bfd_alloc instead of bfd_zalloc and remove
1101 some initializers.
1102 Use flavour to set is_vax, location_stack is removed.
1103 (struct pair): Declare.
1104 (fill_section_ptr): Initialize variables at declaration.
1105 Add guard to set SECTION_SYM flag, handlde und section.
1106 (vms_fixup_sections): Use struct pair for fill_section_ptr argument.
1107 (_bfd_vms_slurp_object_records): New function, replaces previous
1108 vms_object_p.
1109 (vms_slurp_module): New function.
1110 (vms_slurp_image): Ditto.
1111 (vms_object_p): Complete rewrite.
1112 (vms_mkobject): Use is_vax field to slect architecture.
1113 (free_reloc_stream): New function.
1114 (vms_convert_to_var): Ditto.
1115 (vms_convert_to_var_1): Ditto.
1116 (vms_convert_to_var_unix_filename): Ditto.
1117 (vms_close_and_cleanup): Call free_reloc_stream, convert file to
1118 VAR format on VMS.
1119 (vms_new_section_hook): Set alignment to 0, allocate private data.
1120 (vms_get_section_contents): Load content.
1121 (vms_get_symbol_info): Handle undefined section.
1122 (vms_find_nearest_line): Handle.
1123 (alloc_reloc_stream): New function.
1124 (vms_slurp_reloc_table): Ditto.
1125 (vms_get_reloc_upper_bound): Make it real.
1126 (vms_canonicalize_reloc): Do the real work.
1127 (alpha_howto_table): Add ALPHA_R_NOP, ALPHA_R_BSR, ALPHA_R_LDA,
1128 ALPHA_R_BOH.
1129 (vms_bfd_reloc_type_lookup): Handle NOP, BSR, LDA and BOH.
1130 (vms_set_arch_mach): Check arch.
1131 (vms_set_section_contents): Copy the content after allocation.
1132 (vms_alpha_vec): Update object flags.
1133
1134 * vms-tir.c: Update copyright year, fix comments,
1135 add prototypes for new functions.
1136 (dst_define_location): New function.
1137 (dst_restore_location): New function.
1138 (dst_retrieve_location): New function.
1139 (dst_check_allocation): New function.
1140 (image_dump): Call dst_check_allocation.
1141 (image_write_b): Ditto.
1142 (image_write_w): Ditto.
1143 (image_write_l): Ditto.
1144 (image_write_q): Ditto.
1145 (cmd_name): Handle STA_LW, STA_QW, STO_OFF, STO_IMM, STO_IMMR, STO_LW,
1146 STO_QW, OPR_ADD, CTL_SETRB, STC_LP_PSB, CTL_DFLOC, CTL_STLOC,
1147 CTL_STKDL.
1148 Call error handler instead of abort if name is not known.
1149 (etir_sta): Add quarter_relocs argument and set it.
1150 Fix cast.
1151 (etir_sto): Ditto.
1152 (etir_opr): Ditto, return FALSE in case of error.
1153 (etir_ctl): Add quarter_relocs argument and set it, fix cast.
1154 Fix CTL_DFLOC, CTL_STLOC, CTL_STKDL.
1155 (etir_stc): Add quarter_relocs argument and set it, fix cast.
1156 Fix STC_LP, STC_LP_PSB, STC_GBL and STC_CGA.
1157 Handle STC_LP_PSB, STC_BSR_GBL, STC_LDA_GBL, STC_BOH_GBL.
1158 Move STC_NOP_PS, STC_BSR_PS, STC_LDA_PS, STC_BOH_PS, STC_NBH_PS.
1159 Return FALSE in case of error.
1160 (tir_sta): Change sign of psect.
1161 (tir_ctl): Ditto.
1162 (tir_cmd): Fix cast. Makes tir_table static const.
1163 (etir_cmd): Add quarter_relocs argument, makes etir_table const,
1164 add argument to explain.
1165 (analyze_etir): Initialize maxptr, add quarter_relocs
1166 declaration, move some declarations into inner scopes.
1167 Handle quarter_relocs and STO_IMM.
1168 (_bfd_vms_slurp_tir): Use constant instead of hard-coded values.
1169 (_bfd_vms_slurp_relocs): New function.
1170 (_bfd_vms_decode_relocs): New function.
1171 (sto_imm): Rewritten.
1172 (start_first_etbt_record): New function.
1173 (start_another_etbt_record): Ditto.
1174 (etir_output_check): Ditto.
1175 (defer_reloc_p): Ditto.
1176 (_bfd_vms_write_tir): Remove nextoffset, convert a while-loop to
1177 a for-loop. Correctly deals with contents, deals with .vmsdebug,
1178 rewritte relocations handling.
1179 (_bfd_vms_write_tbt): Removed.
1180 (_bfd_vms_write_dbg): Ditto.
1181
1182 * vms-misc.c: Update copyright year, Fix comments.
1183 (_bfd_vms_get_header_values): Use 'size' instead of 'length'.
1184 (maybe_adjust_record_pointer_for_object): New function.
1185 (_bfd_vms_get_first_record): New function, replaces ...
1186 (_bfd_vms_get_record): .. removed.
1187 (_bfd_vms_get_object_record): New function.
1188 (_bfd_vms_get_object_record): New function.
1189 (vms_get_remaining_object_record): New function, replaces ...
1190 (_bfd_vms_get_next_record): ... removed.
1191 (add_new_contents): Removed.
1192 (_bfd_save_vms_section): Removed.
1193 (_bfd_get_vms_section): Removed.
1194 (_bfd_vms_output_flush): Write in VAR format.
1195 (new_symbol): Don't make UND section.
1196
1197 * vms-hdr.c: Update copyright year, update list of record handled.
1198 (_bfd_vms_slurp_hdr): rec_length renamed to rec_size.
1199 (_bfd_vms_write_hdr): Strip vms and unix patches,
1200 add comments, truncate module name at 31 characters,
1201 use constants instead of hard-coded value,
1202 write BFD version instead of a fixed string.
1203 (_bfd_vms_slurp_ihd): New function.
1204 (_bfd_vms_slurp_isd): Ditto.
1205 (_bfd_vms_slurp_ihs): Ditto.
1206 (new_module): Ditto.
1207 (parse_module): Ditto
1208 (build_module_list): Ditto.
1209 (module_find_nearest_line): Ditto.
1210 (_bfd_vms_find_nearest_dst_line): Ditto.
1211 (vms_slurp_debug): Ditto.
1212 (_bfd_vms_slurp_dbg): Ditto.
1213 (_bfd_vms_slurp_tbt): Ditto.
1214 (_bfd_vms_write_dbg): Ditto.
1215 (_bfd_vms_write_tbt): Ditto.
1216
1217 * vms-gsd.c: Update copyright year, update list of records handled.
1218 (EVAX_LITERALS_NAME): New macro.
1219 (evax_section_flags): Add an entry for EVAX_LITERALS_NAME.
1220 (gpsflagdesc, gsyflagdesc): Moved out of _bfd_vms_slurp_gsd.
1221 (register_universal_symbol): New function and prototype.
1222 (_bfd_vms_slurp_gsd): Fix indentations and casts,
1223 improve debug messages,
1224 use constants instead of hard-coded value,
1225 fix missing endianness conversion,
1226 handle global symbol (SYMG).
1227 (bfd_vms_set_section_flags): New function.
1228 (_bfd_vms_write_gsd): Don't write .vmsdebug section,
1229 handle section literals,
1230 fix indentation,
1231 handle section bfd and vms flags,
1232 don't output LIB$INITIALIZE symbol,
1233 fix handling of weak symbols,
1234 fix evax vs vax procedure descriptor,
1235 handle absolute symbols.
1236
1237 * reloc.c (BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_BSR,
1238 BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BOH): New relocations.
1239
1240 * makefile.vms (DEFS): Fix flags for VMS.
1241
1242 * bfdio.c (real_fopen): Handle multiple VMS fopen attributes.
1243
1244 * bfd-in2.h: Regenerated.
1245 * libbfd.h: Regenerated.
1246
47149254
CC
12472009-02-20 Cary Coutant <ccoutant@google.com>
1248
1249 * vmsutil.c (vms_file_stats_name): Fix incorrect use of st_mtime
1250 in struct stat.
1251
6b1cecf3
DK
12522009-18-02 Dave Korn <dave.korn.cygwin@gmail.com>
1253
1254 PR gas/7059
1255 * coffcode.h (coff_write_object_contents): Don't let the string
1256 table offset overflow the s_name field when using long section names.
1257
88183869
DK
12582009-18-02 Dave Korn <dave.korn.cygwin@gmail.com>
1259
1260 * coff-alpha.c (alpha_ecoff_backend_data): Initialise fields which
1261 control long section name handling with ECOFF_NO_LONG_SECTION_NAMES.
1262 * coff-mips.c (mips_ecoff_backend_data): Likewise.
1263 * coff-rs6000.c (bfd_xcoff_backend_data): Initialise fields which
1264 control long section name handling with XCOFF_NO_LONG_SECTION_NAMES.
1265 (bfd_pmac_xcoff_backend_data): Likewise.
1266 * coff64-rs6000.c (bfd_xcoff_backend_data): Likewise.
1267 (bfd_xcoff_aix5_backend_data): Likewise.
1268 (xcoff64_write_object_contents): Delete unused long_section_names
1269 local variable.
1270 * coff-sh.c (bfd_coff_small_swap_table): Initialise long section
1271 name members using COFF_DEFAULT_LONG_SECTION_NAMES and make entire
1272 struct non-const.
1273 * coffcode.h (documentation): Update to describe long section names.
1274 (COFFLONGSECTIONCATHELPER): New helper macro.
1275 (BLANKOR1TOODD): Likewise.
1276 (COFF_ENABLE_LONG_SECTION_NAMES): Likewise.
1277 (COFF_LONG_SECTION_NAMES_SETTER): Likewise.
1278 (COFF_DEFAULT_LONG_SECTION_NAMES): Likewise.
1279 (bfd_coff_set_long_section_names_allowed): New function.
1280 (bfd_coff_set_long_section_names_disallowed): Likewise.
1281 (struct bfd_coff_backend_data): Add new backend hook function
1282 pointer _bfd_coff_set_long_section_names.
1283 (bfd_coff_set_long_section_names): New backend hook.
1284 (coff_write_object_contents): Only generate long section names if
1285 bfd_coff_long_section_names() indicates they are currently enabled.
1286 (bfd_coff_std_swap_table): Make non-const, and initialise long
1287 section name fields using COFF_DEFAULT_LONG_SECTION_NAMES.
1288 (ticoff0_swap_table): Likewise to both.
1289 (ticoff1_swap_table): Again, likewise to both.
1290 * coffgen.c (make_a_section_from_file): Allow long section names
1291 as inputs even if not currently allowed for outputs.
1292 * ecoff.c (_bfd_ecoff_no_long_sections): New function.
1293 * efi-app-ia32.c (COFF_LONG_SECTION_NAMES): Define to 0, not blank.
1294 * efi-app-ia64.c (COFF_LONG_SECTION_NAMES): Likewise.
1295 * efi-app-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1296 * efi-bsdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise.
1297 * efi-bsdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise.
1298 * efi-bsdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1299 * efi-rtdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise.
1300 * efi-rtdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise.
1301 * efi-rtdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1302 * pei-arm.c (COFF_LONG_SECTION_NAMES): Likewise.
1303 * pei-i386.c (COFF_LONG_SECTION_NAMES): Likewise.
1304 * pei-mcore.c (COFF_LONG_SECTION_NAMES): Likewise.
1305 * pei-mips.c (COFF_LONG_SECTION_NAMES): Likewise.
1306 * pei-ppc.c (COFF_LONG_SECTION_NAMES): Likewise.
1307 * pei-sh.c (COFF_LONG_SECTION_NAMES): Likewise.
1308 * pei-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1309 * libcoff-in.h: Update copyright year to cause updated copyright
1310 year in generated libcoff.h, and fix typo.
1311 * libcoff.h: Regenerated.
1312 * libecoff.h (ECOFF_NO_LONG_SECTION_NAMES): New macro.
1313 (_bfd_ecoff_no_long_sections): Add prototype.
1314 * libxcoff.h (XCOFF_NO_LONG_SECTION_NAMES): New macro.
1315 * pe-mips.c (COFF_LONG_SECTION_NAMES): Define empty if not already
1316 defined by an including .c file.
1317 * ticoff.h (ticoff0_swap_table): Make non-const, and initialise
1318 long section name fields using COFF_DEFAULT_LONG_SECTION_NAMES.
1319 (ticoff1_swap_table): Likewise to both.
1320
90d8a22c
CL
13212009-02-18 Christophe Lyon <christophe.lyon@st.com>
1322
1323 * elf32-arm.c (arm_build_one_stub): Fix relocation target for pic
1324 stub. Catch default case error.
1325 (arm_map_one_stub): Add missing Thumb mapping symbol.
1326
12123067
NC
13272009-02-18 Bjoern Haase <bjoern.m.haase@web.de>
1328
1329 PR 9841
1330 * elf32-avr.c: Handle case where no local symbos exist correctly.
1331
fea2b4d6
CL
13322009-02-16 Christophe Lyon <christophe.lyon@st.com>
1333
1334 bfd/
1335 * elf32-arm.c (arm_long_branch_stub,
1336 arm_thumb_v4t_long_branch_stub,
1337 arm_thumb_thumb_long_branch_stub,
1338 arm_thumb_arm_v4t_long_branch_stub,
1339 arm_thumb_arm_v4t_short_branch_stub,
1340 arm_pic_long_branch_stub):
1341 Renamed to elf32_arm_stub_long_branch_any_any,
1342 elf32_arm_stub_long_branch_v4t_arm_thumb,
1343 elf32_arm_stub_long_branch_thumb_only,
1344 elf32_arm_stub_long_branch_v4t_thumb_arm,
1345 elf32_arm_stub_short_branch_v4t_thumb_arm,
1346 elf32_arm_stub_long_branch_any_any_pic.
1347 (arm_stub_long_branch, arm_thumb_v4t_stub_long_branch,
1348 arm_thumb_thumb_stub_long_branch,
1349 arm_thumb_arm_v4t_stub_long_branch,
1350 arm_thumb_arm_v4t_stub_short_branch, arm_stub_pic_long_branch):
1351 Renamed to arm_stub_long_branch_any_any,
1352 arm_stub_long_branch_v4t_arm_thumb,
1353 arm_stub_long_branch_thumb_only,
1354 arm_stub_long_branch_v4t_thumb_arm,
1355 arm_stub_short_branch_v4t_thumb_arm,
1356 arm_stub_long_branch_any_any_pic.
1357
13e0a874
DA
13582009-02-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1359
1360 * elf-hppa.h (elf_hppa_final_link_relocate): Correct addend value used
1361 in branch offset check.
1362
3a71aa26
AM
13632009-02-15 Alan Modra <amodra@bigpond.net.au>
1364
1365 * elf64-ppc.c (struct _ppc64_elf_section_data): Delete t_symndx,
1366 add toc.symndx and toc.add.
1367 (ppc64_elf_check_relocs): Don't set htab->tls_get_addr here.
1368 Set up toc.add.
1369 (get_tls_mask): Add toc_addend param, set from toc.add. Adjust all
1370 callers.
1371 (ppc64_elf_tls_setup): Set htab->tls_get_addr and tls_get_addr_fd.
1372 (branch_reloc_hash_match): New function, extracted from..
1373 (ppc64_elf_tls_optimize): ..here.
1374 (ppc64_elf_relocate_section): Properly set addends when optimizing
1375 tls sequences. Avoid unnecessary reading and writing of insns.
1376 Only redo reloc when symbol changed. Bypass symbol checks when
1377 using tlsld_got.
1378 * elf32-ppc.c (ppc_elf_tls_setup): Correct comment.
1379 (branch_reloc_hash_match): New function, extracted from..
1380 (ppc_elf_tls_optimize): ..here.
1381 (ppc_elf_relocate_section): Avoid unnecessary reading of insns.
1382 Don't clear addend on zapped __tls_get_addr reloc.
1383
2c2b4ed4
NC
13842009-02-12 Nick Clifton <nickc@redhat.com>
1385
1386 PR 9827
1387 * elflink.c (bfd_elf_final_link): When counting the relocations,
1388 if the header size has not been set yet then assume that it will
1389 match the output section's reloc type.
1390
453f5985
NS
13912009-02-12 Nathan Sidwell <nathan@codesourcery.com>
1392
1393 * elf32-mips.c (mips_elf_final_gp): Don't add 0x4000 offset for
1394 relocatable link.
1395
3209bffa
AM
13962009-02-09 Alan Modra <amodra@bigpond.net.au>
1397
1398 * elf32-spu.c (spu_elf_find_overlays): Call bfd_set_error on errors.
1399 (find_function): Likewise.
1400 (pasted_function): Don't error if no prior function found.
1401 (discover_functions): Revert 2008-12-10 change. Extend first
1402 function range to start of section.
1403
813c8a3c
DA
14042009-02-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1405
1406 * elf64-hppa.c: Remove PARAMS macro. Replace PTR with void *. Convert
1407 functions to C90.
1408 * elf64-hppa.h: Likewise.
1409
2d0f9ad9
JM
14102009-02-06 Joseph Myers <joseph@codesourcery.com>
1411
1412 * elfxx-mips.c (_bfd_mips_elf_section_processing): Remove special
1413 .sbss handling.
1414
50e00962
AM
14152009-02-04 Alan Modra <amodra@bigpond.net.au>
1416
1417 * elf32-spu.c (spu_elf_build_stubs): Define __icache_neg_log2_linesize.
1418 Define __icache_ptr_handler*, not __icache_ptr___icache_bi_handler*.
1419
52b6b6b9
JM
14202009-02-03 Sandip Matte <sandip@rmicorp.com>
1421
1422 * aoutx.h (NAME (aout, machine_type)): Handle bfd_mach_mips_xlr.
1423 * archures.c (bfd_mach_mips_xlr): Define.
1424 * bfd-in2.h: Regenerate.
1425 * cpu-mips.c (I_xlr): Define.
1426 (arch_info_struct): Add XLR entry.
1427 * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_XLR.
1428 (mips_set_isa_flags): Handle bfd_mach_mips_xlr
1429 (mips_mach_extensions): Add XLR entry.
1430
654c3c9f
EW
14312009-02-03 Eric B. Weddington <eric.weddington@atmel.com>
1432
1433 * elf32-avr.c (avr_final_link_relocate): Allow avr25 to wraparound.
1434
31dd3154
JM
14352009-02-03 Carlos O'Donell <carlos@codesourcery.com>
1436
1437 * configure.in: AC_SUBST pdfdir.
d1fa68d3 1438 * Makefile.am: Add install-pdf, install-pdf-am
31dd3154
JM
1439 and install-pdf-recursive targets. Define pdfdir.
1440 * doc/Makefile.am: Define pdf__strip_dir. Add
1441 install-pdf and install-pdf-am targets.
d1fa68d3 1442 * po/Make-in: Add install-pdf target.
31dd3154
JM
1443 * configure: Regenerate.
1444 * Makefile.in: Regenerate
1445 * doc/Makefile.in: Regenerate.
1446
cf869cce
NC
14472009-02-03 Maxim Kuvyrkov <maxim@codesourcery.com>
1448
1449 * bfd-in2.h: Regenerate.
1450 * elf32-m68k.c: Handle 2-slot GOT entries. Rename variables and
1451 fields from n_entries to n_slots where appropriate, update comments.
1452 (HOWTO): Add TLS relocations.
1453 (reloc_map): Map BFD_RELOC_68K_TLS_* to R_68K_TLS_*.
1454 (enum elf_m68k_got_offset_size): New enum.
1455 (struct elf_m68k_got_entry.type): Move field to ...
1456 (struct elf_m68k_got_entry_key): ... here. Update all uses.
1457 (elf_m68k_reloc_got_type, elf_m68k_reloc_got_offset_size): New static
1458 functions.
1459 (elf_m68k_reloc_got_n_entries, elf_m68k_reloc_tls_p): New static
1460 functions.
1461 (struct elf_m68k_got): merge rel_8o_n_entries and rel_8o_16o_n_entries
1462 fields into n_entries array. Update comments.
1463 (elf_m68k_init_got): Simplify, update all uses.
1464 (elf_m68k_init_got_entry_key): Handle R_68K_TLS_LDM32 reloc, update.
1465 (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT): Adjust to handle 2-slot
1466 GOT entries; update name, update all uses.
1467 (ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): Ditto.
1468 (elf_m68k_get_got_entry): Update.
1469 (elf_m68k_update_got_entry_type): Rewrite to handle TLS GOT entries,
1470 simplify.
1471 (elf_m68k_remove_got_entry_type): Simplify.
1472 (elf_m68k_add_entry_to_got, elf_m68k_can_merge_gots_1): Update.
1473 (elf_m68k_can_merge_gots): Update.
1474 (elf_m68k_merge_gots_1, elf_m68k_merge_gots): Update.
1475 (struct elf_m68k_finalize_got_offsets_arg): Rewrite to handle 2-slot
1476 GOT entries, simplify.
1477 (elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Same.
1478 (struct elf_m68k_partition_multi_got_arg): Add slots_relas_diff
1479 field, remove obsoleted local_n_entries field.
1480 (elf_m68k_partition_multi_got_2): New static function.
1481 (elf_m68k_partition_multi_got_1, elf_m68k_partition_multi_got): Use it;
1482 update.
1483 (elf_m68k_remove_got_entry_type): Update.
1484 (elf_m68k_install_rela, dtpoff_base, tpoff): New static functions.
d1fa68d3 1485 (elf_m68k_check_relocs): Handle TLS relocations. Remove unnecessary
cf869cce
NC
1486 update of sgot->size and srelgot->size.
1487 (elf_m68k_gc_sweep_hook): Update.
1488 (elf_m68k_install_rela, dtpoff_base, tpoff): New static functions.
1489 (elf_m68k_relocate_section, elf_m68k_finish_dynamic_symbol): Handle
1490 TLS relocations.
1491 * reloc.c (BFD_RELOC_68K_TLS_*): Declare TLS relocations.
1492 * libbfd.h (bfd_reloc_code_real_names): Add BFD_RELOC_68K_TLS_*.
1493
c1a0a41f
DD
14942009-02-02 DJ Delorie <dj@redhat.com>
1495
1496 * elf32-mep.c (config_names): Regenerate configuration.
1497
72a80a16
AM
14982009-02-02 Alan Modra <amodra@bigpond.net.au>
1499
1500 * elf-bfd.h (bfd_elf_get_str_section): Don't declare.
1501 (bfd_elf_find_section, _sh_elf_set_mach_from_flags): Likewise.
1502 * elf.c (bfd_elf_get_str_section): Make static.
1503 (bfd_elf_find_section): Delete.
1504 * libbfd.h: Regenerate.
1505
273f4430
JK
15062009-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
1507
1508 * elf-eh-frame.c (REQUIRE_CLEARED_RELOCS) Remove.
1509 (_bfd_elf_parse_eh_frame): Do not check relocations for removed FDEs.
1510
010e5ae2
AM
15112009-01-31 Alan Modra <amodra@bigpond.net.au>
1512
1513 * elflink.c (on_needed_list): New function.
1514 (elf_link_add_object_symbols): Link in --as-needed libs if they
1515 satisfy undefined symbols in other libs.
1516
33a7ffc2
JM
15172009-01-30 Julian Brown <julian@codesourcery.com>
1518
1519 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Skip BFDs with
1520 EXEC_P or DYNAMIC flags, and skip sections which are being linked
1521 with --just-symbols (-R).
1522
13d72a14
AN
15232009-01-29 Adam Nemet <anemet@caviumnetworks.com>
1524
1525 * dwarf2.c (read_rangelist): Use read_address to read low_pc and
1526 high_pc in order to properly sign-extend VMAs.
1527
d334575b 15282009-01-29 Daniel Jacobowitz <dan@codesourcery.com>
d1fa68d3
AS
1529 Mark Shinwell <shinwell@codesourcery.com>
1530 Catherine Moore <clm@codesourcery.com>
d334575b
JM
1531
1532 * elf-attrs.c, elflink.c, elfxx-mips.c: Correct typos in comments.
1533
528aeb62
CM
15342009-01-28 Catherine Moore <clm@codesourcery.com>
1535
1536 * elf32-arm.c (elf32_arm_check_relocs): Set SEC_ALLOC and
1537 SEC_LOAD for dynamic relocation sections.
1538
f6f05983
HPN
15392009-01-27 Hans-Peter Nilsson <hp@axis.com>
1540
1541 * elf32-cris.c (cris_elf_relocate_section): Use elf_hash_table
1542 (info)->tls_size, not elf_hash_table (info)->tls_sec->size for
1543 the size of local TLS data.
1544
27cc28f9
AS
15452009-01-27 Andreas Schwab <schwab@suse.de>
1546
1547 * mach-o.c (bfd_mach_o_archive_p): Restrict the number of
1548 architectures in the archive.
1549
b3bf42d8
HPN
15502009-01-27 Hans-Peter Nilsson <hp@axis.com>
1551
f551b6f0
HPN
1552 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_DTPREL>
1553 <R_CRIS_32_DTPREL>: Correct relocation value.
1554
b3bf42d8
HPN
1555 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_8>
1556 <R_CRIS_16, R_CRIS_32>: Don't call BFD_ASSERT for weak undefined
1557 symbols with non-default visibility.
1558
9bc4e62b
NS
15592009-01-26 Nathan Sidwell <nathan@codesourcery.com>
1560
1561 * elf32-ppc.c (ppc_elf_relax_section): Add space for relocs
1562 describing the trampolines.
1563 (ppc_elf_relocate_section): Update relocs to describe the
1564 trampolines.
1565
aeaf6540
DA
15662009-01-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1567
1568 * elf-hppa.h (elf_hppa_final_link_relocate): Add check to ensure that
1569 branch targets can be reached for R_PARISC_PCREL22F, R_PARISC_PCREL17F
1570 and R_PARISC_PCREL12F relocations.
1571
1e8fa21e
AM
15722009-01-24 Alan Modra <amodra@bigpond.net.au>
1573
1574 PR 6022
1575 * elflink.c (find_version_for_sym): New function split out from,
1576 but without export_dynamic test, ..
1577 (_bfd_elf_link_assign_sym_version): ..here.
1578 (_bfd_elf_export_symbol): Use it.
1579
28caa186
AM
15802009-01-23 Alan Modra <amodra@bigpond.net.au>
1581
1582 * elf-bfd.h (struct elf_assign_sym_version_info): Delete.
1583 (struct elf_info_failed, struct elf_find_verdep_info): Move to..
1584 * elflink.c: ..here, somewhat modified.
1585 * elf-bfd.h (_bfd_elf_add_default_symbol, _bfd_elf_export_symbol,
1586 _bfd_elf_link_find_version_dependencies,
1587 _bfd_elf_link_assign_sym_version, _bfd_elf_link_size_reloc_section,
1588 _bfd_elf_fix_symbol_flags, _bfd_elf_adjust_dynamic_symbol,
1589 _bfd_elf_link_sec_merge_syms, bfd_elf_link_mark_dynamic_symbol): Don't
1590 declare..
1591 * elflink.c: ..and make static here.
1592 (_bfd_elf_link_find_version_dependencies): Adjust for removal
1593 of output_bfd from struct elf_find_verdep_info.
1594 (_bfd_elf_link_assign_sym_version): Similarly adjust to use
1595 struct elf_info_failed.
1596 (bfd_elf_size_dynamic_sections): Adjust.
1597
be04437d
AM
15982009-01-22 Alan Modra <amodra@bigpond.net.au>
1599
1600 PR 6832
1601 * dwarf2.c (find_line): Don't update stash->sec_info_ptr until
1602 after comp_unit_find_line call.
1603
58f9615c
NC
16042009-01-21 Nick Clifton <nickc@redhat.com>
1605
1606 PR 9769
1607 * vmsutil.c (vms_file_stats_name): Remove use of unsupported
1608 tm_gmtoff field in struct tm.
1609
fb266b8b
AM
16102009-01-21 Alan Modra <amodra@bigpond.net.au>
1611
1612 * elf32-spu.h (struct spu_elf_params): Add non_ia_text.
1613 * elf32-spu.c (mark_overlay_section): Only include .text.ia.*
1614 sections in soft-icache lines unless non_ia_text. Don't add
1615 rodata if doing so would exceed line size.
1616
451ffe63
HPN
16172009-01-19 Hans-Peter Nilsson <hp@axis.com>
1618
1619 * elf32-cris.c (elf_cris_copy_indirect_symbol): For other symbol
1620 types than bfd_link_hash_indirect, before early return, call
1621 _bfd_elf_link_hash_copy_indirect.
1622
5aa6ff7c
AS
16232009-01-19 Andrew Stubbs <ams@codesourcery.com>
1624
1625 * elf-attrs.c (vendor_set_obj_attr_contents): Support tag ordering.
1626 * elf-bfd.h (elf_backend_data): Add obj_attrs_order.
1627 * elf32-arm.c (elf32_arm_obj_attrs_order): New function.
1628 (elf_backend_obj_attrs_order): New define.
1629 * elfxx-target.h (elf_backend_obj_attrs_order): New define.
1630 (elfNN_bed): Add elf_backend_obj_attrs_order.
1631
3483fe2e
AS
16322009-01-19 Andrew Stubbs <ams@codesourcery.com>
1633
1634 * elf-attrs.c (is_default_attr): Substitute magic numbers with macros.
1635 (obj_attr_size): Likewise.
1636 (write_obj_attribute): Likewise.
1637 (_bfd_elf_copy_obj_attributes): Likewise.
1638 (_bfd_elf_parse_attributes): Likewise.
1639 * elf-bfd.h (ATTR_TYPE_FLAG_INT_VAL): New define.
1640 (ATTR_TYPE_FLAG_STR_VAL, ATTR_TYPE_FLAG_NO_DEFAULT): New defines.
1641 (ATTR_TYPE_HAS_INT_VAL, ATTR_TYPE_HAS_STR_VAL): New defines.
1642 (ATTR_TYPE_HAS_NO_DEFAULT): New define.
1643 * elf32-arm.c (elf32_arm_obj_attrs_arg_type): Replace magic numbers
1644 with macros.
1645
2d0bb761
AS
16462009-01-19 Andrew Stubbs <ams@codesourcery.com>
1647
1648 * elf-attrs.c (is_default_attr): Support defaultless attributes.
1649 (bfd_elf_add_obj_attr_int): Get type from _bfd_elf_obj_attrs_arg_type.
1650 (bfd_elf_add_obj_attr_string): Likewise.
1651 (bfd_elf_add_obj_attr_int_string): Likewise.
1652 (_bfd_elf_parse_attributes): Allow for unknown flag bits in type.
1653 * elf-bfd.h (struct obj_attribute): Document new flag bit.
1654 * elf32-arm.c (elf32_arm_obj_attrs_arg_type): Specify that
1655 Tag_nodefaults has no default value.
1656 (elf32_arm_merge_eabi_attributes): Modify the Tag_nodefaults
1657 comment to reflect the new state.
1658
a77e83b7
AM
16592009-01-19 Alan Modra <amodra@bigpond.net.au>
1660
1661 PR 9695
1662 * pdp11.c (N_BADMAG): True for anything but OMAGIC, NMAGIC, ZMAGIC.
1663 (some_aout_object_p): Delete dead code handling QMAGIC and BMAGIC.
1664 (adjust_z_magix): Delete dead code handling QMAGIC.
1665
f6d29e26
KT
16662009-01-16 Kai Tietz <kai.tietz@onevision.com>
1667
1668 * coffcode.h (styp_to_sec_flags): Correct interpretation of
1669 IMAGE_SCN_MEM_DISCARDABLE.
1670
29670fb9
AM
16712009-01-16 Alan Modra <amodra@bigpond.net.au>
1672
1673 * Makefile.am (libbfd_la_LIBADD, libbfd_la_LDFLAGS): Substitute
1674 SHARED_LIBADD and SHARED_LDFLAGS rather than WIN32LIBADD, WIN32LDFLAGS.
1675 * configure.in (commonbfdlib): Delete.
1676 (SHARED_LDFLAGS): Rename from WIN32LDFLAGS/
1677 (SHARED_LIBADD): Rename from WIN32LIBADD. Add pic libiberty if such
1678 is available, not just for linux.
1679 * po/SRC-POTFILES.in: Regenerate.
1680 * Makefile.in: Regenerate.
1681 * configure: Regenerate.
1682
91e22acd
AS
16832009-01-15 Andrew Stubbs <ams@codesourcery.com>
1684 Julian Brown <julian@codesourcery.com>
1685
1686 * elf-bfd.h (NUM_KNOWN_OBJ_ATTRIBUTES): Set to 71 to include all known
1687 ARM attributes in ABI 2.07.
1688 * elf32-arm.c (get_secondary_compatible_arch): New function.
1689 (set_secondary_compatible_arch): New function.
1690 (tag_cpu_arch_combine): New function.
1691 (elf32_arm_copy_one_eabi_other_attribute): Delete function.
1692 (elf32_arm_copy_eabi_other_attribute_list): Delete function.
1693 (elf32_arm_merge_eabi_attributes): Rename order_312 to order_021 to
1694 make it fit with order_01243.
1695 Add support for Tag_also_compatible_with,
1696 Tag_CPU_unaligned_access, Tag_T2EE_use, Tag_Virtualization_use,
1697 Tag_MPextension_use, Tag_nodefaults and Tag_conformance.
1698 Improve/tidy up support for Tag_CPU_raw_name, Tag_CPU_name,
1699 Tag_CPU_arch, Tag_ABI_HardFP_use, Tag_VFP_HP_extension,
1700 Tag_ABI_FP_denormal, Tag_ABI_PCS_GOT_use, Tag_ABI_align8_needed,
1701 Tag_VFP_arch and Tag_ABI_FP_16bit_format.
1702 Rework the way unknown attributes are handled.
1703 Defer errors until all attributes have been processed.
1704
7b86a9fa
AS
17052009-01-15 Andrew Stubbs <ams@codesourcery.com>
1706
1707 * elf-attrs.c (bfd_elf_add_obj_attr_compat): Rename to
1708 bfd_elf_add_obj_attr_int_string.
1709 Read Tag_compatibility from its new location in the attribute array,
1710 rather than the attribute list.
1711 (_bfd_elf_copy_obj_attributes): bfd_elf_add_obj_attr_compat ->
1712 bfd_elf_add_obj_attr_int_string.
1713 (_bfd_elf_parse_attributes): Likewise.
1714 (_bfd_elf_merge_object_attributes): There's now only one
1715 Tag_compatibility, and it's in the array, not the list.
1716 * elf-bfd.h (NUM_KNOWN_OBJ_ATTRIBUTES): Set to 33 to include
1717 Tag_compatibility.
1718 (bfd_elf_add_obj_attr_compat): Rename to
1719 bfd_elf_add_obj_attr_int_string.
1720 (bfd_elf_add_proc_attr_compat): Rename to
1721 bfd_elf_add_proc_attr_int_string.
1722 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Explicitly don't handle
1723 Tag_compatibility.
1724
01e1a5bc
NC
17252009-01-15 Douglas B Rupp <rupp@gnat.com>
1726
1727 * Makefile.am (BFD32_BACKENDS): Add new object vmsutil.lo
1728 (BFD32_BACKENDS_CFILES): Add new file vmsutil.c
1729 (vmsutil.lo): Add dependency rule.
1730 * Makefile.in: Regenerate.
1731 * config.bfd (ia64*-*-*vms*): Add case.
1732 * configure.in (bfd_elf64_ia64_vms_vec): Add case.
1733 * configure: Regenerate.
1734 * vmsutil.c: New file.
1735 * vmsutil.h: New file.
1736 * elf-bfd.h (struct bfd_elf_special_section): Change type of
1737 attr to bfd_vma.
1738 * elfxx-ia64.c (elfNN_vms_post_process_headers,
1739 elfNN_vms_section_processing, elfNN_vms_final_write_processing,
1740 elfNN_vms_close_and_cleanup, elfNN_vms_section_from_shdr,
1741 elfNN_vms_object_p): New functions
1742 * targets.c (bfd_elf64_ia64_vms_vec): New target.
1743
a33dafc3
L
17442009-01-14 H.J. Lu <hongjiu.lu@intel.com>
1745
1746 PR ld/9727
1747 * elflink.c (elf_gc_sweep): Exclude the group section if the
1748 first member of the section group is excluded.
1749
13c0e967
AM
17502009-01-14 Alan Modra <amodra@bigpond.net.au>
1751
1752 PR 9735
1753 * syms.c (_bfd_stab_section_find_nearest_line): Don't free
1754 saved filename, use bfd_alloc rather than bfd_malloc for it.
1755
460e679b
AM
17562009-01-13 Alan Modra <amodra@bigpond.net.au>
1757
1758 * elf32-spu.c (spu_elf_build_stubs): Make __icache_base absolute.
1759
25076afa
AM
17602009-01-13 Alan Modra <amodra@bigpond.net.au>
1761
1762 * elf32-spu.c (remove_cycles): Always set call->max_depth.
1763
37107878
AM
17642009-01-12 Alan Modra <amodra@bigpond.net.au>
1765
1766 * elf32-spu.c (spu_elf_auto_overlay): Correct vma mask.
1767
cd4a7468
AM
17682009-01-12 Alan Modra <amodra@bigpond.net.au>
1769
1770 * elf32-spu.c (struct spu_link_hash_table): Add init, line_size_log2,
1771 num_lines_log2.
1772 (struct got_entry): Add br_addr.
1773 (struct call_info): Add priority.
1774 (struct function_info): Add lr_store and sp_adjust.
1775 (spu_elf_setup): Init line_size_log2 and num_lines_log2.
1776 (spu_elf_find_overlays): For soft-icache, mark any section within cache
1777 area as an overlay, and check that no other overlays exist. Look up
1778 icache overlay manager entry sym.
1779 (BRA_STUBS, BRA, BRASL): Define.
1780 (enum _stub_type): Replace ovl_stub with call_ovl_stub and br*_ovl_stub.
1781 (needs_ovl_stub): Adjust for soft-icache. Return priority encoded
1782 in branch insn.
1783 (count_stub, build_stub): Support soft-icache.
1784 (build_spuear_stubs, process_stubs): Adjust build_stub call.
1785 (spu_elf_size_stubs): Size soft-icache stubs.
1786 (overlay_index): New function.
1787 (spu_elf_build_stubs): Make static. Support soft-icache.
1788 (spu_elf_check_vma): Don't turn off auto_overlay if soft-icache.
1789 (find_function_stack_adjust): Save lr store and stack adjust insn
1790 offsets.
1791 (maybe_insert_function): Adjust find_function_stack_adjust call.
1792 (mark_functions_via_relocs): Retrieve priority.
1793 (remove_cycles): Only warn about pruned arcs when stack_analysis.
1794 (sort_calls): Sort by priority first.
1795 (mark_overlay_section): Ignore .ovl.init.
1796 (sum_stack): Only print when stack_analysis.
1797 (print_one_overlay_section): New function, extracted from..
1798 (spu_elf_auto_overlay): ..here. Support soft-icache overlays.
1799 (spu_elf_stack_analysis): Only print when htab->stack_analysis.
1800 (spu_elf_final_link): Call spu_elf_stack_analysis for lrlive
1801 analysis. Call spu_elf_build_stubs.
1802 (spu_elf_relocate_section): For soft-icache encode overlay index
1803 into addresses.
1804 (spu_elf_output_symbol_hook): Support soft-icache.
1805 (spu_elf_modify_program_headers: Likewise.
37107878 1806
cd4a7468
AM
1807 * elf32-spu.h (struct spu_elf_params): Add lrlive_analysis. Rename
1808 num_regions to num_lines. Add line_size and max_branch.
1809 (enum _ovly_flavour): Add ovly_soft_icache.
1810 (spu_elf_build_stubs): Delete.
1811
80c29487
JK
18122009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
1813
1814 * elflink.c (_bfd_elf_section_already_linked): Handle g++-3.4
1815 relocations in `.gnu.linkonce.r.*' referencing its `.gnu.linkonce.t.*'.
1816
1bc86aea
HPN
18172009-01-07 Hans-Peter Nilsson <hp@axis.com>
1818
1819 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
1820 <case R_CRIS_16_GOT_GD, R_CRIS_32_GOT_GD>: For a symbol defined in
1821 the program, the known offset starts at the negative size of the
1822 TLS section.
1823 <case R_CRIS_32_IE, R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>:
1824 Similar.
1825
3baa454d 18262009-01-05 Joel Sherrill <joel.sherrill@oarcorp.com>
75606e85 1827
3baa454d 1828 * config.bfd: Add lm32-*-rtems*.
75606e85 1829
9dbe8890
L
18302009-01-03 H.J. Lu <hongjiu.lu@intel.com>
1831
1832 * coff-ppc.c: Add 2009 to Copyright.
1833 * elf32-cris.c: Likewise.
1834 * elflink.c: Likewise.
1835
0bdf8d40
HPN
18362009-01-03 Hans-Peter Nilsson <hp@axis.com>
1837
1838 * elf32-cris.c (elf_cris_finish_dynamic_symbol): Rename
1839 gotplt_index to rela_plt_index. Adjust for R_CRIS_DTPMOD entry.
1840
54ac0771
L
18412009-01-02 H.J. Lu <hongjiu.lu@intel.com>
1842
1843 PR ld/9679
1844 * elflink.c (elf_merge_st_other): New.
1845 (_bfd_elf_merge_symbol): Use it on skipped weak definitions and
1846 hide them if needed.
1847 (elf_link_add_object_symbols): Updated.
1848
d8880531
L
18492009-01-02 H.J. Lu <hongjiu.lu@intel.com>
1850
1851 PR ld/9676
1852 * elflink.c (elf_link_add_object_symbols): Update def_dynamic,
1853 ref_dynamic and dynamic_def fields when setting def_regular
1854 to 1.
1855
b70b5c14
NC
18562009-01-02 Curtis Mackie <curtmackevo@gmail.com>
1857
1858 PR 9682
1859 * coff-ppc.c (dump_toc): Fix up calls to fprintf without a string
1860 literal.
1861
d8880531 1862For older changes see ChangeLog-2008
56882138
AM
1863\f
1864Local Variables:
1865mode: change-log
1866left-margin: 8
1867fill-column: 74
1868version-control: never
1869End:
This page took 0.554992 seconds and 4 git commands to generate.