Handle out of memory situations.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
b3ea3584
AM
12000-09-20 Alan Modra <alan@linuxcare.com.au>
2
3 * section.c (bfd_get_unique_section_name): Return NULL if
4 bfd_malloc fails.
5
6091b433
NC
62000-09-19 Michael Sokolov <msokolov@ivan.Harhan.ORG>
7
8 * elf32-m68k.c (elf_cpu32_plt0_entry): Change the PLT entry 0
9 instruction sequence to actually work.
10 (elf_m68k_finish_dynamic_sections): Change the patch-in offset
11 accordingly.
12
8a3975e6
AO
132000-09-18 Alexandre Oliva <aoliva@redhat.com>
14
15 * elf32-sh.c (sh_elf_relocate_section): Use
16 _bfd_final_link_relocate to apply the relocation against a section
17 symbol, when doing relocatable links.
18
25f72752
AM
192000-09-18 Alan Modra <alan@linuxcare.com.au>
20
21 * elf32-hppa.c (elf32_hppa_stub_hash_entry): Rename input_section
22 to id_sec.
23 (stub_hash_newfunc): Here too.
24 (hppa_add_stub): And here.
25 (elf32_hppa_link_hash_table): Remove stub_section_created,
26 reloc_section_created, first_init_sec and first_fini_sec. Add
27 stub_group.
28 (elf32_hppa_link_hash_table_create): Init to suit.
29 (hppa_get_stub_entry): Add support for grouping stub sections.
30 (hppa_add_stub): Likewise. Remove sec_count param and init/fini
31 section code. Index stub vars by section->id.
32 (elf32_hppa_size_stubs): Likewise. Remove duplicated function
33 exit paths. Zap allocation of above removed vars. Refine
34 link-once test.
35
36 * elf32-hppa.h (elf32_hppa_size_stubs): Add output_bfd param.
37 * elf32-hppa.c (elf32_hppa_size_stubs): Likewise.
38 (hppa_get_stub_entry): Pass in pointer to elf32_hppa_link_hash_table
39 rather than pointer to bfd_link_info.
40 (hppa_add_stub): Likewise.
41 (final_link_relocate): Likewise.
42
432000-09-17 David Huggins-Daines <dhd@linuxcare.com>
44
45 (elf32_hppa_size_stubs): Don't try to build stubs for discarded
46 link-once sections.
47
4bb5e078
AO
482000-09-16 Alexandre Oliva <aoliva@redhat.com>
49
50 * elf32-sh.c (ELF_MAXPAGESIZE): Define to 128, to match
51 ld/emulparams/shelf.sh.
52
0752970e
NC
532000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
54
55 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): New function.
56 * bfd-in.h (bfd_m68k_elf32_create_embedded_relocs): Add declaration.
57 * bfd-in2.h: Regenerate.
58
ffcb7aff
NC
592000-09-15 Kenneth Block <Kenneth.Block@compaq.com>
60
61 * bfd/elf64-alpha.c (elf64_alpha_relax_with_lituse): ld performs
62 LITUSE relocations incorrectly if -relax is specified on the ld
63 command line and the displacement field of the load or store
64 instruction is non-zero. (Patch by paul.winalski@compaq.com)
65
d5c73c2f
AM
662000-09-15 Alan Modra <alan@linuxcare.com.au>
67
68 * elf32-hppa.c (hppa_add_stub): Dont set first_init_sec and
69 first_fini_sec here.
70 (elf32_hppa_size_stubs): Instead correctly find the first .init
71 and .fini section here.
72
732000-09-15 David Huggins-Daines <dhd@linuxcare.com>
74
75 * elf32-hppa.c (clobber_millicode_symbols): New function.
76 (elf32_hppa_size_dynamic_sections): Call it.
77
74d1c347
AM
782000-09-14 Alan Modra <alan@linuxcare.com.au>
79
80 * elf32-hppa.c (elf32_hppa_link_hash_entry): Make pic_call
81 packed. Add plabel, plt_abs packed booleans.
82 (hppa_link_hash_newfunc): Init new fields.
83 (PLABEL_PLT_ENTRY_SIZE): Define.
84 (hppa_stub_name): Use size_t len vars.
85 (hppa_add_stub): Likewise.
86 (elf32_hppa_build_stubs): Likewise.
87 (hppa_build_one_stub): Kill some compiler warnings.
88 (elf32_hppa_check_relocs): Always generate a plt entry for PLABELs
89 if dynamic linking. Munge the local plt offsets into
90 local_got_refcounts. Set h->plabel for all global PLABELs. Use
91 size_t len vars. Add assert for plabel addend.
92 (elf32_hppa_gc_sweep_hook): Sweep local plt entries too.
93 (elf32_hppa_hide_symbol): New function.
94 (elf_backend_hide_symbol): Define.
95 (elf32_hppa_adjust_dynamic_symbol): Don't throw away plt entries
96 with h->plabel set. Don't make plt entries to have dynamic syms
97 when they have been forced local. If plt entry is used by a
98 plabel, make it PLABEL_PLT_ENTRY_SIZE.
99 (elf32_hppa_size_dynamic_sections): Set plt_abs for init fns.
100 Set up .plt offsets for local syms.
101 (elf32_hppa_relocate_section): Initialise plt entries for local
102 syms. Leave weak undefined plabels zero. Make global plabel
103 relocs against function symbol, and leave the addend zero.
104 Use *ABS* DIR32 relocs instead of SEGREL32 for dynamic got relocs.
105 (elf32_hppa_finish_dynamic_symbol): Set up IPLT relocs for
106 non-dynamic syms. Init extra plt for plabels. Use *ABS* DIR32
107 relocs instead of SEGREL32 for dynamic got relocs.
108 (elf32_hppa_finish_dynamic_sections): Reserve one more .got entry.
109 (elf_backend_got_header_size): Adjust.
110 (elf32_hppa_set_gp): Calculate an "ideal" LTP.
111
112 * elf32-hppa.c (LONG_BRANCH_VIA_PLT): Define.
113 (hppa_type_of_stub): Use it instead of #if 0
114 (hppa_discard_copies): Use it here too.
115 (elf32_hppa_size_dynamic_sections): And here.
116
117 * elf32-hppa.c (elf32_hppa_link_hash_table): Remove `offset' field.
118 (elf32_hppa_link_hash_table_create): And here.
119 (hppa_build_one_stub): And here. Instead keep track of stub
120 offset using _raw_size.
121 (elf32_hppa_size_stubs): Likewise.
122 (elf32_hppa_build_stubs): Likewise.
123 (hppa_size_one_stub): Likewise. Resize reloc section too.
124
125 * elf32-hppa.c (hppa_add_stub): Correct first_init_sec and
126 first_fini_sec handling. Don't search for reloc section or set
127 hplink->reloc_section_created here.
128 (elf32_hppa_size_stubs): Instead search for reloc sections, and
129 set reloc_section_created here.
130 (hppa_handle_PIC_calls): Set ELF_LINK_HASH_NEEDS_PLT.
131 (elf32_hppa_size_dynamic_sections): Make a .plt entry for DT_INIT
132 and DT_FINI.
133 (elf32_hppa_finish_dynamic_sections): Set DT_INIT and DT_FINI.
134
135 * elf32-hppa.c (hppa_build_one_stub): Replace `elf_hash_table (info)'
136 with `hplink->root.'.
137 (elf32_hppa_check_relocs): Likewise.
138 (elf32_hppa_gc_sweep_hook): Likewise.
139 (elf32_hppa_adjust_dynamic_symbol): Likewise.
140 (hppa_handle_PIC_calls): Likewise.
141 (elf32_hppa_size_dynamic_sections): Likewise.
142 (elf32_hppa_set_gp): Likewise.
143 (elf32_hppa_relocate_section): Likewise.
144 (elf32_hppa_finish_dynamic_symbol): Likewise.
145 (elf32_hppa_finish_dynamic_sections): Likewise.
146
147 From David Huggins-Daines <dhd@linuxcare.com>
148 * elf32-hppa.c (hppa_type_of_stub): Generate import stubs for
149 defined weak symbols in shared links.
150 (final_link_relocate): Calls to defined weak symbols in shared
151 objects must go via import stubs, as the target might not be known
152 at link time.
153
06bb75c1
AO
1542000-09-14 Alexandre Oliva <aoliva@redhat.com>
155
156 * elf32-sh.c (sh_elf_howto_table): Moved R_SH_GOT32, R_SH_PLT32,
157 R_SH_COPY, R_SH_GLOB_DAT, R_SH_JMP_SLOT, R_SH_RELATIVE,
158 R_SH_GOTOFF, R_SH_GOTPC) to the range from 160 to 167. Replaced
159 the original entries with EMPTY_HOWTOs, and added new ones to fill
160 in the gap.
161 (sh_elf_info_to_howto): Make sure the new gap isn't used.
162 (sh_elf_relocate_section): Likewise.
163
156c2f8b
NC
1642000-09-13 Anders Norlander <anorland@acc.umu.se>
165
166 * cpu-mips.c (arch_info_struct): Add mips:4K
167 * bfd-in2.h (bfd_mach_mips4K): New define.
168 * archures.c: Add bfd_mach_mips4K to comment.
169 * elf32-mips.c (_bfd_mips_elf_final_write_processing): Return
170 E_MIPS_ARCH_2 for bfd_mach_mips4K.
171
8681fbcd
JL
172Wed Sep 13 19:31:39 2000 Marco Franzen <marcof@thyron.com>
173
174 * som.c (som_write_symbol_strings): Do not used fixed buffers,
175 use size_t as a counter.
176 (som_write_space_strings): Similarly.
177
c1e8b710
JE
1782000-09-12 Jason Eckhardt <jle@cygnus.com>
179
180 * elf32-i860.c (elf32_i860_relocate_pc26): New function
181 and prototype.
182 (elf32_i860_relocate_section): Invoke new function from here.
183
dbf48117
NC
1842000-09-11 Michael Sokolov <msokolov@ivan.Harhan.ORG>
185
186 * elf.c (_bfd_elf_make_section_from_shdr): Make debug_sec_names
187 static.
188
ff0829fd
NC
1892000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
190
191 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Emit 8 NULs for
192 target section name instead of dumping core when the target symbol is
193 undefined.
194
27985c55
KH
1952000-09-09 Kazu Hirata <kazu@hxi.com>
196
197 * riscix.c: Remove DEFUN.
198
fe077fa6
NC
1992000-09-08 Nick Clifton <nickc@redhat.com>
200
201 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not
202 initialise flags in output bfd if the input bfd is the default
203 architecture with the default flags.
204
d70910e8
KH
2052000-09-08 Kazu Hirata <kazu@hxi.com>
206
207 * archive.c: Fix formatting.
208 * coff-arm.c: Likewise.
209 * doc/chew.c: Likewise.
210
77cb06e9
AM
2112000-09-08 Alan Modra <alan@linuxcare.com.au>
212
213 * section.c (bfd_get_unique_section_name): Put a dot before the
214 numeric suffix.
215
c044fabd
KH
2162000-09-07 Kazu Hirata <kazu@hxi.com>
217
256d98af 218 * doc/chew.c: Remove all uses of DEFUN and DEFUN_VOID.
c044fabd
KH
219 * elf.c: Fix formatting.
220
b129bfef
AO
2212000-09-07 Alexandre Oliva <aoliva@redhat.com>
222
223 * config.bfd (sh-*-linux*): Added.
224 * configure.in (bfd_elf32_shlin_vec, bfd_elf32_shblin_vec): New.
225 * targets.c: Declare them.
226 * elf32-sh-lin.c: New file.
227 * Makefile.am: Compile it.
228 * elf32-sh.c: Don't override defines from elf32-sh-lin.c.
229 * configure, Makefile.in: Rebuilt.
230
492055e6
GK
2312000-09-06 Geoffrey Keating <geoffk@cygnus.com>
232
233 * xcofflink.c (xcoff_link_input_bfd): Include the .tocbss
77cb06e9
AM
234 pseduo-section when determining where the TOC ends.
235
236 * coff-rs6000.c (_bfd_xcoff_swap_aux_out): Use bfd_h_put_16 to
237 output x_tvndx as it is only two bytes wide.
238
239 * coff-rs6000.c (xcoff_howto_table): A modifiable branch-absolute
240 reloc is 26 or 32 bits wide.
241
242 * coff-rs6000.c (_bfd_xcoff_rtype2howto): The bitsize is irrelevant
243 for relocs that don't change anything. Also look at the full
244 6 bits of bitsize.
492055e6 245
566ad7d7
PB
2462000-09-06 Philip Blundell <philb@gnu.org>
247
248 * config.bfd (arm*-*-uclinux*): New target.
249
90f2472a
AO
2502000-09-06 Alexandre Oliva <aoliva@redhat.com>
251
252 * configure: Rebuilt with new libtool.m4.
253
a966dba9
AM
2542000-09-06 Alan Modra <alan@linuxcare.com.au>
255
256 * section.c (bfd_get_unique_section_name): Avoid c++ reserved
257 word for variable name.
258 * bfd-in2.h: Regenerate.
77cb06e9 259
5b343f5a
NC
2602000-09-05 Nick Clifton <nickc@redhat.com>
261
262 * config.in: Regenerate.
263 * libbfd.h: Regenerate.
264 * po/bfd.pot: Regenerate.
265 * doc/bfdint.texi: Remove CVS date string - it foils compares with
266 local versions.
77cb06e9 267
188ac662
GK
2682000-09-05 Steven Johnson <sbjohnson@ozemail.com.au>
269
270 * cpu-powerpc.c (arch_info_struct): Added MPC860 Family entry.
271
49bd834c
AM
2722000-09-05 Alan Modra <alan@linuxcare.com.au>
273
30667bf3
AM
274 Shared library and PIC support.
275 * elf32-hppa.c (PLT_ENTRY_SIZE): New.
276 (GOT_ENTRY_SIZE): New.
277 (ELF_DYNAMIC_INTERPRETER): New.
278 (STUB_SUFFIX): Define.
279 (LONG_BRANCH_PIC_IN_SHLIB): Define.
280 (RELATIVE_DYNAMIC_RELOCS): Define.
281 (enum elf32_hppa_stub_type): New.
282 (struct elf32_hppa_stub_hash_entry): Rename offset to
283 stub_offset. Add a number of new fields.
284 (struct elf32_hppa_link_hash_entry): New.
285 (struct elf32_hppa_link_hash_table): Add numerous fields. Remove
286 global_value.
287 (elf32_hppa_hash_table): Rename to hppa_link_hash_table.
288 (elf32_hppa_stub_hash_lookup): Rename to hppa_stub_hash_lookup.
289 (elf32_hppa_stub_hash_newfunc): Rename to stub_hash_newfunc. Init
290 new fields.
291 (hppa_link_hash_newfunc): New function.
292 (elf32_hppa_link_hash_table_create): Use above function. Init new
293 fields.
294 (elf32_hppa_stub_name): Rename to hppa_stub_name. Pass in reloc
295 instead of addend, and remove sym_name from args. Don't use
296 symbol name for local syms, instead use sym index.
297 (elf32_hppa_size_of_stub): Rename to hppa_type_of_stub, and return
298 stub type rather than size. Pass in hash and handle import stub
299 case. Also pass in reloc instead of offset so we can calculate
300 PCREL22F and PCREL12F branches properly.
301 (elf32_hppa_build_one_stub): Rename to hppa_build_one_stub. Build
302 import and export stubs too.
303 (elf32_hppa_size_one_stub): Rename to hppa_size_one_stub. Handle
304 import and export stub sizing.
305 (elf32_hppa_check_relocs): New function.
306 (elf32_hppa_adjust_dynamic_symbol): New function.
307 (hppa_discard_copies): New function.
308 (elf32_hppa_size_dynamic_sections): New function.
309 (elf_backend_size_dynamic_sections): Define.
310 (elf32_hppa_finish_dynamic_symbol): New function.
311 (elf_backend_finish_dynamic_symbol): Define.
312 (elf32_hppa_size_stubs): Stash params in link hash table, and move
313 some local vars into the link hash table too. For shared links,
314 trundle over function syms, generating export stubs. Handle
315 PCREL22F branches. Break out stub creation code from here..
316 (hppa_add_stub): .. to here. New function.
317 (elf32_hppa_final_link): Rename to elf32_hppa_set_gp, and don't
318 call the bfd linker. Use elf_gp to record global pointer.
319 Calculate a value from sections if $global$ is missing.
320 (bfd_elf32_bfd_final_link): Define as _bfd_elf32_gc_common_final_link.
321 (elf32_hppa_gc_mark_hook): New function.
322 (elf_backend_gc_mark_hook): Define.
323 (elf32_hppa_gc_sweep_hook): New function.
324 (elf_backend_gc_sweep_hook): Define.
325 (elf32_hppa_bfd_final_link_relocate): Rename to final_link_relocate.
326 Add rel to args, and remove howto, input_bfd, offset, addend,
327 sym_name as we can recalculate these locally. Handle calls to
328 dynamic objects, extra PIC relocs, PCREL22F branches. Change
329 handling of undefined weak syms. Check that stubs are in range.
330 Only look for import stubs on PCREL17F and PCREL22F relocs. Add
331 message on hitting a DPREL21L reloc that needs fixing. Subtract
332 off PC for PCREL14F. Break out code that does a stub lookup from
333 here..
334 (hppa_get_stub_entry): ..to here. New function.
335 (elf32_hppa_relocate_insn): Merge into final_link_relocate.
336 (elf32_hppa_relocate_section): Handle got and plt relocs, dynamic
337 relocs, etc. etc.
338 (elf32_hppa_finish_dynamic_sections): New function.
339 (elf_backend_finish_dynamic_sections): Define.
340 (elf_backend_final_write_processing) Define.
341 (hppa_handle_PIC_calls): New function.
342 (elf32_hppa_build_stubs): Call it. Pass link_info to
343 hppa_build_one_stub.
344 (elf32_hppa_create_dynamic_sections): New function
345 to create .plt and .got then set .plt flags correctly.
346 (elf_backend_create_dynamic_sections): Define.
347 (elf32_hppa_object_p): New function.
348 (elf_backend_object_p): Define.
349 (elf32_hppa_elf_get_symbol_type): New function.
350 (elf_backend_get_symbol_type): Define.
351 (elf_backend_can_gc_sections): Define.
352 (elf_backend_want_got_plt): Define.
353 (elf_backend_plt_alignment): Set to 2.
354 (elf_backend_plt_readonly): Define.
355 (elf_backend_want_plt_sym): Define.
356 (elf_backend_got_header_size): Reserve one entry.
357
358 * elf32-hppa.h (elf32_hppa_build_stubs): Don't pass stub bfd.
359 (elf32_hppa_size_stubs): Pass in multi_subspace.
360 (elf32_hppa_set_gp): Declare.
361
1bd91689
AM
362 * section.c (SEC_HAS_GOT_REF): Define new flag for asection.
363 (bfd_get_unique_section_name): New function.
364 * bfd_in2.h: Regenerate.
365
832d951b
AM
366 * elf64-hppa.c (elf64_hppa_check_relocs): Handle R_PARISC_PCREL12F.
367 (elf64_hppa_size_dynamic_sections): Remove the FIXME at bfd_zalloc
368 comment.
369
370 From David Huggins-Daines <dhd@linuxcare.com>
371 * elf64-hppa.c (elf64_hppa_check_relocs): Fix a warning.
372 (elf64_hppa_mark_exported_functions): Set dyn_h->st_shndx.
373 (elf64_hppa_link_output_symbol_hook): Test dyn_h->st_shndx has
374 been updated in finish_dynamic_symbol before modifying function
375 symbol.
376
49bd834c
AM
377 * elf-hppa.h (elf_hppa_howto_table): Restructure into groups of
378 eight entries. Replace NULL with bfd_elf_generic_reloc. Add
379 R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT and R_PARISC_PCREL12F.
380 (_bfd_elf_hppa_gen_reloc_type): Handle R_PARISC_GNU_VT*. Add some
381 comments. Handle format == 12 for R_HPPA_PCREL_CALL.
382 (elf_hppa_final_link_relocate): Handle R_PARISC_PCREL12F.
383 (elf_hppa_relocate_insn): Likewise. Reformat some comments.
384 (elf_hppa_final_write_processing): Expose it for ARCH_SIZE == 32.
385
386 From David Huggins-Daines <dhd@linuxcare.com>
387 * elf-hppa.h (elf_hppa_is_local_label_name): Accept the SysV/ELF
388 style of local labels as well.
389
05924f36
PB
3902000-09-03 Philip Blundell <philb@gnu.org>
391
392 * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate
393 references to undefined symbols in debugging sections.
394
3d96075c
L
3952000-09-02 H.J. Lu <hjl@gnu.org>
396
397 * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT,
398 BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE,
399 BFD_RELOC_SH_GOTPC): Move them from the MIPS section to the SH
400 section.
401
de24da47
JE
4022000-09-02 Jason Eckhardt <jle@cygnus.com>
403
404 * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro.
405 (elf32_i860_is_local_label_name): New function and prototype.
406
18e03609
NC
4072000-09-02 Nick Clifton <nickc@redhat.com>
408
409 * configure.in: Increase version number to 2.10.91.
410 * configure: Regenerate.
411 * aclocal.m4: Regenerate.
412 * config.in: Regenerate.
413 * po/bfd.pot: Regenerate.
77cb06e9 414
7a6cc5fb
NC
4152000-09-02 Daniel Berlin <dberlin@redhat.com>
416
417 * elf.c (_bfd_elf_make_section_from_shdr): Add
418 .gnu.linkobce.wi. to the list of debug section names.
419
a092b084
NC
4202000-09-02 Nick Clifton <nickc@redhat.com>
421
422 * dwarf2.c (find_debug_info): New function: Locate a section
423 containing dwarf2 debug information.
424 (bfd_dwarf2_find_nearest_line): Find all sections containing
425 debug information and include them in the stash.
426
37c644f2
AO
4272000-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
428
429 * elf32-sh.c (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,
430 R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New.
431 (sh_reloc_map): Add new relocs.
432 (sh_elf_check_relocs, sh_elf_link_hash_newfunc,
433 sh_elf_link_hash_table_create, sh_elf_adjust_dynamic_symbol,
434 sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_symbol,
435 sh_elf_finishe_dynamic_sections, sh_elf_discard_copies): New
436 functions.
437 (ELF_DYNAMIC_INTERPRETER, PLT_ENTRY_SIZE): Define.
438 (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
439 elf_sh_plt_entry_be, elf_sh_plt_entry_le,
440 elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le):
441 New array constants.
442 (elf_sh_plt0_entry, elf_sh_plt_entry, elf_sh_pic_plt_entry):
443 New variables.
444 (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
445 elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset,
446 elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset,
447 elf_sh_plt_reloc_offset): Define.
448 (elf_sh_pcrel_relocs_copied, elf_sh_link_hash_entry,
449 elf_sh_link_hash_table): New structs.
450 (sh_elf_link_hash_traverse, sh_elf_hash_table): New macros.
451 (sh_elf_relocate_section, sh_elf_check_relocs): Handle new
452 relocation types.
453 (elf_backend_create_dynamic_sections,
454 bfd_elf32_bfd_link_hash_table_create,
455 elf_backend_adjust_dynamic_symbol,
456 elf_backend_size_dynamic_sections,
457 elf_backend_finish_dynamic_symbol,
458 elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
459 elf_backend_plt_readonly, elf_backend_want_plt_sym,
460 elf_backend_got_header_size, elf_backend_plt_header_size):
461 Define.
462 * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT,
463 BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC):
464 New relocs.
465 * bfd-in2.h, libbfd.h: Rebuilt.
466
791987af
AM
4672000-09-01 Alan Modra <alan@linuxcare.com.au>
468
469 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Revert 2000-08-27
470 change.
471
a39b79b9
JR
472Thu Aug 31 22:49:30 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
473
474 * elf32-sh.c (sh_elf_merge_private_data): If ibfd's elf header flags
475 not initialized, set them to indicate the SH1 instruction set.
476
ac48eca1
AO
4772000-08-31 Alexandre Oliva <aoliva@redhat.com>
478
479 * acinclude.m4: Include libtool and gettext macros from the
480 top level.
481 * aclocal.m4, configure: Rebuilt.
482
7ee38065
MS
4832000-08-29 Michael Snyder <msnyder@seadog.cygnus.com>
484
485 * elf.c: Eliminate references to __sparcv9 macro; replace with
486 autoconf variables HAVE_PSINFO32_T etc.
487 * configure.in: Auto-configure HAVE_PSINFO_32_T, HAVE_PRPSINFO32_T,
488 HAVE_PSTATUS32_T, HAVE_PRSTATUS32_T, HAVE_PRSTATUS32_T_PR_WHO.
489 * config.in: Ditto.
490 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE) define _SYSCALL32 so it can
491 detect the above typedefs. (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Ditto.
492 * aclocal.m4: Ditto.
493 * configure: Regenerate.
494
f69da49f
AM
4952000-08-27 Alan Modra <alan@linuxcare.com.au>
496
497 * elf32-i386.c (elf_i386_check_relocs): Keep info on relocs copied
498 for any shared link, not just shared -Bsymbolic.
499 (elf_i386_size_dynamic_sections): Call elf_i386_discard_copies on
500 any shared link, and pass link info to it.
501 (elf_i386_size_dynamic_sections): Update comment.
502 (elf_i386_discard_copies): Modify to discard relocs for symbols
503 that have been forced local.
504 (elf_i386_finish_dynamic_symbol): Don't copy relocs for symbols
505 that have been forced local.
506
724982f6
NC
5072000-08-24 Denis Chertykov <denisc@overta.ru> & Nick Clifton <nickc@redhat.com>
508
509 * elflink.h (elf_link_add_object_symbols): Allow common
510 symbols to have an alignment of 1 if explicitly requested, and
511 not overridden by other definitions.
512
371e71b8
NC
5132000-08-22 Doug Kwan <dkwan@transmeta.com>
514
515 * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo.
516 * coffcode.h (coff_set_flags): Add detection of w65 architecture.
517
a963dc6a
L
5182000-08-22 H.J. Lu <hjl@gnu.org>
519
520 * elf-bfd.h (elf_link_hash_table): Add runpath.
521
522 * bfd-in.h (bfd_elf_get_runpath_list): New prototype.
523 * bfd-in2.h: Rebuilt.
524
525 * elf.c (_bfd_elf_link_hash_table_init): Initialize the
526 "runpath" field to NULL.
527 (bfd_elf_get_runpath_list): New function.
528
529 * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and
530 DT_RUNPATH entries.
531
9bdafcce
AO
5322000-08-22 Alexandre Oliva <aoliva@redhat.com>
533
534 * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W,
535 R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them
536 explicitly. Improve validation of r_type.
537
7a9af8c4
NC
5382000-08-21 H.J. Lu <hjl@gnu.org>
539
540 * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the
541 dynamic allocated content space. Add a comment to remind us that
542 one day this ought to be fixed.
543 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
544 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
545 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
546
ded0649c
JE
5472000-08-21 Jason Eckhardt <jle@cygnus.com>
548
549 * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate
550 field with the newly relocated value instead of adding it to the
551 existing immediate field.
552 (elf32_i860_relocate_splitn): Likewise.
553 (elf32_i860_relocate_highadj): Likewise.
554
d670a150
JE
5552000-08-16 Jason Eckhardt <jle@cygnus.com>
556
557 * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it
558 was previously just a stub).
559
bb0deeff
AO
5602000-08-16 Alexandre Oliva <aoliva@redhat.com>
561
562 * elflink.c (_bfd_elf_create_got_section): Don't abort().
563 Formatting fixes.
564 (_bfd_elf_create_dynamic_sections): Likewise.
565
be040dbb
JJ
5662000-08-16 Andrew Macleod <amacleod@cygnus.com>
567
568 * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address
569 for undefined symbols to be the beginning of the section.
570
571 * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate
572 four extra entries at the beginning of the .rela.plt section.
573 (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt
574 section to account for the four reserved entries in the .plt section.
575
31612ca6
GK
5762000-08-15 Geoffrey Keating <geoffk@cygnus.com>
577
578 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0
579 to the list of NOPs we recognize after a branch-and-link.
580 Use the ori NOP when one is needed.
581
582 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation
583 for large archives.
584
c43c2cc5
JW
5852000-08-14 Jim Wilson <wilson@cygnus.com>
586
587 * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle
588 EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP.
589 (elf64_ia64_print_private_bfd_data): Likewise. Also handle
590 EF_IA_64_ABSOLUTE.
591
1630fd2b
AO
5922000-08-11 Alexandre Oliva <aoliva@redhat.com>
593
594 * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static.
595
fdeafce7
JE
5962000-08-10 Jason Eckhardt <jle@cygnus.com>
597
77cb06e9
AM
598 * elf32-i860.c (elf32_i860_relocate_section): New function.
599 (i860_final_link_relocate): New function.
600 (elf32_i860_relocate_splitn): New function.
601 (elf32_i860_relocate_pc16): New function.
602 (elf32_i860_relocate_highadj): New function.
603 (elf32_i860_howto): Minor adjustments to some relocations.
604 (elf_info_to_howto_rel): Define.
605 (elf_backend_relocate_section): Define.
fdeafce7 606
9b485d32
NC
6072000-08-10 Nick Clifton <nickc@cygnus.com>
608
609 * elf32-arm.h: Fix formatting.
610
00fdaf47
BS
6112000-08-10 Bernd Schmidt <bernds@cygnus.co.uk>
612
613 * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static.
614
305d537e
JE
6152000-08-08 Jason Eckhardt <jle@cygnus.com>
616
617 * elf32-i860.c (elf32_i860_howto_table): Updated some fields.
618
46f5aac8
KH
6192000-08-07 Kazu Hirata <kazu@hxi.com>
620
dce61835
KH
621 * ieee.c (ieee_write_debug_part): Rewrite a comment.
622 * elf64-ia64.c: Fix a typo.
46f5aac8 623
0e5136c6
JE
6242000-08-05 Jason Eckhardt <jle@cygnus.com>
625
626 * elf32-i860 (elf32_i860_howto_table): New structure.
627 (lookup_howto): New function.
628 (elf32_i860_reloc_type_lookup): New function.
629 (elf32_i860_info_to_howto_rela): New function.
630 (elf_code_to_howto_index): New structure.
631 (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela.
632 (bfd_elf32_bfd_reloc_type_lookup): Re-define as
633 elf32_i860_reloc_type_lookup.
634
7dca057b
JL
6352000-08-04 Rodney Brown <RodneyBrown@pmsc.com>
636
637 * som.c (struct fixup_format): Constify `format'.
638 (som_hppa_howto_table): Use SOM_HOWTO macro.
639 (try_prev_fixup, hppa_som_reloc): Decorate unused parameter.
640 (som_bfd_reloc_type_lookup): Likewise.
641 (compare_subspaces): Remove unused `count1', `count2'.
642 (som_begin_writing): Remove unused `total_reloc_size'.
643 (som_bfd_derive_misc_symbol_info): Decorate unused parameter.
644 (som_print_symbol, som_bfd_is_local_label_name): Likewise.
645 (som_set_reloc_info): Constify `cp'. Remove unused `addend'.
646 (som_find_nearest_line): Decorate unused parameter(s).
647 (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise.
77cb06e9 648 (som_bfd_link_split_section): Likewise.
7dca057b 649
bc67d8a6
NC
6502000-08-03 Nick Clifton <nickc@cygnus.com>
651
652 * section.c: Restore backed out code.
653 * elf.c: Restore backed out code.
654 (copy_private_bfd_data): Fix bug preventing stipped dynamic
655 binaries from working.
656 * bfd-in2.h: Regenerate.
657
c0f7859b
L
6582000-08-03 H.J. Lu <hjl@gnu.org>
659
660 * section.c: Back out the change made by Nick Clifton
661 <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic
662 binaries.
663 * bfd-in2.h: Likewise.
664 * elf.c: Likewise.
665
61ff1804
AO
6662000-08-03 Alexandre Oliva <aoliva@redhat.com>
667
668 * elf32-sh.c (sh_elf_reloc_loop): Warning removal.
669
a87fdb8d
JE
6702000-07-31 Jason Eckhardt <jle@cygnus.com>
671
77cb06e9
AM
672 * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860.
673 * bfd-in2.h, libbfd.h: Regenerate.
a87fdb8d 674
5c440b1e
NC
6752000-07-31 Nick Clifton <nickc@cygnus.com>
676
677 * section.c (struct sec): Add new boolean field 'segment_mark'.
678 (STD_SECTION): Initialise new field to zero.
679
680 * bfd-in2.h: Regenerate.
681
77cb06e9 682 * elf.c (copy_private_bfd_data): Reorganise section to segment
5c440b1e
NC
683 mapping to cope with moved sections requiring new segments,
684 and overlapping segments.
685 (SEGMENT_END): New macro: Return the end address of a segment.
686 (IS_CONTAINED_BY_VMA): New macro: Determine if a segment
687 contains a section by comparing their VMA addresses.
688 (IS_CONTAINED_BY_LMA): New macro: Determine if a segment
689 contains a section by comparing their LMA addresses.
690 (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a
691 section should be included in a segment.
692 (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment
693 follows another in memory.
694 (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two
695 segments overlap.
696
aa76cae8 6972000-07-22 Jason Eckhardt <jle@cygnus.com>
24208c5c
JE
698
699 * cpu-i860.c: Added comments.
700
701 * elf32-i860.c (TARGET_LITTLE_SYM): Defined to
702 bfd_elf32_i860_little_vec.
703 (TARGET_LITTLE_NAME): Defined to "elf32-i860-little".
704 (ELF_MAXPAGESIZE): Changed to 4096.
705
706 * targets.c (bfd_elf32_i860_little_vec): Declaration of
707 new target.
708 (bfd_target_vector): Added bfd_elf32_i860_little_vec.
709
710 * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added
711 config for little endian elf32 i860.
712 (targ_defvec): Define for the new config above
77cb06e9 713 as "bfd_elf32_i860_little_vec".
24208c5c
JE
714 (targ_selvecs): Define for the new config above
715 as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
716
717 * configure.in (bfd_elf32_i860_little_vec): Added recognition
718 of new target vec.
719
720 * configure: Regenerated.
721
456981d7
L
7222000-07-27 H.J. Lu <hjl@gnu.org>
723
724 * elflink.h (elf_merge_symbol): Take one more argument,
725 dt_needed, to indicate if the symbol comes from a DT_NEEDED
726 entry. Don't overide the existing weak definition if dt_needed
727 is true.
728 (elf_link_add_object_symbols): Pass dt_needed to
729 elf_merge_symbol ().
730
755cfd29
NC
7312000-07-27 Nick Clifton <nickc@cygnus.com>
732
733 * elflink.h (elf_link_size_reloc_section): Zeroes the section's
734 allocated contents.
735
1a6df346
GK
7362000-07-25 Geoffrey Keating <geoffk@cygnus.com>
737
adfdf838
GK
738 * configure.host (*-*-aix*): AIX has 'long long' always.
739
1a6df346
GK
740 * coff-rs6000.c (xcoff_write_one_armap_big): New procedure.
741 (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps.
742 (xcoff_write_archive_contents_big): Don't update the offset
743 of the symbol table, xcoff_write_armap will do it.
744
313ba8d6
UC
7452000-07-23 Ulf Carlsson <ulfc@engr.sgi.com>
746
747 * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead
748 of dynobj for SGI_COMPAT checks.
749
3eb6f68f 7502000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
20bccb34 751
77cb06e9
AM
752 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function.
753 * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration.
754 * bfd-in2.h: Regenerate.
20bccb34 755
7a3120d9
NC
7562000-07-21 Nick Clifton <nickc@cygnus.com>
757
758 * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of
759 range symbol indices in relocs and issue an error message.
760
4d538889
L
7612000-07-20 H.J. Lu <hjl@gnu.org>
762
763 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check
764 info->new_dtags when setting DT_FLAGS_1. It will only be set
765 by the new linker options. It shouldn't break anything.
766
b586af58
L
7672000-07-20 H.J. Lu <hjl@gnu.org>
768
769 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1
770 only if info->new_dtags is true.
771
c25373b7
L
7722000-07-20 H.J. Lu <hjl@gnu.org>
773
774 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set
775 DT_RUNPATH and DT_FLAGS only if info->new_dtags is true.
776
06c15ad7
HPN
7772000-07-20 Hans-Peter Nilsson <hp@axis.com>
778
779 * Makefile.am (ALL_MACHINES): Add cpu-cris.lo.
780 (ALL_MACHINES_CFILES): Add cpu-cris.c.
781 (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo.
782 (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c.
783 (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules.
784 * Makefile.in: Rebuild.
785 * aclocal.m4: Rebuild.
786 * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris.
787 * archures.c (enum bfd_architecture): Add bfd_arch_cris.
788 (bfd_cris_arch): Declare.
789 (bfd_archures_list): Add bfd_cris_arch.
790 * bfd-in2.h: Rebuild.
791 * config.bfd: (cris-*-*): New target.
792 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors.
793 * configure: Rebuild.
794 * elf.c (prep_headers): Add bfd_arch_cris.
795 * libbfd.h: Rebuild.
796 * libaout.h (enum machine_type): Add M_CRIS.
797 * reloc.c: Add CRIS relocations.
3bd336f7 798 * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare.
06c15ad7
HPN
799 (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec.
800 * cpu-cris.c, aout-cris.c, elf32-cris.c: New files.
801 * po/POTFILES.in, po/bfd.pot: Regenerate.
802
d6cf2879
L
8032000-07-19 H.J. Lu <hjl@gnu.org>
804
805 * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set
806 DF_TEXTREL if DT_TEXTREL is set.
807 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
808 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
809 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
810 * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise.
811 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
812 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
813 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
814 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
815 * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise.
816 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
817
c25373b7 818 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also
d6cf2879
L
819 set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if
820 DT_RPATH is set.
821 Set the DT_FLAGS and DT_FLAGS_1 entries if necessary.
822
74816898
L
8232000-07-19 H.J. Lu <hjl@gnu.org>
824
825 * bfd-in.h (bfd_elf_set_dt_needed_soname): New.
826 * bfd-in2.h: Rebuild.
827
828 * elf-bfd.h (elf_obj_tdata): Add dt_soname.
829 (elf_dt_soname): New.
830
831 * elf.c (bfd_elf_set_dt_needed_soname): New.
832
833 * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED
834 entry if the shared object loaded by DT_NEEDED is used to
835 resolve the reference in a regular object.
836
36a30e65
L
8372000-07-19 H.J. Lu <hjl@gnu.org>
838
839 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG,
840 DT_DEPAUDIT and DT_AUDIT as strings.
841
1d713d9e
NC
8422000-07-19 Nick Clifton <nickc@cygnus.com>
843
844 * format.c: Fix formatting.
845
d48188b9
L
8462000-07-19 H.J. Lu <hjl@gnu.org>
847
848 * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM.
849
94558834
L
8502000-07-19 H.J. Lu <hjl@gnu.org>
851
852 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW,
853 DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ,
854 DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ,
855 DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1,
856 DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT,
857 DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT,
858 DT_FLAGS_1, DT_USED and DT_CHECKSUM.
859
125c4a69
NC
860Tue Jul 18 13:11:54 2000 Andrew Cagney <cagney@b1.cygnus.com>
861
862 * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move
77cb06e9 863 renamed functions from here...
125c4a69
NC
864 (assign_section_numbers): Use renamed functions.
865 (prep_headers): Use renamed functions.
77cb06e9 866
125c4a69
NC
867 * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here.
868 * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update.
869 * bfd-in2.h: Regenerate.
870
31a9bdd9
UC
8712000-07-18 Ulf Carlsson <ulfc@engr.sgi.com>
872
873 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add
313ba8d6 874 parenthesis in if statement.
31a9bdd9 875
f7cb7d68
UC
8762000-07-17 Koundinya K <kk@ddeorg.soft.net>
877
77cb06e9 878 Enable the support for Traditional MIPS.
f7cb7d68
UC
879 * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand
880 return ict_none appropriately for traditional mips targets.
881 (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips.
882 (STUB_MOVE): Conditionalize for traditonal mips.
883 (STUB_LI16): Likewise.
884 (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making
885 room for RTPROC header.
886 (_bfd_mips_elf_modify_segment_map): For a normal mips executable set
887 the permission for the PT_DYNAMIC as read, write and execute.
888 (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING
889 for traditonal mips.
890 (_bfd_mips_elf_create_dynamic_sections): Add the symbol
891 _DYNAMIC_LINKING for traditonal mips.
892 (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP
893 in case of traditonal mips.
894 (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT
895 entry is required. For a function if PLT is not required then set the
896 corresponding hash table entry to 0.
77cb06e9 897 (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for
f7cb7d68 898 traditonal mips.
77cb06e9 899 (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a
f7cb7d68 900 shared object set the value to 0.
77cb06e9 901 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol
f7cb7d68
UC
902 _DYNAMIC_LINKING for traditonal mips.
903 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP
904 for traditonal mips.
77cb06e9 905
930d924d
L
9062000-07-15 H.J. Lu <hjl@gnu.org>
907
908 * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL.
909
e67f03db
DD
9102000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
911
912 * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing
913 out a structure that is BFD_IN_MEMORY.
914
0ba2a60e
AM
9152000-07-11 Alan Modra <alan@linuxcare.com.au>
916
917 * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of
918 bfd pointer. Print section id instead of bfd pointer for local
919 syms. Prefix addend with `+' for global syms as well as local.
920 Correct calculation of name component lengths.
921 (elf64_hppa_check_relocs): Update call to get_dyn_name.
922
923 From David Huggins-Daines <dhd@linuxcare.com>
924 * elf-hppa.h (elf_hppa_relocate_section): Update calls here too.
925 * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings.
926 (elf64_hppa_modify_segment_map): Likewise.
927
6d9019e4
AC
928Tue Jul 11 17:21:52 2000 Andrew Cagney <cagney@b1.cygnus.com>
929
930 * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA
77cb06e9 931 addresses to be "naturally" sign extended. Return -1 if unknown.
0ba2a60e 932 * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration.
6d9019e4
AC
933 * bfd-in2.h: Regenerate.
934
23e2c83b
AC
935Tue Jul 11 16:25:52 2000 Andrew Cagney <cagney@b1.cygnus.com>
936
937 * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32
77cb06e9 938 and ECOF_SIGNED_64 to list ways to extract an offset.
23e2c83b 939 (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in,
77cb06e9
AM
940 ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out):
941 Update.
23e2c83b
AC
942 * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64.
943 * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32.
944
448cafa4
AC
945Tue Jul 11 16:03:04 2000 Andrew Cagney <cagney@b1.cygnus.com>
946
947 * elfcode.h (elf_object_p): Use bfd_set_start_address and not
77cb06e9 948 bfd_get_start_address.
448cafa4
AC
949 (elf_swap_ehdr_in): Sign extend e_entry when applicable.
950 (elf_swap_ehdr_out): Ditto.
951
83ea41ad
NC
9522000-07-10 Alexander Aganichev <AAganichev@hypercom.com>
953
954 * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for
955 compatibility with older binutils.
956
3df7b4e2
AM
9572000-07-10 Alan Modra <alan@linuxcare.com.au>
958
959 * section.c (bfd_make_section_anyway): Start section_id at 0x10.
960 (STD_SECTION): Avoid negative ids, instead use 0 to 3.
961
b7af50e3
AM
962 From Ryan Bradetich <rbradetich@uswest.net>
963 * dwarf1.c (parse_die): Cure signed/unsigned char warnings.
964 (parse_line_table): Ditto.
965 (_bfd_dwarf1_find_nearest_line): Ditto.
966 * syms.c (cmpindexentry): Remove extra `*' from params.
967
adb76a3e
UC
9682000-07-09 Koundinya K <kk@ddeorg.soft.net>
969
77cb06e9
AM
970 * elf32-mips.c (sort_dynamic_relocs): New Function.
971 (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs
adb76a3e
UC
972 via qsort to sort the dynamic relocations in increasing r_symndx
973 value.
77cb06e9 974
edd21aca
AM
9752000-07-09 Alan Modra <alan@linuxcare.com.au>
976
977 * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add
978 ATTRIBUTE_UNUSED to unused args.
979 (get_opd): Likewise.
980 (get_plt): Likewise.
981 (get_dlt): Likewise.
982 (get_stub): Likewise.
983 (elf64_hppa_adjust_dynamic_symbol): Likewise.
984 (elf64_hppa_link_output_symbol_hook): Likewise.
985 (elf64_hppa_check_relocs): Delete unused var.
986 (elf64_hppa_size_dynamic_sections): Likewise.
987 (elf64_hppa_finalize_opd): Likewise.
988 (elf64_hppa_finalize_dynreloc): Likewise.
989 (elf64_hppa_modify_segment_map): Likewise.
990 (elf64_hppa_finish_dynamic_sections): Likewise.
991
992 * elf-hppa.h (elf_hppa_final_write_processing): Add
993 ATTRIBUTE_UNUSED to unused args.
994 (elf_hppa_final_link_relocate): Likewise.
995 (elf_hppa_record_segment_addrs): Add paretheses.
996 (elf_hppa_relocate_section): Constify dyn_name.
997
998 From David Huggins-Daines <dhd@linuxcare.com>
999 * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and
1000 rearrange case statement so that it gets preferred to 32-bit ones.
1001
1002 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use
1003 asection->id instead of address of asection structure.
1004 (elf32_hppa_size_stubs): Likewise.
1005
1006 * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section
1007 for .init* and .fini*.
1008
1009 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers
1010 and addends used in stub names to 32 bits.
1011 (elf32_hppa_size_stubs): Likewise.
1012
1013 * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend
1014 twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32,
1015 not bfd_put_64. Fix minor comment typo and formatting.
1016
1017 Changes to create multiple linker stubs, positioned immediately
1018 before the section where they are required.
1019 * elf32-hppa.c: Don't include hppa_stubs.h.
1020 (elf32_hppa_stub_hash_entry): Add a pointer to the stub section.
1021 (elf32_hppa_stub_hash_table): Delete.
1022 (elf32_hppa_link_hash_entry): Delete.
1023 (elf32_hppa_link_hash_table): Use plain bfd_hash_table for
1024 stub_hash_table, and store the struct here rather than a pointer.
1025 Delete output_symbol_count. Add offset array. Change
1026 global_value to a bfd_vma.
1027 (elf32_hppa_stub_hash_lookup): Use table instead of table->root.
1028 (elf32_hppa_stub_hash_traverse): Delete.
1029 (elf32_hppa_name_of_stub): Delete.
1030 (elf32_hppa_link_hash_lookup): Delete.
1031 (elf32_hppa_link_hash_traverse): Delete.
1032 (elf32_hppa_stub_hash_table_init): Delete.
1033 (elf32_hppa_size_of_stub): Pass input section and offset rather
1034 than location and calculate location here. Don't pass name as all
1035 stubs are now the same size.
1036 (elf32_hppa_stub_hash_newfunc): Init new fields.
1037 (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table
1038 too.
1039 (elf32_hppa_bfd_final_link_relocate): Cast enums to int before
1040 comparing against ints. Rewrite stub handling code.
1041 (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned.
1042 Case enums to int before comparing against ints. Remove
1043 bfd_reloc_dangerous case.
1044 (elf32_hppa_build_one_stub): Rewrite.
1045 (elf32_hppa_size_one_stub): New function.
1046 (elf32_hppa_build_stubs): Rewrite.
1047 (elf32_hppa_size_stubs): Pass in linker call-back functions.
1048 Rewrite stub-handling specific code.
1049
1050 * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype.
1051
1052 * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo.
1053
1054 * hppa_stubs.h: Delete.
1055 * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h
1056 (elf32-hppa.lo): Remove hppa_stubs.h from dependencies.
1057 * Makefile.in: Regenerate.
1058
1059 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and
1060 e_nlrsel.
1061
1062 * libhppa.h (hppa_field_adjust): Correct e_nsel case.
1063
1064 * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset
1065 and section name for bfd_reloc_notsupported error message.
1066 (elf32_hppa_bfd_final_link_relocate): Print reasons for returning
1067 bfd_reloc_notsupported.
1068 (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd.
1069
1070 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle
1071 undefined weak symbols for all relocs.
1072 (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch
1073 offsets are relative to one past the delay slot.
1074 (elf32_hppa_size_stubs): Account for reloc addend when calculating
1075 branch destination. Put addend into stub name too.
1076 (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and
1077 adjust by 8 when deciding whether a linker stub is needed. Put
1078 addend into stub name as for above.
1079
1080 * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on
1081 various args and vars.
1082 (elf32_hppa_bfd_final_link_relocate): Here too.
1083 (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for
1084 inner block var to avoid shadowing.
1085
1086 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg
1087 unsigned.
1088 * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto.
1089 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto.
1090 (elf_hppa_fake_sections): Rename local var to avoid shadowing.
1091
1092 * libhppa.h: Change practically all unsigned ints to plain ints.
1093 Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for
1094 prototypes.
1095
1096 From Ryan Bradetich <rbradetich@uswest.net>
1097 * libhppa.h (hppa_opcode_type): New enum to replace #define's.
1098 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to
1099 suit above.
1100 From David Huggins-Daines <dhd@linuxcare.com>
1101 * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants
1102 to the new OP_* ones.
1103
1104 * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on
1105 error exit. Bail out earlier on plabel relocs that we aren't
1106 interested in. Don't tell elf32_hppa_stub_hash_lookup to copy
1107 string, and then don't free our copy.
1108 (elf32_hppa_build_one_stub): Make insn unsigned int.
1109
1110 * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only
1111 available with BL, not BE and BLE.
1112
1113 * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example
1114 code for elf arg relocs.
1115 (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local
1116 argument with elf_link_hash_entry h. Handle undefined weak
1117 symbols. Move $global$ lookup from here...
1118 (elf32_hppa_relocate_section): ...to here. Return correct error
1119 message for non-handled relocs.
1120 (elf32_hppa_size_of_stub): Correctly test branch range. Previous
1121 wrong test was -0x3ffff to +0x40000.
1122
1123 * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R,
1124 R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches;
1125 Handle them as such.
1126 (elf_hppa_relocate_insn): Fix a typo.
1127
1128 * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete.
1129 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
1130 assemble_17, assemble_21): Delete.
1131 Supply defines for all 64 possible opcodes.
1132 (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode
1133 formats. Handle COMICLR.
1134 (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11,
1135 -10, -16, 16, 22.
1136
1137 * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite.
1138 (elf32_hppa_bfd_final_link_relocate): Major rewrite.
1139 (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls
1140 to suit.
1141 (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all
1142 the local syms - did this code get deleted accidentally? Ignore
1143 undefined and undefweak syms.
1144
1145 * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost
1146 block. Use it instead of elf64_hppa_hash_table (info).
1147 (elf_hppa_final_link_relocate): Use hppa_info instead of
1148 elf64_hppa_hash_table (info).
1149
1150 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
1151 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
1152 (hppa_rebuild_insn): Mask immediate bits here instead.
1153 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
1154
52b219b5
AM
11552000-07-08 Alan Modra <alan@linuxcare.com.au>
1156
1157 * section.c (struct sec): Add id field. Tidy comment formatting.
1158 (bfd_make_section_anyway): Set id.
1159 (STD_SECTION): Init id too.
1160 Change CONST to const throughout.
1161 * archures.c (bfd_arch_info): Tidy comment.
1162 (bfd_arch_list): Change a CONST to const.
1163 * libbfd-in.h: Tidy comments and replace CONST with const.
1164 * elf-bfd.h: Likewise.
1165 * libbfd.h: Regenerate.
1166 * bfd-in2.h: Regenerate.
1167 * libcoff.h: Regenerate.
1168
8000a618
DD
11692000-07-07 DJ Delorie <dj@redhat.com>
1170
1171 * archive.c (_bfd_write_archive_contents): Add an informative
1172 comment.
1173
c3b7c767
NC
11742000-07-06 Kazu Hirata <kazu@hxi.com>
1175
1176 * srec.c: Fix formatting.
1177
302ab118
DD
11782000-06-05 DJ Delorie <dj@redhat.com>
1179
1180 * MAINTAINERS: new
1181
ed1de528
AO
11822000-07-04 Alexandre Oliva <aoliva@redhat.com>
1183
1184 * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol
1185 value of PC-relative offsets.
1186
70bcb145
JW
11872000-07-03 Jim Wilson <wilson@cygnus.com>
1188
1189 * elf64-alpha.c (alpha_elf_size_info): New.
1190 (elf_backend_size_info): Define to alpha_elf_size_info.
1191 * elfcode.h (elf_size_info): Change hash bucket size to 4.
1192
b8ee63fa
UC
11932000-07-03 Ulf Carlsson <ulfc@engr.sgi.com>
1194
1195 * elf32-mips.c: Include elf32-target.h again for the traditional
1196 MIPS targets.
1197
00d2865b
NC
11982000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
1199
1200 * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup):
1201 Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings.
1202 (avr_info_to_howto_rela): Likewise.
1203 (elf32_avr_gc_mark_hook): Likewise.
1204 (elf32_avr_gc_sweep_hook): Likewise.
1205 (elf32_avr_relocate_section): Likewise.
1206
e4202681
NC
12072000-07-03 Mark Elbrecht <snowball3@bigfoot.com>
1208
1209 * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into
1210 an external symbol for a non-shared, non-relocatable link.
77cb06e9 1211
e4202681
NC
12122000-07-03 Nick Clifton <nickc@redhat.com>
1213
99d6ac2f
NC
1214 * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol
1215 is an external symbol.
e4202681
NC
1216 (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak
1217 external symbol.
77cb06e9 1218
289c596c
NC
12192000-07-03 Kazu Hirata <kazu@hxi.com>
1220
1221 * reloc16.c: Fix formatting.
1222
dd745cfa
UC
12232000-07-01 Koundinya K <kk@ddeorg.soft.net>
1224
77cb06e9
AM
1225 * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4*
1226 to add a new target for traditional mips i.e
1227 bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec.
1228 * configure.in: Likewise.
1229 * configure: Rebuild.
1230 * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in
dd745cfa
UC
1231 bfd_target_vector.
1232 (bfd_elf32_tradlittlemips_vec): Likewise.
77cb06e9
AM
1233 * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test
1234 to see that elfNN_bed does not get redefined even if the target file
1235 is included twice for a chip. See elf32-mips.c.
1236
0bdaf48b
AM
12372000-07-01 Alan Modra <alan@linuxcare.com.au>
1238
1239 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
1240 (CLEANFILES): Add DEPA.
1241 * Makefile.in: Regenerate.
1242
c75df619 12432000-06-30 DJ Delorie <dj@cygnus.com>
77cb06e9 1244
c75df619 1245 * peicode.h (coff_swap_filehdr_in): can't use e_magic because we
77cb06e9 1246 can't assume the PE header is at 0x80.
c75df619 1247
b4b415e5
DD
12482000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
1249
cda43a1d 1250 * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH.
b4b415e5 1251
addd3117
DD
12522000-06-28 Mark Elbrecht <snowball3@bigfoot.com>
1253
1254 * go32stub.h: Update stub.
1255
65aa24b6
NC
12562000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
1257
1258 * archures.c (bfd_mach_avr5): Define.
1259 * bfd-in2.h (bfd_mach_avr5): Define.
1260 * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to
1261 bfd_mach_avr5, add bfd_mach_avr4. Update comments.
1262 (compatible): Update comment. Add missing test.
1263 * elf32-avr.c (avr_final_link_relocate): Support 8K wrap
1264 for avr2 and avr4. Simplify 8K wrap code.
1265 (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5.
1266 (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5.
1267
cc040812
NC
12682000-06-26 Kazu Hirata <kazu@hxi.com>
1269
1270 * coff-h8300.c: Fix formatting.
1271 * cpu-h8300.c: Likewise.
1272
b1bcb49f
AO
12732000-06-24 Alexandre Oliva <aoliva@redhat.com>
1274
1275 * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)'
1276 for local symbols whose names are unknown.
1277
1581f8c9
AM
12782000-06-22 Alan Modra <alan@linuxcare.com.au>
1279
1280 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
1281 find one.
1282 * Makefile.in: Regenerate.
1283 * doc/Makefile.in: Regenerate.
1284
bbeb2e03
L
12852000-06-20 H.J. Lu <hjl@gnu.org>
1286
1287 * Makefile.am: Rebuild dependency.
1288 * Makefile.in: Rebuild.
1289
8a20f077
UC
12902000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1291
1292 * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function.
1293 (elf_backend_copy_indirect_symbol): Map to the new function.
1294
2ab47eed
AM
12952000-06-20 Alan Modra <alan@linuxcare.com.au>
1296
1297 * archive.c (normalize): Correct pointer comparison when checking
1298 for backslashes.
1299 (bfd_bsd_truncate_arname): Likewise.
1300 (bfd_gnu_truncate_arname): Likewise.
1301
b305ef96
UC
13022000-06-20 Ulf Carlsson <ulfc@engr.sgi.com>
1303
1304 * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual
1305 sections elf_{text,data}_{section,symbol}.
1306 * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove.
1307 (_bfd_mips_elf_hide_symbol): New function.
1308 (elf_backend_hide_symbol): Map to the new function.
1309 (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD
1310 definitions of mips_elf_{text,data}_{section,symbol}.
1311 (mips_elf_local_relocation_p): Try to find the direct symbol
1312 based on new check_forced argument.
1313 (mips_elf_calculate_relocation): Use new version of
1314 mips_elf_local_relocation_p.
1315 (mips_elf_relocate_section): Likewise.
1316 (_bfd_mips_elf_relocate_section): Likewise.
1317 (mips_elf_sort_hash_table): Only assert that have enough GOT
1318 space.
1319 (mips_elf_got16_entry): Match all 32 bits to the existing GOT
1320 entry if the relocation based on the new external argument.
1321 (mips_elf_create_dynamic_relocation): Assert that we have a
1322 section contents allocated where we can swap out the dynamic
1323 relocations.
1324 (mips_elf_calculate_relocation): Find the real hash-table entry
1325 correctly by using h->root.root.type. Only create a dynamic
1326 relocation entry if the symbol is defined in a shared library.
1327 Create an external GOT entry for the GOT16 relocation if the
1328 symbol was forced local.
1329 (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a
1330 dynamic index if the symbol was forced local.
1331
13322000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1333
1334 * elf32-mips.c: Fix typos in comments.
77cb06e9 1335
1605fc4f
MK
13362000-06-19 Mark Kettenis <kettenis@gnu.org>
1337
1338 * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef
1339 CORE_VERSION_1.
1340
60bcf0fa
NC
13412000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
1342
1343 * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild.
1344 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS,
1345 BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files.
1346 * configure.in (bfd_elf32_m68hc12_vec): Recognize.
1347 (bfd_elf32_m68hc11_vec): Likewise.
77cb06e9 1348 * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11.
60bcf0fa
NC
1349 Supports 68hc11 & 68hc12 at the same time.
1350 * targets.c (bfd_elf32_m68hc12_vec): Declare and put in
1351 bfd_target_vector.
1352 (bfd_elf32_m68hc11_vec): Likewise.
1353 * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11.
1354 * archures.c (bfd_m68hc12_arch): Define and register in global list
1355 (bfd_m68hc11_arch): Likewise.
1356 * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8,
1357 BFD_RELOC_M68HC11_3B): Define.
1358 * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support.
1359 * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support.
1360
f41cbf03
UC
13612000-06-18 Ulf Carlsson <ulfc@engr.sgi.com>
1362
1363 * elf_bfd.h (struct elf_backend_data): Add info argument to
1364 elf_backend_hide_symbol.
1365 (_bfd_elf_link_hash_hide_symbol): Likewise.
1366 * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise.
1367 * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise.
1368 * elflink.h (elf_link_add_object_symbols): Likewise.
1369 (elf_link_assign_sym_version): Likewise.
77cb06e9 1370
689be717
L
13712000-06-18 H.J. Lu <hjl@gnu.org>
1372
1373 * coff-i386.c (coff_i386_reloc): Don't return in case of
1374 output_bfd == (bfd *) NULL if COFF_WITH_PE is defined.
1375 Compensate PE relocations when linking with non-PE object
1376 files to generate a non-PE executable.
1377
9a8f3bb7
UC
13782000-06-17 Ulf Carlsson <ulfc@engr.sgi.com>
1379
1380 * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write
1381 GOT entries if we're doing a static link or -Bsymbolic link.
1382
32f0787a
UC
13832000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
1384
1385 * elflink.h (elf_link_adjust_relocs): Check for and call backend
1386 specifific swap_reloc_{in,out} and swap_reloca_{in,out} if
1387 available.
1388 (elf_link_output_relocs): Likewise.
1389 (elf_reloc_link_order): Likewise.
77cb06e9 1390
87f33987
ND
13912000-06-16 Nicholas Duffek <nsd@redhat.com>
1392
1393 * archures.c (enum bfd_architecture): #define constants for
1394 PowerPc and RS6000 machine numbers.
1395 * bfd-in2.h: Regenerate.
1396 * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch
1397 to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc
1398 and RS6000 machine numbers using #defined constants from
1399 archures.c.
1400 * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000
1401 machine numbers using #defined constants from archures.c. Add
1402 entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify
1403 64-bit words in 620 entry.
1404 * cpu-rs6000.c (arch_info_struct): Create with entries for RS1,
1405 RSC, and RS2.
1406 (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k).
1407
a2fdf270
ND
14082000-06-16 Nicholas Duffek <nsd@cygnus.com>
1409
1410 * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64.
1411 * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field.
1412 * libcoff.h (struct xcoff_tdata): Define xcoff64 field.
1413
9bd09e22
ND
14142000-06-16 Nicholas Duffek <nsd@redhat.com>
1415
1416 * bfd-in.h (bfd_family_coff): Define.
1417 * bfd-in2.h: Regenerate.
1418 * coffgen.c (coff_count_linenumbers, coff_symbol_from,
1419 coff_find_nearest_line): Check COFFness using bfd_family_coff()
1420 instead of bfd_target_coff_flavour.
1421 * cofflink.c (_bfd_coff_final_link): Likewise.
1422 * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to
1423 exclude XCOFF files.
1424 * reloc.c (bfd_perform_relocation, bfd_install_relocation):
1425 Likewise.
1426 * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour.
1427 * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour.
1428 * xcofflink.c (XCOFF_XVECP): Delete.
1429 (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol,
1430 bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc,
1431 bfd_xcoff_record_link_assignment,
1432 bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with
1433 check for bfd_target_xcoff_flavour.
1434
59d9f049
ND
14352000-06-16 Nicholas Duffek <nsd@redhat.com>
1436
1437 * rs6000-core.c: Support 64-bit core files, support pre-4.3 core
1438 files on AIX 4.3.
1439 (read_hdr): New function.
1440 (rs6000coff_core_p): Store mstsave or __context64 struct instead
1441 of trying to extract individual registers. Set abfd->arch_info
1442 to match the architecture that created the core file.
1443 (rs6000coff_get_section_contents): Delete.
1444 * xcoff-target.h (rs6000coff_get_section_contents): Delete.
1445
63e39178
L
14462000-06-14 H.J. Lu <hjl@gnu.org>
1447
1448 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec)
1449 is NULL.
1450
bcef29e6
L
14512000-06-13 H.J. Lu <hjl@gnu.org>
1452
1453 * configure: Regenerate.
1454
26bfd1c0
JR
1455Tue Jun 13 01:28:57 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1456
1457 * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of
1458 armpei_little_vec.
1459
946efd95
DB
14602000-06-08 David O'Brien <obrien@FreeBSD.org>
1461
1462 * configure.in (VERSION): Update to show this is the CVS mainline.
1463
1b452ec6
AM
14642000-06-07 Alan Modra <alan@linuxcare.com.au>
1465
1466 * elf32-d10v.c: Include elf/d10v.h
1467 (enum reloc_type): Delete.
1468 * elf32-d30v.c: Include elf/d30v.h
1469 (enum reloc_type): Delete.
1470
1471 * Makefile.am: Run "make dep-am" to regenerate dependencies.
1472 * Makefile.in: Regenerate.
1473
1474 * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs.
dc47f327
AM
1475 (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and
1476 move HOWTOs into elf_howto_table.
1b452ec6 1477 (R_386_standard, R_386_ext_offset): Define.
dc47f327 1478 (R_386_ext, R_386_vt_offset, R_386_vt): Define.
1b452ec6 1479 (elf_i386_reloc_type_lookup): Modify calculation of index into
dc47f327 1480 elf_howto_table since we've removed the padding.
1b452ec6
AM
1481 (elf_i386_info_to_howto_rel): Likewise.
1482 (elf_i386_relocate_section): Likewise.
1483
e0ebfc61
MS
14842000-06-06 Michael Snyder <msnyder@seadog.cygnus.com>
1485
1486 * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t.
1487
9d6eee78
L
14882000-06-05 H.J. Lu <hjl@gnu.org>
1489
1490 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
1491 an error when seeing an undefined symbol with hidden/internal
1492 attribute. It is handled in *_relocate_section ().
1493
94b6c40a
L
14942000-06-05 H.J. Lu <hjl@gnu.org>
1495
1496 * elflink.h (elf_fix_symbol_flags): Follow the link for the
1497 indirect symbol for the ELF_LINK_NON_ELF bit.
1498 (elf_link_output_extsym): Don't output the indirect symbol even
1499 if the ELF_LINK_NON_ELF bit is set.
1500
0af288f3
C
15012000-06-01 J.T. Conklin <jtc@redback.com>
1502
1503 * config.bfd (i[3456]86-*-netbsdelf*): New target.
1504 (i[3456]86-*-netbsdaout*): New target.
1505 (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs.
1506 (i[3456]86-*-openbsd*): Likewise.
1507
12df4d3c
AC
1508Tue May 30 15:39:04 2000 Andrew Cagney <cagney@b1.cygnus.com>
1509
1510 * trad-core.c: From hpux-core.c, include <dirent.h> or
77cb06e9 1511 <sys/ndir.h> when possible.
12df4d3c 1512
c0ae4ccc
NC
15132000-05-31 Nick Clifton <nickc@cygnus.com>
1514
1515 * opintl.h (_(String)): Explain why dgettext is used instead
77cb06e9 1516 of gettext.
c0ae4ccc 1517
321fa097
UD
15182000-05-31 Ulrich Drepper <drepper@redhat.com>
1519
1520 * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version
1521 definitions. We must not assume they are sorted in the file
1522 according to their index numbers.
1523
70d72e0e
AM
15242000-05-31 Alan Modra <alan@linuxcare.com.au>
1525
1526 * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field
77cb06e9
AM
1527 selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and
1528 R_PARISC_DIR17F are for absolute branches; Handle them as such.
70d72e0e 1529
96f6d4c4
NC
15302000-05-30 Nick Clifton <nickc@cygnus.com>
1531
1532 * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB,
1533 80960CA, 80960MC as valid machine names.
1534
38048eb9
L
15352000-05-30 H.J. Lu <hjl@gnu.org>
1536
1537 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the
1538 visibility bits if the symbol is undefined. Correctly handle
1539 weak undefined symbols with hidden and internal attributes.
1540
1541 * elflink.h (elf_link_add_object_symbols): Always turn the
1542 symbol into local if it has the hidden or internal attribute.
1543
8c763017
PB
15442000-05-29 Philip Blundell <philb@gnu.org>
1545
1546 * ppcboot.c: Add packed attribute if compiling with GCC.
1547
1ae00f9d
AM
15482000-05-29 Anatoly Vorobey <mellon@pobox.com>
1549
1550 * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal.
1551
4a938328
MS
15522000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
1553
77cb06e9 1554 * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus,
4a938328
MS
1555 elfcore_grok_psinfo): Add code to allow debugging a 32-bit
1556 corefile on a 64-bit (Sparc Solaris) host. Also clean up
1557 a few old comments.
1558
5af11cab
AM
15592000-05-26 Alan Modra <alan@linuxcare.com.au>
1560
2114f57b
AM
1561 * Makefile.am: Update dependencies with "make dep-am"
1562 * Makefile.in: Regenerate.
1563
5af11cab
AM
1564 * sysdep.h (gettext, dgettext, dcgettext, textdomain,
1565 bindtextdomain): Replace defines with those from intl/libgettext.h
1566 to quieten gcc warnings.
1567
15682000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
1569
1570 * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH.
1571
1572 * archive.c (normalize, bfd_bsd_truncate_arname,
1573 bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support
1574 file names with backslashes.
1575
1576 * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file
1577 before opening it.
1578
1579 * sysdep.h: Include filenames.h.
1580
b6cdd0fd
AM
15812000-05-26 Alan Modra <alan@linuxcare.com.au>
1582
1583 * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777.
1584
f7775d95
JJ
15852000-05-26 Jakub Jelinek <jakub@redhat.com>
1586
1587 * elf64-sparc.c (sparc64_elf_relax_section): New.
1588 (sparc64_elf_relocate_section): Optimize tail call into branch always
1589 if possible.
1590 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1591 (elf32_sparc_relax_section): New.
1592
6c08d697
JJ
15932000-05-26 Jakub Jelinek <jakub@redhat.com>
1594
1595 * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters.
1596 Remove unusued variables.
1597 (sparc64_elf_relocate_section): Change r_symndx type to unsigned long.
1598 (sparc64_elf_merge_private_bfd_data): Fix shared library case from
1599 previous fix, so that shared libs really don't influence targets
1600 extension mask and memory model.
1601
edb72b3b
L
16022000-05-23 H.J. Lu <hjl@gnu.org>
1603
1604 * elf64-alpha.c (elf64_alpha_relocate_section): Check
1605 h->root.other not h->other.
ba09750c
L
1606 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
1607
1608 * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo.
edb72b3b 1609
3a27a730
L
16102000-05-23 H.J. Lu <hjl@gnu.org>
1611
1612 * elf32-i386.c (elf_i386_relocate_section): Don't allow the
1613 undefined symbol with the non-default visibility attributes.
1614 * elf-hppa.h (elf_hppa_relocate_section): Likewise.
1615 * elf32-arm.h (elf32_arm_relocate_section): Likewise.
1616 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1617 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1618 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1619 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
1620 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1621 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1622 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1623 * elf64-ia64.c (elf64_ia64_relocate_section): Likewise.
1624 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1625
748abff6
RH
16262000-05-22 Richard Henderson <rth@cygnus.com>
1627
1628 * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI,
1629 PCREL22, PCREL64I. Zero size of special relocs.
1630 (elf64_ia64_reloc_type_lookup): Likewise.
1631 (USE_BRL, oor_brl, oor_ip): New.
1632 (elf64_ia64_relax_section): New.
1633 (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I.
1634 (elf64_ia64_install_value): Likewise, plus PCREL21BI.
1635 (elf64_ia64_relocate_section): Likewise.
1636 (bfd_elf64_bfd_relax_section): New.
1637 * reloc.c (BFD_RELOC_IA64_PCREL21BI): New.
1638 (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New.
1639 * bfd-in2.h, libbfd.h: Regenerate.
1640
fb67355a
NC
16412000-05-22 Nick Clifton <nickc@cygnus.com>
1642
1643 * configure.in : Add peigen.lo to MIPS PE targets.
1644 * configure: Regenerate.
1645
1fe494a5
NC
16462000-05-22 Momchil Velikov <velco@fadata.bg>
1647
1648 * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess
748abff6 1649 only if it is known for both input and output bfds. Separate
1fe494a5
NC
1650 error message strings as in some languages, it may be necessary
1651 to change more than one place in the string to change between
77cb06e9 1652 'big' and 'little'.
1fe494a5
NC
1653
1654 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline
77cb06e9
AM
1655 endianess checks, call _bfd_generic_verify_endian_match() instead.
1656
1657 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise.
1fe494a5 1658
77cb06e9 1659 * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise.
1fe494a5
NC
1660
1661 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify
77cb06e9 1662 endianess before checking bfd flavours.
1fe494a5 1663
32c092c3
L
16642000-05-22 H.J. Lu <hjl@gnu.org>
1665
1666 * elflink.h (elf_link_output_extsym): Clear the visibility
1667 field for symbols not defined locally.
1668
df6d9773
JL
16692000-05-18 Alan Modra <alan@linuxcare.com.au>
1670
1671 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
1672 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
1673 (hppa_rebuild_insn): Mask immediate bits here instead.
1674 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
1675
7ad34365
NC
16762000-05-18 Momchil Velikov <velco@fadata.bg>
1677
1678 * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting
1679 relocs for an executable, ensure that they are virtual addresses.
1680
d1dab720
JL
1681Thu May 18 10:55:47 2000 Jeffrey A Law (law@cygnus.com)
1682
1683 * config.bfd (hppa*64*-*-hpux11*): New target triplet.
1684
a712da20
NC
16852000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
1686 Rick Gorton <gorton@scrugs.lkg.dec.com>
77cb06e9 1687
aa76cae8 1688 * elflink.h: Add emitrelocations support: when enabled, relocation
a712da20
NC
1689 information and relocation sections are put into final output
1690 executables. If the emitrelocations flag is set, do the following:
1691 (elf_bfd_final_link): Emit relocation sections.
1692 (elf_link_input_bfd): Compute relocation section contents.
1693 (elf_gc_sections): Don't clean relocation sections.
1694
aa76cae8 16952000-05-16 Catherine Moore <clm@cygnus.com>
10febd84
CM
1696
1697 * som.c (som_decode_symclass): Recognize weak symbols.
1698
db8503c4
AM
16992000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com>
1700
1701 * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that
1702 read idata section only from dataoff.
1703 (pe_print_edata): Correctly check for valid eat_member.
1704
851cde10
JR
1705Tue May 16 00:04:11 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1706
1707 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
1708
1bde2d57
PB
17092000-05-14 Philip Blundell <philb@gnu.org>
1710
1711 * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets.
1712
a76b448c
AM
17132000-05-12 Alan Modra <alan@linuxcare.com.au>
1714
9ee25201
AM
1715 * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec
1716
a76b448c
AM
1717 * peigen.c (pe_print_idata): Look for .idata section and print
1718 info even if data directory has zero entries. Read idata section
1719 starting from dataoff, and adjust all data offsets to suit. Cast
1720 all bfd_vma vars to unsigned long before passing to fprintf.
1721 * peigen.c (pe_print_edata): Similarly, look for .edata section
1722 and print info even if data directory has zero entries. Cast
1723 all bfd_vma vars to unsigned long before passing to fprintf.
1724
1725 From Szabolcs Szakacsits <szaka@F-Secure.com>
1726 * peigen.c (pe_print_idata): Use bfd_section_size rather than data
1727 directory size which may be bogus.
1728 * peigen.c (pe_print_edata): Similarly.
1729
72730e0c
AM
17302000-05-09 Alan Modra <alan@linuxcare.com.au>
1731
1732 * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela
1733 section is empty.
1734 (copy_private_bfd_data): Allow for space possibly taken up by elf
1735 headers when calculating segment physical address from lma.
1736
8181c403
AM
17372000-05-08 Alan Modra <alan@linuxcare.com.au>
1738
bfde9f99
AM
1739 * versados.c (versados_scan): Init stringlen and pass_2_done.
1740
b35efbcd
AM
1741 * trad-core.c (trad_unix_core_file_p): Return
1742 bfd_error_wrong_format rather than bfd_error_file_truncated.
1743
8181c403
AM
1744 * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to
1745 add_data_entry. DataDirectory virtual address is relative.
1746 (pe_print_idata): Account for relative DataDirectory virtual
1747 addresses. Don't trash datasize inside POWERPC_LE_PE code.
1748 (pe_print_edata): Similarly.
1749
1750 From Szabolcs Szakacsits <szaka@F-Secure.com>
1751 * peigen.c (dir_names): Add Delay Import Directory.
1752 (pe_print_idata): Always search for bfd section containing
1753 idata address rather than looking up section name. Print this
1754 section name rather than .idata.
1755 (pe_print_edata): Similarly. Also print some fields as %08lx.
1756 (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as
1757 Win32Version.
1758
2c38bc20
CP
1759Fri May 5 20:44:40 2000 Clinton Popetz <cpopetz@cygnus.com>
1760
1761 * xcoff.h: Rename to xcoff-target.h
1762 * Makefile.am: Change all instances of xcoff.h to xcoff-target.h
1763 * coff-rs6000.c: Ditto.
1764 * coff64-rs6000.c: Ditto.
1765 * coff-pmac.c: Ditto.
1766 * Makefile.in: Regenerate.
77cb06e9 1767
c6664dfb
CP
1768Fri May 5 16:51:03 2000 Clinton Popetz <cpopetz@cygnus.com>
1769
1770 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags):
1771 Change U802TOC64MAGIC to U803XTOCMAGIC.
1772
3425c182
MS
17732000-05-04 Michael Snyder <msnyder@seadog.cygnus.com>
1774
1775 * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1.
1776 * bfd-in.h: Prototype bfd_elf_get_arch_size.
1777 * bfd-in2.h: Prototype bfd_elf_get_arch_size.
1778
7c30ac37
AM
17792000-05-04 Alan Modra <alan@linuxcare.com.au>
1780
1781 * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma.
1782