PR 10143
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
ce3c775b
NC
12009-05-26 Rafael Avila de Espindola <espindola@google.com>
2
3 * Makefile.am: Run "make dep-am".
4 (AM_CPPFLAGS): New.
5 (LIBDL): New.
6 (ALL_MACHINES): Add cpu-plugin.lo.
7 (ALL_MACHINES_CFILES): Add cpu-plugin.c.
8 (BFD32_BACKENDS): Add plugin.lo.
9 (BFD32_BACKENDS_CFILES): Add plugin.c.
10 (libbfd_la_LIBADD): Add LIBDL
11 * archures.c (bfd_architecture): Add bfd_arch_plugin.
12 (bfd_plugin_arch): Declare.
13 * bfd-in.h (BFD_SUPPORTS_PLUGINS): New.
14 * bfd.c (bfd): Add plugin_data.
15 * config.bfd: Handle the plugin target.
16 * configure.in: Check for --enable-plugins.
17 (LT_INIT): Use the dlopen option.
18 * cpu-plugin.c: New.
19 * plugin.c: New.
20 * plugin.h: New.
21 * targets.c (plugin_vec): Declare.
22 (_bfd_target_vector): Add plugin_vec.
23 * Makefile.in: Regenerate.
24 * bfd-in2.h: Regenerate.
25 * configure: Regenerate.
26
9e097a72
AM
272009-05-26 Alan Modra <amodra@bigpond.net.au>
28
29 * dep-in.sed: Don't modify .o to .lo here. Output one filename
30 per line with all lines having continuation backslash. Prefix
31 first line with "A", following lines with "B".
32 * Makefile.am (DEP): Don't use dep.sed here.
33 (DEP1): Run $MKDEP on single files, modify .o to .lo here. Use
34 dep.sed here on dependencies, sort and uniq.
35 * Makefile.in: Regenerate.
36
d5acff2f
TG
372009-05-25 Tristan Gingold <gingold@adacore.com>
38
39 * makefile.vms: Add verilog.obj to object list OBJS.
40
5c93f09b
AM
412009-05-24 Alan Modra <amodra@bigpond.net.au>
42
43 * bfdio.c (bfd_seek): Formatting. Ensure newly allocated memory
44 for BFD_IN_MEMORY is cleared.
45 (bfd_bwrite): Zero excess memory allocated.
46
48229727
JB
472009-05-22 Julian Brown <julian@codesourcery.com>
48
49 * elf32-arm.c (THUMB16_BCOND_INSN, THUMB32_INSN, THUMB32_B_INSN): New
50 macros.
51 (elf32_arm_stub_a8_veneer_b_cond, elf32_arm_stub_a8_veneer_b)
52 (elf32_arm_stub_a8_veneer_blx): New stub sequences.
53 (elf32_arm_stub_type): Add arm_stub_a8_veneer_b_cond,
54 arm_stub_a8_veneer_b and arm_stub_a8_veneer_blx.
55 (elf32_arm_stub_hash_entry): Add target_addend, orig_insn fields.
56 (a8_erratum_fix, a8_erratum_reloc): New structs.
57 (elf32_arm_link_hash_table): Add a8_erratum_fixes,
58 num_a8_erratum_fixes, fix_cortex_a8 fields.
59 (elf32_arm_link_hash_table_create): Zero fix_cortex_a8.
60 (elf32_arm_add_stub): Split into two parts, creating...
61 (elf32_arm_create_or_find_stub_sec): New function.
62 (elf32_arm_final_link_relocate): Add forward declaration.
63 (arm_build_one_stub): Add support for THUMB32_TYPE, Thumb-2
64 relocations, multiple relocations per stub.
65 (find_stub_size_and_template): New (using parts of arm_size_one_stub).
66 (arm_size_one_stub): Use find_stub_size_and_template.
67 (a8_reloc_compare): New.
68 (find_thumb_glue): Add forward declaration.
69 (cortex_a8_erratum_scan): New.
70 (elf32_arm_size_stubs): Add Cortex-A8 erratum workaround support.
71 (bfd_elf32_arm_set_cortex_a8_fix): New.
72 (bfd_elf32_arm_set_target_relocs): Add fix_cortex_a8 argument.
73 (arm_map_one_stub): Add THUMB32_TYPE support.
74 (a8_branch_to_stub_data): New.
75 (make_branch_to_a8_stub): New.
76 (elf32_arm_write_section): Add Cortex-A8 erratum workaround support.
77 * bfd-in.h (bfd_elf32_arm_set_cortex_a8_fix): New.
78 (bfd_elf32_arm_set_target_relocs): Add argument for controlling
79 Cortex-A8 erratum workaround.
80 * bfd-in2.h: Regenerate.
81
2b3decb5
AM
822009-05-22 Alan Modra <amodra@bigpond.net.au>
83
84 * Makefile.am: Run "make dep-am".
85 * Makefile.in: Regenerate.
86 * po/SRC-POTFILES.in: Regenerate.
87
930e005c
AM
882009-05-21 Alan Modra <amodra@bigpond.net.au>
89
90 * elflink.c (elf_link_input_bfd): Correct *pindex change in last
91 commit.
92
6e0b88f1
AM
932009-05-21 Alan Modra <amodra@bigpond.net.au>
94
95 * elf-bfd.h (struct elf_backend_data
96 <elf_backend_link_output_symbol_hook>): Return an int.
97 * elf64-ppc.c (ppc64_elf_output_symbol_hook): Return 2 to drop
98 symbols on deleted .opd entries.
99 * elflink.c (elf_link_output_sym): Return without outputting sym
100 if output_symbol_hook returns 2.
101 (elf_link_output_extsym): Don't assign h->indx when symbol discarded.
102 Abort if we must not discard sym.
103 (elf_link_input_bfd): Similarly, don't set finfo->indices for
104 local syms.
105 (bfd_elf_final_link): Adjust elf_link_output_sym calls.
106 * elf-vxworks.c (elf_vxworks_link_output_symbol_hook): Adjust for
107 elf_backend_link_output_symbol_hook return type change.
108 * elf32-arm.c (output_arch_syminfo): Likewise.
109 (elf32_arm_output_map_sym, elf32_arm_output_stub_sym): Likewise.
110 (elf32_arm_output_arch_local_syms): Likewise.
111 * elf32-cr16c.c (elf32_cr16c_link_output_symbol_hook): Likewise.
112 * elf32-score.c (s3_bfd_score_elf_link_output_symbol_hook): Likewise.
113 (bfd_score_elf_link_output_symbol_hook): Likewise.
114 * elf32-score.h (s7_bfd_score_elf_link_output_symbol_hook): Likewise.
115 * elf32-score7.c (s7_bfd_score_elf_link_output_symbol_hook): Likewise.
116 * elf32-sh64.c (sh64_elf_link_output_symbol_hook): Likewise.
117 * elf32-spu.c (spu_elf_output_symbol_hook): Likewise.
118 * elf32-v850.c (v850_elf_link_output_symbol_hook): Likewise.
119 * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Likewise.
120 * elf64-mmix.c (mmix_elf_link_output_symbol_hook): Likewise.
121 * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Likewise.
122 * elf64-sparc.c (elf64_sparc_output_arch_syms): Likewise.
123 * elfxx-mips.c (_bfd_mips_elf_link_output_symbol_hook): Likewise.
124 * elfxx-mips.h (_bfd_mips_elf_link_output_symbol_hook): Likewise.
125
5ef11c02
AM
1262009-05-21 Alan Modra <amodra@bigpond.net.au>
127
128 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't segfault on
129 out of range .opd symbols.
130
ebf12fbe
DK
1312009-05-21 Dave Korn <dave.korn.cygwin@gmail.com>
132
133 * coffgen.c (coff_print_symbol): Use bfd_fprintf_vma, not
134 fprintf_vma directly.
135 * peXXigen.c (pe_print_edata): Likewise.
136 (pe_print_pdata): Likewise.
137 (_bfd_XX_print_ce_compressed_pdata): Likewise.
138 (_bfd_XX_print_private_bfd_data_common): Likewise.
139
c1711530
DK
1402009-05-19 Dave Korn <dave.korn.cygwin@gmail.com>
141
142 * cofflink.c (process_embedded_commands): Ignore "-aligncomm".
143
22a8f80e 1442009-05-15 Andrew Stubbs <ams@codesourcery.com>
164e7efc 145 Paul Brook <paul@codesourcery.com>
22a8f80e
PB
146
147 * elf32-arm.c (elf32_arm_fix_exidx_coverage): Don't attempt to
148 fix discarded sections.
149
335bd8f2
UW
1502009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
151
152 * elf32-spu.c (mark_overlay_section): Move .init and .fini
153 sections into the software icache.
154
cdc83fba
UW
1552009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
156
157 * elf32-spu.c (build_stub): Always build "compact" sofware
158 i-cache stubs.
159
97fc8d84
UW
1602009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
161
162 * elf32-spu.c (struct spu_link_hash_table): Add fromelem_size_log2.
163 (spu_elf_setup): Initialize it.
164 (spu_elf_size_stubs): Move .ovtab into .bss for software i-cache.
165 Update to new-sytle cache manager data structures.
166 (spu_elf_build_stubs): Generate new-style cache manager data
167 structures and symbols.
168 (spu_elf_auto_overlay): Update size computation.
169
452de53c
UW
1702009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
171
172 * elf32-spu.c (spu_elf_modify_segment_map): Move all PF_OVERLAY
173 segments first amongst the program headers.
174
d342a8b1
UW
1752009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
176
177 * elf32-spu.c (spu_elf_relocate_section): Only encode overlay index
178 into addresses for relocation types that look at high bits. Remove
179 special handling of relocation overflow warnings.
180
cc210763
UW
1812009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
182
183 * elf32-spu.c (mark_functions_via_relocs): Handle cycles in the
184 control flow graph between fragments of a function.
185
c1ea05bb
UW
1862009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
187
188 * elf32-spu.c (spu_elf_size_stubs): Even in software i-cache mode,
189 generate only a 16-byte .toe section.
190 (spu_elf_build_stubs, spu_elf_auto_overlay): Likewise.
191
bbb0fc04
AM
1922009-05-14 Alan Modra <amodra@bigpond.net.au>
193
194 * elf32-spu.c (spu_elf_size_stubs): Split out section placement to..
195 (spu_elf_place_overlay_data): ..here. New function.
196 * elf32-spu.h (spu_elf_place_overlay_data): Declare.
197
6e6718a3
AJ
1982009-05-13 Andrew Jenner <andrew@codesourcery.com>
199
200 * elf32-arm.c: Move sysdep.h to start of file.
201
77ae44b0
AM
2022009-05-11 Ulrich Weigand <uweigand@de.ibm.com>
203
204 * elf32-spu.c (spu_elf_find_overlays): Don't use .ovl.init lma as
205 start of overlays.
206 (spu_elf_build_stubs): Don't define __icache_tagbase. Define
207 __icache_tag_array and __icache_tag_array_size.
208
51408ec2
AM
2092009-05-11 Masaki Muranaka <monaka@monami-software.com>
210
211 * elf32-bfin.c (bfin_bfd_reloc_type_lookup): Remove unnecessary
212 ATTRIBUTE_UNUSED.
213 (bfinfdpic_link_omit_section_dynsym): Likewise.
214 (elf32_bfinfdpic_finish_dynamic_sections): Likewise.
215
2468f9c9
PB
2162009-05-05 Paul Brook <paul@codesourcery.com>
217
218 * bfd-in.h (elf32_arm_fix_exidx_coverage): Add prototype.
219 * bfd-in2.h: Regenerate.
220 * elf32-arm.c (arm_unwind_edit_type, arm_unwind_table_edit): Define.
221 (_arm_elf_section_data): Add text and exidx fields.
222 (add_unwind_table_edit, get_arm_elf_section_data, adjust_exidx_size,
223 insert_cantunwind_after, elf32_arm_fix_exidx_coverage, offset_prel31,
224 copy_exidx_entry): New functions.
225 (elf32_arm_write_section): Fixup .ARM.exidx contents.
226
738a79f6
CL
2272009-05-05 Christophe lyon <christophe.lyon@st.com>
228
229 * elf32-arm.c (DEF_STUBS): New helper define.
230 (DEF_STUB): Likewise.
231 (stub_def): New type.
232 (stub_definitions): New array, containing stub template pointers
233 and sizes.
234 (arm_size_one_stub): Make use of stub_definitions.
235
09e2aba4
DK
2362009-05-04 Dave Korn <dave.korn.cygwin@gmail.com>
237
238 * elflink.c (find_version_for_sym): Remove from here, ...
239 * linker.c (bfd_find_version_for_sym): ... rename, replace
240 here, make public and update all callers.
241 * bfd-in2.h: Regenerate.
242
d8045f23
NC
2432009-04-30 Nick Clifton <nickc@redhat.com>
244
245 * elf-bfd.h (struct bfd_elf_section_data): Add indirect_relocs
246 section pointer.
247 (struct elf_obj_data): Add has_ifunc_symbols boolean.
248 * elf.c (swap_out_syms): Convert BSF_GNU_INDIRECT_FUNCTION flags
249 into a STT_GNU_IFUNC symbol type.
250 (_bfd_elf_is_function_type): Accept STT_GNU_IFUNC as a function
251 type.
252 (_bfd_elf_set_osabi): Set the osasbi field to ELFOSABI_LINUX if
253 the binary contains ifunc symbols.
254 * elfcode.h (elf_slurp_symbol_table): Translate the STT_GNU_IFUNC
255 symbol type into a BSF_GNU_INDIRECT_FUNCTION flag.
256 * elf32-i386.c (is_indirect_function): New function.
257 (elf_i386_check_relocs): Create an ifunc output section.
258 (allocate_dynrelocs): Create dynamic relocs in the ifunc output
259 section if necessary.
260 (elf_i386_relocate_section): Emit a reloc against an ifunc symbol
261 if necessary.
262 (elf_i386_add_symbol_hook): New function. Set the
263 has_ifunc_symbols field of the elf_obj_data structure if an ifunc
264 symbol is encountered.
265 (elf_backend_post_process_headers): Define.
266 (elf_backend_add_symbol_hook): Define.
267 (elf_i386_post_process_headers): Rename to
268 elf_i388_fbsd_post_process_headers.
269 * elf64-x86_64.c (IS_X86_64_PCREL_TYPE): New macro.
270 (is_indirect_function): New function.
271 (elf64_x86_64_check_relocs): Create an ifunc output section.
272 (allocate_dynrelocs): Create dynamic relocs in the ifunc output
273 section if necessary.
274 (elf64_x86_64_relocate_section): Emit a reloc against an ifunc
275 symbol if necessary.
276 (elf_i386_add_symbol_hook): Set the has_ifunc_symbols field of the
277 elf_obj_data structure if an ifunc symbol is encountered.
278 (elf_backend_post_process_headers): Define.
279 * elflink.c (_bfd_elf_adjust_dynamic_symbol): Always create a PLT
280 if we have ifunc symbols to handle.
281 (get_ifunc_reloc_section_name): New function. Computes the name
282 for an ifunc section.
283 (_bfd_elf_make_ifunc_reloc_section): New function. Creates a
284 section to hold ifunc relocs.
285 * syms.c (BSF_GNU_INDIRECT_FUNCTION): Define.
286 (bfd_print_symbol_vandf): Handle ifunc symbols.
287 (bfd_decode_symclass): Likewise.
288 * bfd-in2.h: Regenerate.
289
96c23d59
JM
2902009-04-30 Joseph Myers <joseph@codesourcery.com>
291
292 * elf32-arm.c (elf32_arm_check_relocs): Give errors for absolute
293 MOVW and MOVT relocations in a shared library link.
294
c067354b
NC
2952009-04-27 Anthony Green <green@moxielogic.com>
296
297 * verilog.c: New file.
298 * Makefile.am (BFD32_LIBS): Add verilog.c.
299 (BFD32_LIBS_CFILES): Add verilog.c.
300 (verilog.lo): New build rule.
301 * Makefile.in: Rebuilt.
302 * targets.c: Add verilog support.
303 * bfd.c (tdata union): Add Verilog private data field.
304 * bfd-in2.h: Regenerate.
305
325c681d
L
3062009-04-27 H.J. Lu <hongjiu.lu@intel.com>
307
308 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Don't
309 copy pe_opthdr.
310
ba775898
DK
3112009-04-23 Matthias Klose <doko@ubuntu.com>
312
2e28a5fc 313 * peXXigen.c (_bfd_XXi_swap_sym_in): Initialize `name'.
ba775898 314
155d87d7
CL
3152009-04-22 Christophe Lyon <christophe.lyon@st.com>
316
317 PR9743
318 * elf32-arm.c (arm_type_of_stub): Handle R_ARM_THM_JUMP24,
319 R_ARM_JUMP24 and R_ARM_PLT32 relocations.
320 (elf32_arm_size_stubs): Likewise.
321 (record_thumb_to_arm_glue): Deleted unused function.
322 (bfd_elf32_arm_process_before_allocation): No longer handle
323 R_ARM_THM_JUMP24, R_ARM_JUMP24 and R_ARM_PLT32 relocations here.
324 (elf32_arm_final_link_relocate): Handle R_ARM_THM_JUMP24,
325 R_ARM_JUMP24 and R_ARM_PLT32 relocations.
326
3e6b1042
DJ
3272009-04-21 Daniel Jacobowitz <dan@codesourcery.com>
328
329 * elf32-arm.c (INTERWORK_FLAG): Check BFD_LINKER_CREATED.
330 (elf32_arm_write_section): Declare early.
331 (elf32_arm_size_stubs): Skip non-stub sections in the stub BFD.
332 (arm_allocate_glue_section_space): Exclude empty sections.
333 (ARM_GLUE_SECTION_FLAGS): Add SEC_LINKER_CREATED.
334 (bfd_elf32_arm_add_glue_sections_to_bfd): Do not skip the stub
335 BFD.
336 (elf32_arm_output_glue_section, elf32_arm_final_link): New.
337 (elf32_arm_merge_eabi_attributes): Skip the stub BFD.
338 (elf32_arm_size_dynamic_sections): Allocate interworking
339 sections here.
340 (bfd_elf32_bfd_final_link): Define.
341
4f360784
L
3422009-04-21 H.J. Lu <hongjiu.lu@intel.com>
343
344 * coff-ia64.c (COFF_PAGE_SIZE): Changed to 8K.
345
346 * coffcode.h (coff_compute_section_file_positions): Clear
347 D_PAGED if PE section alignment is smaller than COFF_PAGE_SIZE.
348
349 * libcoff-in.h (pe_tdata): Remove force_minimum_alignment and
350 force_minimum_alignment.
351
352 * libcoff.h: Regenerated.
353
354 * pei-ia64.c (PEI_TARGET_SUBSYSTEM): Removed.
355 (PEI_FORCE_MINIMUM_ALIGNMENT): Likewise.
356
357 * peicode.h (pe_mkobject): Don't set force_minimum_alignment
358 nor target_subsystem.
359
360 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't check
361 force_minimum_alignment nor target_subsystem.
362
e48570bb
DK
3632009-04-21 Kai Tietz <kai.tietz@onevision.com>
364
365 * coff-x86_64.c (PEI_HEADERS): Protect includes.
366 (bfd_pe_print_pdata): Remove #ifdef PE variation.
367 * pei-x86_64.c (PEI_HEADERS): Define to prevent double
368 include in coff-x86_64.c of headers.
369 (PDATA_ROW_SIZE): New define.
370 (pex_regs[]): New static array.
371 (pex64_get_runtime_function): New static function.
372 (pex64_get_unwind_info): Likewise.
373 (pex64_get_scope_entry): Likewise.
374 (pex64_xdata_print_uwd_codes): Likewise.
375 (pex64_get_section_by_rva): Likewise.
376 (pex64_dump_xdata): Likewise.
377 (pex64_bfd_print_pdata): Likewise.
378 (bfd_pe_print_pdata): Define as pex64_bfd_print_pdata.
379 * peXXigen.c (_bfd_pex64_print_pdata): Removed implementation.
380 * libpei.h (_bfd_pex64_print_pdata): Removed declaration.
381
383c383f 3822009-04-19 Peter O'Gorman <binutils@mlists.thewrittenword.com>
4f360784
L
383 Alan Modra <amodra@bigpond.net.au>
384 Dave Korn <dave.korn.cygwin@gmail.com>
383c383f
AM
385
386 * peXXigen.c (_bfd_XXi_swap_sym_in): Fix name handling w.r.t
387 long names and non-NUL-terminated strings.
388
b6b450f1
L
3892009-04-17 H.J. Lu <hongjiu.lu@intel.com>
390
391 * bfd-in2.h: Regenerated.
392
d9118602
L
3932009-04-17 H.J. Lu <hongjiu.lu@intel.com>
394
395 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Replace
396 IMAGE_SUBSYSTEM_EFI_ROM with IMAGE_SUBSYSTEM_SAL_RUNTIME_DRIVER.
397
92dd4511
L
3982009-04-17 H.J. Lu <hongjiu.lu@intel.com>
399
400 PR binutils/10074
401 * coffcode.h (bfd_pei_p): New.
402
403 * config.bfd: Remove bfd_efi_bsdrv_ia32_vec,
404 bfd_efi_rtdrv_ia32_vec, bfd_efi_bsdrv_x86_64_vec,
405 bfd_efi_rtdrv_x86_64_vec, bfd_efi_bsdrv_ia64_vec and
406 bfd_efi_rtdrv_ia64_vec. Replace bfd_efi_app_ia32_vec,
407 bfd_efi_app_x86_64_vec and bfd_efi_app_ia64_vec with
408 i386pei_vec, x86_64pei_vec and bfd_pei_ia64_vec, respectively.
409
410 * configure.in: Remove bfd_efi_bsdrv_ia32_vec,
411 bfd_efi_rtdrv_ia32_vec, bfd_efi_bsdrv_x86_64_vec,
412 bfd_efi_rtdrv_x86_64_vec,
413 bfd_efi_bsdrv_ia64_vec and bfd_efi_rtdrv_ia64_vec. Replace
414 bfd_efi_ia64_vec with bfd_pei_ia64_vec.
415 * targets.c: Likewise.
416
417 * configure: Regenerated.
418 * libcoff.h: Likewise.
419 * Makefile.in: Likewise.
420
421 * efi-app-ia32.c: Removed.
422 * efi-app-x86_64.c: Likewise.
423 * efi-bsdrv-ia32.c: Likewise.
424 * efi-bsdrv-ia64.c: Likewise.
425 * efi-bsdrv-x86_64.c: Likewise.
426 * efi-rtdrv-ia32.c: Likewise.
427 * efi-rtdrv-ia64.c: Likewise.
428 * efi-rtdrv-x86_64.c: Likewise.
429 * efi-rtdrv-ia32.c: Likewise.
430
431 * efi-app-ia64.c: Moved to ...
432 * pei-ia64.c: This.
433 (TARGET_SYM): Set to bfd_pei_ia64_vec.
434 (TARGET_NAME): Set to pei-ia64.
435
436 * libpei.h (bfd_target_pei_p): Removed.
437 (bfd_target_pei_arch): Likewise.
438 (bfd_target_efi_app_p): Likewise.
439 (bfd_target_efi_app_arch): Likewise.
440 (bfd_target_efi_bsdrv_p): Likewise.
441 (bfd_target_efi_bsdrv_arch): Likewise.
442 (bfd_target_efi_rtdrv_p): Likewise.
443 (bfd_target_efi_rtdrv_arch): Likewise.
444 (bfd_pe_executable_p): Likewise.
445
446 * Makefile.am (BFD32_BACKENDS): Remove efi-app-ia32.lo,
447 efi-bsdrv-ia32.lo and efi-rtdrv-ia32.lo.
448 (BFD32_BACKENDS_CFILES): Remove efi-app-ia32.c, efi-bsdrv-ia32.c
449 and efi-rtdrv-ia32.c.
450 (BFD64_BACKENDS): Remove efi-app-ia64.lo, efi-bsdrv-ia64.lo,
451 efi-rtdrv-ia64.lo, efi-app-x86_64.lo, efi-bsdrv-x86_64.lo and
452 efi-rtdrv-x86_64.lo. Add pei-ia64.lo.
453 (BFD64_BACKENDS_CFILES): Remove efi-app-ia64.c, efi-bsdrv-ia64.c,
454 efi-rtdrv-ia64.c, efi-app-x86_64.c, efi-bsdrv-x86_64.c and
455 efi-rtdrv-x86_64.c. Add pei-ia64.c.
456 (efi-app-ia64.lo): Removed.
457 (efi-bsdrv-ia32.lo): Likewise.
458 (efi-rtdrv-ia32.lo): Likewise.
459 (efi-app-ia64.lo): Likewise.
460 (efi-bsdrv-ia64.lo): Likewise.
461 (efi-rtdrv-ia64.lo): Likewise.
462 (efi-app-x86_64.lo): Likewise.
463 (efi-bsdrv-x86_64.lo): Likewise.
464 (efi-rtdrv-x86_64.lo): Likewise.
465 (pei-ia64.lo): New.
466
467 * peicode.h (coff_swap_scnhdr_in): Replace bfd_pe_executable_p
468 with bfd_pei_p.
469 (arch_type): Removed.
470 (pe_arch): Likewise.
471 (pe_bfd_object_p): Just return coff_object_p.
472
473 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Replace
474 bfd_pe_executable_p with bfd_pei_p.
475
69c5861e
CL
4762009-04-17 Christophe Lyon <christophe.lyon@st.com>
477
478 * elf32-arm.c (elf32_arm_size_stubs): Handle long branches through
479 PLT entries to an undefined symbol when generating a shared
480 library.
481
e9cd0660
NC
4822009-04-17 Nick Clifton <nickc@redhat.com>
483
484 PR 9909
485 * coffcode.h (handle_COMDAT): Allow for external COMDAT symbols.
486
3023e3f6
RS
4872009-04-16 Richard Sandiford <r.sandiford@uk.ibm.com>
488
489 * aout-adobe.c (aout_32_bfd_define_common_symbol): Define.
490 * aout-target.h (MY_bfd_define_common_symbol): Likewise.
491 * aout-tic30.c (MY_bfd_define_common_symbol): Likewise.
492 * binary.c (binary_bfd_define_common_symbol): Likewise.
493 * bout.c (b_out_bfd_define_common_symbol): Likewise.
494 * coff-alpha.c (_bfd_ecoff_bfd_define_common_symbol): Likewise.
495 * coff-mips.c (_bfd_ecoff_bfd_define_common_symbol): Likewise.
496 * coffcode.h (coff_bfd_define_common_symbol): Likewise.
497 * elfxx-target.h (bfd_elfNN_bfd_define_common_symbol): Likewise.
498 * i386msdos.c (msdos_bfd_define_common_symbol): Likewise.
499 * i386os9k.c (os9k_bfd_define_common_symbol): Likewise.
500 * ieee.c (ieee_bfd_define_common_symbol): Likewise.
501 * ihex.c (ihex_bfd_define_common_symbol): Likewise.
502 * libbfd-in.h (_bfd_nolink_bfd_define_common_symbol): Likewise.
503 * mach-o.c (bfd_mach_o_bfd_define_common_symbol): Likewise.
504 * mmo.c (mmo_bfd_define_common_symbol): Likewise.
505 * nlm-target.h (nlm_bfd_define_common_symbol): Likewise.
506 * oasys.c (oasys_bfd_define_common_symbol): Likewise.
507 * pef.c (bfd_pef_bfd_define_common_symbol): Likewise.
508 * ppcboot.c (ppcboot_bfd_define_common_symbol): Likewise.
509 * som.c (som_bfd_define_common_symbol): Likewise.
510 * srec.c (srec_bfd_define_common_symbol): Likewise.
511 * tekhex.c (tekhex_bfd_define_common_symbol): Likewise.
512 * versados.c (versados_bfd_define_common_symbol): Likewise.
513 * vms.c (vms_bfd_define_common_symbol): Likewise.
514 * xcoff-target.h (_bfd_xcoff_bfd_define_common_symbol): Likewise.
515 * xsym.c (bfd_sym_bfd_define_common_symbol): Likewise.
516 * coff-rs6000.c (rs6000coff_vec): Add _bfd_xcoff_define_common_symbol.
517 (pmac_xcoff_vec): Likewise.
518 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
519 (aix5coff64_vec): Likewise.
520 * linker.c (bfd_generic_define_common_symbol): New function.
521 * targets.c (BFD_JUMP_TABLE_LINK): Add NAME##_bfd_define_common_symbol.
522 (_bfd_define_common_symbol): New field.
523 * libcoff-in.h (_bfd_xcoff_define_common_symbol): Declare.
524 * xcofflink.c (_bfd_xcoff_define_common_symbol): New function.
525 (xcoff_build_ldsyms): Don't set XCOFF_DEF_REGULAR for common
526 symbols here.
527 * bfd-in2.h: Regenerate.
528 * libbfd.h: Likewise.
529 * libcoff.h: Likewise.
530
20135e4c
NC
5312009-04-15 Anthony Green <green@moxielogic.com>
532
533 * targets.c: Add moxie support.
534 * Makefile.am: Ditto.
535 * Makefile.in: Rebuilt.
536 * cpu-moxie.c, elf32-moxie.c: New files.
537 * archures.c: Add moxie support.
538 * configure.in: Add moxie support.
539 * configure: Rebuilt.
540 * config.bfd, archures.c: Add moxie support.
541 * bfd-in2.h: Rebuilt.
542
82b5c97a
CL
5432009-04-15 Christophe Lyon <christophe.lyon@st.com>
544
545 * elf32-arm.c (elf32_arm_final_link_relocate): Don't convert ARM
546 branch to an undef weak symbol into a jump to next instruction if
547 a PLT entry will be created.
548
0408dee6
DK
5492009-04-14 Dave Korn <dave.korn.cygwin@gmail.com>
550
551 * coffgen.c (make_a_section_from_file): Set the backend long
552 section names enable if long section names found on input.
553 * coffcode.h: Extend long section names documentation to match.
554
a0c402a5
L
5552009-04-08 H.J. Lu <hongjiu.lu@intel.com>
556
557 * elflink.c (elf_link_add_object_symbols): Warn alternate ELF
558 machine code.
559
4d28413b
DD
5602009-04-07 DJ Delorie <dj@redhat.com>
561
562 * archures.c: Add bfd_mach_mep_c5.
563 * bfd-in2.h: Likewise.
564 * cpu-mep.c: Add bfd_c5_arch.
565 * elf32-mep.c: Support it.
566
bb6198d2
L
5672009-04-07 H.J. Lu <hongjiu.lu@intel.com>
568
569 * elflink.c (_bfd_elf_section_already_linked): Add `\n' for
570 info->callbacks->einfo.
571 * linker.c (_bfd_generic_section_already_linked): Likewise.
572
bcb012d3
DD
5732009-04-06 DJ Delorie <dj@redhat.com>
574
575 * elf32-h8300.c (elf32_h8_relax_section): Relax MOVA opcodes.
576
db1fe6e9
L
5772009-04-06 H.J. Lu <hongjiu.lu@intel.com>
578
579 * coff-x86_64.c (bfd_pe_print_pdata): Defined to
580 _bfd_pex64_print_pdata only if PE is defined.
581
582 * libpei.h (_bfd_pep_print_x64_pdata): Renamed to ...
583 (_bfd_pex64_print_pdata): This.
584
585 * peXXigen.c (_bfd_pep_print_x64_pdata): Renamed to ...
586 (_bfd_pex64_print_pdata): This. Defined only if COFF_WITH_pex64
587 is defined.
588
c7c7219d
KT
5892009-04-05 Kai Tietz <kai.tietz@onevision.com>
590
591 * coff-x86_64.c (bfd_pe_print_pdata): Define as
592 _bfd_pep_print_x64_pdata.
593 * libpei.h (_bfd_pep_print_x64_pdata): Add prototype.
594 * peXXigen.c (_bfd_pep_print_x64_pdata): New.
595
3df502ae
SA
5962009-04-02 Sterling Augustine <sterling@jaw.hq.tensilica.com>
597
598 * elf32-xtensa.c (relax_property_section): Always set r_offset
599 to zero.
600
d3626fb0
CL
6012009-04-02 Christophe Lyon <christophe.lyon@st.com>
602
603 * elf32-arm.c (elf32_arm_stub_long_branch_v4t_thumb_thumb,
604 elf32_arm_stub_long_branch_v4t_thumb_thumb_pic): Two new long
605 branch stubs.
606 (elf32_arm_stub_type): New enum values for the two new stubs.
607 (arm_type_of_stub): Make use of the two new stubs.
608 (arm_size_one_stub): Handle the two new stubs.
609
fe723c87
MT
6102009-04-01 Matt Thomas <matt@netbsd.org>
611
612 * elf32-vax.c (elf_vax_check_relocs): Do not put relocations against
613 hidden symbols into the GOT or PLT.GOT.
614 (elf_vax_relocate_section): Do not emit a PCREL reloc
615 into a shared object if it is against a hidden symbol.
616
ee698300
RS
6172009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
618
619 * xcofflink.c (xcoff_archive_info): Add contains_shared_object_p
620 and know_contains_shared_object_p.
621 (xcoff_archive_contains_shared_object_p): Add an "info" parameter.
622 Cache the result in the archive_info table.
623 (xcoff_auto_export_p): Add an "info" parameter and update the
624 call to xcoff_archive_contains_shared_object_p.
625 (xcoff_mark_auto_exports): Update accordingly.
626 (xcoff_post_gc_symbol): Likewise.
627
54e2dbe0
RS
6282009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
629
630 * xcofflink.c (bfd_link_input_bfd): Treat __rtinit as C_HIDEXT
631 rather than C_EXT.
632
2e470849
RS
6332009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
634
635 * coff-rs6000.c (member_layout): New structure.
636 (archive_iterator): Likewise.
637 (member_layout_init): New function.
638 (archive_iterator_begin): Likewise.
639 (archive_iterator_next): Likewise.
640 (xcoff_write_armap_old): Use the new iterator functions.
641 (do_shared_object_padding): Delete.
642 (xcoff_write_armap_big): Use the new iterator functions. Simplify
643 handling of arch_info.
644 (xcoff_write_archive_contents_old): Allocate arelt_data in the
645 first loop rather than the second. Allocate a member header if
646 there isn't one, then work out the stat information and length
647 in the first loop too. Use the new iterators for the second loop.
648 (xcoff_write_archive_contents_big): Likewise.
649
24c611d1
RS
6502009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
651
652 * bfd-in.h (bfd_xcoff_split_import_path): Declare.
653 (bfd_xcoff_set_archive_import_path): Likewise.
654 * bfd-in2.h: Regenerate.
655 * xcofflink.c: Include libiberty.h.
656 (xcoff_archive_info): New structure.
657 (xcoff_archive_info_hash): New function.
658 (xcoff_archive_info_eq): Likewise.
659 (xcoff_get_archive_info): Likewise.
660 (_bfd_xcoff_bfd_link_hash_table_create): Initialize archive_info.
661 (bfd_xcoff_split_import_path): New function.
662 (bfd_xcoff_set_archive_import_path): Likewise.
663 (xcoff_set_import_path): Move earlier in file.
664 (xcoff_link_add_dynamic_symbols): Set the import path of a non-archive
665 object to the the directory part of the bfd's filename. Get the
666 import path and filename of an archive object from the archive's
667 xcoff_tdata, initializing it if necessary. Update use of
668 import_file_id.
669 (bfd_link_input_bfd): Update use of import_file_id.
670 (xcoff_write_global_symbol): Likewise.
671
d286971a
RS
6722009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
673
674 * xcofflink.c (xcoff_link_hash_table): Moved from include/coff/xcoff.h.
675
6762009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
677
678 * xcofflink.c (xcoff_link_create_extra_sections): Don't create
679 a .loader section for relocatable links.
680 (xcoff_need_ldrel_p): New function.
681 (xcoff_mark): Use it.
682 (bfd_xcoff_link_count_reloc): Only count loader relocs if there's
683 a loader section.
684 (xcoff_build_ldsym): New function, split out from...
685 (xcoff_build_ldsyms): ...here. Rename to...
686 (xcoff_post_gc_symbol): ...this. Only export symbols, and only
687 call xcoff_build_ldsym, if there's a loader section.
688 (xcoff_build_loader_section): New function, extracted verbatim from...
689 (bfd_xcoff_size_dynamic_sections): ...here. Only call it if
690 there's a loader section. Only add an __rtinit loader symbol
691 if there's a loader section. Update after above name change.
692 (xcoff_symbol_section, xcoff_create_ldrel): New functions.
693 (bfd_link_input_bfd): Use xcoff_need_ldrel_p, xcoff_symbol_section
694 and xcoff_create_ldrel.
695 (xcoff_write_global_symbol): Use xcoff_create_ldrel.
696 (xcoff_reloc_link_order): Likewise, but only call it if there's
697 a loader section. Use xcoff_symbol_section.
698 (_bfd_xcoff_bfd_final_link): Only use fdinfo.ldrel and fdinfo.ldsym
699 if there's a loader section.
700
8707bb87
RS
7012009-04-01 Richard Sandiford <rdsandiford@googlemail.com>
702
703 * xcofflink.c (bfd_link_input_bfd): Fix buffer overrun.
704
e780aef2
CL
7052009-04-01 Christophe Lyon <christophe.lyon@st.com>
706
707 * elf32-arm.c (group_sections): Rewrite loops for better
708 readability.
709
c301e700
DD
7102009-03-30 DJ Delorie <dj@redhat.com>
711
712 * elflink.c (elf_link_input_bfd): Don't try to resolve complex
713 relocs when doing a relocatable link.
714
3895f852
MM
7152009-03-28 Mark Mitchell <mark@codesourcery.com>
716
717 * coff-arm.c (coff_arm_merge_private_bfd_data): Use "error:", not
718 "ERROR:", in error messages.
719 * cpu-arm.c (bfd_arm_merge_machines): Likewise.
720 * elf-attrs.c (_bfd_elf_merge_object_attributes): Likewise.
721 * elf32-arm.c (tag_cpu_arch_combine): Likewise.
722 (elf32_arm_merge_eabi_attributes): Likewise.
723 (elf32_arm_merge_private_bfd_data): Likewise.
724
ea882e87
NC
7252009-03-27 Nick Clifton <nickc@redhat.com>
726
727 * section.c (bfd_get_section_contents): Detect and handle the case
728 where a section has the SEC_IN_MEMORY flag set but no actual
729 contents allocated.
730
9433b9b1
AM
7312009-03-26 Alan Modra <amodra@bigpond.net.au>
732
733 PR 6494
734 * elf.c (copy_elf_program_header): Do not check that PT_GNU_RELRO
735 p_filesz and p_memsz are equal. Use p_memsz as the segment size.
736 (assign_file_positions_for_non_load_sections): Zap PT_GNU_RELRO
737 if we don't find matching PT_LOAD when copying.
738
dc1aa734
SR
7392009-03-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
740
741 * elf32-crx.c (crx_elf_howto_table): Zero the src_mask field of
742 the reloc descriptions.
743
34d3d6b9
HPN
7442009-03-25 Hans-Peter Nilsson <hp@axis.com>
745
746 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
747 <R_CRIS_16_GOT_GD, case R_CRIS_32_GOT_GD>: Handle COMMON symbols.
748 <case R_CRIS_16_TPREL, R_CRIS_32_TPREL>: Ditto.
749
34274ccc
L
7502009-03-24 H.J. Lu <hongjiu.lu@intel.com>
751
752 * cpu-i386.c (bfd_x86_64_arch_intel_syntax): Make it static.
753 (bfd_i386_arch_intel_syntax): Likewise.
754 (i8086_arch): Likewise.
755 (bfd_x86_64_arch): Likewise.
756
019c5a2e
HPN
7572009-03-24 Hans-Peter Nilsson <hp@axis.com>
758
6718f446
HPN
759 * elf32-cris.c (cris_elf_relocate_section): <case
760 R_CRIS_16_DTPREL, R_CRIS_32_DTPREL>: Allow use of non-local
761 symbols for non-allocated sections. Don't check whether to
762 generate R_CRIS_DTPMOD for non-allocated sections.
763 (cris_elf_gc_sweep_hook) <case R_CRIS_32_DTPREL>: Don't
764 handle relocation GC:ing if applied to non-allocated section.
765 (cris_elf_check_relocs): Similar.
766
019c5a2e
HPN
767 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
768 <R_CRIS_16_GOT_GD, R_CRIS_32_GOT_GD>: Don't include the TLS size
769 when emitting a known TP offset in the GOT.
770
ffcfec52
AM
7712009-03-23 Alan Modra <amodra@bigpond.net.au>
772
773 * elf64-ppc.c (synthetic_opd): Delete.
774 (compare_symbols): Look for .opd name rather than section match.
775 (ppc64_elf_get_synthetic_symtab): Likewise.
776
c6dd29ce
AM
7772009-03-21 Alan Modra <amodra@bigpond.net.au>
778
779 * elf32-ppc.c (is_pic_glink_stub): Delete.
780 (is_nonpic_glink_stub): New function.
781 (ppc_elf_get_synthetic_symtab): Check for last non-pic stub rather
782 than first pic one.
783 (struct ppc_elf_link_hash_table <glink_pltresolve>): Comment fix.
784
8c21ca21
AK
7852009-03-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
786 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
787
788 * elf32-s390.c (elf_s390_check_relocs): Use the SYMBOL_*
4f360784 789 macros for visibilty and locality checks.
8c21ca21
AK
790 (elf_s390_adjust_dynamic_symbol): Likewise.
791 (allocate_dynrelocs): Likewise.
792 (elf_s390_relocate_section): Likewise.
793 (elf_s390_finish_dynamic_symbol): Likewise.
794 * elf64-s390.c (elf_s390_check_relocs): Likewise.
795 (elf_s390_adjust_dynamic_symbol): Likewise.
796 (allocate_dynrelocs): Likewise.
797 (elf_s390_relocate_section): Likewise.
798 (elf_s390_finish_dynamic_symbol): Likewise.
799
156621f3
KT
8002009-03-19 Kai Tietz <kai.tietz@onevision.com>
801
802 * bfd-in2.h: Regenerated.
803 * coffcode.h (sec_to_styp_flags): For pe-coff add SEC_READONLY
804 for debugging sections and map memory read/write dependent on
805 SEC_COFF_NOREAD.
806 (styp_to_sec_flags): Set SEC_COFF_NOREAD for sections
807 without memory read flags set.
808 * section.c: Add SEC_COFF_NOREAD to section flags.
809
d1fa68d3
AS
8102009-03-19 Andreas Schwab <schwab@linux-m68k.org>
811
812 * elf32-hppa.c (final_link_relocate): Cast bfd_vma values to long
813 for format string.
814
ad2adbc8
AM
8152009-03-19 Alan Modra <amodra@bigpond.net.au>
816
817 * elf32-spu.c (spu_elf_find_overlays): Separate error return from
818 "no overlays" return. If there are overlays, create overlay
819 manager entry symbols here, so that..
820 (spu_elf_build_stubs): ..we don't need to set them up here.
821 Simplify entry symbol tests.
822 * elf32-spu.h (spu_elf_find_overlays): Update prototype.
823
67cc5033
MK
8242009-03-18 Mark Kettenis <kettenis@gnu.org>
825
d1fa68d3 826 * elf.c (elfcore_grok_openbsd_procinfo)
67cc5033
MK
827 (elfcore_grok_openbsd_note): New functions.
828 (elf_parse_notes): Handle notes from OpenBSD ELF core files.
829
8d25cc3d
AM
8302009-03-18 Alan Modra <amodra@bigpond.net.au>
831
3889c459 832 * vms-hdr.c: Don't include alloca.h.
8d25cc3d
AM
833 * elf32-m68hc1x.c: Include alloca-conf.h.
834 * xsym.c: Likewise.
835 * elf64-hppa.c: Likewise. Remove existing #if's handling alloca.
836 * som.c: Likewise.
837 * Makefile.am: Run "make dep-am".
838 * Makefile.in: Regenerate.
839
a89e6478
DJ
8402009-03-17 Daniel Jacobowitz <dan@codesourcery.com>
841
842 * elf32-arm.c (elf32_arm_check_relocs): Correct symbian_p test.
843
a7e11ee1
AM
8442009-03-17 Alan Modra <amodra@bigpond.net.au>
845
846 * elf32-spu.h (struct spu_elf_params): ovly_flavour now only 1 bit.
847 Add compact_stub.
848 (emum _ovly_flavour): Delete ovly_compact, ovly_none.
849 * elf32-spu.c (struct spu_link_hash_table): Replace ovly_load and
850 ovly_return fields with ovly_entry[2]. Adjust all users.
851 (spu_elf_find_overlays): Set ovly_entry[1] from __icache_call_handler
852 when soft-icache.
853 (spu_elf_build_stubs): Likewise.
854 (ovl_stub_size): Change arg to spu_elf_params pointer. Adjust for
855 ovly_flavour changes. Update all callers.
856 (ovl_stub_size_log2): New function.
857 (build_stub): Handle compact icache stubs. Use different manager
858 entry point for stubs in non-icache area.
859 (spu_elf_size_stubs): Don't allocate space for indirect branch
860 descriptors.
861 (spu_elf_build_stubs): And don't built them.
862
607a83c9
AS
8632009-03-16 Andrew Stubbs <ams@codesourcery.com>
864
865 * dwarf2.c (read_section): Always use rawsize, if available.
866
588f62fc
AM
8672009-03-16 Alan Modra <amodra@bigpond.net.au>
868
869 * simple.c (bfd_simple_get_relocated_section_contents): Use larger
870 of rawsize and size for buffer.
871
a14c90c1
UW
8722009-03-15 Ulrich Weigand <uweigand@de.ibm.com>
873
874 * elf32-spu.c (spu_elf_check_vma): Do not reset auto_overlay
875 parameter just because fixed sections fit into local store.
876 (spu_elf_auto_overlay): Do not declare as "noreturn". Skip
877 generating overlays if fixed sections plus reserved stack
878 and heap space fit into local store.
879
30c665df
AM
8802009-03-15 Alan Modra <amodra@bigpond.net.au>
881
882 * elf32-spu.c (build_stub): Correct icache set_id.
883 (spu_elf_relocate_section): Likewise.
884
f95942a3
RS
8852009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
886
887 * xcofflink.c (xcoff_link_check_archive_element): Only free the
888 symbol table if it was created by the current call.
889
670562e9
RS
8902009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
891
892 * xcofflink.c (xcoff_build_ldsyms): Give imported descriptors
893 class XMC_DS rather than XMC_UA.
894
b64232cc
RS
8952009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
896
897 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Replace the
898 bfd_boolean export_defineds parameter with an unsigned int
899 auto_export_flags parameter.
900 * bfd-in2.h: Regenerate.
901 * xcofflink.c (xcoff_archive_contains_shared_object_p): New function,
902 split out from xcoff_build_ldsyms.
903 (xcoff_covered_by_expall_p): New function.
904 (xcoff_auto_export_p): New function, split out from xcoff_build_ldsyms
905 but with extra code to handle -bexpfull and -bexpall.
906 (xcoff_mark_auto_exports): New function.
907 (xcoff_build_ldsyms): Use xcoff_auto_export_p to decide whether
908 a function should be automatically exported.
909 (bfd_xcoff_size_dynamic_sections): Replace the export_defineds
910 parameter with an auto_export_flags parameter. Update ldinfo
911 accordingly. Use xcoff_mark_auto_exports to mark all automatically-
912 exported symbols.
913
7d504122
RS
9142009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
915
916 * xcofflink.c (xcoff_mark_symbol_by_name): New function.
917 (bfd_xcoff_size_dynamic_sections): Use it to mark the entry,
918 init and fini functions. Do garbage collection for objects
919 without an entry point too.
920
8602d4fe
RS
9212009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
922
923 * coffcode.h (coff_pointerize_aux_hook): Update CSECT_SYM_P to
924 check whether a symbol has csect information.
925 (coff_print_aux): Likewise.
926 * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Handle auxillary csect
927 information for C_AIX_WEAKEXT too.
928 (_bfd_xcoff_swap_aux_out): Likewise.
929 (xcoff_reloc_type_br): Handle defweak symbols too.
930 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Handle auxillary csect
931 information for C_AIX_WEAKEXT too.
932 (_bfd_xcoff64_swap_aux_out): Likewise.
933 (xcoff64_reloc_type_br): Handle defweak symbols too.
934 * coffgen.c (coff_print_symbol): Handle auxillary function
935 information for C_AIX_WEAKEXT too.
936 * xcofflink.c (_bfd_xcoff_canonicalize_dynamic_symtab): Set BSF_WEAK
937 instead of BSF_GLOBAL if the L_WEAK flag is set.
938 (xcoff_dynamic_definition_p): New function.
939 (xcoff_link_add_dynamic_symbols): Use it to decide whether ldsym
940 defines h. Don't change h if ldsym isn't the definition. Otherwise,
941 always take the symbol class from the ldsym. Use weak bfd symbol
942 types for weak ldsyms.
943 (xcoff_link_add_symbols): Use CSECT_SYM_P and EXTERN_SYM_P.
944 Fix the check for whether a definition is from a shared object.
945 Allow redefinitions of weak symbols.
946 (xcoff_link_check_ar_symbols): Use EXTERN_SYM_P.
947 (xcoff_keep_symbol_p): Likewise.
948 (bfd_xcoff_size_dynamic_sections): Use CSECT_SYM_P.
949 (xcoff_link_input_bfd): Use CSECT_SYM_P and EXTERN_SYM_P.
950 Add .loader entries for C_AIX_WEAKEXT as well as C_EXT symbols,
951 but mark them as L_WEAK.
952 (xcoff_write_global_symbol): Treat weak symbols as C_AIX_WEAKEXT
953 instead of C_EXT if C_AIX_WEAKEXT == C_WEAKEXT.
954
5b49f6dc
RS
9552009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
956
957 * xcofflink.c (xcoff_mark): When walking the relocations,
958 only mark the target symbol or the target section, not both.
959 (xcoff_final_definition_p): New function.
960 (xcoff_keep_symbol_p): Use it to check whether an external XCOFF
961 symbol is a valid definition of the associated output symbol.
962 Use XCOFF_ALLOCATED to stop the same hash table entry having
963 two output symbols.
964 (bfd_xcoff_size_dynamic_sections): Set XCOFF_ALLOCATED when
965 keeping a symbol.
966 (xcoff_link_input_bfd): Use xcoff_final_definition_p.
967
c4037431
RS
9682009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
969
970 * xcofflink.c (bfd_xcoff_import_symbol): Treat imported absolute
971 symbols as XMC_XO.
972
3df13c4a
RS
9732009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
974
975 * libcoff-in.h (xcoff_tdata): Add a lineno_counts field.
976 * libcoff.h: Regenerate.
977 * xcofflink.c (xcoff_link_add_symbols): Record per-symbol
978 line-number counts in the bfd's lineno_counts field.
979 Don't keep per-csect line-number counts.
980 (xcoff_sweep): Don't update per-csect line-number counts.
981 (bfd_xcoff_size_dynamic_sections): Count the number of line-number
982 entries in each output section.
983 (xcoff_link_input_bfd): Get the number of line numbers from
984 the bfd's lineno_counts field, rather than recalculating it
985 from scratch. Fix the range check when updating C_BINCL and
986 C_EINCL symbols.
987 (_bfd_xcoff_bfd_final_link): Don't count the output line numbers
988 here. Don't expect csects to have line-number counts.
989
e450936a
RS
9902009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
991
992 * libcoff-in.h (xcoff_tdata): Change debug_indices to a signed long.
993 * libcoff.h: Regenerate.
994 * xcofflink.c (xcoff_keep_symbol_p): New function, using the
995 "skip" logic from xcoff_link_input_bfd.
996 (bfd_xcoff_size_dynamic_sections): Explicitly skip dynamic
997 objects in a dynamic link, rather than checking whether csectpp
998 is null. Always allocate debug_index for other objects,
999 and always go through the loop. Update the type of debug_index
1000 after the change above. Read the auxillary csect information
1001 and use xcoff_keep_symbol_p to decide whether a symbol should
1002 be kept. Set its debug_index to -2 if not.
1003 (xcoff_link_input_bfd): Update the type of debug_index after
1004 the change above and always expect it to be nonnull. Use it to
1005 test whether a symbol should be stripped, rather than making the
1006 decision here. Postpone all symbol creation to the second pass.
1007
47dfb2ca
RS
10082009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
1009
1010 * xcofflink.c: (xcoff_mark_symbol): Mark the TOC section when
1011 creating a descriptor.
1012 (xcoff_sweep): Don't mark toc_section unless it's needed.
1013 (bfd_xcoff_size_dynamic_sections): Skip the toc_section
1014 when marking every bfd.
1015 (xcoff_link_input_bfd): Skip all TOC anchors.
1016 (xcoff_toc_section_p, xcoff_find_tc0): New functions.
1017 (_bfd_xcoff_bfd_final_link): Don't set the output bfd's TOC anchor
1018 to -1; call xcoff_find_tc0 instead.
1019
4cc02a02
RS
10202009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
1021
1022 * libcoff-in.h (xcoff_section_tdata): Update commentary.
1023 * libcoff.h: Regenerate.
1024 * xcofflink.c (xcoff_link_add_symbols): Set the csect of XTY_ER
1025 symbols to bfd_und_section_ptr or bfd_abs_section_ptr, rather than
1026 the previous symbol's csect. Treat last_symndx as an inclusive value
1027 and simplify its handling.
1028 (xcoff_mark): Treat last_symndx as an inclusive value. Only mark
1029 symbols with the right csect. Don't mark rsec when processing
d1fa68d3 1030 relocations against undefined or absolute sections.
4cc02a02
RS
1031 (bfd_xcoff_size_dynamic_sections): Don't check the SEC_MARK flag
1032 of bfd_und_section_ptr.
1033 (xcoff_link_input_bfd): Likewise.
1034
858ef0ce
RS
10352009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
1036
1037 * coff-rs6000.c (xcoff_ppc_relocate_section): Report relocations
1038 against undefined symbols if the symbol's XCOFF_WAS_UNDEFINED
1039 flag is set. Assert that all undefined symbols are either
1040 imported or defined by a dynamic object.
1041 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
1042 * xcofflink.c (xcoff_link_add_symbols): Extend function-symbol
1043 handling to all relocations. Only set XCOFF_CALLED for function
1044 symbols.
1045 (xcoff_find_function): New function, split out from...
1046 (bfd_xcoff_export_symbol) ...here.
1047 (xcoff_set_import_path): New function, split out from...
1048 (bfd_xcoff_import_symbol): ...here. Remove assertion for old
1049 meaning of XCOFF_CALLED.
1050 (xcoff_mark_symbol): If we mark an undefined and unimported
1051 symbol, find some way of defining it. If the symbol is a function
1052 descriptor, fill in its definition automatically. If the symbol
1053 is a function, mark its descriptor and allocate room for global
1054 linkage code. Otherwise mark the symbol as implicitly imported.
1055 Move the code for creating function descriptors from...
d1fa68d3 1056 (xcoff_build_ldsyms): ...here. Use XCOFF_WAS_UNDEFINED to
858ef0ce
RS
1057 check for symbols that were implicitly defined.
1058 (xcoff_mark): Don't count any dynamic relocations against
1059 function symbols.
1060 (bfd_xcoff_size_dynamic_sections): Save the rtld parameter
1061 in the xcoff link info.
1062 (xcoff_link_input_bfd): Remove handling of undefined and
1063 unexported symbols.
1064
12b2cce9
RS
10652009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
1066
1067 * coff-rs6000.c (xcoff_reloc_type_br): Make the branch absolute
1068 if the target is absolute. Fix comment typo.
1069 (xcoff_ppc_relocate_section): Remove FIXME.
1070 * coff64-rs6000.c (xcoff64_reloc_type_br): Make the branch absolute
1071 if the target is absolute.
1072
0e3212ad
RS
10732009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
1074
1075 * xcofflink.c (xcoff_mark, xcoff_link_input_bfd): Don't copy
1076 R_POS and R_NEG relocations against absolute symbols to the
1077 .loader section.
1078
d19d97e9
RS
10792009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
1080
1081 * coff64-rs6000.c (xcoff64_write_object_contents): Set the cputype
1082 to 2 for bfd_mach_ppc_620.
1083
e5231592
RS
10842009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
1085
1086 * config.bfd: Treat AIX 6+ in the same way as AIX 5.
1087 * configure.in: Likewise.
1088 * configure: Regenerate.
1089
3516e984
L
10902009-03-13 H.J. Lu <hongjiu.lu@intel.com>
1091
1092 PR binutils/9945
1093 * elf.c (assign_section_numbers): Generate symbol table if there
1094 is any relocation in output.
1095 (_bfd_elf_compute_section_file_positions): Likewise.
1096
ce98a316
NC
10972009-03-13 Nick Clifton <nickc@redhat.com>
1098
1099 PR 9934
1100 * elf-bfd.h (NUM_SHDR_ENTRIES): Cope with an empty section.
1101 * elflink.c (elf_link_read_relocs_from_section): Use
1102 NUM_SHDR_ENTRIES. Gracefully handle the case where there are
1103 relocs but no symbol table.
1104 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
1105
c4fb387b
L
11062009-03-12 H.J. Lu <hongjiu.lu@intel.com>
1107
1108 PR ld/9938
1109 * elf32-i386.c (elf_i386_check_tls_transition): Use strncmp
1110 to check ___tls_get_addr.
1111
1112 * elf64-x86-64.c (elf64_x86_64_check_tls_transition): Use
1113 strncmp to check __tls_get_addr.
1114
53638231
AS
11152009-03-12 Andrew Stubbs <ams@codesourcery.com>
1116
1117 * dwarf2.c (read_section): Always check the offset, even when the
1118 section has been read before.
1119
09e8c3bf
L
11202009-03-11 H.J. Lu <hongjiu.lu@intel.com>
1121
1122 * elf32-i386.c (elf_i386_check_tls_transition): Fix a typo in
1123 comments.
1124
36e4dce6
CD
11252009-03-11 Chris Demetriou <cgd@google.com>
1126
1127 * bfd.c (BFD_DETERMINISTIC_OUTPUT): New flag.
1128 * bfd-in2.h: Regenerate.
1129 * archive.c (bfd_ar_hdr_from_filesystem): If BFD_DETERMINISTIC_OUTPUT
1130 flag is set, use 0 for uid, gid, and timestamp, and use 0644 for file
1131 mode.
1132 (bsd_write_armap): Likewise.
1133 (_bfd_archive_bsd_update_armap_timestamp): If BFD_DETERMINISTIC_OUTPUT
1134 flag is set, do nothing.
1135 (coff_write_armap): If BFD_DETERMINISTIC_OUTPUT flag is set, use 0
1136 for timestamp.
1137
9b175a76
UW
11382009-03-11 Ulrich Weigand <uweigand@de.ibm.com>
1139
1140 * elf32-spu.c (find_function_stack_adjust): Handle sf instruction
1141 used to update stack pointer.
1142
f501de17
DA
11432009-03-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1144
1145 PR binutils/9921
1146 * som.c (som_bfd_derive_misc_symbol_info): Set symbol type ST_ABSOLUTE
1147 for unknown symbols in absolute section.
1148
d11fd249
NC
11492009-03-06 Nick Clifton <nickc@redhat.com>
1150
1151 * po/es.po: Updated Spanish translation.
1152
8cd931b7
CL
11532009-03-05 Christophe Lyon <christophe.lyon@st.com>
1154
1155 * elf32-arm.c (group_sections): Take next section size into
1156 account before accepting to group it.
1157
5fa9e92f
CL
11582009-03-05 Christophe Lyon <christophe.lyon@st.com>
1159
1160 * elf32-arm.c (arm_type_of_stub): Handle long branches targetting
1161 PLT entries.
1162 (elf32_arm_final_link_relocate): Likewise.
1163
b92997d6
AM
11642009-03-05 Moritz Kroll <Moritz.Kroll@gmx.de>
1165
1166 PR 9923
1167 * peXXigen.c (_bfd_XXi_final_link_postscript): Check h->root.type.
1168
727fc41e
AM
11692009-03-04 Alan Modra <amodra@bigpond.net.au>
1170
1171 * reloc.c (BFD_RELOC_PPC_TLSGD, BFD_RELOC_PPC_TLSLD): New.
1172 * section.c (struct bfd_section): Add has_tls_get_addr_call.
1173 (BFD_FAKE_SECTION): Init new flag.
1174 * ecoff.c (bfd_debug_section): Likewise.
1175 * bfd-in2.h: Regenerate.
1176 * libbfd.h: Regenerate.
1177 * elf32-ppc.c (ppc_elf_howto_raw): Add R_PPC_TLSGD and R_PPC_TLSLD.
1178 (ppc_elf_reloc_type_lookup): Handle new relocs.
1179 (ppc_elf_check_relocs): Set has_tls_get_addr_call on finding such
1180 without marker relocs.
1181 (ppc_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs
1182 if section has no old-style calls.
1183 (ppc_elf_relocate_section): Set tls_mask for non-tls relocs too.
1184 Don't try to optimize new-style __tls_get_addr call when handling
1185 arg setup relocs. Instead do so for R_PPC_TLSGD and R_PPC_TLSLD
1186 relocs.
1187 * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_TLSGD, R_PPC64_TLSLD.
1188 (ppc64_elf_reloc_type_lookup): Handle new relocs.
1189 (ppc64_elf_check_relocs): Set has_tls_get_addr_call on finding such
1190 without marker relocs.
1191 (ppc64_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs
1192 if section has no old-style calls. Set toc_ref for new relocs as
1193 appropriate.
1194 (ppc64_elf_relocate_section): Set tls_mask for non-tls relocs too.
1195 Don't try to optimize new-style __tls_get_addr call when handling
1196 arg setup relocs. Instead do so for R_PPC_TLSGD and R_PPC_TLSLD
1197 relocs.
1198
51dec227
AM
11992009-03-04 Alan Modra <amodra@bigpond.net.au>
1200
1201 PR 6768
1202 * configure.in: Test for ld --as-needed support. Link shared
1203 libbfd against libm.
1204 * configure: Regenerate.
1205
a1f7ca36
AM
12062009-03-03 Alan Modra <amodra@bigpond.net.au>
1207
1208 * Makefile.am: Run "make dep-am".
1209 * Makefile.in: Regenerate.
1210
c3b7224a
NC
12112009-03-02 Qinwei <qinwei@sunnorth.com.cn>
1212
1213 * elf32-score7.c: New file.
1214 * elf32-score.h: New file.
1215 * elf32-score.c: Add code to support score 7. Set score7 as the
1216 default.
1217 * cpu-score.c: Add score7 architecure.
1218 (compatibile): New function.
1219 * Makefile.am: Add rules for building elf32-score7 object.
1220 * Makefile.in: Regenerate.
1221 * configure.in: Add elf32-score7 object to score vectors.
1222 * configure: Regenerate.
1223 * reloc.c: Add score7 relocs.
1224 * archures.c: Add score3 and score7 machine numbers.
1225 * bfd-in2.h: Regenerate.
1226 * libbfd.h: Regenerate.
1227
58e24671
RW
12282009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1229
1230 * configure: Regenerate.
1231
5887528b
DA
12322009-03-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1233
d45b7d74
DA
1234 * elf32-hppa.c (hppa32_elf_local_refcounts): New function.
1235 (elf32_hppa_check_relocs): Use it.
1236
5887528b
DA
1237 * elf_hppa_add_symbol_hook (elf_hppa_add_symbol_hook): Move to
1238 elf64-hppa.c.
1239 (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
1240 (elf_hppa_remark_useless_dynamic_symbols): Likewise.
1241 (elf_hppa_is_dynamic_loader_symbol): Likewise.
1242 (elf_hppa_record_segment_addrs): Likewise.
1243 (elf_hppa_final_link): Likewise.
1244 (elf_hppa_relocate_insn): Likewise.
1245 (elf_hppa_final_link_relocate): Likewise.
1246 (elf64_hppa_relocate_section): Likewise.
1247 * elf64-hppa.c: Insert above.
1248
a03bd320
DA
12492009-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1250
1251 * elf-hppa.h (elf_hppa_final_link): Use elf_hppa_final_link.
1252 (elf_hppa_final_link_relocate ): Rewrite eliminating dynamic hash table.
1253 (elf_hppa_relocate_section): Likewise.
1254 * elf64-hppa.c (struct elf64_hppa_link_hash_entry): Change to derive
1255 from struct elf_link_hash_entry. Add count field.
1256 (struct elf64_hppa_dyn_hash_table): Delete.
1257 (struct elf64_hppa_link_hash_table): Delete dyn_hash_table field.
1258 (elf64_hppa_hash_table): Rename to hppa_link_hash_table.
1259 (hppa_elf_hash_entry, eh_name): Define.
1260 (elf64_hppa_new_dyn_hash_entry): Delete.
1261 (elf64_hppa_dyn_hash_lookup): Delete.
1262 (elf64_hppa_dyn_hash_traverse): Delete.
1263 (get_dyn_name): Delete.
1264 (elf64_hppa_finalize_opd): Use struct elf_link_hash_entry * instead
1265 of struct elf64_hppa_dyn_hash_entry *.
1266 (elf64_hppa_finalize_dlt, llocate_global_data_dlt,
1267 allocate_global_data_plt, allocate_global_data_stub,
1268 allocate_global_data_opd, count_dyn_reloc, allocate_dynrel_entries):
1269 Likewise.
1270 (hppa64_link_hash_newfunc): New.
1271 (elf64_hppa_hash_table_create): Rework.
1272 (count_dyn_reloc): Likewise.
1273 (hppa64_elf_local_refcounts): New.
1274 (elf64_hppa_check_relocs): Rework using standard technique for recording
1275 local DLT, PLT and OPD reference counts.
1276 (elf64_hppa_dynamic_symbol_p): Revise using "eh" for struct
1277 elf_link_hash_entry *.
1278 (elf64_hppa_mark_exported_functions, allocate_global_data_dlt,
1279 allocate_global_data_plt, allocate_global_data_stub,
1280 allocate_global_data_opd, allocate_dynrel_entries,
1281 elf64_hppa_adjust_dynamic_symbol,
1282 elf64_hppa_mark_milli_and_exported_functions): Likewise.
1283 (elf64_hppa_create_dynamic_sections, elf64_hppa_size_dynamic_sections):
1284 Use hppa_link_hash_table. Rework.
1285 (elf64_hppa_link_output_symbol_hook): Rework.
1286 (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd,
1287 elf64_hppa_finalize_dlt, elf64_hppa_finalize_dynreloc,
1288 elf64_hppa_finish_dynamic_sections): Likewise.
1289
ebe24dd4
CL
12902009-02-26 Christophe Lyon <christophe.lyon@st.com>
1291
1292 * elf32-arm.c (stub_reloc_type): Removed.
1293 (insn_sequence): Renamed reloc_type field to r_type.
1294 (elf32_arm_stub_long_branch_v4t_arm_thumb_pic): New stub.
1295 (elf32_arm_stub_long_branch_v4t_thumb_arm_pic): Likewise.
1296 (elf32_arm_stub_long_branch_thumb_only_pic): Likewise.
1297 (elf32_arm_stub_type): Add new enum entries for the new stubs.
1298 (arm_stub_is_thumb): Catch new stubs.
1299 (arm_type_of_stub): Handle new stubs.
1300 (arm_size_one_stub): Use ARRAY_SIZE. Handle new stubs.
1301 (bfd_elf32_arm_process_before_allocation): Remove useless
1302 condition.
1303
b9d678e0
L
13042009-02-25 H.J. Lu <hongjiu.lu@intel.com>
1305
1306 * elf.c (elf_find_function): Use is_function_type to check
1307 function symbol.
1308
56fb3749
SA
13092009-02-24 Sterling Augustine <sterling@jaw.hq.tensilica.com>
1310
1311 * xtensa-modules.c: Revert to previous version 1.11 due
1312 to inadvertant commit.
1313
658ff993
SA
13142009-02-24 Sterling Augustine <sterling@tensilica.com>
1315
1316 * elf32-xtensa.c (text_action_add): Separate test for action
1317 type. Break if saved action is ta_widen_insn at same offset.
1318
cf3eccff
DJ
13192009-02-24 Daniel Jacobowitz <dan@codesourcery.com>
1320
1321 * elf32-arm.c (elf32_arm_stub_long_branch_any_any_pic): Rename
1322 to elf32_arm_stub_long_branch_any_arm_pic.
1323 (elf32_arm_stub_long_branch_any_thumb_pic): New.
1324 (enum elf32_arm_stub_type, arm_type_of_stub)
1325 (arm_size_one_stub): Handle any to ARM PIC and any to Thumb PIC
1326 separately.
1327
07d72278
DJ
13282009-02-24 Joseph Myers <joseph@codesourcery.com>
1329
1330 * elf32-arm.c (PREV_SEC): Update comment.
1331 (group_sections): Rename argument to stubs_always_after_branch.
1332 Reverse the list and place stubs at the end of input sections.
1333 Undefine NEXT_SEC.
1334 (elf32_arm_size_stubs): Update to use stubs_always_after_branch.
1335
4e31c731
DJ
13362009-02-23 Daniel Jacobowitz <dan@codesourcery.com>
1337
1338 * elf32-arm.c (arm_build_one_stub): Initialize stub_reloc_offset.
1339 Fix formatting.
1340 (arm_size_one_stub): Remove unnecessary break.
1341 (arm_map_one_stub): Fix formatting. Return after BFD_FAIL.
1342
13432009-02-23 Christophe Lyon <christophe.lyon@st.com>
461a49ca
DJ
1344
1345 * elf32-arm.c (stub_insn_type): New type.
1346 (stub_reloc_type): Likewise.
1347 (insn_sequence): Likewise.
1348 (elf32_arm_stub_long_branch_any_any): Encode using insn_sequence.
1349 (elf32_arm_stub_long_branch_v4t_arm_thumb): Likewise.
1350 (elf32_arm_stub_long_branch_thumb_only): Likewise.
1351 (elf32_arm_stub_long_branch_v4t_thumb_arm): Likewise.
1352 (elf32_arm_stub_short_branch_v4t_thumb_arm): Likewise.
1353 (elf32_arm_stub_long_branch_any_any_pic): Likewise.
1354 (elf32_arm_stub_hash_entry): Add new helper fields.
1355 (stub_hash_newfunc): Initialize these new fields.
1356 (arm_build_one_stub): Encode Arm and Thumb instructions separately
1357 to take endianness into account.
1358 (arm_size_one_stub): Compute size of stubs using insn_sequence.
1359 (arm_map_one_stub): Code is now more generic, thanks to
1360 insn_sequence.
1361
c2b4a39d
CL
13622009-02-23 Christophe Lyon <christophe.lyon@st.com>
1363
1364 * elf32-arm.c (elf32_arm_stub_long_branch_thumb_only): Fix stub
1365 code.
1366 (elf32_arm_stub_long_branch_v4t_thumb_arm): Likewise.
1367 (arm_type_of_stub): Use Thumb-only long branch stub (non-PIC) when
1368 BLX is not available. Fix typo in warning message. Add comments
1369 and improve formatting.
1370 (arm_build_one_stub): Adjust to new
1371 elf32_arm_stub_long_branch_v4t_thumb_arm stub.
1372 (arm_map_one_stub): Likewise.
1373
0c376465 13742009-02-23 Tristan Gingold <gingold@adacore.com>
a60a89d6
TG
1375 Eric Botcazou <ebotcazou@adacore.com>
1376 Douglas B Rupp <rupp@gnat.com>
0c376465
TG
1377
1378 * vms.h: Update copyright year, fix comments, reorder declarations.
1379 (_bfd_save_vms_section): Remove the prototype.
1380 (EGPS_S_V_NO_SHIFT): New constant.
1381 (bfd_vms_set_section_flags): New prototype.
1382 (EGPS_S_B_ALIGN, EGPS_S_W_FLAGS, EGPS_S_L_ALLOC, EGPS_S_B_NAMLNG): New
1383 constants.
1384 (EGSY_S_W_FLAGS): Ditto.
1385 (EGSY_S_V_QUAD_VAL): Ditto.
1386 (ESDF_S_L_VALUE, ESDF_S_L_PSINDX, ESDF_S_B_NAMLNG): Ditto.
1387 (EGST_S_W_FLAGS, EGST_S_Q_LP_1, EGST_S_Q_LP_2, EGST_S_L_PSINDX,
1388 EGST_S_B_NAMLNG): Ditto.
1389 (ESRF_S_B_NAMLNG): Ditto.
1390 (ETIR_S_C_HEADER_SIZE): Ditto.
1391 (EGPS_S_V_ALLOC_64BIT): Ditto.
1392 (DST_S_C_EPILOG): Ditto.
1393 (DST_S_C_SRC_SETLNUM_L, DST_S_C_SRC_SETLNUM_W) : Ditto.
1394 (DST_S_C_SRC_INCRLNUM_B): Ditto.
1395 (DST_S_B_PCLINE_UNSBYTE, DST_S_W_PCLINE_UNSWORD): Ditto.
1396 (DST_S_L_PCLINE_UNSLONG): Ditto.
1397 (DST_S_B_MODBEG_NAME, DST_S_L_RTNBEG_ADDRESS) : Ditto
1398 (DST_S_B_RTNBEG_NAME, DST_S_L_RTNEND_SIZE): Ditto
1399 (DST_S_C_SOURCE_HEADER_SIZE): Ditto.
1400 (DST_S_B_SRC_DF_LENGTH, DST_S_W_SRC_DF_FILEID): Ditto.
1401 (DST_S_B_SRC_DF_FILENAME, DST_S_B_SRC_UNSBYTE): Ditto.
1402 (DST_S_B_SRC_UNSBYTE): Ditto.
1403 (DST_S_W_SRC_UNSWORD, DST_S_L_SRC_UNSLONG): Ditto.
1404 Add prototypes.
1405 (vms_section, vms_reloc): Remove types.
1406 (hdr_struc): Replaced by ...
1407 (hdr_struct): ... new type.
1408 (EMH_S_W_HDRTYP, EMH_S_B_STRLVL, EMH_S_L_ARCH1): New constants.
1409 (EMH_S_L_ARCH2, EMH_S_L_RECSIZ, EMH_S_B_NAMLNG): Ditto.
1410 (EMH_DATE_LENGTH): Ditto.
1411 (eom_struc): Replaced by ...
1412 (eom_struct): ... new type.
1413 (EEOM_S_L_TOTAL_LPS, EEOM_S_W_COMCOD, EEOM_S_B_TFRFLG): New constants.
1414 (EEOM_S_L_PSINDX, EEOM_S_L_TFRADR): Ditto.
1415 (EIHD_S_K_MAJORID, EIHD_S_K_MINORID, EIHD_S_K_EXE): Ditto.
1416 (EIHD_S_L_SIZE, EIHD_S_L_ISDOFF, EIHD_S_L_SYMDBGOFF): Ditto.
1417 (EIHD_S_Q_SYMVVA, EIHD_S_L_IMGTYPE): Ditto.
1418 (EISD_S_L_EISDSIZE, EISD_S_L_SECSIZE, EISD_S_Q_VIR_ADDR): Ditto.
1419 (EISD_S_L_FLAGS, EISD_S_L_VBN, EISD_S_R_CONTROL): Ditto.
1420 (EISD_S_L_IDENT, EISD_S_T_GBLNAM): Ditto.
1421 (EISD_S_M_GBL, EISD_S_M_CRF, EISD_S_M_DZRO, EISD_S_M_WRT): Ditto.
1422 (EISD_S_M_INITALCODE, EISD_S_M_BASED, EISD_S_M_FIXUPVEC): Ditto.
1423 (EISD_S_M_RESIDENT, EISD_S_M_VECTOR, EISD_S_M_PROTECT): Ditto.
1424 (EISD_S_M_LASTCLU, EISD_S_M_EXE, EISD_S_M_NONSHRADR): Ditto.
1425 (EISD_S_M_QUAD_LENGTH, EISD_S_M_ALLOC_64BIT): Ditto.
1426 (EIHS_S_L_DSTVBN, EIHS_S_L_DSTSIZE, EIHS_S_L_GSTVBN): Ditto.
1427 (EIHS_S_L_GSTSIZE, EIHS_S_L_DMTVBN, EIHS_S_L_DMTBYTES): Ditto.
1428 (DBG_S_L_DMT_MODBEG, DBG_S_L_DST_SIZE): Ditto.
1429 (DBG_S_W_DMT_PSECT_COUNT, DBG_S_C_DMT_HEADER_SIZE): Ditto.
1430 (DBG_S_L_DMT_PSECT_START, DBG_S_L_DMT_PSECT_LENGTH)
1431 (DBG_S_C_DMT_PSECT_SIZE): Ditto.
1432 (enum file_type_enum): New type.
1433 (struct location_struct): Removed.
1434 (struct fileinfo, struct srecinfo, struct lineinfo): New types.
1435 (struct funcinfo, struct module): Ditto.
1436 (struct vms_private_data_struct): Update fields.
1437 (struct vms_section_data_struct): New type.
1438
1439 * vms.c: Update copyright year, fix comments,
1440 Fix includes for DECC, add prototypes.
1441 (vms_initialize): Use bfd_alloc instead of bfd_zalloc and remove
1442 some initializers.
1443 Use flavour to set is_vax, location_stack is removed.
1444 (struct pair): Declare.
1445 (fill_section_ptr): Initialize variables at declaration.
1446 Add guard to set SECTION_SYM flag, handlde und section.
1447 (vms_fixup_sections): Use struct pair for fill_section_ptr argument.
1448 (_bfd_vms_slurp_object_records): New function, replaces previous
1449 vms_object_p.
1450 (vms_slurp_module): New function.
1451 (vms_slurp_image): Ditto.
1452 (vms_object_p): Complete rewrite.
1453 (vms_mkobject): Use is_vax field to slect architecture.
1454 (free_reloc_stream): New function.
1455 (vms_convert_to_var): Ditto.
1456 (vms_convert_to_var_1): Ditto.
1457 (vms_convert_to_var_unix_filename): Ditto.
1458 (vms_close_and_cleanup): Call free_reloc_stream, convert file to
1459 VAR format on VMS.
1460 (vms_new_section_hook): Set alignment to 0, allocate private data.
1461 (vms_get_section_contents): Load content.
1462 (vms_get_symbol_info): Handle undefined section.
1463 (vms_find_nearest_line): Handle.
1464 (alloc_reloc_stream): New function.
1465 (vms_slurp_reloc_table): Ditto.
1466 (vms_get_reloc_upper_bound): Make it real.
1467 (vms_canonicalize_reloc): Do the real work.
1468 (alpha_howto_table): Add ALPHA_R_NOP, ALPHA_R_BSR, ALPHA_R_LDA,
1469 ALPHA_R_BOH.
1470 (vms_bfd_reloc_type_lookup): Handle NOP, BSR, LDA and BOH.
1471 (vms_set_arch_mach): Check arch.
1472 (vms_set_section_contents): Copy the content after allocation.
1473 (vms_alpha_vec): Update object flags.
1474
1475 * vms-tir.c: Update copyright year, fix comments,
1476 add prototypes for new functions.
1477 (dst_define_location): New function.
1478 (dst_restore_location): New function.
1479 (dst_retrieve_location): New function.
1480 (dst_check_allocation): New function.
1481 (image_dump): Call dst_check_allocation.
1482 (image_write_b): Ditto.
1483 (image_write_w): Ditto.
1484 (image_write_l): Ditto.
1485 (image_write_q): Ditto.
1486 (cmd_name): Handle STA_LW, STA_QW, STO_OFF, STO_IMM, STO_IMMR, STO_LW,
1487 STO_QW, OPR_ADD, CTL_SETRB, STC_LP_PSB, CTL_DFLOC, CTL_STLOC,
1488 CTL_STKDL.
1489 Call error handler instead of abort if name is not known.
1490 (etir_sta): Add quarter_relocs argument and set it.
1491 Fix cast.
1492 (etir_sto): Ditto.
1493 (etir_opr): Ditto, return FALSE in case of error.
1494 (etir_ctl): Add quarter_relocs argument and set it, fix cast.
1495 Fix CTL_DFLOC, CTL_STLOC, CTL_STKDL.
1496 (etir_stc): Add quarter_relocs argument and set it, fix cast.
1497 Fix STC_LP, STC_LP_PSB, STC_GBL and STC_CGA.
1498 Handle STC_LP_PSB, STC_BSR_GBL, STC_LDA_GBL, STC_BOH_GBL.
1499 Move STC_NOP_PS, STC_BSR_PS, STC_LDA_PS, STC_BOH_PS, STC_NBH_PS.
1500 Return FALSE in case of error.
1501 (tir_sta): Change sign of psect.
1502 (tir_ctl): Ditto.
1503 (tir_cmd): Fix cast. Makes tir_table static const.
1504 (etir_cmd): Add quarter_relocs argument, makes etir_table const,
1505 add argument to explain.
1506 (analyze_etir): Initialize maxptr, add quarter_relocs
1507 declaration, move some declarations into inner scopes.
1508 Handle quarter_relocs and STO_IMM.
1509 (_bfd_vms_slurp_tir): Use constant instead of hard-coded values.
1510 (_bfd_vms_slurp_relocs): New function.
1511 (_bfd_vms_decode_relocs): New function.
1512 (sto_imm): Rewritten.
1513 (start_first_etbt_record): New function.
1514 (start_another_etbt_record): Ditto.
1515 (etir_output_check): Ditto.
1516 (defer_reloc_p): Ditto.
1517 (_bfd_vms_write_tir): Remove nextoffset, convert a while-loop to
1518 a for-loop. Correctly deals with contents, deals with .vmsdebug,
1519 rewritte relocations handling.
1520 (_bfd_vms_write_tbt): Removed.
1521 (_bfd_vms_write_dbg): Ditto.
1522
1523 * vms-misc.c: Update copyright year, Fix comments.
1524 (_bfd_vms_get_header_values): Use 'size' instead of 'length'.
1525 (maybe_adjust_record_pointer_for_object): New function.
1526 (_bfd_vms_get_first_record): New function, replaces ...
1527 (_bfd_vms_get_record): .. removed.
1528 (_bfd_vms_get_object_record): New function.
1529 (_bfd_vms_get_object_record): New function.
1530 (vms_get_remaining_object_record): New function, replaces ...
1531 (_bfd_vms_get_next_record): ... removed.
1532 (add_new_contents): Removed.
1533 (_bfd_save_vms_section): Removed.
1534 (_bfd_get_vms_section): Removed.
1535 (_bfd_vms_output_flush): Write in VAR format.
1536 (new_symbol): Don't make UND section.
1537
1538 * vms-hdr.c: Update copyright year, update list of record handled.
1539 (_bfd_vms_slurp_hdr): rec_length renamed to rec_size.
1540 (_bfd_vms_write_hdr): Strip vms and unix patches,
1541 add comments, truncate module name at 31 characters,
1542 use constants instead of hard-coded value,
1543 write BFD version instead of a fixed string.
1544 (_bfd_vms_slurp_ihd): New function.
1545 (_bfd_vms_slurp_isd): Ditto.
1546 (_bfd_vms_slurp_ihs): Ditto.
1547 (new_module): Ditto.
1548 (parse_module): Ditto
1549 (build_module_list): Ditto.
1550 (module_find_nearest_line): Ditto.
1551 (_bfd_vms_find_nearest_dst_line): Ditto.
1552 (vms_slurp_debug): Ditto.
1553 (_bfd_vms_slurp_dbg): Ditto.
1554 (_bfd_vms_slurp_tbt): Ditto.
1555 (_bfd_vms_write_dbg): Ditto.
1556 (_bfd_vms_write_tbt): Ditto.
1557
1558 * vms-gsd.c: Update copyright year, update list of records handled.
1559 (EVAX_LITERALS_NAME): New macro.
1560 (evax_section_flags): Add an entry for EVAX_LITERALS_NAME.
1561 (gpsflagdesc, gsyflagdesc): Moved out of _bfd_vms_slurp_gsd.
1562 (register_universal_symbol): New function and prototype.
1563 (_bfd_vms_slurp_gsd): Fix indentations and casts,
1564 improve debug messages,
1565 use constants instead of hard-coded value,
1566 fix missing endianness conversion,
1567 handle global symbol (SYMG).
1568 (bfd_vms_set_section_flags): New function.
1569 (_bfd_vms_write_gsd): Don't write .vmsdebug section,
1570 handle section literals,
1571 fix indentation,
1572 handle section bfd and vms flags,
1573 don't output LIB$INITIALIZE symbol,
1574 fix handling of weak symbols,
1575 fix evax vs vax procedure descriptor,
1576 handle absolute symbols.
1577
1578 * reloc.c (BFD_RELOC_ALPHA_NOP, BFD_RELOC_ALPHA_BSR,
1579 BFD_RELOC_ALPHA_LDA, BFD_RELOC_ALPHA_BOH): New relocations.
1580
1581 * makefile.vms (DEFS): Fix flags for VMS.
1582
1583 * bfdio.c (real_fopen): Handle multiple VMS fopen attributes.
1584
1585 * bfd-in2.h: Regenerated.
1586 * libbfd.h: Regenerated.
1587
47149254
CC
15882009-02-20 Cary Coutant <ccoutant@google.com>
1589
1590 * vmsutil.c (vms_file_stats_name): Fix incorrect use of st_mtime
1591 in struct stat.
1592
6b1cecf3
DK
15932009-18-02 Dave Korn <dave.korn.cygwin@gmail.com>
1594
1595 PR gas/7059
1596 * coffcode.h (coff_write_object_contents): Don't let the string
1597 table offset overflow the s_name field when using long section names.
1598
88183869
DK
15992009-18-02 Dave Korn <dave.korn.cygwin@gmail.com>
1600
1601 * coff-alpha.c (alpha_ecoff_backend_data): Initialise fields which
1602 control long section name handling with ECOFF_NO_LONG_SECTION_NAMES.
1603 * coff-mips.c (mips_ecoff_backend_data): Likewise.
1604 * coff-rs6000.c (bfd_xcoff_backend_data): Initialise fields which
1605 control long section name handling with XCOFF_NO_LONG_SECTION_NAMES.
1606 (bfd_pmac_xcoff_backend_data): Likewise.
1607 * coff64-rs6000.c (bfd_xcoff_backend_data): Likewise.
1608 (bfd_xcoff_aix5_backend_data): Likewise.
1609 (xcoff64_write_object_contents): Delete unused long_section_names
1610 local variable.
1611 * coff-sh.c (bfd_coff_small_swap_table): Initialise long section
1612 name members using COFF_DEFAULT_LONG_SECTION_NAMES and make entire
1613 struct non-const.
1614 * coffcode.h (documentation): Update to describe long section names.
1615 (COFFLONGSECTIONCATHELPER): New helper macro.
1616 (BLANKOR1TOODD): Likewise.
1617 (COFF_ENABLE_LONG_SECTION_NAMES): Likewise.
1618 (COFF_LONG_SECTION_NAMES_SETTER): Likewise.
1619 (COFF_DEFAULT_LONG_SECTION_NAMES): Likewise.
1620 (bfd_coff_set_long_section_names_allowed): New function.
1621 (bfd_coff_set_long_section_names_disallowed): Likewise.
1622 (struct bfd_coff_backend_data): Add new backend hook function
1623 pointer _bfd_coff_set_long_section_names.
1624 (bfd_coff_set_long_section_names): New backend hook.
1625 (coff_write_object_contents): Only generate long section names if
1626 bfd_coff_long_section_names() indicates they are currently enabled.
1627 (bfd_coff_std_swap_table): Make non-const, and initialise long
1628 section name fields using COFF_DEFAULT_LONG_SECTION_NAMES.
1629 (ticoff0_swap_table): Likewise to both.
1630 (ticoff1_swap_table): Again, likewise to both.
1631 * coffgen.c (make_a_section_from_file): Allow long section names
1632 as inputs even if not currently allowed for outputs.
1633 * ecoff.c (_bfd_ecoff_no_long_sections): New function.
1634 * efi-app-ia32.c (COFF_LONG_SECTION_NAMES): Define to 0, not blank.
1635 * efi-app-ia64.c (COFF_LONG_SECTION_NAMES): Likewise.
1636 * efi-app-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1637 * efi-bsdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise.
1638 * efi-bsdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise.
1639 * efi-bsdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1640 * efi-rtdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise.
1641 * efi-rtdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise.
1642 * efi-rtdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1643 * pei-arm.c (COFF_LONG_SECTION_NAMES): Likewise.
1644 * pei-i386.c (COFF_LONG_SECTION_NAMES): Likewise.
1645 * pei-mcore.c (COFF_LONG_SECTION_NAMES): Likewise.
1646 * pei-mips.c (COFF_LONG_SECTION_NAMES): Likewise.
1647 * pei-ppc.c (COFF_LONG_SECTION_NAMES): Likewise.
1648 * pei-sh.c (COFF_LONG_SECTION_NAMES): Likewise.
1649 * pei-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise.
1650 * libcoff-in.h: Update copyright year to cause updated copyright
1651 year in generated libcoff.h, and fix typo.
1652 * libcoff.h: Regenerated.
1653 * libecoff.h (ECOFF_NO_LONG_SECTION_NAMES): New macro.
1654 (_bfd_ecoff_no_long_sections): Add prototype.
1655 * libxcoff.h (XCOFF_NO_LONG_SECTION_NAMES): New macro.
1656 * pe-mips.c (COFF_LONG_SECTION_NAMES): Define empty if not already
1657 defined by an including .c file.
1658 * ticoff.h (ticoff0_swap_table): Make non-const, and initialise
1659 long section name fields using COFF_DEFAULT_LONG_SECTION_NAMES.
1660 (ticoff1_swap_table): Likewise to both.
1661
90d8a22c
CL
16622009-02-18 Christophe Lyon <christophe.lyon@st.com>
1663
1664 * elf32-arm.c (arm_build_one_stub): Fix relocation target for pic
1665 stub. Catch default case error.
1666 (arm_map_one_stub): Add missing Thumb mapping symbol.
1667
12123067
NC
16682009-02-18 Bjoern Haase <bjoern.m.haase@web.de>
1669
1670 PR 9841
1671 * elf32-avr.c: Handle case where no local symbos exist correctly.
1672
fea2b4d6
CL
16732009-02-16 Christophe Lyon <christophe.lyon@st.com>
1674
1675 bfd/
1676 * elf32-arm.c (arm_long_branch_stub,
1677 arm_thumb_v4t_long_branch_stub,
1678 arm_thumb_thumb_long_branch_stub,
1679 arm_thumb_arm_v4t_long_branch_stub,
1680 arm_thumb_arm_v4t_short_branch_stub,
1681 arm_pic_long_branch_stub):
1682 Renamed to elf32_arm_stub_long_branch_any_any,
1683 elf32_arm_stub_long_branch_v4t_arm_thumb,
1684 elf32_arm_stub_long_branch_thumb_only,
1685 elf32_arm_stub_long_branch_v4t_thumb_arm,
1686 elf32_arm_stub_short_branch_v4t_thumb_arm,
1687 elf32_arm_stub_long_branch_any_any_pic.
1688 (arm_stub_long_branch, arm_thumb_v4t_stub_long_branch,
1689 arm_thumb_thumb_stub_long_branch,
1690 arm_thumb_arm_v4t_stub_long_branch,
1691 arm_thumb_arm_v4t_stub_short_branch, arm_stub_pic_long_branch):
1692 Renamed to arm_stub_long_branch_any_any,
1693 arm_stub_long_branch_v4t_arm_thumb,
1694 arm_stub_long_branch_thumb_only,
1695 arm_stub_long_branch_v4t_thumb_arm,
1696 arm_stub_short_branch_v4t_thumb_arm,
1697 arm_stub_long_branch_any_any_pic.
1698
13e0a874
DA
16992009-02-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1700
1701 * elf-hppa.h (elf_hppa_final_link_relocate): Correct addend value used
1702 in branch offset check.
1703
3a71aa26
AM
17042009-02-15 Alan Modra <amodra@bigpond.net.au>
1705
1706 * elf64-ppc.c (struct _ppc64_elf_section_data): Delete t_symndx,
1707 add toc.symndx and toc.add.
1708 (ppc64_elf_check_relocs): Don't set htab->tls_get_addr here.
1709 Set up toc.add.
1710 (get_tls_mask): Add toc_addend param, set from toc.add. Adjust all
1711 callers.
1712 (ppc64_elf_tls_setup): Set htab->tls_get_addr and tls_get_addr_fd.
1713 (branch_reloc_hash_match): New function, extracted from..
1714 (ppc64_elf_tls_optimize): ..here.
1715 (ppc64_elf_relocate_section): Properly set addends when optimizing
1716 tls sequences. Avoid unnecessary reading and writing of insns.
1717 Only redo reloc when symbol changed. Bypass symbol checks when
1718 using tlsld_got.
1719 * elf32-ppc.c (ppc_elf_tls_setup): Correct comment.
1720 (branch_reloc_hash_match): New function, extracted from..
1721 (ppc_elf_tls_optimize): ..here.
1722 (ppc_elf_relocate_section): Avoid unnecessary reading of insns.
1723 Don't clear addend on zapped __tls_get_addr reloc.
1724
2c2b4ed4
NC
17252009-02-12 Nick Clifton <nickc@redhat.com>
1726
1727 PR 9827
1728 * elflink.c (bfd_elf_final_link): When counting the relocations,
1729 if the header size has not been set yet then assume that it will
1730 match the output section's reloc type.
1731
453f5985
NS
17322009-02-12 Nathan Sidwell <nathan@codesourcery.com>
1733
1734 * elf32-mips.c (mips_elf_final_gp): Don't add 0x4000 offset for
1735 relocatable link.
1736
3209bffa
AM
17372009-02-09 Alan Modra <amodra@bigpond.net.au>
1738
1739 * elf32-spu.c (spu_elf_find_overlays): Call bfd_set_error on errors.
1740 (find_function): Likewise.
1741 (pasted_function): Don't error if no prior function found.
1742 (discover_functions): Revert 2008-12-10 change. Extend first
1743 function range to start of section.
1744
813c8a3c
DA
17452009-02-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1746
1747 * elf64-hppa.c: Remove PARAMS macro. Replace PTR with void *. Convert
1748 functions to C90.
1749 * elf64-hppa.h: Likewise.
1750
2d0f9ad9
JM
17512009-02-06 Joseph Myers <joseph@codesourcery.com>
1752
1753 * elfxx-mips.c (_bfd_mips_elf_section_processing): Remove special
1754 .sbss handling.
1755
50e00962
AM
17562009-02-04 Alan Modra <amodra@bigpond.net.au>
1757
1758 * elf32-spu.c (spu_elf_build_stubs): Define __icache_neg_log2_linesize.
1759 Define __icache_ptr_handler*, not __icache_ptr___icache_bi_handler*.
1760
52b6b6b9
JM
17612009-02-03 Sandip Matte <sandip@rmicorp.com>
1762
1763 * aoutx.h (NAME (aout, machine_type)): Handle bfd_mach_mips_xlr.
1764 * archures.c (bfd_mach_mips_xlr): Define.
1765 * bfd-in2.h: Regenerate.
1766 * cpu-mips.c (I_xlr): Define.
1767 (arch_info_struct): Add XLR entry.
1768 * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_XLR.
1769 (mips_set_isa_flags): Handle bfd_mach_mips_xlr
1770 (mips_mach_extensions): Add XLR entry.
1771
654c3c9f
EW
17722009-02-03 Eric B. Weddington <eric.weddington@atmel.com>
1773
1774 * elf32-avr.c (avr_final_link_relocate): Allow avr25 to wraparound.
1775
31dd3154
JM
17762009-02-03 Carlos O'Donell <carlos@codesourcery.com>
1777
1778 * configure.in: AC_SUBST pdfdir.
d1fa68d3 1779 * Makefile.am: Add install-pdf, install-pdf-am
31dd3154
JM
1780 and install-pdf-recursive targets. Define pdfdir.
1781 * doc/Makefile.am: Define pdf__strip_dir. Add
1782 install-pdf and install-pdf-am targets.
d1fa68d3 1783 * po/Make-in: Add install-pdf target.
31dd3154
JM
1784 * configure: Regenerate.
1785 * Makefile.in: Regenerate
1786 * doc/Makefile.in: Regenerate.
1787
cf869cce
NC
17882009-02-03 Maxim Kuvyrkov <maxim@codesourcery.com>
1789
1790 * bfd-in2.h: Regenerate.
1791 * elf32-m68k.c: Handle 2-slot GOT entries. Rename variables and
1792 fields from n_entries to n_slots where appropriate, update comments.
1793 (HOWTO): Add TLS relocations.
1794 (reloc_map): Map BFD_RELOC_68K_TLS_* to R_68K_TLS_*.
1795 (enum elf_m68k_got_offset_size): New enum.
1796 (struct elf_m68k_got_entry.type): Move field to ...
1797 (struct elf_m68k_got_entry_key): ... here. Update all uses.
1798 (elf_m68k_reloc_got_type, elf_m68k_reloc_got_offset_size): New static
1799 functions.
1800 (elf_m68k_reloc_got_n_entries, elf_m68k_reloc_tls_p): New static
1801 functions.
1802 (struct elf_m68k_got): merge rel_8o_n_entries and rel_8o_16o_n_entries
1803 fields into n_entries array. Update comments.
1804 (elf_m68k_init_got): Simplify, update all uses.
1805 (elf_m68k_init_got_entry_key): Handle R_68K_TLS_LDM32 reloc, update.
1806 (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT): Adjust to handle 2-slot
1807 GOT entries; update name, update all uses.
1808 (ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): Ditto.
1809 (elf_m68k_get_got_entry): Update.
1810 (elf_m68k_update_got_entry_type): Rewrite to handle TLS GOT entries,
1811 simplify.
1812 (elf_m68k_remove_got_entry_type): Simplify.
1813 (elf_m68k_add_entry_to_got, elf_m68k_can_merge_gots_1): Update.
1814 (elf_m68k_can_merge_gots): Update.
1815 (elf_m68k_merge_gots_1, elf_m68k_merge_gots): Update.
1816 (struct elf_m68k_finalize_got_offsets_arg): Rewrite to handle 2-slot
1817 GOT entries, simplify.
1818 (elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Same.
1819 (struct elf_m68k_partition_multi_got_arg): Add slots_relas_diff
1820 field, remove obsoleted local_n_entries field.
1821 (elf_m68k_partition_multi_got_2): New static function.
1822 (elf_m68k_partition_multi_got_1, elf_m68k_partition_multi_got): Use it;
1823 update.
1824 (elf_m68k_remove_got_entry_type): Update.
1825 (elf_m68k_install_rela, dtpoff_base, tpoff): New static functions.
d1fa68d3 1826 (elf_m68k_check_relocs): Handle TLS relocations. Remove unnecessary
cf869cce
NC
1827 update of sgot->size and srelgot->size.
1828 (elf_m68k_gc_sweep_hook): Update.
1829 (elf_m68k_install_rela, dtpoff_base, tpoff): New static functions.
1830 (elf_m68k_relocate_section, elf_m68k_finish_dynamic_symbol): Handle
1831 TLS relocations.
1832 * reloc.c (BFD_RELOC_68K_TLS_*): Declare TLS relocations.
1833 * libbfd.h (bfd_reloc_code_real_names): Add BFD_RELOC_68K_TLS_*.
1834
c1a0a41f
DD
18352009-02-02 DJ Delorie <dj@redhat.com>
1836
1837 * elf32-mep.c (config_names): Regenerate configuration.
1838
72a80a16
AM
18392009-02-02 Alan Modra <amodra@bigpond.net.au>
1840
1841 * elf-bfd.h (bfd_elf_get_str_section): Don't declare.
1842 (bfd_elf_find_section, _sh_elf_set_mach_from_flags): Likewise.
1843 * elf.c (bfd_elf_get_str_section): Make static.
1844 (bfd_elf_find_section): Delete.
1845 * libbfd.h: Regenerate.
1846
273f4430
JK
18472009-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
1848
1849 * elf-eh-frame.c (REQUIRE_CLEARED_RELOCS) Remove.
1850 (_bfd_elf_parse_eh_frame): Do not check relocations for removed FDEs.
1851
010e5ae2
AM
18522009-01-31 Alan Modra <amodra@bigpond.net.au>
1853
1854 * elflink.c (on_needed_list): New function.
1855 (elf_link_add_object_symbols): Link in --as-needed libs if they
1856 satisfy undefined symbols in other libs.
1857
33a7ffc2
JM
18582009-01-30 Julian Brown <julian@codesourcery.com>
1859
1860 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Skip BFDs with
1861 EXEC_P or DYNAMIC flags, and skip sections which are being linked
1862 with --just-symbols (-R).
1863
13d72a14
AN
18642009-01-29 Adam Nemet <anemet@caviumnetworks.com>
1865
1866 * dwarf2.c (read_rangelist): Use read_address to read low_pc and
1867 high_pc in order to properly sign-extend VMAs.
1868
d334575b 18692009-01-29 Daniel Jacobowitz <dan@codesourcery.com>
d1fa68d3
AS
1870 Mark Shinwell <shinwell@codesourcery.com>
1871 Catherine Moore <clm@codesourcery.com>
d334575b
JM
1872
1873 * elf-attrs.c, elflink.c, elfxx-mips.c: Correct typos in comments.
1874
528aeb62
CM
18752009-01-28 Catherine Moore <clm@codesourcery.com>
1876
1877 * elf32-arm.c (elf32_arm_check_relocs): Set SEC_ALLOC and
1878 SEC_LOAD for dynamic relocation sections.
1879
f6f05983
HPN
18802009-01-27 Hans-Peter Nilsson <hp@axis.com>
1881
1882 * elf32-cris.c (cris_elf_relocate_section): Use elf_hash_table
1883 (info)->tls_size, not elf_hash_table (info)->tls_sec->size for
1884 the size of local TLS data.
1885
27cc28f9
AS
18862009-01-27 Andreas Schwab <schwab@suse.de>
1887
1888 * mach-o.c (bfd_mach_o_archive_p): Restrict the number of
1889 architectures in the archive.
1890
b3bf42d8
HPN
18912009-01-27 Hans-Peter Nilsson <hp@axis.com>
1892
f551b6f0
HPN
1893 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_DTPREL>
1894 <R_CRIS_32_DTPREL>: Correct relocation value.
1895
b3bf42d8
HPN
1896 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_8>
1897 <R_CRIS_16, R_CRIS_32>: Don't call BFD_ASSERT for weak undefined
1898 symbols with non-default visibility.
1899
9bc4e62b
NS
19002009-01-26 Nathan Sidwell <nathan@codesourcery.com>
1901
1902 * elf32-ppc.c (ppc_elf_relax_section): Add space for relocs
1903 describing the trampolines.
1904 (ppc_elf_relocate_section): Update relocs to describe the
1905 trampolines.
1906
aeaf6540
DA
19072009-01-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1908
1909 * elf-hppa.h (elf_hppa_final_link_relocate): Add check to ensure that
1910 branch targets can be reached for R_PARISC_PCREL22F, R_PARISC_PCREL17F
1911 and R_PARISC_PCREL12F relocations.
1912
1e8fa21e
AM
19132009-01-24 Alan Modra <amodra@bigpond.net.au>
1914
1915 PR 6022
1916 * elflink.c (find_version_for_sym): New function split out from,
1917 but without export_dynamic test, ..
1918 (_bfd_elf_link_assign_sym_version): ..here.
1919 (_bfd_elf_export_symbol): Use it.
1920
28caa186
AM
19212009-01-23 Alan Modra <amodra@bigpond.net.au>
1922
1923 * elf-bfd.h (struct elf_assign_sym_version_info): Delete.
1924 (struct elf_info_failed, struct elf_find_verdep_info): Move to..
1925 * elflink.c: ..here, somewhat modified.
1926 * elf-bfd.h (_bfd_elf_add_default_symbol, _bfd_elf_export_symbol,
1927 _bfd_elf_link_find_version_dependencies,
1928 _bfd_elf_link_assign_sym_version, _bfd_elf_link_size_reloc_section,
1929 _bfd_elf_fix_symbol_flags, _bfd_elf_adjust_dynamic_symbol,
1930 _bfd_elf_link_sec_merge_syms, bfd_elf_link_mark_dynamic_symbol): Don't
1931 declare..
1932 * elflink.c: ..and make static here.
1933 (_bfd_elf_link_find_version_dependencies): Adjust for removal
1934 of output_bfd from struct elf_find_verdep_info.
1935 (_bfd_elf_link_assign_sym_version): Similarly adjust to use
1936 struct elf_info_failed.
1937 (bfd_elf_size_dynamic_sections): Adjust.
1938
be04437d
AM
19392009-01-22 Alan Modra <amodra@bigpond.net.au>
1940
1941 PR 6832
1942 * dwarf2.c (find_line): Don't update stash->sec_info_ptr until
1943 after comp_unit_find_line call.
1944
58f9615c
NC
19452009-01-21 Nick Clifton <nickc@redhat.com>
1946
1947 PR 9769
1948 * vmsutil.c (vms_file_stats_name): Remove use of unsupported
1949 tm_gmtoff field in struct tm.
1950
fb266b8b
AM
19512009-01-21 Alan Modra <amodra@bigpond.net.au>
1952
1953 * elf32-spu.h (struct spu_elf_params): Add non_ia_text.
1954 * elf32-spu.c (mark_overlay_section): Only include .text.ia.*
1955 sections in soft-icache lines unless non_ia_text. Don't add
1956 rodata if doing so would exceed line size.
1957
451ffe63
HPN
19582009-01-19 Hans-Peter Nilsson <hp@axis.com>
1959
1960 * elf32-cris.c (elf_cris_copy_indirect_symbol): For other symbol
1961 types than bfd_link_hash_indirect, before early return, call
1962 _bfd_elf_link_hash_copy_indirect.
1963
5aa6ff7c
AS
19642009-01-19 Andrew Stubbs <ams@codesourcery.com>
1965
1966 * elf-attrs.c (vendor_set_obj_attr_contents): Support tag ordering.
1967 * elf-bfd.h (elf_backend_data): Add obj_attrs_order.
1968 * elf32-arm.c (elf32_arm_obj_attrs_order): New function.
1969 (elf_backend_obj_attrs_order): New define.
1970 * elfxx-target.h (elf_backend_obj_attrs_order): New define.
1971 (elfNN_bed): Add elf_backend_obj_attrs_order.
1972
3483fe2e
AS
19732009-01-19 Andrew Stubbs <ams@codesourcery.com>
1974
1975 * elf-attrs.c (is_default_attr): Substitute magic numbers with macros.
1976 (obj_attr_size): Likewise.
1977 (write_obj_attribute): Likewise.
1978 (_bfd_elf_copy_obj_attributes): Likewise.
1979 (_bfd_elf_parse_attributes): Likewise.
1980 * elf-bfd.h (ATTR_TYPE_FLAG_INT_VAL): New define.
1981 (ATTR_TYPE_FLAG_STR_VAL, ATTR_TYPE_FLAG_NO_DEFAULT): New defines.
1982 (ATTR_TYPE_HAS_INT_VAL, ATTR_TYPE_HAS_STR_VAL): New defines.
1983 (ATTR_TYPE_HAS_NO_DEFAULT): New define.
1984 * elf32-arm.c (elf32_arm_obj_attrs_arg_type): Replace magic numbers
1985 with macros.
1986
2d0bb761
AS
19872009-01-19 Andrew Stubbs <ams@codesourcery.com>
1988
1989 * elf-attrs.c (is_default_attr): Support defaultless attributes.
1990 (bfd_elf_add_obj_attr_int): Get type from _bfd_elf_obj_attrs_arg_type.
1991 (bfd_elf_add_obj_attr_string): Likewise.
1992 (bfd_elf_add_obj_attr_int_string): Likewise.
1993 (_bfd_elf_parse_attributes): Allow for unknown flag bits in type.
1994 * elf-bfd.h (struct obj_attribute): Document new flag bit.
1995 * elf32-arm.c (elf32_arm_obj_attrs_arg_type): Specify that
1996 Tag_nodefaults has no default value.
1997 (elf32_arm_merge_eabi_attributes): Modify the Tag_nodefaults
1998 comment to reflect the new state.
1999
a77e83b7
AM
20002009-01-19 Alan Modra <amodra@bigpond.net.au>
2001
2002 PR 9695
2003 * pdp11.c (N_BADMAG): True for anything but OMAGIC, NMAGIC, ZMAGIC.
2004 (some_aout_object_p): Delete dead code handling QMAGIC and BMAGIC.
2005 (adjust_z_magix): Delete dead code handling QMAGIC.
2006
f6d29e26
KT
20072009-01-16 Kai Tietz <kai.tietz@onevision.com>
2008
2009 * coffcode.h (styp_to_sec_flags): Correct interpretation of
2010 IMAGE_SCN_MEM_DISCARDABLE.
2011
29670fb9
AM
20122009-01-16 Alan Modra <amodra@bigpond.net.au>
2013
2014 * Makefile.am (libbfd_la_LIBADD, libbfd_la_LDFLAGS): Substitute
2015 SHARED_LIBADD and SHARED_LDFLAGS rather than WIN32LIBADD, WIN32LDFLAGS.
2016 * configure.in (commonbfdlib): Delete.
2017 (SHARED_LDFLAGS): Rename from WIN32LDFLAGS/
2018 (SHARED_LIBADD): Rename from WIN32LIBADD. Add pic libiberty if such
2019 is available, not just for linux.
2020 * po/SRC-POTFILES.in: Regenerate.
2021 * Makefile.in: Regenerate.
2022 * configure: Regenerate.
2023
91e22acd
AS
20242009-01-15 Andrew Stubbs <ams@codesourcery.com>
2025 Julian Brown <julian@codesourcery.com>
2026
2027 * elf-bfd.h (NUM_KNOWN_OBJ_ATTRIBUTES): Set to 71 to include all known
2028 ARM attributes in ABI 2.07.
2029 * elf32-arm.c (get_secondary_compatible_arch): New function.
2030 (set_secondary_compatible_arch): New function.
2031 (tag_cpu_arch_combine): New function.
2032 (elf32_arm_copy_one_eabi_other_attribute): Delete function.
2033 (elf32_arm_copy_eabi_other_attribute_list): Delete function.
2034 (elf32_arm_merge_eabi_attributes): Rename order_312 to order_021 to
2035 make it fit with order_01243.
2036 Add support for Tag_also_compatible_with,
2037 Tag_CPU_unaligned_access, Tag_T2EE_use, Tag_Virtualization_use,
2038 Tag_MPextension_use, Tag_nodefaults and Tag_conformance.
2039 Improve/tidy up support for Tag_CPU_raw_name, Tag_CPU_name,
2040 Tag_CPU_arch, Tag_ABI_HardFP_use, Tag_VFP_HP_extension,
2041 Tag_ABI_FP_denormal, Tag_ABI_PCS_GOT_use, Tag_ABI_align8_needed,
2042 Tag_VFP_arch and Tag_ABI_FP_16bit_format.
2043 Rework the way unknown attributes are handled.
2044 Defer errors until all attributes have been processed.
2045
7b86a9fa
AS
20462009-01-15 Andrew Stubbs <ams@codesourcery.com>
2047
2048 * elf-attrs.c (bfd_elf_add_obj_attr_compat): Rename to
2049 bfd_elf_add_obj_attr_int_string.
2050 Read Tag_compatibility from its new location in the attribute array,
2051 rather than the attribute list.
2052 (_bfd_elf_copy_obj_attributes): bfd_elf_add_obj_attr_compat ->
2053 bfd_elf_add_obj_attr_int_string.
2054 (_bfd_elf_parse_attributes): Likewise.
2055 (_bfd_elf_merge_object_attributes): There's now only one
2056 Tag_compatibility, and it's in the array, not the list.
2057 * elf-bfd.h (NUM_KNOWN_OBJ_ATTRIBUTES): Set to 33 to include
2058 Tag_compatibility.
2059 (bfd_elf_add_obj_attr_compat): Rename to
2060 bfd_elf_add_obj_attr_int_string.
2061 (bfd_elf_add_proc_attr_compat): Rename to
2062 bfd_elf_add_proc_attr_int_string.
2063 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Explicitly don't handle
2064 Tag_compatibility.
2065
01e1a5bc
NC
20662009-01-15 Douglas B Rupp <rupp@gnat.com>
2067
2068 * Makefile.am (BFD32_BACKENDS): Add new object vmsutil.lo
2069 (BFD32_BACKENDS_CFILES): Add new file vmsutil.c
2070 (vmsutil.lo): Add dependency rule.
2071 * Makefile.in: Regenerate.
2072 * config.bfd (ia64*-*-*vms*): Add case.
2073 * configure.in (bfd_elf64_ia64_vms_vec): Add case.
2074 * configure: Regenerate.
2075 * vmsutil.c: New file.
2076 * vmsutil.h: New file.
2077 * elf-bfd.h (struct bfd_elf_special_section): Change type of
2078 attr to bfd_vma.
2079 * elfxx-ia64.c (elfNN_vms_post_process_headers,
2080 elfNN_vms_section_processing, elfNN_vms_final_write_processing,
2081 elfNN_vms_close_and_cleanup, elfNN_vms_section_from_shdr,
2082 elfNN_vms_object_p): New functions
2083 * targets.c (bfd_elf64_ia64_vms_vec): New target.
2084
a33dafc3
L
20852009-01-14 H.J. Lu <hongjiu.lu@intel.com>
2086
2087 PR ld/9727
2088 * elflink.c (elf_gc_sweep): Exclude the group section if the
2089 first member of the section group is excluded.
2090
13c0e967
AM
20912009-01-14 Alan Modra <amodra@bigpond.net.au>
2092
2093 PR 9735
2094 * syms.c (_bfd_stab_section_find_nearest_line): Don't free
2095 saved filename, use bfd_alloc rather than bfd_malloc for it.
2096
460e679b
AM
20972009-01-13 Alan Modra <amodra@bigpond.net.au>
2098
2099 * elf32-spu.c (spu_elf_build_stubs): Make __icache_base absolute.
2100
25076afa
AM
21012009-01-13 Alan Modra <amodra@bigpond.net.au>
2102
2103 * elf32-spu.c (remove_cycles): Always set call->max_depth.
2104
37107878
AM
21052009-01-12 Alan Modra <amodra@bigpond.net.au>
2106
2107 * elf32-spu.c (spu_elf_auto_overlay): Correct vma mask.
2108
cd4a7468
AM
21092009-01-12 Alan Modra <amodra@bigpond.net.au>
2110
2111 * elf32-spu.c (struct spu_link_hash_table): Add init, line_size_log2,
2112 num_lines_log2.
2113 (struct got_entry): Add br_addr.
2114 (struct call_info): Add priority.
2115 (struct function_info): Add lr_store and sp_adjust.
2116 (spu_elf_setup): Init line_size_log2 and num_lines_log2.
2117 (spu_elf_find_overlays): For soft-icache, mark any section within cache
2118 area as an overlay, and check that no other overlays exist. Look up
2119 icache overlay manager entry sym.
2120 (BRA_STUBS, BRA, BRASL): Define.
2121 (enum _stub_type): Replace ovl_stub with call_ovl_stub and br*_ovl_stub.
2122 (needs_ovl_stub): Adjust for soft-icache. Return priority encoded
2123 in branch insn.
2124 (count_stub, build_stub): Support soft-icache.
2125 (build_spuear_stubs, process_stubs): Adjust build_stub call.
2126 (spu_elf_size_stubs): Size soft-icache stubs.
2127 (overlay_index): New function.
2128 (spu_elf_build_stubs): Make static. Support soft-icache.
2129 (spu_elf_check_vma): Don't turn off auto_overlay if soft-icache.
2130 (find_function_stack_adjust): Save lr store and stack adjust insn
2131 offsets.
2132 (maybe_insert_function): Adjust find_function_stack_adjust call.
2133 (mark_functions_via_relocs): Retrieve priority.
2134 (remove_cycles): Only warn about pruned arcs when stack_analysis.
2135 (sort_calls): Sort by priority first.
2136 (mark_overlay_section): Ignore .ovl.init.
2137 (sum_stack): Only print when stack_analysis.
2138 (print_one_overlay_section): New function, extracted from..
2139 (spu_elf_auto_overlay): ..here. Support soft-icache overlays.
2140 (spu_elf_stack_analysis): Only print when htab->stack_analysis.
2141 (spu_elf_final_link): Call spu_elf_stack_analysis for lrlive
2142 analysis. Call spu_elf_build_stubs.
2143 (spu_elf_relocate_section): For soft-icache encode overlay index
2144 into addresses.
2145 (spu_elf_output_symbol_hook): Support soft-icache.
2146 (spu_elf_modify_program_headers: Likewise.
37107878 2147
cd4a7468
AM
2148 * elf32-spu.h (struct spu_elf_params): Add lrlive_analysis. Rename
2149 num_regions to num_lines. Add line_size and max_branch.
2150 (enum _ovly_flavour): Add ovly_soft_icache.
2151 (spu_elf_build_stubs): Delete.
2152
80c29487
JK
21532009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
2154
2155 * elflink.c (_bfd_elf_section_already_linked): Handle g++-3.4
2156 relocations in `.gnu.linkonce.r.*' referencing its `.gnu.linkonce.t.*'.
2157
1bc86aea
HPN
21582009-01-07 Hans-Peter Nilsson <hp@axis.com>
2159
2160 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
2161 <case R_CRIS_16_GOT_GD, R_CRIS_32_GOT_GD>: For a symbol defined in
2162 the program, the known offset starts at the negative size of the
2163 TLS section.
2164 <case R_CRIS_32_IE, R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>:
2165 Similar.
2166
3baa454d 21672009-01-05 Joel Sherrill <joel.sherrill@oarcorp.com>
75606e85 2168
3baa454d 2169 * config.bfd: Add lm32-*-rtems*.
75606e85 2170
9dbe8890
L
21712009-01-03 H.J. Lu <hongjiu.lu@intel.com>
2172
2173 * coff-ppc.c: Add 2009 to Copyright.
2174 * elf32-cris.c: Likewise.
2175 * elflink.c: Likewise.
2176
0bdf8d40
HPN
21772009-01-03 Hans-Peter Nilsson <hp@axis.com>
2178
2179 * elf32-cris.c (elf_cris_finish_dynamic_symbol): Rename
2180 gotplt_index to rela_plt_index. Adjust for R_CRIS_DTPMOD entry.
2181
54ac0771
L
21822009-01-02 H.J. Lu <hongjiu.lu@intel.com>
2183
2184 PR ld/9679
2185 * elflink.c (elf_merge_st_other): New.
2186 (_bfd_elf_merge_symbol): Use it on skipped weak definitions and
2187 hide them if needed.
2188 (elf_link_add_object_symbols): Updated.
2189
d8880531
L
21902009-01-02 H.J. Lu <hongjiu.lu@intel.com>
2191
2192 PR ld/9676
2193 * elflink.c (elf_link_add_object_symbols): Update def_dynamic,
2194 ref_dynamic and dynamic_def fields when setting def_regular
2195 to 1.
2196
b70b5c14
NC
21972009-01-02 Curtis Mackie <curtmackevo@gmail.com>
2198
2199 PR 9682
2200 * coff-ppc.c (dump_toc): Fix up calls to fprintf without a string
2201 literal.
2202
d8880531 2203For older changes see ChangeLog-2008
56882138
AM
2204\f
2205Local Variables:
2206mode: change-log
2207left-margin: 8
2208fill-column: 74
2209version-control: never
2210End:
This page took 0.545023 seconds and 4 git commands to generate.