* elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
[external/binutils.git] / bfd / ChangeLog
1 2002-01-25  Alan Modra  <amodra@bigpond.net.au>
2
3         * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
4         unsigned overflow when new_offset < old_offset.
5
6 2002-24-01  Philipp Thomas  <pthomas@suse.de>
7
8         * bfd.c (_bfd_abort): Fix typo.
9
10 2002-01-23  Richard Henderson  <rth@redhat.com>
11
12         * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress
13         plt entries for undefweak symbols.
14
15 2002-01-23  Steve Ellcey <sje@cup.hp.com>
16
17         * bfd/targets.c (bfd_elf32_ia64_hpux_big_vec): Add to
18         DEFAULT_VECTOR.
19         (bfd_elf64_ia64_hpux_big_vec): Ditto.
20         (bfd_elf32_h8300_vec): Ditto.
21
22 2002-01-23  Alan Modra  <amodra@bigpond.net.au>
23
24         * elf64-ppc.c: Remove stale part of ABI comment.
25         (NO_OPD_RELOCS): Define.
26         (ppc64_elf_check_relocs): Use it.
27         (ppc64_elf_relocate_section): Here too.
28         (build_one_stub): Don't point function syms at the stub.  Instead,
29         hijack plt.offset.
30         (ppc64_elf_relocate_section): Check whether REL24 relocs should
31         really go to the stub.  Make all dynamic relocs in opd against
32         locals.
33         (ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
34         plt.offset.
35
36 2002-01-22  Richard Henderson  <rth@redhat.com>
37
38         * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp.
39
40 2002-01-22  Alan Modra  <amodra@bigpond.net.au>
41
42         * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of
43         TOC_BASE_OFF adjustment.
44
45         * Makefile.am: Run "make dep-am".
46         * Makefile.in: Regenerate.
47         * po/SRC-POTFILES.in: Regenerate.
48
49 2002-01-22  John David Anglin  <dave@hiauly1.hia.nrc.ca>
50
51         * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new
52         host defines.
53
54 2002-01-21  Hans-Peter Nilsson  <hp@axis.com>
55
56         * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GOTREL>:
57         Check for and emit error if sgot is NULL at this point.
58
59 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
60
61         * config.bfd (ia64*-*-netbsd*): New target.
62
63 2002-01-21  Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
64
65         * som.c (som_write_space_strings): Comment typo fix.
66
67 2002-01-21  Alan Modra  <amodra@bigpond.net.au>
68
69         * elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and
70         is_func_descriptor fields.
71         (link_hash_newfunc): Init them.
72         (ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
73         dot are candidates for plt entries.  When processing .opd relocs,
74         set function descriptor strings to point inside function code
75         string, and set new ppc_link_hash_entry fields.
76         (ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
77         (ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
78         function descriptors.  It's now done in..
79         (func_desc_adjust): New.
80         (ppc64_elf_func_desc_adjust): New.
81         (define elf_backend_always_size_sections): Define.
82         (ppc64_elf_hide_symbol): New.
83         (define elf_backend_hide_symbol): Define.
84         (allocate_dynrelocs): Remove code looking up function descriptors
85         as that has been done earlier.
86         (ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
87         table.
88         (ppc64_elf_finish_dynamic_symbol): Likewise.  Remove code looking
89         up function descriptor.
90         (build_one_stub): Look up the function code sym.  Check for
91         invalid plt offsets.
92         (ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
93         Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.
94
95         * elf-bfd.h (elf_backend_data <elf_backend_hide_symbol>): Add
96         boolean param.
97         (_bfd_elf_link_hash_hide_symbol): Likewise.
98         * elflink.h (elf_link_add_object_symbols): Adjust call to
99         elf_backend_hide_symbol.
100         (elf_fix_symbol_flags): Likewise.
101         (elf_link_assign_sym_version): Likewise. Use bfd_malloc rather
102         than bfd_alloc.
103         * elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param.
104         Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref.
105         * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
106         (clobber_millicode_symbols): Adjust to suit new hide_symbol.
107         * elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param
108         and adjust to suit.
109         * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call
110         _bfd_elf_link_hash_hide_symbol rather than duplicating code.
111         * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
112
113 2002-01-18  Alan Modra  <amodra@bigpond.net.au>
114
115         * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a
116         dynamic function descriptor symbol, not the associated function
117         symbol.
118
119 2002-01-17  Eric Christopher  <echristo@redhat.com>
120
121         * elf32-mips.c (mips_elf_calculate_relocation): Fix typo.
122
123 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
124
125         * po/bfd.pot: Regenerate.
126         * po/fr.po: Regenerate.
127
128 2002-01-17  Alan Modra  <amodra@bigpond.net.au>
129
130         * elf-bfd.h (elf_backend_data <elf_backend_section_from_bfd_section>):
131         Remove "Elf_Internal_Shdr *" param.
132         (_bfd_mips_elf_section_from_bfd_section): Ditto.
133         * elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto.
134         * elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto.
135         * elf32-v850.c (v850_elf_section_from_bfd_section): Ditto.
136         * elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto.
137         * elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto.
138         * elf.c (_bfd_elf_section_from_bfd_section): Allow backend
139         function to override special sections.  Remove hdr arg from
140         backend call, and don't loop.
141
142 2002-01-16  Eric Christopher  <echristo@redhat.com>
143
144         * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
145         on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
146         relocations requiring gp0 and gp.
147
148 2002-01-16  Richard Earnshaw  <rearnsha@arm.com>
149
150         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
151         EF_ARM_VFP_FLOAT.
152         (elf32_arm_print_private_bfd_data): Likewise.
153
154 2002-01-16  Nick Clifton  <nickc@cambridge.redhat.com>
155
156         * po/tr.po: Import new version.
157
158 2002-01-16  Alan Modra  <amodra@bigpond.net.au>
159
160         * elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs.
161         (ppc64_elf_reloc_type_lookup): Use proper CTOR reloc.
162         (ORI_R0_R0_0): Correct.
163
164 2002-01-16  Alan Modra  <amodra@bigpond.net.au>
165
166         * elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE
167         when plt_not_loaded.
168         * elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to
169         clear .plt SEC_CODE here.  Create .stub and correct .glink flags.
170         (PLT_INITIAL_ENTRY_SIZE): Set to 24.
171         (ppc64_elf_glink_code): Delete.
172         (PPC64_ELF_GLINK_SIZE): Delete.
173         (ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11,
174         BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0,
175         ORI_R0_R0_0): Define.
176         (PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define.
177         (struct ppc_link_hash_table): Add sstub and plt_overflow.
178         (ppc64_elf_link_hash_table_create): Init them.
179         (ppc64_elf_check_relocs <R_PPC64_REL24>): Refcount .plt entry.
180         Don't copy to shared lib.
181         (ppc64_elf_check_relocs): Call bfd_set_error on errors.
182         (ppc64_elf_gc_sweep_hook <R_PPC64_REL24>): Sweep plt refcount.
183         (allocate_dynrelocs <plt>): Don't change function sym here.  Make
184         room for .stub and .glink code.
185         (ppc64_elf_size_dynamic_sections): Handle .stub.  Make entry for
186         DT_PPC64_GLINK.
187         (ppc64_elf_final_link): Rename to ppc64_elf_set_toc.  Don't call
188         bfd_elf64_bfd_final_link.
189         (bfd_elf64_bfd_final_link): Don't define.
190         (ppc64_elf_size_stubs): New.
191         (build_plt_stub): New.
192         (build_one_stub): New.
193         (ppc64_elf_build_stubs): New.
194         (ppc64_elf_relocate_section <toc relocs>): Remove assert.
195         (ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs.
196         (ppc64_elf_finish_dynamic_symbol): Don't build stubs here.  Set
197         DT_PPC64_GLINK entry.  Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in
198         case output sections not separate.  Adjust DT_RELASZ to not
199         include plt relocs.  Set reserved got entry.  Set got and plt
200         entry size.
201         (elf_backend_got_header_size): Set to 8.
202         * elf64-ppc.h: New file.
203
204 2002-01-16  Alan Modra  <amodra@bigpond.net.au>
205
206         * elf32-arm.h (elf32_arm_size_dynamic_sections): When removing
207         sections, use bfd_section_list_remove.
208         * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
209         * elflink.h (elf_link_add_object_symbols): When removing all
210         sections, use bfd_section_list_clear.
211
212 2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>
213
214         * po/sv.po: New file: Swedish translation.
215         * configure.in (ALL_LINGUAS): Add sv.
216         * configure: Regenerate.
217
218 2002-01-15  Jakub Jelinek  <jakub@redhat.com>
219
220         * elflink.h (elf_link_input_bfd): Back out 2002-01-07 change.
221         * elf.c (merge_sections_remove_hook): New function.
222         (_bfd_elf_merge_sections): Pass it as 3rd argument to
223         _bfd_merge_sections.
224         * libbfd-in.h (_bfd_merge_sections): Add 3rd argument.
225         * libbfd.h: Rebuilt.
226         * merge.c (_bfd_merge_sections): Add remove_hook argument.
227         Call remove_hook if a SEC_EXCLUDE section is encountered.
228
229 2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>
230
231         * elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'.
232         (xstormy16_reloc_map): Initialise new field with correct howto
233         table.
234         (xstormy16_reloc_type_lookup): Use 'table' field to locate correct
235         howto entry.
236
237 2002-01-10  Michael Snyder  <msnyder@redhat.com>
238
239         * elf.c (elfcore_write_prstatus): Use long instead of pid_t;
240         (elfcore_write_pstatus): Use long instead of pid_t;
241         * elf-bfd.h: Change prototypes to use long instead of pid_t;
242
243 2002-01-09  Jason Thorpe  <thorpej@wasabisystems.com>
244
245         * elf.c: Update copyright years.
246         (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
247         and NT_NETBSDCORE_FIRSTMACH.  Improve a comment.
248
249 2002-01-08  Michael Snyder  <msnyder@redhat.com>
250
251         Add capability to write corefile note sections, for gdb.
252         * elf.c (elfcore_write_note): New function.
253         (elfcore_write_prpsinfo): New function.
254         (elfcore_write_prstatus): New function.
255         (elfcore_write_pstatus): New function.
256         (elfcore_write_prfpreg): New function.
257         (elfcore_write_prxfpreg): New function.
258         * elf-bfd.h: Add prototypes for above functions.
259
260 2002-01-08  Alexandre Oliva  <aoliva@redhat.com>
261
262         * elf.c (elf_fake_sections): Propagate errors from
263         elf_backend_fake_section.
264
265 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
266
267         * Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
268         (BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
269         (elf32-sh-nbsd.lo): New rule.
270         * Makefile.in: Regenerate.
271         * config.bfd (sh*le-*-netbsdelf*): New target.
272         (sh*-*-netbsdelf*): New target.
273         * configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
274         (bfd_elf32_shnbsd_vec): New vector.
275         (bfd_elf32_shlnbsd_vec): New vector.
276         * configure: Regenerate.
277         * elf32-sh-nbsd.c: New file.
278         * targets.c: Update copyright years.
279         (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
280         bfd_elf32_shnbsd_vec.
281
282 2002-01-07  Aldy Hernandez  <aldyh@redhat.com>
283
284         * coff-rs6000.c (READ20): Use bfd_scan_vma.
285
286 2002-01-07  Geoffrey Keating  <geoffk@redhat.com>
287
288         * elflink.h (elf_link_input_bfd): Don't ask for the merged offset
289         of a symbol in a section that will be deleted.
290
291 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
292
293         * po/es.po: New file: Spanish translation.
294         * configure.in (ALL_LINGUAS): Add es.
295         * configure: Regenerate.
296
297 2002-01-06  Steve Ellcey  <sje@cup.hp.com>
298
299         * elfxx-ia64.c (is_unwind_section_name): Add target vector as
300         argument so we can handle HP-UX specially.
301         (elfNN_ia64_hpux_vec): New for use in is_unwind_section_name.
302         (elfNN_hpux_backend_section_from_bfd_section): New for support
303         of SHN_IA_64_ANSI_COMMON.
304         (elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON.
305         (is_unwind_section_name): Add special HP-UX support.
306         (elfNN_ia64_section_from_shdr): Add support for more sections.
307         (elfNN_ia64_fake_sections): Modify is_unwind_section_name call and
308         add support for more sections.
309         (elfNN_ia64_additional_program_headers): Modify
310         is_unwind_section_name call.
311         (elfNN_ia64_modify_segment_map): Remove assumption that there is
312         only one unwind section in segment.
313
314 2002-01-06  Alan Modra  <amodra@bigpond.net.au>
315
316         * syms.c (_bfd_generic_make_empty_symbol): New function.
317         * libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as
318         _bfd_generic_make_empty_symbol.
319         * libbfd.h: Regenerate.
320         * bfd-in2.h: Regenerate.
321         * hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function.
322         (hppabsd_core_get_symtab_upper_bound): Don't define.
323         (hppabsd_core_get_symtab): Likewise.
324         (hppabsd_core_print_symbol): Likewise.
325         (hppabsd_core_get_symbol_info): Likewise.
326         (hppabsd_core_bfd_is_local_label_name): Likewise.
327         (hppabsd_core_get_lineno): Likewise.
328         (hppabsd_core_find_nearest_line): Likewise.
329         (hppabsd_core_bfd_make_debug_symbol): Likewise.
330         (hppabsd_core_read_minisymbols): Likewise.
331         (hppabsd_core_minisymbol_to_symbol): Likewise.
332         (hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).
333         Formatting fixes.
334         * hpux-core.c: Similarly.
335         * irix-core.c: Similarly.
336         * osf-core.c: Similarly.
337         * sco5-core.c: Similarly.
338         * binary.c (binary_make_empty_symbol): Remove function, define as
339         _bfd_generic_make_empty_symbol.
340         * ihex.c (ihex_make_empty_symbol): Likewise.
341         * mmo.c (mmo_make_empty_symbol): Likewise.
342         * ppcboot.c (ppcboot_make_empty_symbol): Likewise.
343         * srec.c (srec_make_empty_symbol): Likewise.
344         * versados.c (versados_make_empty_symbol): Likewise.
345         * vms.c (_bfd_vms_make_empty_symbol): Remove.
346         (vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol.
347         * vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol
348         rather than _bfd_vms_make_empty_symbol.
349         * vms-misc.c (new_symbol): Likewise.
350
351 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
352
353         * section.c (bfd_section_init): Remove unnecessary initialisations.
354         (bfd_section_list_clear): New function.
355         (bfd_section_list_remove, bfd_section_list_insert): New macros.
356         (_bfd_strip_section_from_output): Use them.
357         * coffcode.h (coff_set_alignment_hook): Likewise.
358         * elf32-mips.c (_bfd_mips_elf_final_link): Likewise.
359         * elf64-mips.c (mips_elf64_final_link): Likewise.
360         * elf64-mmix.c (mmix_elf_final_link): Likewise.
361         * sunos.c (sunos_add_dynamic_symbols): Likewise.
362         * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
363         * bfd-in2.h: Regenerate.
364
365         * netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway
366         rather than doing our own section handling.  Clean up after errors
367         with bfd_release and bfd_section_list_clear.  Handle unexpected
368         flags.
369         * aoutf1.h (sunos4_core_file_p): Likewise.
370         * aix386-core.c (aix386_core_file_p): Likewise.
371         * cisco-core.c (cisco_core_file_validate): Likewise.
372         * ptrace-core.c (ptrace_unix_core_file_p): Likewise.
373         * trad-core.c (trad_unix_core_file_p): Likewise.
374
375         * hppabsd-core.c (hppabsd_core_core_file_p):  Clean up after errors
376         with bfd_release and bfd_section_list_clear.
377         * hpux-core.c (hpux_core_core_file_p): Likewise.
378         * irix-core.c (irix_core_core_file_p): Likewise.
379         * lynx-core.c (lynx_core_file_p): Likewise.
380         * osf-core.c (osf_core_core_file_p): Likewise.
381         * rs6000-core.c (rs6000coff_core_p): Likewise.
382         * sco5-core.c (sco5_core_file_p): Likewise.
383
384         * elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform
385         sign extension adjustments without conditionals.
386
387 2002-01-04  Jakub Jelinek  <jakub@redhat.com>
388
389         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
390         CIE at .eh_frame start is removed due to no FDEs referencing it.
391
392 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
393
394         * config.bfd (x86_64-*-netbsd*): New target.
395         * configure.in (x86_64-*-netbsd*): Set COREFILE
396         to netbsd-core.lo.
397         * configure: Regenerated.
398
399 2002-01-03  Tom Rix  <trix@redhat.com>
400
401         * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering
402         for recent bfd_make_section_anyway change.
403
404 2002-01-03  Nick Clifton  <nickc@cambridge.redhat.com>
405
406         * elf32-arm.h (elf32_arm_final_link_relocate): Handle
407         R_ARM_THM_PC11 reloc.
408
409 2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>
410
411         * configure.in (LINGUAS): Add ja.
412         * configure: Regenerate.
413         * po/ja.po: Import from translation project's web site.
414
415 2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>
416
417         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error
418         messages to ease translation into other languages.
419
420 For older changes see ChangeLog-0001
421 \f
422 Local Variables:
423 mode: change-log
424 left-margin: 8
425 fill-column: 74
426 version-control: never
427 End: