Revert most of previous delta. Do not call bfd_archive_filename on output
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
63b0f745
NC
12001-09-27 Nick Clifton <nickc@cambridge.redhat.com>
2
06317a27
NC
3 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix detection of
4 conflicting float flags.
63b0f745 5
ebe50bae
AM
62001-09-26 Alan Modra <amodra@bigpond.net.au>
7
8 * elf32-i386 (elf_i386_copy_indirect_symbol): New function.
9 (elf_backend_copy_indirect_symbol): Define.
10 (struct elf_i386_link_hash_entry): Rename "root" to "elf".
11 (struct elf_i386_link_hash_table): Likewise.
12 (link_hash_newfunc): Get rid of unnecessary casts.
13 (elf_i386_link_hash_table_create): Likewise.
14 (elf_i386_check_relocs): Initialise local_got_refcounts to 0.
15 Don't test input section SEC_READONLY here to try to avoid copy
16 relocs, and keep dyn_relocs regardleas of ELF_LINK_NON_GOT_REF.
17 (elf_i386_adjust_dynamic_symbol): Check output section SEC_READONLY
18 here to properly test whether we need copy relocs. Do so for weak
19 syms too.
20
21 * elf32-hppa (elf32_hppa_copy_indirect_symbol): New function.
22 (elf_backend_copy_indirect_symbol): Define.
23 (struct elf32_hppa_link_hash_table): Rename "root" to "elf".
24 (stub_hash_newfunc): Get rid of unnecessary casts.
25 (hppa_link_hash_newfunc): Likewise.
26 (elf32_hppa_check_relocs): Initialise local_got_refcounts to 0.
27 Don't test input section SEC_READONLY here to try to avoid copy
28 relocs, and keep dyn_relocs regardleas of ELF_LINK_NON_GOT_REF.
29 (elf32_hppa_adjust_dynamic_symbol): Check output section SEC_READONLY
30 here to properly test whether we need copy relocs. Do so for weak
31 syms too.
32
af6166c0
AM
332001-09-26 Alan Modra <amodra@bigpond.net.au>
34
35 * bfd.c (_bfd_default_error_handlerl): Define using VPARAMS,
36 VA_OPEN, VA_FIXEDARG, VA_CLOSE.
37 (bfd_archive_filename): Cast bfd_malloc arg to the correct size.
38
e62de969
JJ
392001-09-25 Jakub Jelinek <jakub@redhat.com>
40
41 * elf64-sparc.c (sparc64_elf_build_plt): Fix .plt[32768+] slot
42 computation.
43
09c1cc88
L
442001-09-25 H.J. Lu <hjl@gnu.org>
45
46 * bfd-in2.h: Regenerated.
47
38701953
AM
482001-09-25 Alan Modra <amodra@bigpond.net.au>
49
50 * elf32-i386.c: Add comment re linker function names and ordering.
51 (elf_i386_link_hash_newfunc): Rename to link_hash_newfunc.
52 (elf_i386_grok_prstatus): Move before linker functions.
53 (elf_i386_grok_psinfo): Likewise.
54 (elf_i386_fake_sections): Move so that functions are ordered.
55 (elf_i386_reloc_type_class): Likewise. Comment function purpose.
56
98ceb8ce
AM
572001-09-25 Alan Modra <amodra@bigpond.net.au>
58
83c81bfe
AM
59 * elf32-hppa.c: Rename all occurrences of "hplink" to "htab"
60 throughout file.
61
98ceb8ce
AM
62 * elf32-hppa.c: (LONG_BRANCH_PIC_IN_SHLIB): Delete. Remove all
63 code handling this option.
64 (LONG_BRANCH_VIA_PLT): Likewise.
65 (RELATIVE_DYNRELOCS): Define as zero.
66 (struct elf32_hppa_dyn_reloc_entry): Add "sec", and
67 "pc_count" fields. Remove "section" field.
68 (elf32_hppa_link_hash_entry): Rename reloc_entries to dyn_relocs.
69 (elf32_hppa_check_relocs): Don't allocate space for dynamic
70 relocs here. Instead, record all needed dynamic relocs via
71 dyn_relocs and local_dynrel. Cache pointer to "sreloc" section
72 in elf_section_data.
73 (elf32_hppa_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
74 (allocate_plt_and_got_and_discard_relocs): Rename to
75 allocate_dynrelocs. Allocate rather than discarding dyn relocs.
76 (readonly_dynrelocs): New function.
77 (elf32_hppa_size_dynamic_sections): Mark output_bfd unused.
78 Call readonly_dynrelocs to determine need for DT_TEXTREL.
79 Rename "i" to "ibfd". Allocate space for local dyn relocs.
80 (elf32_hppa_relocate_section): Make use of cached sreloc.
81 (elf32_hppa_reloc_type_class): New function.
82 (elf_backend_reloc_type_class): Define.
83
0c715baa
AM
842001-09-25 Alan Modra <amodra@bigpond.net.au>
85
86 * elf-bfd.h (struct bfd_elf_section_data): Add "local_dynrel"
87 and "sreloc" fields.
88 * elf32-i386.c (struct elf_i386_dyn_relocs): Add "sec", and
89 "pc_count" fields. Remove "section" field.
90 (elf_i386_check_relocs): Don't set DF_TEXTREL here. Don't
91 allocate space for dynamic relocs here. Instead, record all
92 needed dynamic relocs via dyn_relocs and local_dynrel. Cache
93 pointer to "sreloc" section in elf_section_data.
94 (elf_i386_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
95 (allocate_plt_and_got_and_discard_relocs): Rename to
96 allocate_dynrelocs. Allocate rather than discarding dyn relocs.
97 (readonly_dynrelocs): New function.
98 (elf_i386_size_dynamic_sections): Call readonly_dynrelocs.
99 Rename "i" to "ibfd". Allocate space for local dyn relocs.
100 (elf_i386_relocate_section): Make use of cached sreloc.
101
f51e552e
AM
1022001-09-24 Alan Modra <amodra@bigpond.net.au>
103
104 * elf-bfd.h (elf_backend_reloc_type_class): Pass in the entire
105 reloc rather than just the type.
106 (_bfd_elf_reloc_type_class): Likewise.
107 * elf.c (_bfd_elf_reloc_type_class): Likewise.
108 * elf32-arm.h (elf32_arm_reloc_type_class): Likewise.
109 * elf32-cris.c (elf_cris_reloc_type_class): Likewise.
110 * elf32-i386.c (elf_i386_reloc_type_class): Likewise.
111 * elf32-m68k.c (elf32_m68k_reloc_type_class): Likewise.
112 * elf32-ppc.c (ppc_elf_reloc_type_class): Likewise.
113 * elf32-s390.c (elf_s390_reloc_type_class): Likewise.
114 * elf32-sh.c (sh_elf_reloc_type_class): Likewise.
115 * elf32-sparc.c (elf32_sparc_reloc_type_class): Likewise.
116 * elf64-alpha.c (elf64_alpha_reloc_type_class): Likewise.
117 * elf64-s390.c (elf_s390_reloc_type_class): Likewise.
118 * elf64-sparc.c (sparc64_elf_reloc_type_class): Likewise.
119 * elf64-x86-64.c (elf64_x86_64_reloc_type_class): Likewise.
120 * elfxx-ia64.c (elfNN_ia64_reloc_type_class): Likewise.
121 * elflink.h: Formatting fixes.
122 (elf_link_sort_relocs): Make "count" and "size" bfd_size_type.
123 Call bfd_zmalloc rather than calloc. Remove unnecessary cast of
124 o->contents to PTR. Update call to elf_backend_reloc_type_class.
125
0c35f01a
AM
1262001-09-22 John Reiser <jreiser@BitWagon.com>
127
128 * elfcode.h (elf_object_p): Allow for no section header at all in
129 non-ET_REL files. Honor 0 for e_shnum, e_shstrndx, e_shoff.
130
1e738b87
NC
1312001-09-21 Nick Clifton <nickc@cambridge.redhat.com>
132
133 * elfxx-ia64.c: Fix compile time warning messages.
09c1cc88
L
134 * coff-mcore.c: Fix compile time warning messages.
135 * coff-ppc.c: Fix compile time warning messages.
136 * coffcode.h: Fix compile time warning messages.
137 * elf32-mips.c: Fix compile time warning messages.
138 * elf64-alpha.c: Fix compile time warning messages.
139 * libbfd.c: Fix compile time warning messages.
140 * bfd-in2.h: Regenerate.
1e738b87 141
923f08ff
AM
1422001-09-21 Alan Modra <amodra@bigpond.net.au>
143
144 * Makefile.am: Run "make dep-am".
145 * Makefile.in: Regenerate.
146
147 * aoutx.h: Formatting fixes.
148 * merge.c (_bfd_merged_section_offset): Break line at 80 chars.
149
150 * linker.c: Replace bfd_get_filename with bfd_archive_filename
151 in error message.
152
8f615d07
AM
1532001-09-21 Alan Modra <amodra@bigpond.net.au>
154
155 * bfd.c (bfd_archive_filename): New function.
156 * bfd-in2.h: Regenerate.
157 * aout-adobe.c: Replace bfd_get_filename with bfd_archive_filename
158 in error messages where the bfd is an input bfd.
159 * aout-cris.c: Likewise.
160 * coff-arm.c: Likewise.
161 * coff-mcore.c: Likewise.
162 * coff-ppc.c: Likewise.
163 * coff-rs6000.c: Likewise.
164 * coff-sh.c: Likewise.
165 * coff-tic54x.c: Likewise.
166 * coff-tic80.c: Likewise.
167 * coff64-rs6000.c: Likewise.
168 * coffcode.h: Likewise.
169 * coffgen.c: Likewise.
170 * cofflink.c: Likewise.
171 * ecofflink.c: Likewise.
172 * elf-hppa.h: Likewise.
173 * elf.c: Likewise.
174 * elf32-arm.h: Likewise.
175 * elf32-cris.c: Likewise.
176 * elf32-gen.c: Likewise.
177 * elf32-hppa.c: Likewise.
178 * elf32-i370.c: Likewise.
179 * elf32-i386.c: Likewise.
180 * elf32-m32r.c: Likewise.
181 * elf32-mcore.c: Likewise.
182 * elf32-mips.c: Likewise.
183 * elf32-ppc.c: Likewise.
184 * elf32-s390.c: Likewise.
185 * elf32-sh.c: Likewise.
186 * elf32-sparc.c: Likewise.
187 * elf32-v850.c: Likewise.
188 * elf64-alpha.c: Likewise.
189 * elf64-gen.c: Likewise.
190 * elf64-ppc.c: Likewise.
191 * elf64-s390.c: Likewise.
192 * elf64-sparc.c: Likewise.
193 * elf64-x86-64.c: Likewise.
194 * elflink.h: Likewise.
195 * elfxx-ia64.c: Likewise.
196 * ieee.c: Likewise.
197 * ihex.c: Likewise.
198 * libbfd.c: Likewise.
199 * pdp11.c: Likewise.
200 * pe-mips.c: Likewise.
201 * peicode.h: Likewise.
202 * srec.c: Likewise.
203 * xcofflink.c: Likewise.
204
205 * elf32-arm.h: Make _bfd_error_handler calls K&R compatible.
206
207 * elflink.c (_bfd_elf_create_linker_section): Better grammar for
208 error message.
209
210 * coff-mcore.c (coff_mcore_relocate_section): Internalionalise
211 error message.
212
213 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Constify stt_types.
214 Consolidate error messages, and split long messages to two lines.
215
671bae9c 2162001-09-20 John Reiser <jreiser@BitWagon.com>
83c81bfe 217
f51e552e
AM
218 * elf32-i386.c (elf_i386_relocate_section): Coordinate info->symbolic
219 and info->allow_shlib_undefined.
220 * elf32-cris.c: Likewise.
221 * elf32-hppa.c: Likewise.
222 * elf32-m68k.c: Likewise.
223 * elf32-mips.c: Likewise.
224 * elf32-ppc.c: Likewise.
225 * elf32-s390.c: Likewise.
226 * elf32-sh.c: Likewise.
227 * elf32-sparc.c: Likewise.
228 * elf64-alpha.c: Likewise.
229 * elf64-hppa.c: Likewise.
230 * elf64-ppc.c: Likewise.
231 * elf64-s390.c: Likewise.
232 * elf64-sparc.c: Likewise.
233 * elf64-x86-64.c: Likewise.
234 * elfxx-ia64.c: Likewise.
671bae9c 235
3882b010
L
2362001-09-18 Bruno Haible <haible@clisp.cons.org>
237
238 * aoutx.h: Include "safe-ctype.h" instead of <ctype.h>.
239 (aout_link_write_symbols): Use ISDIGIT instead of isdigit.
240 * archive.c: Include "safe-ctype.h" instead of <ctype.h>.
241 (_bfd_generic_read_ar_hdr_mag): Use ISDIGIT instead of isdigit.
242 * archures.c: Include "safe-ctype.h" instead of <ctype.h>.
243 (bfd_default_scan): Use ISDIGIT instead of isdigit.
244 * bfd.c: Include "safe-ctype.h" instead of <ctype.h>.
245 (bfd_scan_vma): Use ISXDIGIT/ISDIGIT/ISLOWER instead of
246 isxdigit/isdigit/islower.
247 * binary.c: Include "safe-ctype.h" instead of <ctype.h>.
248 (mangle_name): Use ISALNUM instead of isalnum.
249 * cpu-v850.c: Include "safe-ctype.h" instead of <ctype.h>.
250 (scan): Use ISDIGIT instead of isdigit.
251 * hosts/alphavms.h: Don't include <ctype.h>.
252 * ieee.c: Include "safe-ctype.h" instead of <ctype.h>.
253 (ieee_object_p): Use TOUPPER instead of toupper.
254 * ihex.c: Include "safe-ctype.h" instead of <ctype.h>.
255 (ihex_bad_byte): Use ISPRINT instead of isprint.
256 * merge.c: Don't include <ctype.h>.
257 * oasys.c: Include "safe-ctype.h" instead of <ctype.h>.
258 (oasys_write_sections): Use ISDIGIT instead of isdigit.
259 * pdp11.c: Include "safe-ctype.h" instead of <ctype.h>.
260 (aout_link_write_symbols): Use ISDIGIT instead of isdigit.
261 * ppcboot.c: Include "safe-ctype.h" instead of <ctype.h>.
262 (mangle_name): Use ISALNUM instead of isalnum.
263 * som.c: Include "safe-ctype.h" instead of <ctype.h>.
264 (som_set_reloc_info): Use ISUPPER/ISLOWER/ISDIGIT instead of
265 isupper/islower/isdigit.
266 (som_decode_symclass): Use TOUPPER instead of toupper.
267 * srec.c: Include "safe-ctype.h" instead of <ctype.h>.
268 (srec_bad_byte): Use ISPRINT instead of isprint.
269 (srec_scan): Use ISSPACE instead of isspace.
270 * stabs.c: Include "safe-ctype.h" instead of <ctype.h>.
271 (_bfd_link_section_stabs): Use ISDIGIT instead of isdigit.
272 * syms.c: Include "safe-ctype.h"
273 (islower, toupper): Remove macro definitions.
274 (bfd_decode_symclass): Use TOUPPER instead of toupper.
275 * vms-gsd.c: Don't include <ctype.h>.
276 * vms-hdr.c: Include "safe-ctype.h" instead of <ctype.h>.
277 (_bfd_vms_write_hdr): Use ISLOWER/TOUPPER instead of
278 islower/toupper.
279 * vms-tir.c: Don't include <ctype.h>.
280
dc810e39
AM
2812001-09-18 Alan Modra <amodra@bigpond.net.au>
282
283 * libbfd.c (bfd_bread): New function replacing bfd_read without
284 redundant params. Allow reads up to (size_t) -2 in length.
285 (bfd_bwrite): Similarly for bfd_write.
286 (real_read): Return a size_t.
287 (bfd_read): Call bfd_bread.
288 (bfd_write): Call bfd_bwrite.
289 (warn_deprecated): New function to annoy everybody.
290 (bfd_get_file_window): Don't call bfd_set_error unnecessarily.
291 * bfd-in.h (bfd_bread, bfd_bwrite, warn_deprecated): Declare.
292 (bfd_read, bfd_write): Define as macro.
293 * aix386-core.c: Replace calls to bfd_read with bfd_bread, and
294 likewise for bfd_write. Ensure function args are correct size by
295 using casts or local vars. In some cases, remove unnecessary
296 casts. Formatting fixes, in some cases removing a large expression
297 from function args by using a local var. Replace CONST with const.
298 Modify variable types to avoid warings. Use casts to avoid
299 warnings when using negative numbers in unsigned expressions.
300 * aout-adobe.c: Likewise.
301 * aout-arm.c: Likewise.
302 * aout-cris.c: Likewise.
303 * aout-encap.c: Likewise.
304 * aout-ns32k.c: Likewise.
305 * aout-target.h: Likewise.
306 * aout-tic30.c: Likewise.
307 * aoutf1.h: Likewise.
308 * aoutx.h: Likewise.
309 * archive.c: Likewise.
310 * archures.c: Likewise.
311 * bfd-in.h: Likewise.
312 * bfd.c: Likewise.
313 * binary.c: Likewise.
314 * bout.c: Likewise.
315 * cache.c: Likewise.
316 * cisco-core.c: Likewise.
317 * coff-a29k.c: Likewise.
318 * coff-alpha.c: Likewise.
319 * coff-arm.c: Likewise.
320 * coff-h8300.c: Likewise.
321 * coff-h8500.c: Likewise.
322 * coff-i386.c: Likewise.
323 * coff-i860.c: Likewise.
324 * coff-i960.c: Likewise.
325 * coff-ia64.c: Likewise.
326 * coff-m68k.c: Likewise.
327 * coff-m88k.c: Likewise.
328 * coff-mcore.c: Likewise.
329 * coff-mips.c: Likewise.
330 * coff-ppc.c: Likewise.
331 * coff-rs6000.c: Likewise.
332 * coff-sh.c: Likewise.
333 * coff-sparc.c: Likewise.
334 * coff-stgo32.c: Likewise.
335 * coff-tic30.c: Likewise.
336 * coff-tic54x.c: Likewise.
337 * coff-tic80.c: Likewise.
338 * coff-w65.c: Likewise.
339 * coff-z8k.c: Likewise.
340 * coff64-rs6000.c: Likewise.
341 * coffcode.h: Likewise.
342 * coffgen.c: Likewise.
343 * cofflink.c: Likewise.
344 * coffswap.h: Likewise.
345 * corefile.c: Likewise.
346 * cpu-arc.c: Likewise.
347 * cpu-h8300.c: Likewise.
348 * cpu-h8500.c: Likewise.
349 * cpu-i960.c: Likewise.
350 * cpu-ia64-opc.c: Likewise.
351 * cpu-ns32k.c: Likewise.
352 * cpu-pdp11.c: Likewise.
353 * cpu-pj.c: Likewise.
354 * cpu-sh.c: Likewise.
355 * cpu-w65.c: Likewise.
356 * cpu-z8k.c: Likewise.
357 * dwarf1.c: Likewise.
358 * dwarf2.c: Likewise.
359 * ecoff.c: Likewise.
360 * ecofflink.c: Likewise.
361 * ecoffswap.h: Likewise.
362 * elf-bfd.h: Likewise.
363 * elf-hppa.h: Likewise.
364 * elf-m10200.c: Likewise.
365 * elf-m10300.c: Likewise.
366 * elf.c: Likewise.
367 * elf32-arc.c: Likewise.
368 * elf32-arm.h: Likewise.
369 * elf32-avr.c: Likewise.
370 * elf32-cris.c: Likewise.
371 * elf32-fr30.c: Likewise.
372 * elf32-gen.c: Likewise.
373 * elf32-h8300.c: Likewise.
374 * elf32-hppa.c: Likewise.
375 * elf32-i370.c: Likewise.
376 * elf32-i386.c: Likewise.
377 * elf32-i860.c: Likewise.
378 * elf32-m32r.c: Likewise.
379 * elf32-m68k.c: Likewise.
380 * elf32-mcore.c: Likewise.
381 * elf32-mips.c: Likewise.
382 * elf32-openrisc.c: Likewise.
383 * elf32-pj.c: Likewise.
384 * elf32-ppc.c: Likewise.
385 * elf32-s390.c: Likewise.
386 * elf32-sh-lin.c: Likewise.
387 * elf32-sh.c: Likewise.
388 * elf32-sparc.c: Likewise.
389 * elf32-v850.c: Likewise.
390 * elf64-alpha.c: Likewise.
391 * elf64-hppa.c: Likewise.
392 * elf64-mips.c: Likewise.
393 * elf64-ppc.c: Likewise.
394 * elf64-s390.c: Likewise.
395 * elf64-sparc.c: Likewise.
396 * elf64-x86-64.c: Likewise.
397 * elfarm-nabi.c: Likewise.
398 * elfcode.h: Likewise.
399 * elfcore.h: Likewise.
400 * elflink.c: Likewise.
401 * elflink.h: Likewise.
402 * elfxx-ia64.c: Likewise.
403 * elfxx-target.h: Likewise.
404 * format.c: Likewise.
405 * hash.c: Likewise.
406 * hp300hpux.c: Likewise.
407 * hppabsd-core.c: Likewise.
408 * hpux-core.c: Likewise.
409 * i386aout.c: Likewise.
410 * i386dynix.c: Likewise.
411 * i386linux.c: Likewise.
412 * i386lynx.c: Likewise.
413 * i386mach3.c: Likewise.
414 * i386msdos.c: Likewise.
415 * i386os9k.c: Likewise.
416 * ieee.c: Likewise.
417 * ihex.c: Likewise.
418 * irix-core.c: Likewise.
419 * libaout.h: Likewise.
420 * libbfd-in.h: Likewise.
421 * libbfd.c: Likewise.
422 * libcoff-in.h: Likewise.
423 * libecoff.h: Likewise.
424 * libieee.h: Likewise.
425 * libnlm.h: Likewise.
426 * libpei.h: Likewise.
427 * libxcoff.h: Likewise.
428 * linker.c: Likewise.
429 * lynx-core.c: Likewise.
430 * m68klinux.c: Likewise.
431 * merge.c: Likewise.
432 * mipsbsd.c: Likewise.
433 * netbsd-core.c: Likewise.
434 * nlm.c: Likewise.
435 * nlm32-alpha.c: Likewise.
436 * nlm32-i386.c: Likewise.
437 * nlm32-ppc.c: Likewise.
438 * nlm32-sparc.c: Likewise.
439 * nlmcode.h: Likewise.
440 * nlmswap.h: Likewise.
441 * ns32k.h: Likewise.
442 * oasys.c: Likewise.
443 * opncls.c: Likewise.
444 * osf-core.c: Likewise.
445 * pc532-mach.c: Likewise.
446 * pdp11.c: Likewise.
447 * pe-mips.c: Likewise.
448 * peXXigen.c: Likewise.
449 * peicode.h: Likewise.
450 * ppcboot.c: Likewise.
451 * ptrace-core.c: Likewise.
452 * reloc.c: Likewise.
453 * reloc16.c: Likewise.
454 * riscix.c: Likewise.
455 * rs6000-core.c: Likewise.
456 * sco5-core.c: Likewise.
457 * section.c: Likewise.
458 * som.c: Likewise.
459 * sparclinux.c: Likewise.
460 * sparclynx.c: Likewise.
461 * srec.c: Likewise.
462 * stabs.c: Likewise.
463 * sunos.c: Likewise.
464 * syms.c: Likewise.
465 * targets.c: Likewise.
466 * tekhex.c: Likewise.
467 * trad-core.c: Likewise.
468 * versados.c: Likewise.
469 * vms-gsd.c: Likewise.
470 * vms-hdr.c: Likewise.
471 * vms-misc.c: Likewise.
472 * vms-tir.c: Likewise.
473 * vms.c: Likewise.
474 * vms.h: Likewise.
475 * xcofflink.c: Likewise.
476 * bfd-in2.h: Regenerate.
477 * libbfd.h: Regenerate.
478 * libcoff.h: Regenerate.
479
480 * bfd.c (struct _bfd): Make "where" and "origin" unsigned.
481 * bfd-in.h (file_ptr): Change from a long int to a bfd_signed_vma.
482 (ufile_ptr): Define.
483 (bfd_tell): Return a ufile_ptr.
484 * libbfd.c (bfd_tell): Likewise.
485 (bfd_seek): Use bfd_size_type locals. Don't call bfd_set_error
486 unnecessarily.
487 * aix386-core.c: Test != 0 for bfd_seek errors rather than < 0.
488 * aoutf1.h: Likewise.
489 * som.c: Likewise.
490 * cache.c (bfd_cache_lookup_worker): Guard against abfd->where
491 larger than unsigned long can represent.
492
493 * libbfd.c (bfd_malloc): Take a bfd_size_type arg. Error if
494 size overflows size_t.
495 (bfd_realloc): Likewise.
496 (bfd_zmalloc): Likewise.
497 * opncls.c (bfd_alloc): Likewise.
498 (bfd_zalloc): Likewise.
499 * libbfd-in.h (bfd_malloc, bfd_realloc, bfd_zmalloc): Update.
500 (bfd_alloc, bfd_zalloc): Update.
501
502 * libbfd.c (bfd_get_8): Mask with 0xff in case char is more than
503 8 bits.
504 (bfd_get_signed_8): Likewise.
505 (H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8,
506 H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8,
507 H_GET_64, H_GET_32, H_GET_16, H_GET_8,
508 H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Define and use.
509 * libaout.h: Likewise define and use here.
510 * aout-adobe.c: Use H_GET_* and H_PUT_* macros.
511 * aout-arm.c: Likewise.
512 * aout-encap.c: Likewise.
513 * aout-ns32k.c: Likewise.
514 * aout-tic30.c: Likewise.
515 * aoutf1.h: Likewise.
516 * aoutx.h: Likewise.
517 * bout.c: Likewise.
518 * coff-alpha.c: Likewise.
519 * coff-h8300.c: Likewise.
520 * coff-h8500.c: Likewise.
521 * coff-i960.c: Likewise.
522 * coff-ia64.c: Likewise.
523 * coff-m88k.c: Likewise.
524 * coff-mips.c: Likewise.
525 * coff-ppc.c: Likewise.
526 * coff-rs6000.c: Likewise.
527 * coff-sh.c: Likewise.
528 * coff-sparc.c: Likewise.
529 * coff-stgo32.c: Likewise.
530 * coff-tic30.c: Likewise.
531 * coff-tic80.c: Likewise.
532 * coff-w65.c: Likewise.
533 * coff-z8k.c: Likewise.
534 * coff64-rs6000.c: Likewise.
535 * coffgen.c: Likewise.
536 * cofflink.c: Likewise.
537 * coffswap.h: Likewise.
538 * ecoff.c: Likewise.
539 * ecoffswap.h: Likewise.
540 * elf.c: Likewise.
541 * elf32-mips.c: Likewise.
542 * elf64-mips.c: Likewise.
543 * hp300hpux.c: Likewise.
544 * i386dynix.c: Likewise.
545 * i386lynx.c: Likewise.
546 * i386msdos.c: Likewise.
547 * i386os9k.c: Likewise.
548 * libpei.h: Likewise.
549 * nlm32-alpha.c: Likewise.
550 * nlm32-i386.c: Likewise.
551 * nlm32-ppc.c: Likewise.
552 * nlmcode.h: Likewise.
553 * nlmswap.h: Likewise.
554 * oasys.c: Likewise.
555 * pdp11.c: Likewise.
556 * pe-mips.c: Likewise.
557 * peXXigen.c: Likewise.
558 * peicode.h: Likewise.
559 * riscix.c: Likewise.
560 * sunos.c: Likewise.
561 * xcofflink.c: Likewise.
562 * elfcode.h: (put_word, get_word, put_signed_word, get_signed_word):
563 Rename to H_PUT_WORD, H_GET_WORD, H_PUT_SIGNED_WORD, H_GET_SIGNED_WORD.
564 * coff-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Don't define. Use
565 equivalent H_PUT_* macro instead.
566 (GETWORD, GETHALF, GETBYTE): Similarly.
567 * coff64-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Likewise.
568 (GETWORD, GETHALF, GETBYTE): Likewise.
569 * coffswap.h (PUTWORD, PUTHALF, PUTBYTE): Likewise.
570
571 * bfd-in.h (struct orl): Change "pos" to a union.
572 * archive.c (_bfd_compute_and_write_armap): Use it instead of casts.
573 (bsd_write_armap): Here too.
574 (coff_write_armap): And here.
575 * coff-rs6000.c (xcoff_write_armap_old): And here.
576 (xcoff_write_one_armap_big): And here.
577 (xcoff_write_armap_big): And here.
578 * ecoff.c (_bfd_ecoff_write_armap): And here.
579 * elf64-mips.c (mips_elf64_write_armap): And here.
580
581 * aoutf1.h (sunos_set_arch_mach): Make "mach" param an enum.
582 * elf-m10300.c (elf_mn10300_mach): Return an unsigned long.
583 * elf32-h8300.c (elf32_h8_mach): Likewise.
584 * elf32-mips.c (elf_mips_mach): Likewise.
585 * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
586
587 * aix386-core.c (aix386_core_file_p): Remove redundant bfd_release
588 calls.
589 (aix386_core_vec): Typo fix.
590
591 * aout-arm.c: Include libaout.h and aout/aout64.h after N_TXTADDR
592 etc. to avoid redefined macro warning.
593 (MY(put_reloc)): Use bfd_vma for "value" rather than long.
594 (MY(fix_pcrel_26)): Likewise.
595 * aout-ns32k.c (MY(put_reloc)): Likewise.
596 * aout-cris.c (MY(swap_ext_reloc_out)): Likewise for r_addend.
597 * aoutx.h (NAME(aout,swap_ext_reloc_out)): Likewise.
598 * coff-arm.c (coff_arm_relocate_section): Likewise for my_offset.
599
600 * aout-encap.c: Include "file", not <file> for binutils headers.
601 (encap_object_p): Half baked attempt to fix compile errors in
602 code dealing with "magic".
603
604 * aout-ns32k.c: Include "file", not <file> for binutils headers.
605 (_bfd_ns32k_relocate_contents): get_data and put_data manipulate
606 bfd_vma's rather than longs.
607 * cpu-ns32k.c (ns32k_sign_extend): Delete.
608 (_bfd_ns32k_get_displacement): Return a bfd_vma, don't pass in offset.
609 (_bfd_ns32k_get_immediate): Likewise. Add code for 8 byte values,
610 remove case 3.
611 (_bfd_ns32k_put_displacement): Accept a bfd_vma, don't pass in offset.
612 Use unsigned comparisons.
613 (bfd_ns32k_put_immediate): Likewise, and add code for 8 byte values.
614 (do_ns32k_reloc): get_data and put_data operate on bfd_vma's.
615 (_bfd_do_ns32k_reloc_contents): Likewise.
616 * ns32k.h (_bfd_ns32k_get_displacement): Update prototype.
617 (_bfd_ns32k_get_immediate): Likewise.
618 (_bfd_ns32k_put_displacement): Likewise.
619 (_bfd_ns32k_put_immediate): Likewise.
620 (bfd_reloc_status_type): Likewise.
621
622 * aoutx.h (NAME(aout,find_nearest_line)): Rename 'p' to 'colon'
623 to avoid shadowing.
624 * pdp11.c (NAME(aout,find_nearest_line)): Likewise.
625 * coff-h8300.c (h8300_reloc16_extra_cases): Remove shadowing "value".
626 * coff-ppc.c (enum ref_category): Rename "data" to "tocdata" to
627 avoid shadowing.
628 (record_toc): Use a bfd_signed_vma for our_toc_offset.
629 * coffcode.h (coff_write_relocs): Rename "i" to avoid shadowing.
630 * elf.c (bfd_elf_get_bfd_needed_list): Rename "link" var to avoid
631 shadow warning.
632 (_bfd_elfcore_strndup): Likewise for "dup".
633 * elf32-cris.c (cris_elf_relocate_section): "symname" instead of
634 "name" to avoid shadowing.
635 * elf32-hppa.c (elf32_hppa_relocate_section): Remove duplicate
636 definition of "off".
637 * elf32-i386.c (elf_i386_relocate_section): Likewise.
638 * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Remove duplicate
639 definition of "s".
640 (_bfd_mips_elf_final_link): Rename "i" to "j". Remove duplicate
641 "secpp".
642 * elf64-x86-64.c (elf64_x86_64_relocate_section): Rename inner "indx"
643 to avoid shadowing.
644 * elflink.h (elf_link_add_object_symbols): Rename "link" to "shlink"
645 to avoid shadowing.
646 (elf_link_input_bfd): Likewise.
647 (elf_bfd_final_link): Remove duplicate innermost "off" var.
648 * oasys.c (oasys_write_data): Rename innermost "p" to "sym".
649 * reloc16.c (bfd_coff_reloc16_relax_section): Rename "i" param to
650 "input_section".
651 * som.c (som_prep_for_fixups): Rename inner "i" to "j".
652 * sunos.c (sunos_add_dynamic_symbols): Localise "s" var.
653 (sunos_write_dynamic_symbol): Remove unused vars.
654 * syms.c (_bfd_stab_section_find_nearest_line): Remove duplicate
655 innermost "directory_name" and "file_name" vars.
656 * tekhex.c (first_phase): Rename local var "type" to "stype".
657 (tekhex_write_object_contents): Rename innermost "s" to "sym".
658 * vms-gsd.c (vms_secflag_by_name): Change "size" param to "hassize",
659 doing comparison at caller.
660 (vms_esecflag_by_name): Likewise.
661 * vms-tir.c (etir_sto): Rename innermost "psect" to "psect1".
662 * xcofflink.c (xcoff_link_input_bfd): Delete duplicate innermost "o".
663 (xcoff_write_global_symbol): Rename "p" param to "inf".
664
665 * cisco-core.c: Add missing prototypes.
666 (cisco_core_file_failing_command): Add ATTRIBUTE_UNUSED.
667 (cisco_core_file_failing_signal): Likewise.
668 (cisco_core_file_matches_executable_p): Likewise.
669 * hpux-core.c (hpux_core_core_file_failing_signal): Likewise.
670 * netbsd-core.c (netbsd_core_file_matches_executable_p): Likewise.
671 * osf-core.c (osf_core_core_file_matches_executable_p): Likewise.
672 * sco5-core.c (sco5_core_file_matches_executable_p): Likewise.
673
674 * coff-arm.c (coff_arm_link_hash_table): Use bfd_size_type for
675 thumb_glue_size and arm_glue_size.
676 * elf32-arm.h (elf32_arm_link_hash_table): Likewise here.
677
678 * coff64-rs6000.c: Group prototypes together.
679
680 * coffcode.h (coff_set_arch_mach): Add ATTRIBUTE_UNUSED.
681 (buy_and_read): Remove "seek" param. Change "size" to bfd_size_type.
682
683 * cpu-arc.c: Add missing prototypes.
684 * cpu-h8500.c: Likewise.
685 * cpu-i960.c: Likewise.
686 * cpu-pj.c: Likewise.
687 * cpu-sh.c: Likewise.
688 * cpu-w65.c: Likewise.
689 * cpu-z8k.c: Likewise.
690 * elf32-fr30.c: Likewise.
691 * elf32-h8300.c: Likewise.
692 * elf32-i370.c: Likewise.
693 * hpux-core.c: Likewise.
694 * versados.c: Likewise.
695
696 * cpu-h8300.c (bfd_default_scan_num_mach): Don't declare.
697 * cpu-h8500.c: Likewise.
698 * cpu-i960.c: Likewise.
699 * cpu-z8k.c: Likewise.
700
701 * cpu-ia64-opc.c: Correct comment.
702
703 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove unused var.
704
705 * elf-bfd.h (elf_size_info): Change count param of write_out_phdrs
706 to unsigned.
707 (bfd_elf32_write_out_phdrs): Likewise.
708 (bfd_elf64_write_out_phdrs): Likewise.
709 (elf_linker_section_pointers): Change addend to bfd_vma.
710 (_bfd_elf_find_pointer_linker_section): Likewise.
711 (_bfd_elfcore_make_pseudosection): Change size param to size_t and
712 filepos to unsigned file_ptr.
713 (_bfd_elfcore_strndup): Change max param to size_t.
714 * elf.c (_bfd_elfcore_make_pseudosection): As above.
715 (_bfd_elfcore_strndup): Likewise.
716 (_bfd_elf_find_pointer_linker_section): Likewise.
717
718 * elf-hppa.h (elf_hppa_relocate_insn): Return an int, and change
719 insn and sym_value to ints.
720
721 * elf.c (elf_read): Make "offset" param a file_ptr, "size" a
722 bfd_size_type.
723 (elfcore_read_notes): Likewise.
724
725 * elf32-arm.h (elf32_arm_final_link_relocate): Change sym_flags
726 param from unsigned char to int.
727 (elf32_arm_relocate_section): If USE_REL, cast "rel" appropriately
728 for info_to_howto call.
729 (add_dynamic_entry): Define macro.
730 (elf32_arm_size_dynamic_sections): Use add_dynamic_entry.
731
732 * elf32-cris.c (add_dynamic_entry): Define macro.
733 (elf_cris_size_dynamic_sections): Use add_dynamic_entry.
734
735 * elf32-h8300.c (elf32_h8_final_write_processing): Make static.
736 (elf32_h8_object_p): Likewise.
737 (elf32_h8_merge_private_bfd_data): Likewise.
738 (elf32_h8_relax_section): Cast gap to int so signed comparisons work.
739
740 * elf32-hppa.c (add_dynamic_entry): Define macro.
741 (elf32_hppa_size_dynamic_sections): Use it.
742 * elf32-i370.c (add_dynamic_entry): Define macro.
743 (i370_elf_size_dynamic_sections): Use it.
744 (i370_noop): Make static.
745 * elf32-i386.c (add_dynamic_entry): Define macro.
746 (elf_i386_size_dynamic_sections): Use it.
747 * elf32-m68k.c (add_dynamic_entry): Define macro.
748 (elf_m68k_size_dynamic_sections): Use it.
749 * elf32-ppc.c (add_dynamic_entry): Define macro.
750 (ppc_elf_size_dynamic_sections): Use it.
751 * elf32-s390.c (add_dynamic_entry): Define macro.
752 (elf_s390_size_dynamic_sections): Use it.
753 * elf64-alpha.c (add_dynamic_entry): Define macro.
754 (elf64_alpha_size_dynamic_sections): Use it.
755 * elf64-hppa.c (add_dynamic_entry): Define macro.
756 (elf64_hppa_size_dynamic_sections): Use it.
757 * elf64-ppc.c (add_dynamic_entry): Define macro.
758 (ppc64_elf_size_dynamic_sections): Use it.
759 * elf64-s390.c (add_dynamic_entry): Define macro.
760 (elf_s390_size_dynamic_sections): Use it.
761 * elf64-sparc.c (add_dynamic_entry): Define macro.
762 (sparc64_elf_size_dynamic_sections): Use it.
763 * elf64-x86-64.c (add_dynamic_entry): Define macro.
764 (elf64_x86_64_size_dynamic_sections): Use it.
765 * elfxx-ia64.c (add_dynamic_entry): Define macro.
766 (elfNN_ia64_size_dynamic_sections): Use it.
767
768 * elf32-v850.c (SEXT24): Modify to avoid signed/unsigned warning.
769 (v850_elf_perform_relocation): Make "r_type" param unsigned.
770
771 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Just return
772 false if the first malloc fails rather than going via error_return.
773
774 * elf64-sparc.c (sparc64_elf_plt_entry_offset): Use a bfd_vma for
775 "index" param.
776 (sparc64_elf_plt_ptr_offset): Likewise, and for "max" param too.
777
778 * elflink.h (elf_link_input_bfd): s/ingored/ignored/ in error message.
779
780 * elfxx-ia64.c (global_sym_index): Return a long.
781
782 * ieee.c (get_symbol): Use int rather than char param.
783 (ieee_slurp_sections): Move "section" var to inner blocks.
784 (copy_expression): Don't init "value" to zero or worry about
785 clearing to zero after using.
786 (ieee_write_debug_part): Rename "output_buffer" to "obuff" to avoid
787 shadowing.
788
789 * ihex.c (ihex_write_record): Make "count" var a size_t, "addr" an
790 unsigned int.
791
792 * libbfd-in.h (BFD_ALIGN): Add cast to avoid signed/unsigned warning.
793 (bfd_write_bigendian_4byte_int): Pass an unsigned int value param.
794
795 * mipsbsd.c (mips_fix_jmp_addr): Add "error_message" param.
796
797 * pc532-mach.c (MYNSX): Delete.
798 (ns32kaout_bfd_reloc_type_lookup): Define prototype without MYNSX.
799 (write_object_contents): Correct prototype.
800
801 * peicode.h (pe_ILF_build_a_bfd): Use an unsigned int param rather
802 than unsigned short.
803
804 * section.c (bfd_set_section_contents): Remove redundant
805 "offset < 0" test. Check that "count" doesn't overflow size_t.
806 (bfd_get_section_contents): Likewise.
807
808 * som.c (som_fixup_formats): Add missing braces.
809 (som_reloc_addend): Pass a bfd_vma for "addend".
810
811 * srec.c (srec_write_record): Pass "type" as an unsigned int.
812 (srec_write_symbols): Remove an unnecessary var.
813
814 * targets.c (_bfd_target_vector): Sort entries. Sort externs
815 to match.
816 * configure.in: Sort to match. Bump version number.
817 * configure: Regenerate.
818
819 * tekhex.c (move_section_contents): Assert offset == 0.
820
821 * versados.c (new_symbol_string): Constify arg.
822 (process_esd): Use bfd_und_section_ptr rather than &bfd_und_section.
823 (versados_get_symbol_info): Make static.
824 (versados_print_symbol): Likewise.
825 (versados_get_reloc_upper_bound): Likewise.
826 (versados_canonicalize_reloc): Likewise.
827
417412a2
NC
8282001-09-18 Nick Clifton <nickc@cambridge.redhat.com>
829
830 * elflink.h (elf_link_input_bfd): Fix typo in error message.
831
bb731fb6
L
8322001-09-17 H.J. Lu <hjl@gnu.org>
833
834 * dwarf1.c (parse_die): Take a new arg for the end of the
835 section. Return false if die is beyond the section.
836 (parse_functions_in_unit): Pass the end of the section to
837 parse_die ().
838 (_bfd_dwarf1_find_nearest_line): Likewise.
839
841989d6
NC
8402001-09-14 Michael Rauch <mrauch@netbsd.org>
841
842 * elf32-sparc.c (elf32_sparc_relocate_section): Treat R_SPARC_UA32
843 just like R_SPARC_32.
844
056a1d49
NC
8452001-09-14 Kevin Lo <kevlo@openbsd.org>
846
847 * configure.bfd: Add arm-openbsd target.
848
4008bd9b
TS
8492001-09-14 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
850
851 * config.bfd: Change machine triplets from mips*el*-* to mips*el-*.
852 Add support for mips64.
853
c11cc227
AO
8542001-09-13 Alexandre Oliva <aoliva@redhat.com>
855
856 * elf32-openrisc.c (ELF_MACHINE_ALT1): Define as EM_OPENRISC_OLD.
857
aa4f99bb
AO
8582001-09-12 Alexandre Oliva <aoliva@redhat.com>
859
860 * elf.c (prep_headers): Get the machine code from the elf
861 backend data.
862 * elf-m10200.c (ELF_MACHINE_CODE): Redefine to EM_MN10200.
863 (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10200.
864 * elf-m10300.c (ELF_MACHINE_CODE): Redefine to EM_MN10300.
865 (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300.
866 * elf-arc.c (arc_elf_final_write_processing): Don't override
867 e_machine, it's now properly set in prep_headers.
868 * elf32-avr.c (elf32_avr_object_p): Accept both EM_AVR and
869 EM_AVR_OLD.
870 (ELF_MACHINE_ALT1): Define to EM_AVR_OLD.
871 * elf-d10v.c (ELF_MACHINE_CODE): Redefine to EM_D10V.
872 (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D10V.
873 * elf-d30v.c (ELF_MACHINE_CODE): Redefine to EM_D30V.
874 (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D30V.
875 * elf-fr30.c (ELF_MACHINE_CODE): Redefine to EM_FR30.
876 (ELF_MACHINE_ALT1): Define to EM_CYGNUS_FR30.
877 * elf-m32r.c (ELF_MACHINE_CODE): Redefine to EM_M32R.
878 (ELF_MACHINE_ALT1): Define to EM_CYGNUS_M32R.
879 * elf32-pj.c (ELF_MACHINE_ALT1): DEfine to EM_PJ_OLD.
880 * elf-v850.c (ELF_MACHINE_CODE): Redefine to EM_V850.
881 (ELF_MACHINE_ALT1): Define to EM_CYGNUS_V850.
882
204692d7
RH
8832001-09-11 Richard Henderson <rth@redhat.com>
884
885 * elf64-alpha.c (elf64_alpha_section_flags): New.
886 (elf64_alpha_fake_sections): Map SEC_SMALL_DATA to SHF_ALPHA_GPREL.
887
f94952df
RH
8882001-09-11 Richard Henderson <rth@redhat.com>
889
890 * elf64-alpha.c (elf64_alpha_relocate_section): Do not
891 apply HINT relocations against dynamic symbols.
892
146f1a87
L
8932001-09-11 H.J. Lu <hjl@gnu.org>
894
f94952df 895 * linker.c (link_action): Change COMMON_ROW\defw from CREF to COM.
146f1a87 896
1cd6895c
RH
8972001-09-09 Richard Henderson <rth@redhat.com>
898
96e2734b
RH
899 * elf64-alpha.c: Delete all unused ERIC_neverdef and rth_notdef code.
900
1cd6895c
RH
901 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Nop out gpdisp
902 following a call to a near function.
903
f16fbd61
RH
9042001-09-08 Richard Henderson <rth@redhat.com>
905
906 * elf64-alpha.c (elf64_alpha_relocate_section): Soft fail
907 relocation errors. Fail gp-relative relocations against
908 dynamic symbols.
909
56882138
AM
9102001-09-08 Alan Modra <amodra@bigpond.net.au>
911
912 * elf32-i386.c (elf_i386_relocate_section): Check !DEF_REGULAR
913 as well as DEF_DYNAMIC in test for avoided copy relocs.
914 (allocate_plt_and_got_and_discard_relocs): Likewise.
915 * elf32-hppa.c (elf_i386_relocate_section): Likewise.
916 (allocate_plt_and_got_and_discard_relocs): Likewise.
917
cb56d3d3
TS
9182001-09-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
919
920 * elf32-mips.c (mips_elf_calculate_relocation): Fix overflow handling
921 of R_MIPS_PC16.
56882138
AM
922
9232001-09-06 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
924
925 * elf64-mips.c (mips_elf64_howto_table_rel): Fix relocation HOWTO
926 definitions.
927 (mips_elf64_howto_table_rel): Likewise.
928
9292001-09-05 Tom Rix <trix@redhat.com>
930
931 * xcofflink.c (bfd_xcoff_import_symbol): Handle import file XMC_XO
932 and syscall symbols.
933 (write_global_symbol) : Same.
934 (bfd_xcoff_export_symbol): Remove unused syscall param.
935 * libxcoff.h: Change prototype of bfd_xcoff_export symbol and
936 bfd_xcoff_import_symbol.
937 * bfd-in.h: Same.
938 * bfd-in2.h : Regenerate.
939
9402001-09-04 Richard Henderson <rth@redhat.com>
941
942 * elf64-alpha.c (SKIP_HOWTO): New.
943 (elf64_alpha_howto_table): Use it to remove dead ECOFF relocs.
944 Fix sizes of 16-bit mem format relocs.
945 (elf64_alpha_reloc_map): Update to match.
946 (elf64_alpha_relax_with_lituse): Use GPREL16 as appropriate.
947 (elf64_alpha_relax_without_lituse): Likewise.
948 (elf64_alpha_check_relocs): Handle GPREL16.
949 (elf64_alpha_relocate_section): Likewise.
950 * reloc.c (BFD_RELOC_ALPHA_USER_*): Remove.
951 (BFD_RELOC_ALPHA_GPREL_HI16, BFD_RELOC_ALPHA_GPREL_LO16): New.
952 * bfd-in2.h, libbfd.h: Rebuild.
953
9542001-09-04 Jeff Law <law@redhat.com>
955
956 * elf32-h8300.c (elf32_h8_relax_section): New function.
957 (elf32_h8_relax_delete_bytes): Likewise.
958 (elf32_h8_symbol_address_p): Likewise.
959 (elf32_h8_get_relocated_section_contents): Likewise.
960 (bfd_elf32_bfd_relax_section): Define.
961 (bfd_elf32_bfd_get_relocated_section_contents): Likewise.
962
963 * elf32-h8300.c (special): New function.
964 (h8_elf_howto_table): Use it for SPECIAL_FUNCTION field in
965 all relocations.
966 (elf32_h8_final_link_relocate): Treat R_H8_DIR24A8 like 32bit
967 relocations. Fix problems with the true 24bit reloc R_H8_DIR24R8.
968 Fix minor problems with 8bit and 16bit PC relative relocations.
969
9702001-09-01 Andreas Jaeger <aj@suse.de>
971
972 * vms-tir.c: Add missing prototypes.
973 * vms-hdr.c: Likewise.
974 * vms-gsd.c: Likewise.
975 * vms-misc.c: Likewise.
976
9772001-08-31 H.J. Lu <hjl@gnu.org>
978
979 * elf32-mips.c (_bfd_mips_elf_check_relocs): Report filename
980 with bad relocation.
981
9822001-08-31 Eric Christopher <echristo@redhat.com>
983 Jason Eckhardt <jle@redhat.com>
984
985 * bfd/archures.c: Add mipsisa32 and mipsisa64. Remove mips32,
986 mips32_4k and mips64.
987 * bfd/aoutx.h: Remove bfd_mach_mips32, bfd_mach_mips32_4k,
988 bfd_mach_mips64. Add bfd_mach_mipsisa32, bfd_mach_mipsisa64.
989 * bfd/cpu-mips.c: Ditto.
990 * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing): Ditto.
991 * bfd/bfd-in2.h: Regenerate.
992
9932001-08-31 Jakub Jelinek <jakub@redhat.com>
994
995 * elf64-alpha.c (elf64_alpha_relocate_section): Duplicate memory
996 value into R_ALPHA_RELATIVE's addend.
997 (elf64_alpha_finish_dynamic_symbol): Likewise.
998
9992001-08-31 Nick Clifton <nickc@cambridge.redhat.com>
1000
1001 * elf32-arm.h (elf32_arm_relocate_section): Do not rightshift
1002 recomputed addend during relocatable link if not USE_REL.
1003
1004 * elflink.h (elf_gc_propagate_vtable_entries_used): Fix off-by-one
1005 error.
1006
10072001-08-30 H.J. Lu <hjl@gnu.org>
1008
1009 * elf32-mips.c (mips_elf_calculate_relocation): Revert the last
1010 2 changes.
1011 (_bfd_mips_elf_adjust_dynamic_symbol): Allocate dynamic
1012 relocations for weak definitions.
1013
10142001-08-30 H.J. Lu <hjl@gnu.org>
1015
1016 * Makefile.am (BFD32_BACKENDS): Add elf32-h8300.lo.
1017 (BFD32_BACKENDS_CFILES): Add elf32-h8300.c.
1018 * Makefile.in: Rebuild.
1019
10202001-08-30 H.J. Lu <hjl@gnu.org>
1021
1022 * elf32-mips.c (mips_elf_calculate_relocation): Don't create
1023 dynamic relocation for undefined weak symbols when creating
1024 executables. Check h->root.root.type, instead of h->root.type.
1025
10262001-08-29 Joel Sherrill <joel@OARcorp.com>
1027
1028 * config.bfd (i[3456]86-*-rtems*, m68*-*-rtems*): Change
1029 default from coff to elf.
1030
10312001-08-29 Jeff Law <law@redhat.com>
1032
1033 * elf32-h8300.c (h8_elf_howto_table): Add new PC relative
1034 relocations.
1035 (h8_reloc_map): Similarly.
1036 (elf32_h8_final_link_relocate): Remove incorrect overflow tests.
1037 Add support for PC relative relocations.
1038
1039 * elf32-h8300.c: Put all prototypes together.
1040 (elf32_h8_info_to_howto): Parameter elf_reloc is used.
1041 (elf32_h8_final_link_relocate): New function for linker.
1042 (elf32_h8_relocate_section): Similarly.
1043 (elf_backend_relocate_section): Define.
1044
1045 * cpu-h8300.c (h8300_scan, compatible): Prototype.
1046 (h8300_scan): Handle architecture:machine encodings typically
1047 found in linker scripts.
1048 * elf.c (prep_headers): Do not try to do H8 machine recognition
1049 here.
1050 * elf32-h8300.c: Add some missing prototypes.
1051 (elf32_h8_mach, elf32_h8_final_write_processing): New functions.
1052 (elf32_h8_object_p): Similarly.
1053
10542001-08-29 Tom Rix <trix@redhat.com>
1055
1056 * xcofflink.c (xcoff_link_add_symbols): Fix XTY_LD symbol that
1057 does not follow a XTY_SD.
1058
10592001-08-29 Alan Modra <amodra@bigpond.net.au>
1060
1061 * targmatch.sed: Delete case statements.
1062 * config.bfd <powerpc-*-aix* entry>: Select 64 bit xcoff for
1063 aix4.3 and above.
1064
1065Wed Aug 29 02:27:36 2001 J"orn Rennecke <amylaar@redhat.com>
1066
1067 * Makefile.am (elf32-h8300.lo): New target.
1068 * config.bfd (h8300*-*-elf): New case.
1069 * configure.in (bfd_elf32_h8300_vec): New case.
1070 * elf.c (prep_headers): Add case for bfd_arch_h8300.
1071 * reloc.c (BFD_RELOC_H8_DIR16A8): New relocation.
1072 (BFD_RELOC_H8_DIR16R8, BFD_RELOC_H8_DIR24A8): Likewise.
1073 (BFD_RELOC_H8_DIR24R8, BFD_RELOC_H8_DIR32A16): Likewise.
1074 * targets.c (bfd_target bfd_elf32_h8300_vec): New extern declaration.
1075 * elf32-h8300.c: New file.
1076 * Makefile.in, bfd-in2.h, libbfd.h, configure: Regenerated.
1077
10782001-08-28 Nick Clifton <nickc@cambridge.redhat.com>
1079
1080 * sparclynx.c: Add missing prototypes.
1081 * coff-mcore.c: Add missing prototypes.
1082 * elf32-pj.c: Add missing prototypes.
1083 * nlm32-sparc.c: Add missing prototypes.
1084 * oasys.c: Add missing prototypes.
1085 * pdp11.c: Add missing prototypes.
1086 * pe-mips.c: Add missing prototypes.
1087 * riscix.c: Add missing prototypes.
1088
10892001-08-27 Daniel Jacobowitz <drow@mvista.com>
1090
1091 * elf32-i386.c: Add missing prototypes.
1092 * elf32-ppc.c: Likewise.
1093 * elf32-sh-lin.c: Likewise.
1094 * elfarm-nabi.c: Likewise.
1095
10962001-08-27 Daniel Jacobowitz <drow@mvista.com>
1097
1098 * elf32-i386.c (elf_i386_grok_prstatus): New function.
1099 (elf_i386_grok_psinfo): New function.
1100 (elf_backend_grok_prstatus): Define.
1101 (elf_backend_grok_psinfo): Likewise.
1102 * elf32-ppc.c (ppc_elf_grok_prstatus): New function.
1103 (ppc_elf_grok_psinfo): New function.
1104 (elf_backend_grok_prstatus): Define.
1105 (elf_backend_grok_psinfo): Likewise.
1106 * elf32-sh-lin.c (elf32_shlin_grok_prstatus): New function.
1107 (elf32_shlin_grok_psinfo): New function.
1108 (elf_backend_grok_prstatus): Define.
1109 (elf_backend_grok_psinfo): Likewise.
1110 * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): New function.
1111 (elf32_arm_nabi_grok_psinfo): New function.
1112 (elf_backend_grok_prstatus): Define.
1113 (elf_backend_grok_psinfo): Likewise.
1114
11152001-08-27 H.J. Lu <hjl@gnu.org>
1116
1117 * elf32-mips.c (mips_elf_create_dynamic_relocation): Add more
1118 sanity check.
1119 (mips_elf_calculate_relocation): Create dynamic relocation for
1120 symbols with weak definition or the ELF_LINK_HASH_DEF_REGULAR
1121 bit is not set.
1122
11232001-08-27 H.J. Lu <hjl@gnu.org>
1124
1125 * elf32-mips.c (_bfd_mips_elf_hide_symbol): Add prototype.
1126 (_bfd_mips_elf_copy_indirect_symbol): Likewise.
1127 (_bfd_elf32_mips_grok_prstatus): Likewise.
1128 (_bfd_elf32_mips_grok_psinfo): Likewise.
1129 (_bfd_mips_elf_hide_symbol): Make it static and cast to
1130 `struct mips_elf_link_hash_entry *'.
1131 (_bfd_mips_elf_copy_indirect_symbol): Make it static.
1132
11332001-08-27 Nick Clifton <nickc@cambridge.redhat.com>
1134
1135 * mipsbsd.c: Add missing prototypes.
1136 * hp300hpux.c: Add missing prototypes.
1137 * i386aout.c: Add missing prototypes.
1138 * i386lynx.c: Add missing prototypes.
1139 * i386mach3.c: Add missing prototypes.
1140 * i386msdos.c: Add missing prototypes.
1141 * i386os9k.c: Add missing prototypes.
1142
11432001-08-27 Linus Nordberg <linus@swox.se>
1144 Torbjorn Granlund <tege@swox.com>
1145 Staffan Ulfberg <staffanu@swox.se>
1146 Alan Modra <amodra@bigpond.net.au>
1147
1148 * config.bfd: Add powerpc64 target. Add powerpc64 vectors to
1149 targ64_selvecs for 32 bit powerpc targets.
1150 * Makefile.am (BFD64_BACKENDS): Add elf64-ppc.lo.
1151 (BFD64_BACKENDS_CFILES): Add elf64-ppc.c.
1152 Run "make dep-am".
1153 * Makefile.in: Regenerate.
1154 * configure.in: Add elf64_powerpc vecs.
1155 * configure: Regenerate.
1156 * cpu-powerpc.c: Default to bfd_mach_ppc_620 entry for 64 bit.
1157 * elf.c (prep_headers): EM_PPC64 for 64 bit ppc elf target.
1158 * targets.c: Add bfd_elf64_powerpc_vec and bfd_elf64_powerpcle_vec.
1159 * elf64-ppc.c: New file.
1160 * reloc.c: Add powerpc64 relocs.
1161 * libbfd.h: Regenerate.
1162 * bfd-in2.h: Regenerate.
1163
11642001-08-27 Andreas Schwab <schwab@suse.de>
1165
1166 * elf32-m68k.c (elf32_m68k_check_relocs): Set DF_TEXTREL if the
1167 reloc is against read-only section.
1168 (elf32_m68k_size_dynamic_sections): Use DF_TEXTREL flag instead of
1169 looking up section names for DT_TEXTREL.
1170 (elf32_m68k_reloc_type_class): New function.
1171 (elf_backend_reloc_type_class): Define.
1172
11732001-08-27 Andreas Jaeger <aj@suse.de>
1174
1175 * elf64-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the
1176 reloc is against read-only section.
1177 (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of
1178 looking up section names for DT_TEXTREL.
1179 (elf_s390_reloc_type_class): New.
1180 (elf_backend_reloc_type_class): Define.
1181
1182 * elf32-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the
1183 reloc is against read-only section.
1184 (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of
1185 looking up section names for DT_TEXTREL.
1186 (elf_s390_reloc_type_class): New.
1187 (elf_backend_reloc_type_class): Define.
1188
1189 * elf32-ppc.c (ppc_elf_check_relocs): Set DF_TEXTREL if the reloc
1190 is against read-only section.
1191 (ppc_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
1192 looking up section names for DT_TEXTREL.
1193 (ppc_elf_reloc_type_class): New.
1194 (elf_backend_reloc_type_class): Define.
1195
11962001-08-26 Andreas Jaeger <aj@suse.de>
1197
1198 * elf32-cris.c (cris_elf_check_relocs): Set DF_TEXTREL if the
1199 reloc is against read-only section.
1200 (elf_cris_size_dynamic_sections): Use DF_TEXTREL flag instead of
1201 looking up section names for DT_TEXTREL.
1202 (elf_cris_reloc_type_class): New.
1203 (elf_backend_reloc_type_class): Define.
1204
1205 * elf32-sh.c (sh_elf_check_relocs): Set DF_TEXTREL if the reloc is
1206 against read-only section.
1207 (elf_backend_reloc_type_class): Define.
1208 (sh_elf_reloc_type_class): New.
1209 (sh_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
1210 looking up section names for DT_TEXTREL.
1211
1212 * elf32-arm.h (elf32_arm_check_relocs): Set DF_TEXTREL if the
1213 reloc is against read-only section.
1214 (elf32_arm_size_dynamic_sections): Use DF_TEXTREL flag instead of
1215 looking up section names for DT_TEXTREL.
1216 (elf32_arm_reloc_type_class): New.
1217 (elf_backend_reloc_type_class): Define.
1218
12192001-08-25 Andreas Jaeger <aj@suse.de>
1220
1221 * oasys.c: Add missing prototypes.
1222
1223 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Add unused
1224 attribute for parameter.
1225 * elf.c (_bfd_elf_reloc_type_class): Likewise.
1226
1227 * versados.c (get_4): Make static.
1228 (get_10): Make static.
1229 Add missing prototypes.
1230 (process_esd): Fix call to versados_new_symbol.
1231
12322001-08-25 Nick Clifton <nickc@cambridge.redhat.com>
1233
1234 * coff-a29k.c: Add missing prototypes.
1235 * coff-apollo.c: Add missing prototypes.
1236 * coff-arm.c: Add missing prototypes.
1237 * coff-i860.c: Add missing prototypes.
1238 * coff-rs6000.c: Add missing prototypes.
1239 * coff-tic80.c: Add missing prototypes.
1240 * elf-m10200.c: Add missing prototypes.
1241 * elf-m10300.c: Add missing prototypes.
1242 * elf32-arm.h: Add missing prototypes.
1243 * elf32-d10v.c: Add missing prototypes.
1244 * elf32-m32r.c: Add missing prototypes.
1245 * elf32-mcore.c: Add missing prototypes.
1246 * elf32-openrisc.c: Add missing prototypes.
1247 * elf32-sh.c: Add missing prototypes.
1248 * elf32-sparc.c: Add missing prototypes.
1249 * elf32-v850.c: Add missing prototypes.
1250 * elfarm-nabi.c: Add missing prototypes.
1251 * elfarm-oabi.c: Add missing prototypes.
1252
12532001-08-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1254
1255 * elf32-mips.c (elf_mips_abi_name): Return the right ABI string for
1256 E_MIPS_ABI_O64 and E_MIPS_ABI_EABI64
1257
12582001-08-24 H.J. Lu <hjl@gnu.org>
1259
1260 * elf.c (_bfd_elf_merge_sections): Fail if not using an ELF
1261 hash structure.
1262
12632001-08-24 Nick Clifton <nickc@cambridge.redhat.com>
1264
1265 * elf-bfd.h (elf_hash_table): Revert definition.
1266 (is_elf_hash_table): New macro.
1267 * elflink.h (elf_link_add_object_symbols): Test
1268 is_elf_hash_table before accessing ELF only fields in hash
1269 structure.
1270 (elf_link_create_dynamic_sections): Fail if not using an ELF
1271 hash structure.
1272 (elf_add_dynamic_entry): Fail if not using an ELF hash
1273 structure.
1274 (elf_link_record_local_dynamic_symbol): Fail if not using an
1275 ELF hash structure.
1276 (size_dynamic_sections): Fail if not using an ELF hash
1277 structure.
1278 (elf_adjust_dynamic_symbol): Fail if not using an ELF
1279 hash structure.
1280 (elf_bfd_final_link): Fail if not using an ELF hash
1281 structure.
1282
12832001-08-24 H.J. Lu <hjl@gnu.org>
1284
1285 * elf-bfd.h (elf_hash_table): Return NULL if the linker hash
1286 table is not an ELF linker hash table.
1287
1288 * elf.c (_bfd_elf_link_hash_table_init): Set the linker hash
1289 table type to bfd_link_elf_hash_table.
1290
1291 * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Revert
1292 the last change.
1293
1294 * linker.c (_bfd_link_hash_table_init): Set the linker hash
1295 table type to bfd_link_generic_hash_table.
1296
12972001-08-24 Alexandre Oliva <aoliva@redhat.com>
1298
1299 * bfd.c (bfd_alt_mach_code): New function.
1300 * bfd-in2.h: Rebuilt.
1301
13022001-08-24 Alexandre Oliva <aoliva@redhat.com>
1303
1304 * elf-m10300.c (mn10300_elf_relocate_section): Test the right
1305 `type' field in the hash entry when deciding whether to follow a
1306 link.
1307
13082001-08-24 Jakub Jelinek <jakub@redhat.com>
1309
1310 * elflink.h (elf_link_sort_cmp1): Sort RELATIVE relocs first, not
1311 last.
1312 (elf_link_sort_relocs): Adjust accordingly.
1313
1314 * elf64-alpha.c (struct alpha_elf_link_hash_entry): Add reltext flag.
1315 (elf64_alpha_check_relocs): Set it if section this reloc is against
1316 is read-only. Set DF_TEXTREL if a RELATIVE reloc is needed against
1317 read-only section.
1318 (elf64_alpha_calc_dynrel_sizes): Set DF_TEXTREL flag if relocation
1319 is is against read-only section.
1320 (elf64_alpha_size_dynamic_sections): Use DF_TEXTREL flag, don't
1321 check section names.
1322 (elf64_alpha_reloc_type_class): New.
1323 (elf_backend_reloc_type_class): Define.
1324
13252001-08-24 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1326
1327 * linker.c (_bfd_generic_link_add_archive_symbols): Replace alloca()
1328 by bfd_malloc().
1329
13302001-08-23 Andreas Jaeger <aj@suse.de>
1331
1332 * elf64-x86-64.c (elf64_x86_64_check_relocs): Set DF_TEXTREL if
1333 the reloc is against read-only section.
1334 (elf64_x86_64_size_dynamic_sections): Use DF_TEXTREL flag instead
1335 of looking up section names for DT_TEXTREL.
1336 (elf64_x86_64_reloc_type_class): New.
1337 (elf_backend_reloc_type_class): Define.
1338
13392001-08-23 H.J. Lu <hjl@gnu.org>
1340
1341 * syms.c (bfd_print_symbol_vandf): Add abfd to arg.
1342 * bfd-in2.h (bfd_print_symbol_vandf): Regenerated.
1343
1344 * aoutx.h (NAME(aout,print_symbol)): Pass abfd to
1345 bfd_print_symbol_vandf.
1346 * coffgen.c (coff_print_symbol): Likewise.
1347 * elf.c (bfd_elf_print_symbol): Likewise.
1348 * ieee.c (ieee_print_symbol): Likewise.
1349 * nlmcode.h (nlm_print_symbol): Likewise.
1350 * oasys.c (oasys_print_symbol): Likewise.
1351 * pdp11.c (NAME(aout,print_symbol)): Likewise.
1352 * som.c (som_print_symbol): Likewise.
1353 * srec.c (srec_print_symbol): Likewise.
1354 * tekhex.c (tekhex_print_symbol): Likewise.
1355 * versados.c (versados_print_symbol): Likewise.
1356 * vms.c (vms_print_symbol): Likewise.
1357
1358 * elf.c (_bfd_elf_print_private_bfd_data): Replace fprintf_vma
1359 with bfd_fprintf_vma.
1360 (bfd_elf_print_symbol): Likewise.
1361 * syms.c (bfd_print_symbol_vandf): Likewise.
1362
13632001-08-23 Nick Clifton <nickc@cambridge.redhat.com>
1364
1365 * aoutf1.h (sunos_write_object_contents): Silence compile time
1366 warning.
1367 * libaout.h (N_SET_DYNAMIC): Silence compile time warning.
1368
1369 * bout.c: Add missing function prototypes. Fix formatting.
1370 * coff-z8k.c: Add missing function prototypes. Fix formatting.
1371 * coff-w65.c: Add missing function prototypes. Fix formatting.
1372 * coff-h8500.c: Add missing function prototypes. Fix formatting.
1373 * coff-h8300.c: Add missing function prototypes. Fix formatting.
1374 * coff-tic54x.c: Add missing function prototypes. Fix formatting.
1375 * coff-tic30.c: Add missing function prototypes. Fix formatting.
1376 * coff-m68k.c: Add missing function prototypes. Fix formatting.
1377 * coff-rs6000.c: Add missing function prototypes. Fix formatting.
1378 * coff-sh.c: Add missing function prototypes. Fix formatting.
1379
13802001-08-23 Jakub Jelinek <jakub@redhat.com>
1381
1382 * elf-bfd.h (enum elf_reloc_type_class): New.
1383 (struct elf_backend_data): Add elf_backend_reloc_type_class.
1384 (_bfd_elf_reloc_type_class): New.
1385 * elfxx-target.h (elf_backend_reloc_type_class): Define.
1386 (elfNN_bed): Add elf_backend_reloc_type_class.
1387 * elf.c (_bfd_elf_reloc_type_class): New.
1388 * elf32-i386.c (elf_i386_check_relocs): Set DF_TEXTREL if the reloc
1389 is against read-only section.
1390 (elf_i386_size_dynamic_sections): Use DF_TEXTREL flag instead of
1391 looking up section names for DT_TEXTREL.
1392 (elf_i386_reloc_type_class): New.
1393 (elf_backend_reloc_type_class): Define.
1394 * elf32-sparc.c (elf32_sparc_check_relocs): Set DF_TEXTREL if the
1395 reloc is against read-only section.
1396 (elf32_sparc_size_dynamic_sections): Use DF_TEXTREL flag instead of
1397 looking up section names for DT_TEXTREL.
1398 (elf32_sparc_reloc_type_class): New.
1399 (elf_backend_reloc_type_class): Define.
1400 * elf64-sparc.c (sparc64_elf_check_relocs): Set DF_TEXTREL if the
1401 reloc is against read-only section.
1402 (sparc64_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
1403 looking up section names for DT_TEXTREL.
1404 (sparc64_elf_reloc_type_class): New.
1405 (elf_backend_reloc_type_class): Define.
1406 * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add reltext field.
1407 (elfNN_ia64_hash_table_create): Clear ia64_info.
1408 (get_reloc_section): Set DF_TEXTREL if the reloc is against read-only
1409 section.
1410 (elfNN_ia64_size_dynamic_sections): Use ia64_info->reltext flag
1411 instead of looking up section names for DT_TEXTREL.
1412 (elfNN_ia64_reloc_type_class): New.
1413 (elf_backend_reloc_type_class): Define.
1414 * elflink.h (size_dynamic_sections): Add spare DT_NULL tags.
1415 (struct elf_link_sort_rela): New.
1416 (elf_link_sort_cmp1, elf_link_sort_cmp2, elf_link_sort_relocs): New.
1417 (elf_bfd_final_link): Call elf_link_sort_relocs.
1418 Convert one spare DT_NULL into DT_RELCOUNT resp. DT_RELACOUNT if
1419 necessary.
1420
14212001-08-23 Nick Clifton <nickc@cambridge.redhat.com>
1422
1423 * configure.in (x86-bsdi): No corefile support.
1424 * configure: Regenerate.
1425
14262001-08-22 Nick Clifton <nickc@cambridge.redhat.com>
1427
1428 * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add missing
1429 comma.
1430
14312001-08-21 Mark Elbrecht <snowball3@bigfoot.com>
1432
1433 * coff-go32.c: Make DWARF2 sections use an alignment of 0. Set
1434 the alignment of dwarf2 linkonce sections to 0.
1435 * coff-sto32.c: Likewise.
1436
14372001-08-20 Andreas Jaeger <aj@suse.de>
1438
1439 * coff-sparc.c: Add missing prototypes.
1440 * elf32-s390.c: Likewise.
1441 * elf32-i960.c: Likewise.
1442 * aout-target.h: Likewise.
1443
14442001-08-20 H.J. Lu <hjl@gnu.org>
1445
1446 * elf-bfd.h (elf_obj_tdata): Add num_section_syms.
1447 (elf_num_section_syms): New for num_section_syms.
1448
1449 * elf.c (elf_map_symbols): Set num_section_syms.
1450 (_bfd_elf_symbol_from_bfd_symbol): Check num_section_syms for
1451 the section symbol index.
1452
14532001-08-20 Nick Clifton <nickc@cambridge.redhat.com>
1454
1455 * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Never
1456 select the generic has table creator. All elf backends need elf
1457 specific fields in the hash table.
1458
14592001-08-20 Alan Modra <amodra@bigpond.net.au>
1460
1461 * archive.c (offsetof): Remove define.
1462 * elf.c: Likewise.
1463 * oasys.c: Likewise
1464 * sysdep.h (offsetof): Define.
1465
14662001-08-17 Alan Modra <amodra@bigpond.net.au>
1467
1468 * bfd.c (bfd_get_gp_size): Return an unsigned int.
1469 (bfd_set_gp_size): Make param unsigned.
1470 * bfd-in2.h: Regenerate.
1471 * elf32-ppc.c (ppc_elf_add_symbol_hook): Use elf_gp_size rather
1472 than calling bfd_get_gp_size.
1473 * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise.
1474 * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise.
1475
14762001-08-17 Alan Modra <amodra@bigpond.net.au>
1477
1478 * linker.c (default_fill_link_order): Handle four byte fill value.
1479
14802001-08-17 Alan Modra <amodra@bigpond.net.au>
1481
1482 * elf64-sparc.c (sparc64_elf_output_arch_syms): Add missing
1483 prototype.
1484 * nlm32-alpha.c (nlm_alpha_write_external): Fix warning.
1485
1486 * elf64-mips.c (UNUSED_RELOC): Define.
1487 (mips_elf64_howto_table_rel): Use it.
1488 (mips_elf64_howto_table_rela): Here too.
1489 (mips_elf64_write_relocs): Fix signed/unsigned warning.
1490
1491 * coffcode.h (coff_write_object_contents): Add ATTRIBUTE_UNUSED to
1492 silence warning.
1493 * coffgen.c (coff_print_symbol): Fix warnings.
1494 (coff_find_nearest_line): Likewise.
1495 * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
1496 * coff-alpha.c (alpha_convert_external_reloc): Likewise.
1497 * format.c (bfd_check_format_matches): Likewise.
1498 (bfd_set_format): Likewise.
1499 * coff-ia64.c: Add missing prototypes.
1500 * elf64-alpha.c (struct alpha_elf_link_hash_entry): Make addend
1501 signed to silence warnings.
1502 (elf64_alpha_relocate_section): Likewise.
1503 (elf64_alpha_find_reloc_at_ofs): Fix warnings.
1504 (elf64_alpha_add_symbol_hook): Likewise.
1505 (elf64_alpha_final_link): Likewise.
1506 (elf64_alpha_relax_section): Remove redundant assign to info.gotent.
1507 (elf64_alpha_merge_gots): Add ATTRIBUTE_UNUSED to unused args.
1508 (elf64_alpha_size_got_sections): Likewise.
1509 * elfxx-ia64.c: Add missing prototypes.
1510 (elfNN_ia64_relocate_section): Fix warning.
1511 (elfNN_ia64_unwind_entry_compare): Make params const.
1512
15132001-08-17 Alan Modra <amodra@bigpond.net.au>
1514
1515 * config.bfd (targ64_selvecs): New.
1516 <powerpc-*-aix* entry>: Use it here instead of ineffectual #ifdef.
1517
1518 * bfd-in.h (BFD_VERSION): Remove wrong comment.
1519 (BFD_DEFAULT_TARGET_SIZE): New.
1520 (BFD_ARCH_SIZE): Comment.
1521 * configure.in (target_size): New. Set instead of target64 in
1522 selvecs case statement. Set target64 from it.
1523 (bfd_default_target_size): New. Set from taget_size. AC_SUBST.
1524 * bfd-in2.h: Regenerate.
1525 * configure: Regenerate.
1526
15272001-08-17 Alan Modra <amodra@bigpond.net.au>
1528
1529 * bfd.c (enum bfd_error): Add bfd_error_wrong_object_format.
1530 (bfd_errmsgs): Add corresponding message.
1531 * archive.c (bfd_generic_archive_p): Don't release bfd_ardata when
1532 finding an archive that contains different format object files.
1533 Return bfd_error_wrong_object_format for this case.
1534 * format.c: Formatting fixes. s/CONST/const/.
1535 (bfd_check_format_matches): Accept archives that give
1536 bfd_error_wrong_object_format if no full match is found. Tidy
1537 code handling matching_vector. Don't return a pointer to freed
1538 memory in `matching'. Handle ambiguous matches as for partial
1539 archive matches.
1540 * bfd-in2.h: Regenerate.
1541
15422001-08-15 Alan Modra <amodra@bigpond.net.au>
1543
1544 * libieee.h (common_header_type): Add last_byte field.
1545
1546 * ieee.c: Add missing prototypes. Some format fixes.
1547 (struct output_buffer_struct): Move for availability to prototypes.
1548 (ieee_part_after): New function.
1549 (ieee_slurp_debug): Use it here.
1550 (ieee_seek): Pass in ieee_data_struct rather than bfd. Use
1551 ieee_part_after to set last_byte to one past end of current part.
1552 Update callers.
1553 (ieee_pos): Pass in ieee_data_struct rather than bfd.
1554 Update callers.
1555 (parse_expression): Don't go beyond the end of the current part.
1556 (ieee_slurp_external_symbols): Correct type passed to read_2bytes.
1557 (ieee_get_symtab_upper_bound, ieee_get_symtab,
1558 ieee_get_symbol_info, ieee_print_symbol, ieee_new_section_hook,
1559 ieee_get_reloc_upper_bound, ieee_canonicalize_reloc, block,
1560 ieee_set_section_contents, ieee_write_object_contents,
1561 ieee_make_empty_symbol): Make static.
1562 (ieee_archive_p): Correct comments regarding bfd_read.
1563 (ieee_object_p): Similarly.
1564 (ieee_mkobject): Move it. Clear output_ptr_start, output_ptr,
1565 output_ptr_end, input_ptr_start, input_ptr, input_ptr_end,
1566 input_bfd, output_bfd, output_buffer.
1567 (do_as_repeat): Write out ieee_set_current_pc_enum value as for
1568 do_with_relocs, ie. as a symbol for relocatable files.
1569 (ieee_vec): Add comments showing functions referenced by macros.
1570
15712001-08-14 Nick Clifton <nickc@cambridge.redhat.com>
1572
1573 * aout-tic30.c: Add missing prototypes. Fix formatting.
1574 * aout-ns32k.c: Add missing prototypes. Fix formatting.
1575 * peXXigen.c: Add missining prototypes. Fix formatting.
1576 * aout-adobe.c: Add missining prototypes. Fix formatting.
1577
15782001-08-13 Nick Clifton <nickc@cambridge.redhat.com>
1579
1580 * elf32-v850.c: Add missing function prototypes.
1581 Fix some formatting.
1582
1583 * cpu-v850.c: Add missing function prototype.
1584 Fix some formatting.
1585
15862001-08-11 Nick Clifton <nickc@cambridge.redhat.com>
1587
1588 * elf-bfd.h (struct elf_backend_data): Add new fields
1589 'elf_backend_sprintf_vma' and 'elf_backend_fprintf_vma'.
1590 (bfd_elf_sprintf_vma): Rename function prototype to
1591 '_bfd_elf_sprintf_vma'.
1592 (bfd_elf_fprintf_vma): Rename function prototype to
1593 '_bfd_elf_fprintf_vma'.
1594 * bfd.c (bfd_sprintf_vma): Do not invoke bfd_elf_sprintf_vma
1595 directly, instead indirect via the elf_backend_data structure.
1596 (bfd_fprintf_vma): Do not invoke bfd_elf_fprintf_vma directly,
1597 instead indirect via the elf_backend_data structure.
1598 * elf.c (bfd_elf_sprintf_vma): Rename to _bfd_elf_sprintf_vma.
1599 (bfd_elf_fprintf_vma): Rename to _bfd_elf_fprintf_vma.
1600 * elfxx-target.h (elf_backend_sprintf_vma): Initialise if not
1601 already defined.
1602 (elf_backend_fprintf_vma): Initialise if not already defined.
1603 (struct elf_backend_data): Initialise the
1604 elf_backend_sprintf_vma and elf_backend_fprintf_vma fields.
1605
16062001-08-10 Andreas Jaeger <aj@suse.de>
1607
1608 * elf64-sparc.c: Add missing prototypes.
1609 * elf32-cris.c: Likewise.
1610 * elf32-i370.c: Likewise.
1611 * elf64-hppa.c: Likewise.
1612 * elf64-s390.c: Likewise.
1613
16142001-08-10 Andreas Jaeger <aj@suse.de>
1615
1616 * elf64-x86-64.c (elf64_x86_64_elf_object_p): Make static.
1617 Add prototypes where needed.
1618
16192001-08-10 H.J. Lu <hjl@gnu.org>
1620
1621 * bfd.c (bfd_sprintf_vma): Fix a typo in the last change.
1622 (bfd_fprintf_vma): Likewise.
1623
16242001-08-10 H.J. Lu <hjl@gnu.org>
1625
1626 * bfd.c (bfd_sprintf_vma): Don't return void.
1627 (bfd_fprintf_vma): Likewise.
1628
16292001-08-10 Andreas Jaeger <aj@suse.de>
1630
1631 * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
1632 to build warnings.
1633 * configure: Regenerate.
1634
16352001-08-10 Alan Modra <amodra@bigpond.net.au>
1636
1637 * elf.c (bfd_elf_sprintf_vma): Add ATTRIBUTE_UNUSED to quiet
1638 warning if not BFD64. Add braces so emacs auto format works.
1639 (bfd_elf_fprintf_vma): Likewise.
1640
1641 * libxcoff.h (struct xcoff_backend_data_rec): Constify src param
1642 of _xcoff_swap_ld*.
1643 * coff-rs6000.c (xcoff_swap_ldhdr_in): Modify type of external
1644 param to agree with libxcoff.h.
1645 (xcoff_swap_ldhdr_out): Likewise.
1646 (xcoff_swap_ldsym_in): Likewise.
1647 (xcoff_swap_ldsym_out): Likewise.
1648 (xcoff_swap_ldrel_in): Likewise.
1649 (xcoff_swap_ldrel_out): Likewise.
1650 (xcoff_create_csect_from_smclas): Likewise.
1651 * coff64-rs6000.c: Add missing prototypes.
1652 (xcoff64_swap_ldhdr_in): Modify type of external param to agree
1653 with libxcoff.h.
1654 (xcoff64_swap_ldhdr_out): Likewise.
1655 (xcoff64_swap_ldsym_in): Likewise.
1656 (xcoff64_swap_ldsym_out): Likewise.
1657 (xcoff64_swap_ldrel_in): Likewise.
1658 (xcoff64_swap_ldrel_out): Likewise.
1659 (xcoff64_ppc_relocate_section): Make static.
1660 (xcoff64_slurp_armap): Likewise.
1661 (xcoff64_archive_p): Likewise.
1662 (xcoff64_openr_next_archived_file): Likewise.
1663 (xcoff64_sizeof_headers): Likewise.
1664 (xcoff64_is_lineno_count_overflow): Likewise.
1665 (xcoff64_is_reloc_count_overflow): Likewise.
1666 (xcoff64_loader_symbol_offset): Likewise.
1667 (xcoff64_loader_reloc_offset): Likewise.
1668 * elf64-gen.c: Add missing prototypes.
1669
16702001-08-09 H.J. Lu <hjl@gnu.org>
1671
1672 * elf.c (bfd_elf_sprintf_vma): Check ELFCLASS64 only in BFD64.
1673 (bfd_elf_fprintf_vma): Likewise.
1674
16752001-08-09 H.J. Lu <hjl@gnu.org>
1676
1677 * bfd-in.h (bfd_elf_sprintf_vma, bfd_elf_fprintf_vma): Moved
1678 to ...
1679 * elf-bfd.h: Here.
1680 * bfd-in2.h: Regenerated.
1681
16822001-08-09 H.J. Lu <hjl@gnu.org>
1683
1684 * bfd-in.h (bfd_sprintf_vma): New prototype.
1685 (bfd_fprintf_vma): Likewise.
1686 (bfd_elf_sprintf_vma): Likewise.
1687 (bfd_elf_fprintf_vma): Likewise.
1688 (bfd_printf_vma): New. Defined with bfd_fprintf_vma.
1689 * bfd-in2.h: Regenerated.
1690
1691 * bfd.c (bfd_sprintf_vma): New. Defined.
1692 (bfd_fprintf_vma): Likewise.
1693
1694 * elf.c (bfd_elf_sprintf_vma): New. Defined.
1695 (bfd_elf_fprintf_vma): Likewise.
1696
16972001-08-09 Alan Modra <amodra@bigpond.net.au>
1698
1699 * coff-rs6000.c: Add missing prototypes.
1700 (xcoff_ppc_relocate_section, xcoff_is_lineno_count_overflow,
1701 xcoff_is_reloc_count_overflow, xcoff_loader_symbol_offset,
1702 xcoff_loader_reloc_offset): Make static.
1703 * dwarf1.c: Add missing prototypes.
1704 * dwarf2.c: Add missing prototypes.
1705 (struct abbrev_info): Move definition.
1706 (struct attr_abbrev, ABBREV_HASH_SIZE, ATTR_ALLOC_CHUNK): Likewise.
1707 * elf.c: Add missing prototypes.
1708 * elf32-gen.c: Likewise.
1709 * elf32-i386.c: Likewise.
1710 * elf32-ppc.c: Likewise.
1711 (ppc_elf_sort_rela): Use PTR instead of "void *".
1712 * elflink.h: Add missing prototypes. Formatting fixes.
1713 * merge.c: Add missing prototypes.
1714 (last4_eq): Use PTR instead of "void *".
1715 (last_eq): Likewise.
1716 * syms.c: Add missing prototypes.
1717
17182001-08-09 Nick Clifton <nickc@cambridge.redhat.com>
1719
1720 * bfd.c: Fix formatting.
1721 * bfd-in2.h: Regenerate.
1722
17232001-08-09 Nick Clifton <nickc@cambridge.redhat.com>
1724
1725 * elf32-arc.c (R_ARC_B22_PCREL): Change 'partial_inplace' to
1726 true (this target uses REL relocations) and 'pcrel_offset' to
1727 false (the PC is implied, not stored in the offset).
1728
17292001-08-08 Alan Modra <amodra@bigpond.net.au>
1730
1731 1999-10-19 Linus Nordberg <linus@swox.se>
1732 * elf-bfd.h (struct elf_backend_data): Add want_got_sym.
1733 * elfxx-target.h (elf_backend_want_got_sym): Define.
1734 (elfNN_bed): Add elf_backend_want_got_sym.
1735 * elflink.c (_bfd_elf_create_got_section): Define
1736 _GLOBAL_OFFSET_TABLE_ only if bed->want_got_sym.
1737
17382001-08-08 Alexandre Oliva <aoliva@redhat.com>
1739
1740 * dwarf2.c (struct dwarf2_debug): Add sec, sec_info_ptr and syms.
1741 (find_rela_addend): New function.
1742 (parse_comp_unit): Call it to find the abbrev offset addend.
1743 (_bfd_dwarf2_find_nearest_line): Initialize and maintain the new
1744 members of dwarf2_debug as debugging information is read.
1745
17462001-08-07 Nick Clifton <nickc@cambridge.redhat.com>
1747
1748 * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff
1749 targets as well as sh-pe.
1750
17512001-08-03 Ben Harris <bjh21@netbsd.org>
1752
1753 * elf32-arm.h (elf32_arm_final_link_relocate): Include offset of
1754 reloc from start of section when computing value for R_ARM_REL32
1755 reloc.
1756
17572001-08-03 Alan Modra <amodra@bigpond.net.au>
1758
1759 From H.J. Lu <hjl@gnu.org>
1760 * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Don't
1761 keep relocs for undefined syms if there are no dynamic sections in
1762 executable.
1763 * elf32-hppa.c (allocate_plt_and_got_and_discard_relocs): Likewise.
1764
17652001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com>
1766
1767 * cofflink.c (coff_link_check_ar_symbols): also search for
1768 __imp__symbol as well as _symbol.
1769 * linker.c (_bfd_generic_link_add_archive_symbols): also
1770 search for __imp__symbol as well as _symbol.
1771
17722001-08-01 Adam Nemet <anemet@lnxw.com>
1773
1774 * elf.c (elf_sort_sections): Return zero only as the last step.
1775
17762001-08-01 Nick Clifton <nickc@cambridge.redhat.com>
1777
1778 * config.bfd (arm-vxworks): Change name of define from VXWORKS to
1779 ARM_COFF_BUGFIX.
1780 (arm-epoc-pe): Define ARM_COFF_BUGFIX.
1781 coff-arm.c (coff_arm_relocate_section): Replace VXWORKS with
1782 ARM_COFF_BUGFIX.
1783
17842001-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1785
1786 * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Changed return type
1787 to match corresponding bfd_coff_backend data member.
1788
17892001-07-24 Alan Modra <amodra@bigpond.net.au>
1790
1791 * Makefile.am: Update dependencies with "make dep-am".
1792 * Makefile.in: Regenerate
1793
17942001-07-15 H.J. Lu <hjl@gnu.org>
1795
1796 * Makefile.am (po/SRC-POTFILES.in): Use tmp.src instead of tmp.
1797 (po/BLD-POTFILES.in): Use tmp.bld instead of tmp.
1798 * Makefile.in: Regenerate.
1799
18002001-07-11 H.J. Lu <hjl@gnu.org>
1801
1802 * elf64-alpha.c (elf64_alpha_check_relocs): Set the ALLOC|LOAD
1803 flags when creating the reloc section if the ALLOC flag in the
1804 source section is set.
1805
18062001-07-11 Steve Ellcey <sje@cup.hp.com>
1807
1808 * reloc.c (bfd_reloc_code_type): Add IA64 relocs
1809 BFD_RELOC_IA64_LTOFF_FPTR32MSB and BFD_RELOC_IA64_LTOFF_FPTR32LSB
1810 * bfd-in2.h: Regenerate.
1811 * libbfd.h: Regenerate.
1812 * elfxx-ia64.c (ia64_howto_table): Define how to handle
1813 new relocations.
1814 (elfNN_ia64_reloc_type_lookup): Handle new relocations.
1815 (elfNN_ia64_check_relocs): Likewise.
1816 (elfNN_ia64_install_value): Likewise.
1817 (elfNN_ia64_relocate_section): Likewise.
1818
18192001-07-11 Jakub Jelinek <jakub@redhat.com>
1820
1821 * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove support for
1822 R_SPARC_UA64.
1823 (elf32_sparc_check_relocs): Likewise.
1824 Only create .rela section for alloced sections in shared libraries.
1825 (elf32_sparc_relocate_section): Likewise.
1826 Remove redundant check.
1827 Optimize unaligned reloc usage.
1828 * elf64-sparc.c (sparc64_elf_relocate_section): Remove redundant
1829 check.
1830
18312001-07-11 H.J. Lu <hjl@gnu.org>
1832
1833 * elf64-alpha.c (elf64_alpha_check_relocs): Only use the same
1834 ALLOC|LOAD flags as the source section for debugging sections
1835 when creating the reloc section.
1836
18372001-07-05 Jim Wilson <wilson@redhat.com>
1838
1839 * linker.c (_bfd_generic_link_add_one_symbol, case BIG): Use
1840 the section of the bigger symbol.
1841
1842 * syms.c (bfd_is_local_label): Return false if BSF_SECTION_SYM.
1843
18442001-07-05 Nick Clifton <nickc@cambridge.redhat.com>
1845
1846 * peicode.h (coff_swap_scnhdr_in): For sections containing
1847 uninitialised data, only set their size to s_paddr if this does
1848 not reset their size to zero. MS's latest compilers will set
1849 s_paddr to zero.
1850
18512001-07-04 H.J. Lu <hjl@gnu.org>
1852
1853 * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing):
1854 Handle bfd_mach_mips4400, bfd_mach_mips4600 and
1855 bfd_mach_mips5000.
1856
18572001-07-03 Mark Elbrecht <snowball3@softhome.net>
1858
1859 * bfd.c (bfd_get_sign_extend_vma): Support DJGPP COFF targets.
1860
1861 * cofflink.c (_bfd_coff_link_input_bfd): Skip section symbols from
1862 sections being discarded.
1863
18642001-06-30 Alan Modra <amodra@bigpond.net.au>
1865
1866 * elfcore.h (elf_core_file_p): Call bfd_section_from_phdr directly
1867 instead of _bfd_elfcore_section_from_phdr.
1868 * elf-bfd.h (_bfd_elfcore_section_from_phdr): Remove.
1869 * elf.c (_bfd_elfcore_section_from_phdr): Remove.
1870 (_bfd_elfcore_make_pseudosection): Expedite tail-call.
1871 (elfcore_grok_prstatus): Likewise.
1872 (elfcore_grok_lwpstatus): Likewise.
1873 (bfd_get_elf_phdr_upper_bound): Likewise.
1874 (elfcore_make_note_pseudosection): Formatting.
1875 (_bfd_elfcore_strndup): Formatting.
1876 * elf32-mips.c (mips_elf_sym_is_global): Formatting.
1877 (_bfd_elf32_mips_grok_prstatus): Expedite tail-call.
1878
18792001-06-29 Daniel Jacobowitz <drow@mvista.com>
1880
1881 * elf-bfd.h: Add prototypes for _bfd_elfcore_make_pseudosection
1882 and _bfd_elfcore_strndup.
1883 (struct elf_backend_data): Add elf_backend_grok_prstatus
1884 and elf_backend_grok_psinfo.
1885 * elf.c (_bfd_elfcore_make_pseudosection): New function.
1886 (elfcore_grok_prstatus): Use it.
1887 (elfcore_make_note_pseudosection): Likewise.
1888 (elfcore_strndup): Rename to...
1889 (_bfd_elfcore_strndup): Here, and make global.
1890 (elfcore_grok_psinfo): Use _bfd_elfcore_strndup.
1891 (elfcore_grok_note): Call elf_backend_grok_prstatus
1892 and elf_backend_grok_psinfo if available.
1893 * elf32-mips.c (_bfd_elf32_mips_grok_prstatus): New function.
1894 (_bfd_elf32_mips_grok_psinfo): New function.
1895 (elf_backend_grok_prstatus): Define.
1896 (elf_backend_grok_psinfo): Define.
1897 * elfxx-target.h (elf_backend_grok_prstatus): Default to NULL.
1898 (elf_backend_grok_psinfo): Likewise.
1899 (elfNN_bed): Include elf_backend_grok_prstatus and
1900 elf_backend_grok_psinfo.
1901
19022001-06-29 H.J. Lu <hjl@gnu.org>
1903
1904 * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Check if
1905 hplink->sgot is NULL before filling GOT. Check if hplink->splt
1906 is NULL before filling PLT.
1907
19082001-06-29 Alan Modra <amodra@bigpond.net.au>
1909
1910 * elflink.h (elf_link_output_extsym): Revert 1999-04-10.
1911
19122001-06-27 Alan Modra <amodra@bigpond.net.au>
1913
1914 * elf32-hppa.c (elf32_hppa_check_relocs): Don't make syms dynamic
1915 here..
1916 (elf32_hppa_adjust_dynamic_symbol): ..nor here..
1917 (allocate_plt_and_got_and_discard_relocs): .. instead do so here
1918 after gc has run.
1919
1920 * elf32-hppa.c (RELATIVE_DYNAMIC_RELOCS): Delete.
1921 (IS_ABSOLUTE_RELOC): Define.
1922 (elf32_hppa_link_hash_entry): Always include reloc_entries field.
1923 (hppa_link_hash_newfunc): Always init it.
1924 (elf32_hppa_check_relocs): Mark symbols as ELF_LINK_NON_GOT_REF to
1925 create COPY relocs only when the reloc is in a read-only section.
1926 Instead, allocate space for a dynamic reloc to reference the
1927 library symbol directly. Keep track of space we allocate using
1928 relocs_entries.
1929 (hppa_discard_copies): Delete, and move code to..
1930 (allocate_plt_and_got): ..here. Rename to
1931 allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic
1932 relocs for non-shared link.
1933 (elf32_hppa_size_dynamic_sections): Update calls to above.
1934 (elf32_hppa_relocate_section): Write out the dynamic relocs used
1935 in lieu of COPY relocs.
1936
1937 * elf32-i386.c (elf_i386_check_relocs): Don't make syms dynamic
1938 here..
1939 (elf_i386_adjust_dynamic_symbol): ..nor here..
1940 (allocate_plt_and_got_and_discard_relocs): .. instead do so here
1941 after gc has run.
1942 (elf_i386_size_dynamic_sections): Fix a comment.
1943 (elf_i386_relocate_section <R_386_32, R_386_PC32>): Rearrange code
1944 involved in writing reloc out.
1945
19462001-06-25 Alan Modra <amodra@bigpond.net.au>
1947
1948 * elf32-i386.c (elf_i386_check_relocs <R_386_32, R_386_PC32>):
1949 Ensure syms are dynamic if we might be emitting a reloc.
1950 (allocate_plt_and_got_and_discard_relocs): Don't discard relocs
1951 for undefweak or undefined syms..
1952 (elf_i386_relocate_section <R_386_32, R_386_PC32>): .. and emit.
1953
1954 * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Discard
1955 relocs without ELF_LINK_HASH_DEF_DYNAMIC set.
1956 (elf_i386_relocate_section <R_386_32, R_386_PC32>): Remove
1957 redundant bfd_link_hash_defined, bfd_link_hash_defweak test.
1958
19592001-06-24 H.J. Lu <hjl@gnu.org>
1960
1961 * cpu-i960.c (scan_960_mach): Don't modify const char *. Use
1962 strncasecmp/strcasecmp instead of strncmp/strcmp.
1963
19642001-06-23 H.J. Lu <hjl@gnu.org>
1965
1966 * elf32-i386.c (elf_i386_relocate_section <R_386_32, R_386_PC32>):
1967 Check ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined
1968 in the regular object file and treat the weak definition as
1969 the normal one.
1970
19712001-06-23 Alan Modra <amodra@bigpond.net.au>
1972
1973 * elf32-i386.c (elf_i386_relocate_section <R_386_GOT32>): Tighten
1974 unresolved_reloc test to exclude cases where we use "relocation"
1975 before setting it to point into the .got. Reinstate fudge for
1976 unresolved relocs in debugging sections.
1977
1978 * elf32-i386.c (elf_i386_relocate_section): Replace ugly
1979 complicated tests for unresolvable relocs with a simple direct
1980 scheme using "unresolved_reloc" var.
1981
1982 * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Rename to
1983 elf_i386_dyn_relocs. Update comment.
1984 (struct elf_i386_link_hash_entry): Rename pcrel_relocs_copied to
1985 dyn_relocs.
1986 (elf_i386_adjust_dynamic_symbol): Remove a BFD_ASSERT, change
1987 others to aborts.
1988 (allocate_plt_and_got_and_discard_relocs): Replace BFD_ASSERT with
1989 abort.
1990 (elf_i386_size_dynamic_sections): Likewise.
1991 (elf_i386_finish_dynamic_symbol): Likewise.
1992 (elf_i386_finish_dynamic_sections): Likewise.
1993 (elf_i386_relocate_section): Likewise. Tidy R_386_GOT32 and error
1994 handling code.
1995
1996 Avoid creating COPY relocs if possible.
1997 * elf32-i386.c (elf_i386_check_relocs): Tweak condition under
1998 which .got created. Mark symbols used by R_386_32 and R_386_PC32
1999 relocs as ELF_LINK_NON_GOT_REF to create COPY relocs only when the
2000 reloc is in a read-only section. Instead, allocate space for a
2001 dynamic reloc to reference the library symbol directly. Keep
2002 track of space we allocate using pcrel_relocs_copied.
2003 (discard_copies): Delete, and move code to ..
2004 (allocate_plt_and_got): ..here. Rename to
2005 allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic
2006 relocs for non-shared link.
2007 (elf_i386_size_dynamic_sections): Update calls to above functions.
2008 (elf_i386_relocate_section): Write out the dynamic relocs. Add
2009 more ugly logic to avoid "unresolvable relocation" error. Use
2010 htab shortcut in place of elf_hash_table macro.
2011 (elf_i386_finish_dynamic_sections): Allow that dynamic .got may
2012 not always be created now.
2013
20142001-06-20 Bo Thorsen <bo@suse.co.uk>
2015
2016 * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix linking of
2017 shared libraries.
2018
20192001-06-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2020
2021 * configure.host (mips64-*-linux): Reformat.
2022
20232001-06-21 Alan Modra <amodra@bigpond.net.au>
2024
2025 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Always
2026 allocate local .got space. Use shortcuts from hash table for .got
2027 and .plt rather than comparing section names.
2028 (elf32_hppa_check_relocs): Use local_plt_refcounts var rather than
2029 adjusting index into local_got_refcounts to document what we are
2030 really doing.
2031 (elf32_hppa_relocate_section): Similarly for local_plt_offsets.
2032 Tidy .got and .plt error checking.
2033
20342001-06-20 Catherine Moore <clm@redhat.com>
2035
2036 * elf-bfd.h (struct elf_backend_data):
2037 elf_backend_emit_relocs: New field: Function for emitting
2038 relocs.
2039 elf_backend_count_relocs: New field: Function for determining
2040 the number of relocs to be emitted.
2041 * elfxx-target.h: Provide default (NULL) values for
2042 elf_backend_emit_relocs and elf_backend_count_relocs.
2043 * elflink.h (elf_link_size_reloc_section): Make the hash table
2044 big enough to hold the relocs counted by either reloc_count or
2045 o->reloc_count.
2046 (elf_bfd_final_link) emit_relocs: New boolean, set if relocs
2047 should be emitted, either because of a command line option
2048 stored in the info structure or because the target provides a
2049 special reloc emitting function.
2050 If the target provides a reloc counting function use it,
2051 unless performing a relocatable link or emitting all relocs.
2052 Also set the SEC_RELOC flag on any output section which will
2053 contain relocs.
2054 (elf_link_input_bfd): emit_relocs: New boolean, set if relocs
2055 should be emitted, either because of a command line option
2056 stored in the info structure or because the target provides a
2057 special reloc emitting function.
2058 If the target provides a reloc emitting function, use it,
2059 unless performing a relocatable link or emitting all relocs.
2060
20612001-06-20 H.J. Lu <hjl@gnu.org>
2062
2063 * elf32-i386.c (elf_i386_size_dynamic_sections): Always
2064 allocate local .got space.
2065
20662001-06-19 Andreas Jaeger <aj@suse.de>
2067
2068 * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of
2069 dynamic symbols.
2070
20712001-06-18 Hans-Peter Nilsson <hp@axis.com>
2072
2073 * elflink.h (struct elf_assign_sym_version_info): Remove member
2074 export_dynamic. All users changed to use info member.
2075 NAME(bfd_elf,size_dynamic_sections)): Remove parameter
2076 export_dynamic, instead use member in parameter info.
2077 * bfd-in.h (bfd_elf32_size_dynamic_sections,
2078 bfd_elf64_size_dynamic_sections): Update prototype.
2079 * bfd-in2.h: Regenerate.
2080
20812001-06-18 H.J. Lu <hjl@gnu.org>
2082
2083 * elflink.h (elf_info_failed): Add a new field, verdefs.
2084 (NAME(bfd_elf,size_dynamic_sections): Pass verdefs to
2085 elf_export_symbol.
2086 (elf_export_symbol): Check eif->verdefs to decide if a symbol
2087 should be exported.
2088
20892001-06-17 H.J. Lu <hjl@gnu.org>
2090
2091 * elf32-mips.c (mips_elf_link_hash_entry): Add a new field,
2092 readonly_reloc, to record if a relocation in the .rel.dyn
2093 section is against a read-only section.
2094 (mips_elf_link_hash_newfunc): Initialize the readonly_reloc
2095 field to false.
2096 (_bfd_mips_elf_check_relocs): Record if there is a relocation
2097 in the .rel.dyn section against a read-only section by setting
2098 DF_TEXTREL or readonly_reloc.
2099 (_bfd_mips_elf_copy_indirect_symbol): Copy readonly_reloc if
2100 it is true.
2101 (_bfd_mips_elf_adjust_dynamic_symbol): Record DF_TEXTREL if
2102 there is a relocation in the .rel.dyn section against a
2103 read-only section.
2104 (_bfd_mips_elf_size_dynamic_sections): Set DT_TEXTREL if
2105 DF_TEXTREL is set.
2106
21072001-06-12 Nick Clifton <nickc@cambridge.redhat.com>
2108
2109 * coffcode.h (styp_flags_to_sec_flags): Change to a boolean
2110 function. Move flagword result into parameter list. Remove
2111 comment about setting bfd_error_handler to intercept failure
2112 results.
2113 * coffgen.c (make_a_section_from_file): Examine result of
2114 calling bfd_coff_styp_to_sec_flags and pass a failure back to
2115 caller.
2116 * ecoff.h (styp_flags_to_sec_flags): Change to a boolean
2117 function. Move flagword result into parameter list.
2118 * libcoff.h: Regenerate.
2119 * libecoff.h: Regenerate.
2120
21212001-06-13 Nick Clifton <nickc@cambridge.redhat.com>
2122
2123 * aoutx.h (adjust_z_magic): Only pad the tesxt section if the data
2124 section is going to follow it.
2125
21262001-06-12 Catherine Moore <clm@redhat.com>
2127
2128 * elflink.h (elf_gc_propagate_vtable_entries): Replace FILE_ALIGN
2129 with the file_align entry from elf_backend_data.
2130 (elf_gc_smash_unused_vtentry_relocs): Likewise.
2131 (elf_gc_record_vtentry): Likewise.
2132
21332001-06-10 Alan Modra <amodra@bigpond.net.au>
2134
2135 * elflink.h: Whitespace changes.
2136 (elf_link_read_relocs_from_section): Use "unsigned int" iterator
2137 rather than "unsigned char".
2138 (elf_link_output_relocs): Likewise.
2139 (elf_link_input_bfd): Likewise.
2140 (elf_reloc_link_order): LIkewise.
2141 * elf.c: s/CONST/const/. Whitespace changes.
2142 * elf32-mips.c: Formatting fix.
2143
2144 * Makefile.am (SOURCE_HFILES): Include xcoff-target.h, remove xcoff.h.
2145 * Makefile.in: Regenerate.
2146 * po/Make-in: Remove trailing tab.
2147
21482001-06-09 Philip Blundell <philb@gnu.org>
2149
2150 * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last
2151 change.
2152 (elf32_arm_plt_entry): Likewise.
2153
21542001-06-08 H.J. Lu <hjl@gnu.org>
2155
2156 * elf.c (swap_out_syms): Keep names for global section symbols.
2157
21582001-06-07 H.J. Lu <hjl@gnu.org>
2159
2160 * config.bfd: Put back ecoff for Linux/mips. Firmwares on some
2161 MIPS-based machines need it.
2162
21632001-06-07 H.J. Lu <hjl@gnu.org>
2164
2165 * elf32-mips.c (_bfd_mips_elf_object_p): Set the bad symtab
2166 for SGI only.
2167
2168 * config.bfd: Remove ecoff from Linux/mips.
2169
21702001-06-07 Andreas Jaeger <aj@suse.de>
2171
2172 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an
2173 assertion.
2174 (elf64_x86_64_check_relocs): Fix VTENTRY relocation; set an
2175 alignment of 8 for .rela sections; handle further relocations.
2176
21772001-06-06 Christian Groessler <cpg@aladdin.de>
2178
2179 * coff-z8k.c: Fix formatting.
2180 Fix howtos: howto->size was always 1.
2181
21822001-06-05 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2183
2184 * configure.host (mips64*-*-linux*): Define.
2185
21862001-06-05 Alan Modra <amodra@bigpond.net.au>
2187
2188 * elf32-i386.c (elf_i386_discard_copies): Rename to
2189 discard_copies, and use elf_link_hash_entry arg rather than
2190 elf_i386_link_hash_entry.
2191 (elf_i386_link_hash_traverse): Delete.
2192 (elf_i386_size_dynamic_sections): Adjust call to discard_copies.
2193 Tidy sizing of dynamic sections.
2194 (elf_i386_check_relocs <R_386_32, R_386_PC32>): Reference count
2195 possible .plt entries.
2196 (elf_i386_gc_sweep_hook): Likewise.
2197 (elf_i386_adjust_dynamic_symbol): Discard .plt entries for
2198 everything with plt.refcount <= 0.
2199
2200 * elf32-i386.c (elf_i386_check_relocs): Don't allocate .got and
2201 .relgot space here.
2202 (elf_i386_gc_sweep_hook): ..and no need to deallocate here..
2203 (elf_i386_adjust_dynamic_symbol): ..and don't allocate .plt and
2204 .rel.plt here..
2205 (allocate_plt_and_got): ..instead do it all here. New function.
2206 (elf_i386_size_dynamic_sections): Allocate local .got space and
2207 call allocate_plt_and_got. No need to zap .relgot if not dynamic.
2208 (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link
2209 rather than gc variety).
2210 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
2211 (elf_i386_relocate_section): Use it here and correct handling of
2212 R_386_GOT32. Provide section and offset for "unresolvable
2213 relocation" error message.
2214 (elf_i386_finish_dynamic_symbol): Correct handling of R_386_GOT32.
2215
2216 * elf32-i386.c (struct elf_i386_link_hash_table): Add sgot,
2217 sgotplt, srelgot, splt, srelplt, sdynbss, srelbss fields.
2218 (elf_i386_link_hash_table_create): Init them.
2219 (create_got_section): New function.
2220 (elf_i386_create_dynamic_sections): New function.
2221 (elf_backend_create_dynamic_sections): Set to above.
2222 (elf_i386_check_relocs): Use shortcuts from hash table rather than
2223 calling bfd_get_section_by_name.
2224 (elf_i386_gc_sweep_hook): Likewise.
2225 (elf_i386_adjust_dynamic_symbol): Likewise.
2226 (elf_i386_size_dynamic_sections): Likewise.
2227 (elf_i386_relocate_section): Likewise.
2228 (elf_i386_finish_dynamic_sections): Likewise.
2229
2230 * elf32-hppa.c (allocate_plt_and_got): Skip indirect and warning syms.
2231
22322001-06-02 H.J. Lu <hjl@gnu.org>
2233
2234 * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX
2235 and ELFOSABI_HPUX.
2236 * elf64-hppa.c (elf64_hppa_object_p): Likewise.
2237
22382001-06-02 H.J. Lu <hjl@gnu.org>
2239
2240 * aout-cris.c (MACHTYPE_OK): New. Defined.
2241
22422001-06-02 Hans-Peter Nilsson <hp@axis.com>
2243
2244 * section.c (_bfd_strip_section_from_output): Handle NULL
2245 output_section.
2246
22472001-06-02 H.J. Lu <hjl@gnu.org>
2248
2249 * config.bfd (powerpc-*-aix*, powerpc-*-beos*, rs6000-*-*): Add
2250 rs6000coff64_vec only if BFD64 is defined.
2251 (powerpc64-*-aix*): Enable only if BFD64 is defined.
2252
22532001-06-02 H.J. Lu <hjl@gnu.org>
2254
2255 * coff-ia64.c (ia64coff_object_p): Rewrite with
2256 external_PEI_DOS_hdr and external_PEI_IMAGE_hdr.
2257
22582001-06-01 Andreas Jaeger <aj@suse.de>
2259
2260 * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8
2261 relocation, small reformatting.
2262
22632001-05-29 Andreas Jaeger <aj@suse.de>
2264
2265 * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64.
2266 (elf64_x86_64_relocate_section): Likewise.
2267
22682001-05-30 Alan Modra <amodra@one.net.au>
2269
2270 * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for
2271 millicode. Don't allocate .got and .rela.got space here..
2272 (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here..
2273 (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and
2274 .rela.plt here..
2275 (hppa_handle_PIC_calls): ..nor here..
2276 (allocate_plt_and_got): ..instead do it all here. New function.
2277 (elf32_hppa_size_dynamic_sections): Allocate local .got space and
2278 call allocate_plt_and_got. No need to zap .got if not dynamic.
2279 (elf32_hppa_final_link): Call regular bfd_final_link instead of
2280 gc_common_final_link.
2281 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
2282 (elf32_hppa_relocate_section): Use it here.
2283 (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of
2284 dynamic_sections_created.
2285 (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym.
2286
22872001-05-28 Andreas Jaeger <aj@suse.de>
2288
2289 * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the
2290 generic version since we want a hashsize of 4.
2291 (elf_backend_size_info): Likewise.
2292
22932001-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2294
2295 * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of
2296 a zeroing loop.
2297 (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly.
2298 (elf_link_input_bfd): Likewise.
2299 (elf_reloc_link_order): Likewise.
2300 (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64
2301 relocations correctly.
2302
23032001-05-28 Nicolas Pitre <nico@cam.org>
2304
2305 * elf32-arm.h: fix PLT generation for big endian ARM
2306
23072001-05-28 Alan Modra <amodra@one.net.au>
2308
2309 * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries
2310 for symbols forced local that need plabels.
2311 (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in
2312 .plt.rela for local syms if non-shared.
2313 (hppa_build_one_stub): Mask lsb of plt.offset.
2314 (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set.
2315 (clobber_millicode_symbols): Correct comment.
2316 (elf32_hppa_relocate_section): Likewise.
2317 (elf32_hppa_finish_dynamic_symbol): Likewise.
2318
23192001-05-28 Jeff Sturm <jsturm@one-point.com>
2320
2321 * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64.
2322 * bfd-in2.h: Regenerate.
2323 * libbfd.h: Regenerate.
2324 * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32
2325 and BFD_RELOC_SPARC_UA64 mapping
2326 * elf64-sparc.c: Likewise.
2327
23282001-05-25 H.J. Lu <hjl@gnu.org>
2329
2330 * Makefile.am (BFD32_BACKENDS): Remove coff-pmac.lo.
2331 (BFD32_BACKENDS_CFILES): Remove coff-pmac.c.
2332 (coff-rs6000.lo): Remove the old dependency.
2333 * Makefile.in: Rebuild.
2334
2335 * configure.in (pmac_xcoff_vec): Replace coff-pmac.lo with
2336 coff-rs6000.lo.
2337
23382001-05-25 H.J. Lu <hjl@gnu.org>
2339
2340 * coff-rs6000.c (rs6000coff_vec): Use rs6000coff_core_p,
2341 rs6000coff_core_file_matches_executable_p,
2342 rs6000coff_core_file_failing_command and
2343 rs6000coff_core_file_failing_signal only if AIX_CORE is
2344 defined.
2345 (pmac_xcoff_vec): Likewise.
2346 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
2347
23482001-05-25 Timothy Wall <twall@redhat.com>
2349
2350 * elfxx-ia64.c (allocate_dynrel_entries): Don't allocate an entry
2351 for __GLOB_DATA_PTR on AIX5. Clean up some relocation bugs.
2352
23532001-05-25 H.J. Lu <hjl@gnu.org>
2354
2355 * bfd-in2.h: Regenerated.
2356 * libcoff.h: Likewise.
2357
23582001-05-25 Alan Modra <amodra@one.net.au>
2359
2360 * elf32-hppa.c (elf32_hppa_relocate_section): Don't allow
2361 undefined millicode syms in shared libs.
2362 (hppa_build_one_stub): Turn BFD_ASSERTs into aborts.
2363 (elf32_hppa_check_relocs): Likewise.
2364 (elf32_hppa_adjust_dynamic_symbol): Likewise.
2365 (elf32_hppa_size_dynamic_sections): Likewise.
2366 (elf32_hppa_relocate_section): Likewise.
2367 (elf32_hppa_finish_dynamic_symbol): Likewise.
2368 (elf32_hppa_finish_dynamic_sections): Likewise.
2369
23702001-05-24 Tom Rix <trix@redhat.com>
2371
2372 * Makefile.am coff-pmac bfd now defined in coff-rs6000.c
2373 xcoff-target.h not used to define rs6000 or ppc bfd.
2374 * Makefile.in same
2375
2376 * bfd-in.h : (struct lineno_cache_entry) promote element "offset"
2377 to 64 bit.
2378
2379 * coff-rs6000.c : Many changes for 64 bit support. Move common
2380 32/64 code to xcofflink.c. Explictly define the rs6000coff_vec
2381 and pmac_xcoff_vec
2382
2383 * coff64-rs6000.c : Many changes for 64 bit support. 64 bit
2384 linker now supported. Explictly define the rs6000coff64_vec.
2385
2386 * coffcode.h : (coff_set_arch_mach_hook) xcoff 64 bit support
2387 (coff_print_aux) same
2388 (coff_write_object_contents) same
2389 (coff_slurp_line_table) same
2390
2391 * coffgen.c : (coff_fix_symbol_name) formatting
2392 (coff_mangle_symbols) xcoff 64 bit support
2393 (coff_write_symbol) same
2394 (coff_write_alien_symbol) same
2395 (coff_write_native_symbol) same
2396 (coff_write_symbols) same
2397 (coff_get_symbol_info) same
2398 (bfd_coff_get_syment) same
2399 (coff_print_symbol) same
2400
2401 * config.bfd : add powerpc64-*-aix* target
2402
2403 * libcoff-in.h : formatting
2404
2405 * libcoff.h : move xcoff extern declarations to libxcoff.h
2406
2407 * libxcoff.h : New file
2408
2409 * xcofflink.c : Many changes for xcoff64 support. Move common
2410 structures to include/coff/xcoff.h. Move specific structure to
2411 backends coff-rs6000.c and coff64-rs6000.c. Use new backend
2412 functions, defined in libxcoff.h, to isolate 32/64 dependencies.
2413
2414 (bfd_xcoff_size_dynamic_sections) : special __rtinit symbol for
2415 aix4.2+ -binitfini.
2416
2417 (xcoff_build_ldsyms) : handle special __rtinit symbol.
2418
24192001-05-23 Alexandre Oliva <aoliva@redhat.com>
2420
2421 * elf64-sparc.c (sparc64_elf_slurp_reloc_table): Fix typo
2422 s/ENTIRES/ENTRIES/.
2423
24242001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2425
2426 * reloc.c (bfd_reloc_code_real): Add MIPS ELF64 relocations.
2427 * libbfd.h: Regenerate.
2428 * bfd-in2.h: Regenerate.
2429
2430 * aoutx.h (aout_@var{size}_machine_type): Add MIPS r12k support.
2431 * archures.c (bfd_mach_mips12000): Define.
2432 * cpu-mips.c (arch_info_struct): Add MIPS r12k support.
2433 * elf32-mips.c (_bfd_mips_elf_final_write_processing): Add MIPS r12k
2434 support.
2435 (_bfd_mips_elf_size_dynamic_sections): Use official bfd typedef.
2436 * bfd-in2.h: Regenerate.
2437 * elfxx-target.h: Do not redefine bfd_elfNN_bfd_make_debug_symbol.
2438
24392001-05-23 kaz Kojima <kkojima@rr.iij4u.or.jp>
2440
2441 * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry,
2442 elf_sh_plt_entry_be, elf_sh_plt_entry, elf_sh_pic_plt_entry_be,
2443 elf_sh_pic_plt_entry): New PLT code, that does not use r2, since
2444 that is used by GCC.
2445
24462001-05-23 Nick Clifton <nickc@cambridge.redhat.com>
2447
2448 * elf-bfd.h (NUM_SHDR_ENTRIES): New macro: compute the number
2449 of entries in a structured section.
2450 * elf.c: Use new macro.
2451 * elf32-i386.c: Use new macro.
2452 * elf32-mips.c: Use new macro.
2453 * elf64-alpha.c: Use new macro.
2454 * elf64-sparc.c: Use new macro.
2455 * elfcode.h: Use new macro.
2456 * elflink.h: Use new macro.
2457
24582001-05-23 Nick Clifton <nickc@cambridge.redhat.com>
2459
2460 * bfdint.texi: Replace -oformat with --oformat.
2461
24622001-05-21 Andreas Jaeger <aj@suse.de>
2463
2464 * dwarf2.c (decode_line_info): Fix error message.
2465 (read_abbrevs): Fix test for offset as suggested by Alan Modra and
2466 adjust error message.
2467
24682001-05-18 H.J. Lu <hjl@gnu.org>
2469
2470 * elflink.h (elf_link_add_object_symbols): Revert the last
2471 change.
2472
24732001-05-17 Alan Modra <amodra@one.net.au>
2474
2475 * elf32-hppa.c (clobber_millicode_symbols): Temporarily set
2476 ELF_LINK_FORCED_LOCAL to suit 2001-04-30 change.
2477 (hppa_build_one_stub): Add an assert to check plt.offset.
2478
24792001-05-17 H.J. Lu <hjl@gnu.org>
2480
2481 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the
2482 version definition to basename of the output filename.
2483
24842001-05-17 H.J. Lu <hjl@gnu.org>
2485
2486 * elflink.h (elf_link_add_object_symbols): Set DT_NEEDED to
2487 basename of the bfd filename.
2488
24892001-05-16 Alan Modra <amodra@one.net.au>
2490
2491 * section.c (asection): Add linker_has_input field.
2492 (STD_SECTION): Adjust initialization to suit.
2493 * ecoff.c (bfd_debug_section): Likewise.
2494 * bfd-in2.h: Regenerate.
2495
24962001-05-15 Alexandre Oliva <aoliva@redhat.com>
2497
2498 * elf-m10300.c (mn10300_elf_relax_section): Don't relax
2499 negative 32-bit operands to 16 operands when the operand is
2500 going to be zero-extended by the modified opcode.
2501
25022001-05-12 Peter Targett <peter.targett@arccores.com>
2503
2504 * cpu-arc.c (arch_info_struct): Add entry 'base' representing old
2505 name for 'arc5' core versions.
2506 (bfd_arc_arch): Make bfd_mach_arc_6 default.
2507
2508 * elf32-arc.c (arc_elf_object_p): Make E_ARC_MACH_ARC6 default
2509 architecture.
2510 (arc_elf_final_write_processing): Make bfd_mach_arc_6 default.
2511
25122001-05-11 Jakub Jelinek <jakub@redhat.com>
2513
2514 * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind
2515 sections as well.
2516 (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO
2517 to .gnu.linkonce.t.FOO text section.
2518
25192001-05-11 Jakub Jelinek <jakub@redhat.com>
2520
2521 * merge.c (struct sec_merge_hash_entry): Add u.entsize and u.suffix
2522 fields, change sec into secinfo.
2523 (struct sec_merge_info): Add chain, remove last fields.
2524 (struct sec_merge_sec_info): Add next, sec, psecinfo fields.
2525 (sec_merge_hash_lookup): If lookup could not use a string only
2526 because it has bad alignment, mark the old string for deletion.
2527 (sec_merge_add): Add secinfo argument. Don't compute entry's
2528 position, instead record the section.
2529 (sec_merge_emit): Update for the sec into secinfo change in
2530 struct sec_merge_hash_entry.
2531 (_bfd_merge_section): Only record the section for merging, defer
2532 putting strings into the hash table.
2533 (cmplengthentry, last4_eq, last_eq, record_section, merge_strings,
2534 _bfd_merge_sections): New functions.
2535 (_bfd_merged_section_offset): Update for the sec_merge_hash_entry
2536 changes.
2537 * libbfd-in.h (_bfd_merge_sections): Add prototype.
2538 (_bfd_nolink_bfd_merge_sections): Define.
2539 * libbfd.h: Likewise.
2540 (bfd_generic_merge_sections): Add prototype.
2541 * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_merge_sections.
2542 (struct bfd_target): Likewise.
2543 * bfd.c (bfd_merge_sections): Define.
2544 * bfd-in2.h: Rebuilt.
2545 * elf.c (_bfd_elf_merge_sections): New function.
2546 * elf-bfd.h (_bfd_elf_merge_sections): Add prototype.
2547 * elfxx-target.h (bfd_elfNN_bfd_merge_sections): Define.
2548 * reloc.c (bfd_generic_merge_sections): New function.
2549 * vms.c (vms_bfd_merge_sections): New function.
2550 * aout-adobe.c (aout_32_bfd_merge_sections): Define.
2551 * aout-target.h (MY_bfd_merge_sections): Define.
2552 * aout-tic30.c (MY_bfd_merge_sections): Define.
2553 * binary.c (binary_bfd_merge_sections): Define.
2554 * bout.c (b_out_bfd_merge_sections): Define.
2555 * coff-alpha.c (_bfd_ecoff_bfd_merge_sections): Define.
2556 * coffcode.c (coff_bfd_merge_sections): Define.
2557 * coff-mips.c (_bfd_ecoff_bfd_merge_sections): Define.
2558 * i386msdos.c (msdos_bfd_merge_sections): Define.
2559 * i386os9k.c (os9k_bfd_merge_sections): Define.
2560 * ieee.c (ieee_bfd_merge_sections): Define.
2561 * ihex.c (ihex_bfd_merge_sections): Define.
2562 * nlm-target.h (nlm_bfd_merge_sections): Define.
2563 * oasys.c (oasys_bfd_merge_sections): Define.
2564 * ppcboot.c (ppcboot_bfd_merge_sections): Define.
2565 * som.c (som_bfd_merge_sections): Define.
2566 * srec.c (srec_bfd_merge_sections): Define.
2567 * tekhex.c (tekhex_bfd_merge_sections): Define.
2568 * versados.c (versados_bfd_merge_sections): Define.
2569 * xcoff-target.h (_bfd_xcoff_bfd_merge_sections): Define.
2570
25712001-05-11 Nick Clifton <nickc@cambridge.redhat.com>
2572
2573 * dwarf1.c (_bfd_dwarf1_find_nearest_line): Change type of 'addr'
2574 to be unsigned long, in order to match its use.
2575
25762001-05-10 H.J. Lu <hjl@gnu.org>
2577
2578 * linker.c (_bfd_generic_link_add_one_symbol): Check loop on
2579 indirect symbols.
2580
25812001-05-09 H.J. Lu <hjl@gnu.org>
2582
2583 * elflink.h (elf_link_add_object_symbols): Fix a typo. Allocate
2584 versymhdr->sh_size bytes for extversym instead of hdr->sh_size.
2585 Remove the unused veriable `dynver'.
2586
25872001-05-08 Ian Lance Taylor <ian@zembu.com>
2588
2589 * coff-i386.c (coff_i386_reloc): Don't dump core if output_bfd is
2590 NULL or is not COFF.
2591 (coff_i386_rtype_to_howto): Don't dump core if output section
2592 owner is not COFF.
2593
25942001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2595
2596 * ecoff.c (bfd_debug_section): Fix initialization.
2597 * elf.c (_bfd_elf_slurp_version_tables): Change maxidx to unsigned, it
2598 is always a positive integer. Cast away sign mismatch.
2599 * elf32-mips.c: Fix misleading comment and typo.
2600 (_bfd_mips_elf_section_from_bfd_section): Remove unused attribute, use
2601 correct data type.
2602 * elflink.c: Fix typo.
2603 (_bfd_elf_create_dynamic_sections): Remove superfluous initialization.
2604 * ecoffswap.h (ecoff_swap_fdr_in): Cast away sign mismatch.
2605
26062001-05-04 Richard Henderson <rth@redhat.com>
2607
2608 * elf64-alpha.c (SREL16, SREL32, SREL64): Set pcrel_offset true.
2609
26102001-05-04 Nick Clifton <nickc@cambridge.redhat.com>
2611
2612 * elf32-arm.h (elf32_arm_final_link_relocate): Set
2613 EF_ARM_HASENTRY if the start address is set.
2614
26152001-05-03 Nick Clifton <nickc@cambridge.redhat.com>
2616
2617 * targets.c (_bfd_target_vector_entries): Compute value based on
2618 the size of the _bfd_target_vector and not bfd_target_vector.
2619
26202001-05-03 H.J. Lu <hjl@gnu.org>
2621
2622 * elfcode.h: Include "libiberty.h".
2623
2624 * elflink.h (elf_link_add_object_symbols): Set
2625 elf_dt_name (abfd) to basename of the bfd filename.
2626 (NAME(bfd_elf,size_dynamic_sections)): Set vn_file to basename
2627 of the bfd filename.
2628
26292001-05-03 Andreas Jaeger <aj@suse.de>
2630
2631 * elf64-gen.c (elf_generic_info_to_howto): Add unused attribute.
2632 (elf_generic_info_to_howto_rel): Likewise.
2633 * coff-alpha.c (reloc_nil): Likewise.
2634 (alpha_ecoff_bad_format_hook): Likewise.
2635 (alpha_adjust_reloc_out): Likewise.
2636 (alpha_bfd_reloc_type_lookup): Likewise.
2637 (alpha_convert_external_reloc): Likewise.
2638 * elf64-alpha.c (elf64_alpha_reloc_nil): Likewise.
2639 (elf64_alpha_reloc_bad): Likewise.
2640 (elf64_alpha_reloc_gpdisp): Likewise.
2641 (elf64_alpha_bfd_reloc_type_lookup): Likewise.
2642 (elf64_alpha_info_to_howto): Likewise.
2643 (elf64_alpha_add_symbol_hook): Likewise.
2644 (elf64_alpha_create_got_section): Likewise.
2645 (elf64_alpha_is_local_label_name): Likewise.
2646 (elf64_alpha_merge_ind_symbols): Likewise.
2647 * elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise.
2648 (mips_elf64_get_reloc_upper_bound): Likewise.
2649 * nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise.
2650 (nlm_alpha_get_public_offset): Likewise.
2651
26522001-05-02 Johan Rydberg <jrydberg@opencores.org>
2653
2654 * elf32-openrisc.c (openrisc_elf_howto_table): Do not complain
2655 about overflow in R_OPENRISC_LO_16_IN_INSN and
2656 R_OPENRISC_HI_16_IN_INSN.Index: bfd/elf32-openrisc.c
2657
26582001-04-30 H.J. Lu <hjl@gnu.org>
2659
2660 * elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1
2661 only for ELF_LINK_FORCED_LOCAL.
2662 * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
2663 * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise.
2664 * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
2665
2666 * elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL
2667 if the symbol has hidden or internal visibility.
2668
26692001-04-30 Alan Modra <amodra@one.net.au>
2670
2671 * elf32-hppa.c (final_link_relocate): Branch to .+8 for
2672 calls to undefined weak symbols.
2673
26742001-04-30 Andreas Jaeger <aj@suse.de>, Andreas Schwab <schwab@suse.de>
2675
2676 * elf64-x86-64.c (elf64_x86_64_relocate_section): Correct test for
2677 R_X86_64_GOTPCREL, don't use assignments instead of comparisons.
2678
26792001-04-27 Andreas Jaeger <aj@suse.de>
2680
2681 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap
2682 out handled entries.
2683 (elf64_x86_64_finish_dynamic_symbol): Set up GOT entries.
2684 (elf64_x86_64_relocate_section): Fix GOTPCREL calculation.
2685 (elf64_x86_64_relocate_section): Merge entries for GOTPCREL and
2686 GOT32.
2687
26882001-04-27 Sean McNeil <sean@mcneil.com>
2689
2690 * config.bfd: Add arm-vxworks target.
2691 * coff-arm (coff_arm_relocate_section): Add in symbol value to
2692 addend (fro VXworks targets).
2693
26942001-04-26 H.J. Lu <hjl@gnu.org>
2695
2696 * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is
2697 valid.
2698
26992001-04-25 Frank Ch. Eigler <fche@redhat.com>
2700
2701 * bfd-in.h (bfd_cache_close): Declare newly exported function.
2702 * bfd-in2.h: Regenerated.
2703
27042001-04-24 Jakub Jelinek <jakub@redhat.com>
2705
2706 * merge.c (struct sec_merge_hash_entry): Add alignment field.
2707 (struct sec_merge_hash): Remove alignment_power.
2708 (sec_merge_hash_newfunc): Clear alignment.
2709 (sec_merge_hash_lookup): Pass alignment as argument.
2710 Use hashp->root.next, not hashp->next to walk the hash chain.
2711 If a string already in the hashtable does not have required
2712 alignment, create a new hashtable entry.
2713 (sec_merge_init): Remove alignment_power argument.
2714 (sec_merge_add): Add alignment argument.
2715 (sec_merge_emit): Alignment is now a per-entity thing, not per
2716 section.
2717 (_bfd_merge_section): Sanity check even non-SEC_STRINGS sections
2718 for proper alignment.
2719 Pass alignment information to sec_merge_add.
2720
27212001-04-24 Christian Groessler <cpg@aladdin.de>
2722
2723 * coff-z8k.c (extra_case): added handler for R_DISP7, R_CALLR
2724 and R_REL16 reloc types; accept odd values for R_REL16 type
2725
27262001-04-24 Johan Rydberg <jrydberg@opencores.org>
2727
2728 * cpu-openrisc.c: New file.
2729 * elf32-openrisc.c: Likewise.
2730
2731 * Makefile.am (ALL_MACHINES): Add cpu-openrisc.lo.
2732 (ALL_MACHINES_CFILES): Add cpu-openrisc.c.
2733 (BFD32_BACKENDS): Add elf32-openrisc.lo.
2734 (BFD32_BACKENDS_CFILES): Add elf32-openrisc.c.
2735 (cpu-openrisc.lo, elf32-openrisc.lo): New rules.
2736 * Makefile.in: Regenerated.
2737 * config.bfd: (openrisc-*-elf): New target.
2738 * configure.in (bfd_elf32_openrisc_vec): New vector.
2739 * configure: Regenerated.
2740 * libbfd.h: Regenerated.
2741 * bfd-in2.h: Regenerated.
2742 * reloc.c: Add OpenRISC relocations.
2743 * targets.c (bfd_elf32_openrisc_vec): Declare.
2744 (bfd_target_vect): Add bfd_elf32_openrisc_vec.
2745 * archures.c (enum bfd_architecture): Add bfd_arch_openrisc.
2746 (bfd_openrisc_arch): Declare.
2747 (bfd_archures_list): Add bfd_openrisc_arch.
2748 * elf.c (prep_headers): Add bfd_arch_openrisc.
2749
27502001-04-23 Bo Thorsen <bo@suse.de>
2751
2752 * elf64-x86-64.c: Add c++ vtable hack.
2753 Small whitespace and comment changes.
2754
27552001-04-19 Andreas Jaeger <aj@suse.de>
2756
2757 * elf64-x86-64.c (elf64_x86_64_plt0_entry): Fix instructions.
2758 (elf64_x86_64_plt_entry): Likewise.
2759 (elf64_x86_64_finish_dynamic_sections): Fix PLT0 generation.
2760 (elf64_x86_64_finish_dynamic_symbol): Fix PLT generation.
2761
27622001-04-17 Hans-Peter Nilsson <hp@axis.com>
2763
2764 * elf32-cris.c: Tweak comments related to dynamic linking.
2765 (cris_elf_relocate_section): When not creating shared object, fill
2766 in the .got table for any symbol not in the dynamic symbol table.
2767 (elf_cris_finish_dynamic_symbol): When not creating shared object,
2768 only emit a .got.rela reloc if the symbol is in the dynamic symbol
2769 table.
2770 (cris_elf_check_relocs): Use variable r_type in all places rather
2771 than the original expression. Add default case in switch for
2772 reloc types.
2773 (elf_cris_size_dynamic_sections): Iterate over
2774 elf_cris_discard_excess_program_dynamics when not creating shared
2775 library.
2776 (elf_cris_discard_excess_dso_dynamics): Renamed from
2777 elf_cris_discard_copies. Correct typo, s/Rel/Rela/.
2778 (elf_cris_discard_excess_program_dynamics): New.
2779
27802001-04-14 Mark Elbrecht <snowball3@bigfoot.com>
2781
2782 * coffcode.h (coff_write_object_contents): Use
2783 bfd_coff_swap_filehdr_out instead of coff_swap_filehdr_out.
2784
27852001-04-14 H.J. Lu <hjl@gnu.org>
2786
2787 * bfd-in2.h: Regenerate.
2788
27892001-04-14 Jakub Jelinek <jakub@redhat.com>
2790
2791 * section.c (STD_SECTION): Add entsize.
2792
27932001-04-13 H.J. Lu <hjl@gnu.org>
2794
2795 * section.c (SEC_MERGE): Define new flag for merging.
2796 (SEC_STRINGS): Likewise.
2797 (entsize): New field.
2798
27992001-04-13 Roger Sayle <roger@metaphorics.com>
2800
2801 * coff-i386.c (TARGET_SYM): SEC_READONLY is an applicable section
2802 flag on pe-i386 targets.
2803
28042001-04-13 Jakub Jelinek <jakub@redhat.com>
2805
2806 * libbfd-in.h (_bfd_merge_section): New.
2807 (_bfd_write_merged_section): New.
2808 (_bfd_merged_section_offset): New.
2809 * libbfd.h: Rebuilt.
2810 * linker.c (_bfd_generic_link_output_symbols): Handle
2811 discard_sec_merge.
2812 * aoutx.h (aout_link_write_symbols): Likewise.
2813 * pdp11.c (aout_link_write_symbols): Likewise.
2814 * elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section.
2815 (elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE
2816 sections.
2817 (elf_link_sec_merge_syms): New.
2818 (elf_link_input_bfd): Call _bfd_merged_section_offset
2819 and _bfd_write_merged_section.
2820 Handle discard_sec_merge.
2821 * elf-bfd.h (struct elf_link_hash_table): Add merge_info
2822 field.
2823 (struct bfd_elf_section_data): Likewise.
2824 * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and
2825 SEC_STRINGS section flags and entsize from their ELF counterparts.
2826 (_bfd_elf_link_hash_table_init): Initialize merge_info.
2827 (elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize
2828 from their BFD counterparts.
2829 * merge.c: New file.
2830 * Makefile.am: Add strtab.lo.
2831 * Makefile.in: Rebuilt.
2832
28332001-04-09 Hans-Peter Nilsson <hp@axis.com>
2834
2835 * elflink.h (elf_fix_symbol_flags): For non-default visibilities,
2836 only hide symbols marked STV_INTERNAL or STV_HIDDEN.
2837
28382001-04-05 Steven J. Hill <sjhill@cotw.com>
2839
2840 * config.bfd (mips*el*-*-linux-gnu*): Use traditional little
2841 endian MIPS ELF target.
2842 * config.bfd (mips*-*-linux-gnu*): Use traditional big endian
2843 MIPS ELF target.
2844
2845 * configure.in (bfd_elf64_tradbigmips_vec): New. Traditional
2846 64bit big endian MIPS ELF target.
2847 (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
2848 endian MIPS ELF target.
2849 * configure: Regenerated.
2850
2851 * elf32-mips.c (IRIX_COMPAT): Handle traditional 64bit and
2852 little endian targets.
2853 (mips_elf_sym_is_global): Handle traditional targets.
2854
2855 * elf64-mips.c (bfd_elf64_tradbigmips_vec): New. Traditional
2856 64bit big endian MIPS ELF target.
2857 (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
2858 endian MIPS ELF target.
2859
2860 * targets.c: (_bfd_target_vector): Add bfd_elf64_tradbigmips_vec
2861 and bfd_elf64_tradlittlemips_vec.
2862
28632001-04-05 David Mosberger <davidm@hpl.hp.com>
2864
2865 * elf32-i386.c (elf_i386_fake_sections): Treat ".reloc" as an
2866 ordinary "progbits" section.
2867
28682001-04-04 Alan Modra <alan@linuxcare.com.au>
2869
2870 * elflink.h (elf_fix_symbol_flags): Call elf_backend_hide_symbol
2871 when -Bsymbolic causes a symbol to no longer need a .plt entry.
2872
28732001-04-03 David Mosberger <davidm@hpl.hp.com>
2874
2875 * efi-app-ia32.c (ALIGN_SECTIONS_IN_FILE): Deleted.
2876
28772001-03-30 H.J. Lu <hjl@gnu.org>
2878
2879 * efi-app-ia32.c (PEI_TARGET_SUBSYSTEM): Rename from ...
2880 (PEI_DEFAULT_TARGET_SUBSYSTEM): This.
2881
28822001-03-26 H.J. Lu <hjl@gnu.org>
2883
2884 * elf32-gen.c (elf32_generic_link_add_symbols): New. Check
2885 if there are any relocations for generic ELF.
2886 (bfd_elf32_bfd_link_add_symbols): Defined to
2887 elf32_generic_link_add_symbols.
2888 * elf64-gen.c (elf64_generic_link_add_symbols): New. Check
2889 if there are any relocations for generic ELF.
2890 (bfd_elf64_bfd_link_add_symbols): Defined to
2891 elf64_generic_link_add_symbols.
2892
28932001-03-23 Nick Clifton <nickc@redhat.com>
2894
2895 * Makefile.am (BUILD_CFILES): New variable: List of C source
2896 files created in build directory.
2897 (BUILD_HFILES): New variable: List of header files created in
2898 build directory.
2899 (POTFILES): Delete.
2900 (po/POTFILES.in): Replace rule with empty entry.
2901 (po/SRC-POTFILES.in): New rule: Create a list of source files
2902 in the source directory.
2903 (po/BLD-POTFILES.in): New rule: Create a list of source files
2904 in the build directory.
2905 (MOSTLYCLEAN): Do not delete source files created in build
2906 directory.
2907 * Makefile.in: Regenerate.
2908 * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in
2909 into po/Makefile.
2910 * configure: Regenerate.
2911
2912 * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES
2913 and BLD_POTFILES.
2914 Add .. to the search path when building bfd.pot.
2915 Delete POTFILES when performing distclean.
2916 Add comment describing why distclean is broken in maintainer mode.
2917 * po/POTFILES.in: Delete.
2918 * po/SRC-POTFILES.in: New file.
2919 * po/BLD-POTFILES.in: New file.
2920 * po/bfd.pot: Regenerate.
2921
29222001-03-22 Hans-Peter Nilsson <hp@axis.com>
2923
2924 * elf32-cris.c: Shlib and PIC support. PCREL tweaks.
2925 (elf_cris_discard_copies, elf_cris_adjust_gotplt_to_got,
2926 elf_cris_try_fold_plt_to_got, elf_cris_link_hash_newfunc,
2927 elf_cris_link_hash_table_create, elf_cris_adjust_dynamic_symbol,
2928 elf_cris_size_dynamic_sections, elf_cris_finish_dynamic_symbol,
2929 elf_cris_finish_dynamic_sections,elf_cris_hide_symbol): New
2930 functions.
2931 (cris_elf_howto_table) <R_CRIS_8_PCREL, R_CRIS_16_PCREL,
2932 R_CRIS_32_PCREL>: Correct comments. Set pcrel_offset to false.
2933 <R_CRIS_COPY, R_CRIS_GLOB_DAT, R_CRIS_JUMP_SLOT, R_CRIS_RELATIVE,
2934 R_CRIS_16_GOT, R_CRIS_32_GOT, R_CRIS_16_GOTPLT, R_CRIS_32_GOTPLT,
2935 R_CRIS_32_GOTREL, R_CRIS_32_PLT_GOTREL, R_CRIS_32_PLT_PCREL>:
2936 New HOWTO members for new relocs.
2937 (cris_reloc_map): Map new relocs.
2938 (ELF_DYNAMIC_INTERPRETER): Define.
2939 (PLT_ENTRY_SIZE): Define.
2940 (elf_cris_plt0_entry, elf_cris_plt_entry, elf_cris_pic_plt0_entry,
2941 elf_cris_pic_plt_entry): New, PLT templates.
2942 (struct elf_cris_pcrel_relocs_copied, struct
2943 elf_cris_link_hash_entry, struct elf_cris_link_hash_table): New.
2944 (elf_cris_link_hash_traverse, elf_cris_hash_table): Define.
2945 (cris_final_link_relocate): Check that 16-bit GOT relocs have
2946 positive values. Adjust PCREL relocs to be relative to location
2947 after relocation.
2948 (cris_elf_relocate_section): Handle relocations to dynamic
2949 objects. Handle new relocations. Call error handler when seeing
2950 non-PIC relocation for read-only sections while generating shared
2951 object.
2952 (cris_elf_check_relocs): Set reference counts for GOT and PLT
2953 entries.
2954 (bfd_elf32_bfd_link_hash_table_create,
2955 elf_backend_adjust_dynamic_symbol,
2956 elf_backend_size_dynamic_sections,
2957 elf_backend_finish_dynamic_symbol,
2958 elf_backend_finish_dynamic_sections,
2959 elf_backend_create_dynamic_sections, bfd_elf32_bfd_final_link,
2960 elf_backend_hide_symbol, elf_backend_want_got_plt,
2961 elf_backend_plt_readonly, elf_backend_want_plt_sym,
2962 elf_backend_got_header_size, elf_backend_plt_header_size):
2963 Define.
2964
2965 * reloc.c: (BFD_RELOC_CRIS_COPY, BFD_RELOC_CRIS_GLOB_DAT,
2966 BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE,
2967 BFD_RELOC_CRIS_32_GOT, BFD_RELOC_CRIS_16_GOT,
2968 BFD_RELOC_CRIS_32_GOTPLT, BFD_RELOC_CRIS_16_GOTPLT,
2969 BFD_RELOC_CRIS_32_GOTREL, BFD_RELOC_CRIS_32_PLT_GOTREL,
2970 BFD_RELOC_CRIS_32_PLT_PCREL): New relocs.
2971 * bfd-in2.h, libbfd.h: Regenerate.
2972
29732001-03-21 Diego Novillo <dnovillo@redhat.com>
2974
2975 (_bfd_mips_elf_relocate_section): Give a better error message when
2976 a relocation is not recognized.
2977
29782001-03-21 Alan Modra <alan@linuxcare.com.au>
2979
2980 * elf32-hppa.c (elf32_hppa_set_gp): Check sec->output_section
2981 non-NULL before attempting to dereference.
2982
29832001-03-20 H.J. Lu <hjl@gnu.org>
2984
2985 * configure.in: Remove the redundent AC_ARG_PROGRAM.
2986 * configure: Rebuild.
2987
29882001-03-20 Andreas Schwab <schwab@suse.de>
2989
2990 * elf32-m68k.c (elf_m68k_relocate_section): Don't need the
2991 relocation value when resolving a reference from a debugging
2992 section.
2993
29942001-03-16 Scott Thomason <SThomaso@hii.com>
2995
2996 * coff64-rs6000.c (xcoff64_swap_sym_out): Fix syntax errors.
2997 (xcoff64_swap_sym_out): Fix syntax errors.
2998
29992001-03-16 Richard Sandiford <rsandifo@redhat.com>
3000
3001 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix warning.
3002
30032001-03-15 Alan Modra <alan@linuxcare.com.au>
3004
3005 * elf32-hppa.c (elf32_hppa_link_hash_entry): Add maybe_pic_call.
3006 (hppa_link_hash_newfunc): Init it.
3007 (hppa_type_of_stub): Only use non-PIC to PIC call stub if caller
3008 section appears to be non-PIC.
3009 (final_link_relocate): Likewise.
3010 (elf32_hppa_adjust_dynamic_symbol): Set maybe_pic_call for any
3011 possible candidate function, and set pic_call for those that will
3012 only have a .plt entry for the PIC call stub.
3013 (hppa_handle_PIC_calls): Set maybe_pic_call.
3014
30152001-03-12 DJ Delorie <dj@redhat.com>
3016
3017 * elf32-sh.c (sh_elf_relocate_section): Only relocation
3018 R_SH_DIR8WP* relocs if they're against external symbols, else
3019 they're just for relaxing. Validate the reloc values.
3020
30212001-03-12 Stefan Geuken <mail@stefan-geuken.de>
3022
3023 * binary.c (bfd_external_binary_architecture): Declare.
3024 (binary_object_p): If bfd_external_binary_architecture is defined,
3025 set the architecture to this string.
3026
30272001-03-11 Philip Blundell <philb@gnu.org>
3028
3029 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT
3030 entries that could serve as a definition for a weak symbol.
3031
30322001-03-08 Nick Clifton <nickc@redhat.com>
3033
3034 * Most files: Update copyright notices using Perl script created
3035 by Kevin Buettner <kevinb@redhat.com>.
3036
30372001-03-07 Nick Clifton <nickc@redhat.com>
3038
3039 * elf32-arm.h (elf32_arm_final_link_relocate): Conditionalise
3040 prior patch on ! defined OLD_ARM_ABI.
3041
30422001-03-07 Andreas Jaeger <aj@suse.de>
3043
3044 * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of
3045 some relocation values.
3046
30472001-03-06 Nick Clifton <nickc@redhat.com>
3048
3049 * elf32-arm.h (elf32_arm_final_link_relocate): Clear bit zero
3050 of offset in BLX(1) instruction.
3051 * coff-arm.c (coff_arm_relocate_section): Clear bit zero of
3052 offset in BLX(1) instruction.
3053 Fix formatting.
3054
30552001-03-06 Nick Clifton <nickc@redhat.com>
3056
3057 * coff-arm.c (coff_arm_reloc_type_lookup): Add
3058 BFD_RELOC_THUMB_PCREL_BLX.
3059
30602001-03-06 Igor Shevlyakov <igor@windriver.com>
3061
3062 * archures.c (bfd_default_scan): Add Coldfire CPUs.
3063 * bfd-in2.h: Regenerate.
3064 * cpu-m68k.c: Add Coldfire CPUs for arch table.
3065 * ieee.c (ieee_write_processor): Set proper id for
3066 Coldfire CPUs.
3067
30682001-03-01 D.J. Barrow <djbarrow@de.ibm.com,barrow_dj@yahoo.com>
3069
3070 * configure.in: Add s390 target.
3071 * configure: Regenerate.
3072
30732001-02-28 Andreas Jaeger <aj@suse.de>
3074
3075 * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation
3076 to addend.
3077
30782001-02-28 Philip Blundell <pb@futuretv.com>
3079
3080 * elf32-arm.h: Update mentions of renamed EF_xx constants.
3081 (elf32_arm_print_private_bfd_data): Handle ARM EABI version 2.
3082
30832001-02-27 H.J. Lu <hjl@gnu.org>
3084
3085 * aoutx.h (NAME(aout,bfd_free_cached_info)): Return true if
3086 abfd->tdata.aout_data == NULL.
3087
30882001-02-27 Alan Modra <alan@linuxcare.com.au>
3089
3090 * elf32-hppa.c: Correct field selector in stub comments.
3091 (clobber_millicode_symbols): Formatting fix.
3092
3093 * configure.in: Bump version to 2.11.90.
3094 * configure: Regenerate.
3095 * Makefile.am (CFILES): Rename to SOURCE_CFILES.
3096 (CFILES): $SOURCE_CFILES + generated C files.
3097 (POTFILES): Include $HFILES not $SOURCE_HFILES.
3098 Run "make dep-am"
3099 * Makefile.in: Regenerate.
3100 * doc/Makefile.in: This too.
3101
31022001-02-26 Timothy Wall <twall@cygnus.com>
3103
3104 * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Remove obsolete
3105 comments.
3106
31072001-02-26 Nick Clifton <nickc@redhat.com>
3108
3109 * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Tidy
3110 up, replacing multiple if statements with a switch.
3111 (handle_COMDAT): New function.
3112
31132001-02-26 H.J. Lu <hjl@gnu.org>
3114
3115 * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Issue
3116 a warning for section flags we do not handle instead of
3117 aborting.
3118
31192001-02-26 Andreas Jaeger <aj@suse.de>
3120
3121 * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries.
3122
31232001-02-22 Timothy Wall <twall@cygnus.com>
3124
3125 * config.bfd (targ_cpu): Add vectors for ia64-*-aix* (aka Monterey).
3126 * configure.in: Add objects for elf64_ia64_aix vectors.
3127 * configure: Regenerated.
3128 * configure.host: Recognize ia64-*-aix*.
3129 * elfxx-ia64.c: Add hooks for ELF64 on AIX5. Define new vectors
3130 for AIX. AIX5 requires most relocations to be dynamic (*all*
3131 binaries are somewhat similar to shared libraries).
3132 * targets.c: Add elf64_ia64_aix vectors.
3133
31342001-02-21 David Mosberger <davidm@hpl.hp.com>
3135
3136 * cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for
3137 C8 said "1" instead of "8". Clarify error string for IMM22:
3138 "signed integer" instead of just "integer".
3139
31402001-02-20 Andreas Jaeger <aj@suse.de>
3141
3142 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Don't make
3143 PLT entries that could serve as a definition for a weak symbol.
3144
31452001-02-19 Jakub Jelinek <jakub@redhat.com>
3146
3147 * elf32-sparc.c (elf32_sparc_finish_dynamic_symbol): Don't make PLT
3148 entries that could serve as a definition for a weak symbol.
3149 * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Likewise.
3150
31512001-02-18 David O'Brien <obrien@FreeBSD>
3152
3153 * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat
3154 FreeBSD/i386-CURRENT differently until I can figure out the needed
3155 corefile changes.
3156 * configure: Regenerate.
3157 * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm,
3158 FreeBSD/PowerPC, and FreeBSD/sparc64.
3159
31602001-02-18 lars brinkhoff <lars@nocrew.org>
3161
3162 * Makefile.am: Add PDP-11 a.out target.
3163 * config.bfd: Likewise.
3164 * configure.in: Likewise.
3165 * targets.c: Likewise.
3166 * archures.c: Likewise.
3167 * bfd-in2.h: Likewise. Add PDP-11 relocations.
3168 * libbfd.h: Add PDP-11 relocations.
3169 * reloc.c: Likewise.
3170 * cpu-pdp11.c: New file.
3171 * pdp11.c: New file.
3172
3173 * libaout.h (GET_WORD) [ARCH_SIZE==16]: Define.
3174 (GET_SWORD) [ARCH_SIZE==16]: Likewise.
3175 (GET_SWORD) [ARCH_SIZE==16]: Likewise.
3176 (PUT_WORD) [ARCH_SIZE==16]: Likewise.
3177 (GET_MAGIC): New macro.
3178 (PUT_MAGIC): Likewise.
3179 * aout-target.h (MY(object_p)): Use GET_MAGIC to read magic word.
3180
31812001-02-18 Jim Kingdon <jkingdon@engr.sgi.com>
3182
3183 * irix-core.c (irix_core_core_file_p): Set the architecture (GDB
3184 multiarch needs it).
3185
31862001-02-18 H.J. Lu <hjl@gnu.org>
3187
3188 * elflink.h (elf_link_input_bfd): Ignore invalid section symbol
3189 index.
3190
31912001-02-18 Kazu Hirata <kazu@hxi.com>
3192
3193 * vms-misc.c: Fix formatting.
3194
31952001-02-16 Kazu Hirata <kazu@hxi.com>
3196
3197 * vms.c: Fix formatting.
3198
31992001-02-14 H.J. Lu <hjl@gnu.org>
3200
3201 * elf.c (elf_find_function): New function.
3202 (_bfd_elf_find_nearest_line): Call elf_find_function () to find
3203 the file name and function name.
3204
32052001-02-14 Nick Clifton <nickc@redhat.com>
3206
3207 * ecoff.c (bfd_debug_section): Update to initialise new fields in
3208 asection structure.
3209
3210 * Makefile.am (BFD32_BACKENDS_CFILES): Remove peigen.c
3211 (BFD64_BACKENDS): Add pepigen.c
3212 Add rules to create peigen.c and pepigen.c from peXXigen.c.
3213
3214 * Makefile.in: Regenerate.
3215 * configure: Regenerate.
3216 * po/POTFILES.in: Regenerate.
3217 * po/bfd.pot: Regenerate.
3218
32192001-02-14 H.J. Lu <hjl@gnu.org>
3220
3221 * libcoff-in.h (pe_tdata): Add members target_subsystem and
3222 force_minimum_alignment.
3223
32242001-02-14 Bo Thorsen <bo@suse.de>
3225
3226 * elf64-x86-64.c: Small formatting fixes and rearrangements of code.
3227 (elf64_86_64_size_info): Struct added to fix a problem
3228 with the hashtable string entries.
3229 (elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt.
3230 (elf64_x86_64_size_dynamic_sections): A FIXME removed.
3231 (elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and
3232 remove the FIXME for this.
3233 (elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt
3234 section. Also removed the FIXME for it.
3235 (x86_64_elf_howto_table): Use bfd_elf_generic_reloc.
3236 (ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker.
3237 (elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing.
3238
32392001-02-13 Richard Henderson <rth@redhat.com>
3240
3241 * elfxx-ia64.c (elfNN_ia64_final_link): Set __gp if required
3242 and not user provided.
3243
32442001-02-13 Kazu Hirata <kazu@hxi.com>
3245
3246 * vms.c (vms_print_symbol): Remove unreachable code.
3247
3248 * rs6000-core.c: Fix formatting.
3249
32502001-02-13 David Mosberger <davidm@hpl.hp.com>
3251
3252 * peicode.h (coff_swap_filehdr_out) [COFF_IMAGE_WITH_PE]: Define
3253 as _bfd_XXi_only_swap_filehdr_out.
3254 (pe_mkobject) [PEI_FORCE_MINIMUM_ALIGNMENT]: Set
3255 pe->force_minimum_alignment to TRUE.
3256 (pe_mkobject) [PEI_TARGET_SUBSYSTEM]: Set pe->target_subsystem to
3257 PEI_TARGET_SUBSYSTEM.
3258 (pe_print_private_bfd_data): Call
3259 _bfd_XX_print_private_bfd_data_common() instead of
3260 _bfd_pe_print_private_bfd_data_common().
3261 (pe_bfd_copy_private_bfd_data): Call
3262 _bfd_XX_bfd_copy_private_bfd_data_common() instead of
3263 _bfd_pe_bfd_copy_private_bfd_data_common().
3264 (coff_bfd_copy_private_section_data): Define as
3265 _bfd_XX_bfd_copy_private_section_data instead of
3266 _bfd_pe_bfd_copy_private_section_data.
3267 (coff_get_symbol_info): Define as _bfd_XX_get_symbol_info instead
3268 of a _bfd_pe_get_symbol_info.
3269
3270 * peigen.c: Delete.
3271
3272 * peXXigen.c: Renamed from peigen.c.
3273 (COFF_WITH_XX): Define this macro (will get expanded into
3274 COFF_WITH_pep or COFF_WITH_pe, depending on whether this is being
3275 compiled as peigen.c or pepigen.c.
3276 [COFF_WITH_pep]: Include "coff/ia64.h" instead of "coff/i386.h" to
3277 define the canonical PEP structures and definitions.
3278 (_bfd_XXi_swap_aouthdr_out): If pe->force_minimum_alignment is in
3279 effect, enforce minimum file and section alignments. If
3280 extra->Subsystem is IMAGE_SUBSYSTEM_UNKNOWN, set it to
3281 pe->target_subsystem (this defaults to IMAGE_SUBSYSTEM_UNKNOWN,
3282 so, by default, this is a no-op).
3283
3284 * libpei.h: Rename COFF_WITH_PEP to COFF_WITH_pep.
3285 (_bfd_XX_bfd_copy_private_bfd_data_common): Add macros to map
3286 _bfd_XXfoo to _bfd_pepfoo if COFF_WIT_PEP is defined and to
3287 _bfd_pefoo if it's not defined. Use these macros to define
3288 coff swap macros.
3289
3290 * libcoff.h (pe_tdata): Add members target_subsystem and
3291 force_minimum_alignment.
3292
3293 * efi-app-ia64.c (COFF_WITH_pep): Rename COFF_WITH_PEP to
3294 COFF_WITH_pep.
3295 (PEI_TARGET_SUBSYSTEM): Rename from PEI_DEFAULT_TARGET_SUBSYSTEM.
3296
3297 * configure.in (bfd_efi_app_ia64_vec): Use pepigen.lo instead of
3298 peigen.lo.
3299
3300 * coff-ia64.c: Rename COFF_WITH_PEP to COFF_WITH_pep.
3301 (AOUTSZ): Rename PEP64AOUTSZ and PEP64AOUTHDR to PEPAOUTSZ and
3302 PEPAOUTHDR.
3303
3304 * Makefile.in (BFD64_BACKENDS): Mention pepigen.lo.
3305 (BFD64_BACKENDS_CFILES): Mention pepigen.c
3306 (peigen.c): Add rule to generate from peXXigen.c.
3307 (pepigen.c): Ditto.
3308 (pepigen.lo): List dependencies for pepigen.lo.
3309
33102001-02-13 Alan Modra <alan@linuxcare.com.au>
3311
3312 * elf32-hppa.c (elf32_hppa_set_gp): Handle weak $global$. If
3313 $global$ referenced but not defined, set its value here.
3314
33152001-02-09 Bo Thorsen <bo@suse.de>
3316
3317 * elf64-x86-64.c (elf64_x86_64_check_relocs): Set .rela.got section
3318 alignment to 3.
3319 (elf64_x86_64_check_relocs): Write R_X86_64_GOTPCREL GOT entry
3320 and relocation.
3321 (elf64_x86_64_relocate_section): Fix formatting.
3322 (elf64_x86_64_relocate_section): Fix addend for relocation of
3323 R_X86_64_(8|16|32|PC8|PC16|PC32).
3324
33252001-02-12 Jan Hubicka <jh@suse.cz>
3326
3327 * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL.
3328
33292001-02-11 H.J. Lu <hjl@gnu.org>
3330
3331 * elflink.h (elf_bfd_final_link): Use file_align for SYMTAB
3332 alignment.
3333
33342001-02-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3335
3336 * elf32-mips.c (mips_elf_create_dynamic_relocation): Undo patch
3337 from 2000-10-13. Do not add the symbol's value for R_MIPS_REL32
3338 relocations against dynsym symbols.
3339
3340 * elf32-mips.c (elf_mips_howto_table): Fix the comment on
3341 the R_MIPS_26 relocation.
3342 (mips_elf_calculate_relocation): Use (p + 4) instead of p for
3343 the R_MIPS_26 relocation.
3344 (mips_elf_perform_relocation): Fix the comment on the R_MIPS16_26
3345 relocation.
3346 * elf64-mips.c (mips_elf64_howto_table_rel): Fix the comment on
3347 the R_MIPS_26 relocation.
3348 (mips_elf64_howto_table_rela): Likewise.
3349
3350 * elf32-mips.c (struct mips_elf_link_hash_entry): Added no_fn_stub
3351 member to mark symbols that have non-CALL relocations against
3352 them.
3353 (mips_elf_link_hash_newfunc): Initialize no_fn_stub.
3354 (mips_elf_calculate_relocation): Handle R_MIPS_CALL16 like
3355 R_MIPS_GOT16.
3356 (_bfd_mips_elf_check_relocs): Set no_fn_stub for a symbol if a
3357 non-CALL relocation against it is encountered.
3358 (_bfd_mips_elf_copy_indirect_symbol): Merge no_fn_stub as well.
3359 (_bfd_mips_elf_adjust_dynamic_symbol): Only create a stub if
3360 no_fn_stub is not set.
3361
3362 * elf32-mips.c (mips_elf_output_extsym): Get the output section
3363 information from the real symbol for indirect ones.
3364 Check no_fn_stub to find out if a symbol has a function stub
3365 indeed.
3366
33672001-02-11 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3368
3369 * Makefile.am (stamp-lib): ranlib the libbfd.a in the build directory.
3370 * Makefile.in: Regenerate.
3371
33722001-02-09 David Mosberger <davidm@hpl.hp.com>
3373
3374 * elfxx-ia64.c (is_unwind_section_name): New function. Returns
3375 true if section name is an unwind table section name.
3376 (elfNN_ia64_additional_program_headers): Count each unwind section
3377 separately.
3378 (elfNN_ia64_modify_segment_map): Install one unwind program header
3379 for each unwind separate section. Note: normally the linker
3380 script merges the unwind sections that go into a single segment,
3381 so this still generates at most one unwind program header per
3382 segment.
3383
3384 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section
3385 name for SHT_IA_64_UNWIND, not just .IA_64.unwind.
3386 (elfNN_ia64_fake_sections): Mark sections with names that start
3387 with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64
3388 unwind section.
3389
3390 * elfxx-ia64.c (elfNN_ia64_final_write_processing): New function.
3391 Use it to make sh_info in unwind section point to the text section
3392 it applies to.
3393
33942001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
3395
3396 * Makefile.am: Add linux target for S/390.
3397 * archures.c: Likewise.
3398 * bfd-in2.h: Likewise.
3399 * config.bfd: Likewise.
3400 * configure.in: Likewise.
3401 * elf.c: Likewise.
3402 * libbfd.h: Likewise.
3403 * targets.c: Likewise.
3404 * cpu-s390.c: New file.
3405 * elf32-s390.c: New file.
3406 * elf64-s390.c: New file.
3407
34082001-02-09 Nick Clifton <nickc@redhat.com>
3409
3410 * peigen.c (_bfd_pe_get_symbol_info): Suppress addition of
3411 ImageBase. This has already been done by coff_swap_hdr_in.
3412
34132001-02-09 Jakub Jelinek <jakub@redhat.com>
3414
3415 * elf64-sparc.c (sparc64_elf_copy_private_bfd_data): New function.
3416
34172001-02-09 Jakub Jelinek <jakub@redhat.com>
3418
3419 * elf64-sparc.c (sparc64_elf_check_relocs): Don't trust reloc_count.
3420 (sparc64_elf_relocate_section): Likewise.
3421
34222001-02-09 Mark Kettenis <kettenis@gnu.org>
3423
3424 * elf32-sparc.c (_bfd_sparc_elf_howto_table): Treat R_SPARC_UA32
3425 similar to R_SPARC_32.
3426 * elf64-sparc.c (sparc64_elf_howto_table): Likewise.
3427
34282001-02-08 H.J. Lu <hjl@gnu.org>
3429
3430 * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_PC32
3431 relocation entries for weak definitions when building DSO with
3432 -Bsymbolic.
3433
34342001-02-08 Richard Henderson <rth@redhat.com>
3435
3436 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Respect weakness
3437 before visibility. Locally defined protected symbols are not
3438 dynamic.
3439
34402001-02-08 Geoffrey Keating <geoffk@redhat.com>
3441
3442 * config.bfd: Enable coff64 for rs6000-*. Patch from
3443 <hzoli@austin.ibm.com>.
3444
34452001-02-07 Mark Elbrecht <snowball3@bigfoot.com>
3446
3447 * coffgen.c (coff_find_nearest_line): If stabs info is successfully
3448 found, do not attempt to find dwarf2 info before returning.
3449
34502001-02-07 Jakub Jelinek <jakub@redhat.com>
3451
3452 * elflink.h (is_global_symbol_definition): Rename to
3453 is_global_data_symbol_definition and have it reject function
3454 symbols.
3455 (elf_link_is_defined_archive_symbol): Use renamed function.
3456
34572001-02-07 Todd Vierling <tv@wasabisystems.com>
3458
3459 * libbfd-in.h (bfd_target_vector): Change extern array to pointer.
3460 * libbfd.h (bfd_target_vector): Likewise.
3461 * targets.c (bfd_target_vector): Rename to _bfd_target_vector and
3462 make static; create pointer reference named bfd_target_vector.
3463 (_bfd_target_vector_entries): Calculate this based on the array
3464 typed _bfd_target_vector.
3465
34662001-02-06 H.J. Lu <hjl@gnu.org>
3467
3468 * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Only hidden and
3469 internal symbols are not dynamic.
3470 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
3471
34722001-02-06 Nick Clifton <nickc@redhat.com>
3473
3474 * Makefile.am (BFD64_BACKENDS_CFILES): Remove elf64-ia64.c, so
3475 that it will not be pulled into the list of files that make up
3476 po/POTFILES.in.
3477 * Makefile.in: Regenerate.
3478 * po/bfd.pot: Regenerate.
3479
34802001-02-06 H.J. Lu <hjl@gnu.org>
3481
3482 * peicode.h (coff_swap_filehdr_in): Remove the e_magic
3483 checking.
3484 (pe_bfd_object_p): Rewrite with external_PEI_DOS_hdr and
3485 external_PEI_IMAGE_hdr.
3486
34872001-02-06 Kazu Hirata <kazu@hxi.com>
3488
3489 * elf-m10200.c: Fix formatting.
3490
34912001-02-04 Nick Clifton <nickc@redhat.com>
3492
3493 * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC
3494 rel, it will be handled later on.
3495
34962001-02-02 Fred Fish <fnf@ninemoons.com>
3497
3498 * Makefile.in: Fix typo.
3499
35002001-02-01 Kazu Hirata <kazu@hxi.com>
3501
3502 * elf-m10300.c: Fix formatting.
3503
35042001-01-30 Alan Modra <alan@linuxcare.com.au>
3505
3506 * elf64-hppa.c (elf64_hppa_elf_get_symbol_type): New function.
3507 (elf_backend_get_symbol_type): Define.
3508 (elf64_hppa_object_p): Set architecture and machine from elf
3509 header flags.
3510
35112001-01-30 Curtis L. Janssen <cljanss@ca.sandia.gov>
3512
3513 * elf64-alpha.c (elf64_alpha_find_nearest_line): Query dwarf2
3514 before mdebug.
3515
35162001-01-26 Richard Henderson <rth@redhat.com>
3517
3518 * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Return false
3519 for non-default visibility.
3520 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise, but
3521 delete ugly macro and replace with pretty function.
3522
35232001-01-25 Mark Elbrecht <snowball3@bigfoot.com>
3524
3525 * coff-go32.c: Update copyright.
3526 * coff-stgo32.c: Likewise.
3527 * coff-go32.c (COFF_LONG_FILENAMES): Define.
3528 * coff-stgo32.c (COFF_LONG_FILENAMES): Likewise.
3529 * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Remove .bss entry.
3530 * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
3531
35322001-01-25 Kazu Hirata <kazu@hxi.com>
3533
3534 * bfd-in2.h: Rebuild.
3535 * libbfd.h: Likewise.
3536
35372001-01-23 H.J. Lu <hjl@gnu.org>
3538
3539 * bfd-in2.h: Rebuild.
3540
35412001-01-23 H.J. Lu <hjl@gnu.org>
3542
3543 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_buf)
3544 is NULL or PRIV(vms_rec) is outside of the buffer.
3545
35462001-01-23 Kazu Hirata <kazu@hxi.com>
3547
3548 * coff64-rs6000.c: Fix formatting.
3549 * coff-arm.c: Likewise.
3550 * coffgen.c: Likewise.
3551 * cofflink.c: Likewise.
3552 * coff-mcore.c: Likewise.
3553 * coff-mips.c: Likewise.
3554 * coff-pmac.c: Likewise.
3555 * coff-ppc.c: Likewise.
3556 * coff-rs6000.c: Likewise.
3557 * elf32.c: Likewise.
3558 * elf32-fr30.c: Likewise.
3559 * elf32-i370.c: Likewise.
3560 * elf32-i860.c: Likewise.
3561 * elf32-m32r.c: Likewise.
3562 * elf32-m68k.c: Likewise.
3563 * elf32-mcore.c: Likewise.
3564 * elf32-ppc.c: Likewise.
3565 * elf32-sh.c: Likewise.
3566 * elf32-v850.c: Likewise.
3567 * elf64-alpha.c: Likewise.
3568 * elf64-sparc.c: Likewise.
3569 * elflink.c: Likewise.
3570 * elflink.h: Likewise.
3571 * elf-m10200.c: Likewise.
3572 * elf-m10300.c: Likewise.
3573 * elfxx-ia64.c: Likewise.
3574
3575 * aoutx.h: Fix formatting.
3576 * bfd.c: Likewise.
3577 * bfd-in2.h: Likewise.
3578 * bfd-in.h: Likewise.
3579 * cpu-i386.c: Likewise.
3580 * cpu-m68hc11.c: Likewise.
3581 * dwarf2.c: Likewise.
3582 * elf64-x86-64.c: Likewise.
3583 * format.c: Likewise.
3584 * freebsd.h: Likewise.
3585 * hash.c: Likewise.
3586 * hp300hpux.c: Likewise.
3587 * hppabsd-core.c: Likewise.
3588 * hpux-core.c: Likewise.
3589
35902001-01-22 Bo Thorsen <bo@suse.de>
3591
3592 * elf64-x86-64.c: Added PIC support for X86-64.
3593 (elf64_x86_64_link_hash_newfunc): Function added.
3594 (elf64_x86_64_link_hash_table_create): Likewise.
3595 (elf64_x86_64_check_relocs): Likewise.
3596 (elf64_x86_64_gc_mark_hook): Likewise.
3597 (elf64_x86_64_gc_sweep_hook): Likewise.
3598 (elf64_x86_64_adjust_dynamic_symbol): Likewise.
3599 (elf64_x86_64_size_dynamic_sections): Likewise.
3600 (elf64_x86_64_discard_copies): Likewise.
3601 (elf64_x86_64_finish_dynamic_symbol): Likewise.
3602 (elf64_x86_64_finish_dynamic_sections): Likewise.
3603 (elf64_x86_64_relocate_section): Add relocation of PIC sections.
3604
36052001-01-21 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3606
3607 * Makefile.am (install-data-local): Make use of $(DESTDIR).
3608 * Makefile.in: Regenerate.
3609
36102001-01-21 Kazu Hirata <kazu@hxi.com>
3611
3612 * coff-a29k.c: Fix formatting.
3613
36142001-01-19 H.J. Lu <hjl@gnu.org>
3615
3616 * elf32-i386.c (elf_i386_check_relocs): Report files with bad
3617 relocation section names.
3618 (elf_i386_relocate_section): Report files with bad relocation
3619 section names and return false.
3620
36212001-01-17 Bo Thorsen <bo@suse.de>
3622
3623 * targets.c: Alphabetize list of xvecs.
3624
36252001-01-14 Alan Modra <alan@linuxcare.com.au>
3626
3627 * config.bfd: Add linux target variant for elfxx-hppa.
3628 * configure.in: Recognize bfd_elf32_hppa_linux_vec and
3629 bfd_elf64_hppa_linux_vec.
3630 * configure: Regenerate.
3631 * elf64-hppa.c: Include elf64-target.h again to support linux
3632 target variant.
3633 (elf64_hppa_post_process_headers): Set ELFOSABI_LINUX for linux.
3634 * elf32-hppa.c: Include elf32-target.h again to support linux
3635 target variant.
3636 (elf32_hppa_post_process_headers): New function.
3637 (elf_backend_post_process_headers): Define.
3638 * targets.c (bfd_target_vector): Add bfd_elf64_hppa_linux_vec and
3639 bfd_elf32_hppa_linux_vec.
3640
3641 * elf32-hppa.c (elf32_hppa_link_hash_table): Add text_segment_base,
3642 and data_segment_base fields.
3643 (elf32_hppa_link_hash_table_create ): Init them.
3644 (elf32_hppa_check_relocs): Update comments.
3645 (hppa_record_segment_addr): New function.
3646 (elf32_hppa_relocate_section): Call it.
3647 (final_link_relocate): Handle R_PARISC_SEGREL32.
3648 (elf32_hppa_final_link): New function.
3649 (bfd_elf32_bfd_final_link): Define to call it.
3650 (hppa_unwind_entry_compare): New function.
3651 * cache.c (bfd_open_file): Create files in write+read mode.
3652
3653 * elf-hppa.h (elf_hppa_howto_table): Set bitsize value for
3654 SEGREL32 and numerous other relocs. Change duplicate
3655 R_PARISC_NONE relocs to R_PARISC_UNIMPLEMENTED.
3656
3657 * opncls.c (bfd_fdopenr): Add parens like the comment says around
3658 O_ACCMODE.
3659
3660 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Don't create
3661 .plt entries for DT_INIT and DT_FINI.
3662 (elf32_hppa_finish_dynamic_sections): Remove special handling of
3663 DT_INIT and DT_FINI.
3664
3665 * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Use 16-bit
3666 offsets for stub .plt access if wide mode. Check offset in range.
3667
36682001-01-13 Nick Clifton <nickc@redhat.com>
3669
3670 * elf32-fr30.c (fr30_elf_howto_table): Remove spurious blank
3671 line.
3672
3673 * coffcode.h (coff_canonicalize_reloc): Remove spurious blank
3674 line.
3675
36762001-01-12 Alan Modra <alan@linuxcare.com.au>
3677
3678 * configure.in ([bfd_elf64_x86_64_vec]): Set target64.
3679 * configure: Regenerate.
3680
36812001-01-11 Peter Targett <peter.targett@arccores.com>
3682
3683 * bfd-in2.h (bfd_architecture): Add bfd_mach_arc_5,
3684 bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8 for ARC variants.
3685 * cpu-arc.c (arch_info_struct): Add entries for variants.
3686 (bfd_arc_arch) Set default to bfd_mach_arc_5.
3687 (arc_get_mach) Don't assume machine names prefixed arc- before
3688 testing.
3689 * elf32-arc.c (arc_elf_object_p): Set machine number based on new
3690 selections.
3691 (arc_elf_final_write_processing) Likewise.
3692 (ELF_MACHINE_CODE) Use EM_ARC.
3693
36942001-01-10 Nick Clifton <nickc@redhat.com>
3695
3696 * coff-arm.c (LOCAL_LABEL_PREFIX): Change definition to "".
3697
36982001-01-07 Philip Blundell <philb@gnu.org>
3699
3700 * README: Replace `bug-gnu-utils@gnu.org' with
3701 `bug-binutils@gnu.org'.
3702
37032001-01-04 Kazu Hirata <kazu@hxi.com>
3704
3705 * som.c: Fix formatting.
3706
37072001-01-03 Kazu Hirata <kazu@hxi.com>
3708
3709 * ecoffswap.h: Fix formatting.
3710 * elf-bfd.h: Likewise.
3711 * elfarm-nabi.c: Likewise.
3712 * elfarm-oabi.c: Likewise.
3713 * elfcode.h: Likewise.
3714 * elfcore.h: Likewise.
3715 * elflink.c: Likewise.
3716 * elflink.h: Likewise.
3717 * elfxx-ia64.c: Likewise.
3718 * elfxx-target.h: Likewise.
3719 * libbfd.c: Likewise
3720 * linker.c: Likewise.
3721 * lynx-core.c: Likewise.
3722
37232001-01-02 Kazu Hirata <kazu@hxi.com>
3724
3725 * pc532-mach.c: Fix formatting.
3726 * pe-arm.c: Likewise.
3727 * pe-i386.c: Likewise.
3728 * pe-mips.c: Likewise.
3729 * pe-ppc.c: Likewise.
3730 * pe-sh.c: Likewise.
3731 * pei-mips.c: Likewise.
3732 * pei-sh.c: Likewise.
3733 * peicode.h: Likewise.
3734 * ppcboot.c: Likewise.
3735 * ptrace-core.c: Likewise.
3736
37372001-01-01 Kazu Hirata <kazu@hxi.com>
3738
3739 * reloc.c: Fix formatting.
3740 * riscix.c: Likewise.
3741 * rs6000-core.c: Likewise.
3742 * xcoff-target.h: Likewise.
3743
37442000-12-29 Hans-Peter Nilsson <hp@bitrange.com>
3745
3746 * elfcode.h (elf_object_p): Also restore the bfd mach field on
3747 error, by calling bfd_default_set_arch_mach with incoming
3748 values.
3749
37502000-12-26 Kazu Hirata <kazu@hxi.com>
3751
3752 * vaxnetbsd.c: Fix formatting.
3753 * versados.c: Likewise.
3754 * vms-gsd.c: Likewise.
3755 * vms-hdr.c: Likewise.
3756 * vms-misc.c: Likewise.
3757
37582000-12-25 Alexandre Oliva <aoliva@redhat.com>
3759
3760 * archive.c (coff_write_armap): Don't write more than symbol_count
3761 `archive_member_file_ptr's.
3762
37632000-12-25 Kazu Hirata <kazu@hxi.com>
3764
3765 * vms-tir.c: Fix formatting.
3766
37672000-12-23 Kazu Hirata <kazu@hxi.com>
3768
3769 * vms.c: Fix formatting.
3770 * vms.h: Likewise.
3771
37722000-12-21 Santeri Paavolainen <santtu@ssh.com>
3773
3774 * vms-hdr.c: Include alloca.h if HAVE_ALLOCA_H is defined.
3775
3776 * peicode.h (pe_ILF_object_p): Add const to import of TARGET_LITTLE_SYM.
3777
3778 * elf32-m32r.c (m32r_elf_generic_reloc): Add cast to avoid (void *)
3779 arithmetic.
3780
3781 * elf32-fr30.c: Add casts to avoid (void *) arithmetic.
3782
3783 * coffcode.h (styp_to_sec_flags): Add empty statement after label.
3784
37852000-12-21 Richard Sandiford <rsandifo@redhat.com>
3786
3787 * libbfd.c (bfd_get_bits): Added
3788 (bfd_put_bits): Likewise
3789 * bfd-in.h: Declared the above.
3790 * bfd-in2.h: Regenerated.
3791
37922000-12-20 Kazu Hirata <kazu@hxi.com>
3793
3794 * targets.c: Fix formatting.
3795 * tekhex.c: Likewise.
3796 * trad-core.c: Likewise.
3797
37982000-12-19 Kazu Hirata <kazu@hxi.com>
3799
3800 * sco5-core.c: Fix formatting.
3801 * section.c: Likewise.
3802 * sparclinux.c: Likewise.
3803 * sparclynx.c: Likewise.
3804 * sparcnetbsd.c: Likewise.
3805 * srec.c: Likewise.
3806 * stabs.c: Likewise.
3807 * stab-syms.c: Likewise.
3808 * sunos.c: Likewise.
3809 * syms.c: Likewise.
3810 * sysdep.h: Likewise.
3811
38122000-12-18 Nick Clifton <nickc@redhat.com>
3813
3814 * coff-arm.c (EXTRA_S_FLAGS): Only define if not already
3815 defined.
3816 * epoc-pe-arm.c (EXTRA_S_FLAGS): Define.
3817 * epoc-pei-arm.c (EXTRA_S_FLAGS): Define.
3818
38192000-12-18 Nick Clifton <nickc@redhat.com>
3820
3821 * vms-misc.c (_bfd_vms_get_record): Add default case to
3822 file_format switch.
3823
38242000-12-15 Miloslav Trmac <mitr@volny.cz>
3825
3826 * elfcore.h (elf_core_file_p): Move to the start of the program
3827 headers before attempting to read them.
3828
38292000-12-14 Kazu Hirata <kazu@hxi.com>
3830
3831 * peigen.c: Fix formatting.
3832 * som.c: Likewise.
3833 * som.h: Likewise.
3834
38352000-12-13 Kazu Hirata <kazu@hxi.com>
3836
3837 * peigen.c: Fix formatting.
3838
38392000-12-12 Jim Wilson <wilson@redhat.com>
3840
3841 * elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *.
3842
38432000-12-08 Mark Salter <msalter@redhat.com>
3844
3845 * binary.c (binary_set_section_contents): Ignore sections
3846 with zero size.
3847
38482000-12-12 Kazu Hirata <kazu@hxi.com>
3849
3850 * m68klinux.c: Fix formatting.
3851 * m68knetbsd.c: Likewise.
3852 * mipsbsd.c: Likewise.
3853 * netbsd-core.c: Likewise.
3854 * netbsd.h: Likewise.
3855 * newsos3.c: Likewise.
3856 * nlm32-alpha.c: Likewise.
3857 * nlm32-i386.c: Likewise.
3858 * nlm32-ppc.c: Likewise.
3859 * nlm32-sparc.c: Likewise.
3860 * nlmcode.h: Likewise.
3861 * nlmswap.h: Likewise.
3862 * nlm-target.h: Likewise.
3863 * ns32knetbsd.c: Likewise.
3864
38652000-12-10 Fred Fish <fnf@be.com>
3866
3867 * elflink.h (elf_link_output_extsym): Don't complain about undefined
3868 symbols in shared objects if allow_shlib_undefined is true.
3869
38702000-12-12 Nick Clifton <nickc@redhat.com>
3871
3872 * cpu-sh.c: Fix formattng.
3873 * elf.c: Fix formattng.
3874 * elf32-mips.c: Fix formattng.
3875 * elf32-sh.c: Fix formattng.
3876 * elf64-alpha.c: Fix formattng.
3877
38782000-12-09 Nick Clifton <nickc@redhat.com>
3879
3880 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Pass
3881 dwarf2_find_line_info as last parameter to invocation of
3882 _bfd_dwarf2_find_nearest_line.
3883 * elf32-arm.h (elf32_arm_find_nearest_line): Pass
3884 dwarf2_find_line_info as last parameter to invocation of
3885 _bfd_dwarf2_find_nearest_line.
3886
38872000-12-08 Mark Elbrecht <snowball3@bigfoot.com>
3888
3889 * Makefile.am (BFD32_BACKENDS): Move dwarf2.lo from here...
3890 (BFD_LIBS): ...to here.
3891 (BFD32_BACKENDS_CFILES): Move dwarf2.c from here...
3892 (BFD_LIBS_CFILES): ...to here.
3893 * Makefile.in: Regenerate.
3894 * configure.in: Remove dwarf.lo from the elf shell variable.
3895 * configure: Regenerate.
3896 * libcoff-in.h (coff_tdata): Add pointer dwarf2_find_line_info.
3897 * libcoff.h: Regenerate.
3898 * coffgen.c (coff_find_nearest_line): Call
3899 _bfd_dwarf2_find_nearest_line.
3900 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add parameter. Update
3901 accordingly.
3902 (read_abbrevs): Likewise
3903 (decode_line_info): Likewise.
3904 (parse_comp_unit): Likewise.
3905 (comp_unit_find_nearest_line): Likewise.
3906 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
3907 * libbfd.h: Regenerate.
3908 * elf.c (_bfd_elf_find_nearest_line): Update call.
3909 * elf-bfd.h (elf_obj_tdata): Change dwarf2_find_line_info to type PTR.
3910 * dwarf2.c (concat_filename): Use IS_ABSOLUTE_PATH.
3911 * coffcode.h (STYP_XCOFF_DEBUG, STYP_DEBUG_INFO): New macros.
3912 (sec_to_styp_flags): Use them. Handle DWARF2 sections.
3913 (styp_to_sec_flags): Handle DWARF2 sections.
3914 * elf32-arm.h (elf32_arm_find_nearest_line): Add parameter to call
3915 to _bfd_find_nearest_line.
3916 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Add parameter to
3917 call to _bfd_find_nearest_line.
3918
39192000-12-08 Kazu Hirata <kazu@hxi.com>
3920
3921 * coffgen.c: Fix formatting.
3922 * elf-m10300.c: Likewise.
3923 * elf32-i386.c: Likewise.
3924 * elf32-i960.c: Likewise.
3925 * elf32-m68k.c: Likewise.
3926 * elf32-mcore.c: Likewise.
3927 * elf32-ppc.c: Likewise.
3928 * elf32-sh.c: Likewise.
3929 * elf32-sparc.c: Likewise.
3930 * elf32-v850.c: Likewise.
3931 * elf64-alpha.c: Likewise.
3932 * elf64-hppa.c: Likewise.
3933 * elf64-mips.c: Likewise.
3934 * elf64-sparc.c: Likewise.
3935
39362000-12-07 Kazu Hirata <kazu@hxi.com>
3937
3938 * elf32-ppc.c: Fix formatting.
3939 * elf64-x86-64.c: Likewise.
3940
39412000-12-06 Ulf Carlsson <ulfc@engr.sgi.com>
3942
3943 From Ralf Baechle <ralf@gnu.org>
3944
3945 * elf32-mips.c (elf32_mips_merge_private_bfd_data): Always permit
3946 BFDs containing no sections or empty .text, .data or .bss sections
3947 to be merged, regardless of their flags.
3948
39492000-12-06 Kazu Hirata <kazu@hxi.com>
3950
3951 * elf32-m32r.c: Fix formatting.
3952 * elf32-m68hc11.c: Likewise.
3953 * elf32-m68hc12.c: Likewise.
3954 * elf32-m68k.c: Likewise.
3955 * elf32-mcore.c: Likewise.
3956 * elf32-pj.c: Likewise.
3957 * elf32-ppc.c: Likewise.
3958
39592000-12-05 Kazu Hirata <kazu@hxi.com>
3960
3961 * elf32-fr30.c: Fix formatting.
3962 * elf32-hppa.c: Likewise.
3963 * elf32-i370.c: Likewise.
3964 * elf32-i386.c: Likewise.
3965 * elf32-i860.c: Likewise.
3966 * elf32-i960.c: Likewise.
3967
39682000-12-03 Kazu Hirata <kazu@hxi.com>
3969
3970 * elf32-arm.h: Fix formatting.
3971 * elf32-avr.c: Likewise.
3972 * elf32-cris.c: Likewise.
3973 * elf32-d10v.c: Likewise.
3974 * elf32-d30v.c: Likewise.
3975 * elf-hppa.h: Likewise.
3976 * elf-m10200.c: Likewise.
3977 * elf-m10300.c: Likewise.
3978
39792000-12-01 Chris Demetriou <cgd@sibyte.com>
3980
3981 * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mips32 and
3982 bfd_mach_mips32_4k. Update FIXME comment.
3983 * archures.c (bfd_mach_mips32): New constant.
3984 (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to
3985 the latter, renumber it.
3986 * bfd-in2.h (bfd_mach_mips32): New constant.
3987 (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to
3988 the latter, renumber it.
3989 * cpu-mips.c (I_mips32): New constant.
3990 (I_mips4K, I_mips32_4k): Rename the former to the latter.
3991 (arch_info_struct): Add bfd_mach_mips32 entry, replace
3992 bfd_mach_mips4K entry with bfd_mach_mips32_4k entry.
3993 * elf32-mips.c (elf_mips_isa): Add E_MIPS_ARCH_32 case.
3994 (elf_mips_mach): Likewise. Also, replace E_MIPS_MACH_MIPS32
3995 with E_MIPS_MACH_MIPS32_4K.
3996 (_bfd_mips_elf_final_write_processing): Replace
3997 bfd_mach_mips4K with bfd_mach_mips32_4k case, add
3998 bfd_mach_mips32 case.
3999 (_bfd_mips_elf_merge_private_bfd_data): Generalize ISA mixing
4000 comparison with support for MIPS32.
4001 (_bfd_mips_elf_print_private_bfd_data): Print ISA name for
4002 MIPS32.
4003
4004 * aoutx.h (NAME(aout,machine_type)): Add cases for
4005 bfd_mach_mips5 and bfd_mach_mips64.
4006 * archures.c (bfd_mach_mips5, bfd_mach_mips64): New constants.
4007 * bfd-in2.h (bfd_mach_mips5, bfd_mach_mips64): Likewise.
4008 * cpu_mips.c (I_mips5, I_mips64): New definitions.
4009 (arch_info_struct): Add entries for bfd_mach_mips5 and
4010 bfd_mach_mips64.
4011 * elf32-mips.c (elf_mips_isa, elf_mips_mach,
4012 _bfd_mips_elf_print_private_bfd_data): Add cases for
4013 E_MIPS_ARCH_5 and E_MIPS_ARCH_64.
4014 (_bfd_mips_elf_final_write_processing): Add cases for
4015 bfd_mach_mips5 and bfd_mach_mips64.
4016
4017 * aoutx.h (NAME(aout,machine_type)): Add a
4018 bfd_mach_mips_sb1 case.
4019 * archures.c (bfd_mach_mips_sb1): New constant.
4020 * bfd-in2.h (bfd_mach_mips_sb1): New constant.
4021 * cpu-mips.c (I_sb1): New constant.
4022 (arch_info_struct): Add entry for bfd_mach_mips_sb1.
4023 * elf32-mips.c (elf_mips_mach): Add case for
4024 E_MIPS_MACH_SB1.
4025 (_bfd_mips_elf_final_write_processing): Add case for
4026 bfd_mach_mips_sb1.
4027
40282000-12-01 Joel Sherrill <joel@OARcorp.com>
4029
4030 * config.bfd (arm-*-rtems*, a29k-*rtems*): New targets.
4031 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
4032 (sparc*-*-rtems*): Switched from a.out to ELF.
4033
40342000-11-30 Jan Hubicka <jh@suse.cz>
4035
4036 * Makefile.am (BFD64_BACKENDS): Add elf64-x86-64.lo
4037 BFD64_BACKENDS_CFILES): Add elf64-x86-64.c
4038 (elf64-x86-64.lo): Add dependencies.
4039 * archures.c (DESCRIPTION): Add bfd_mach_x86_64,
4040 bfd_mach_x86_64_intel_syntax.
4041 * elf.c (prep_headers): Use EM_x86_64 for 64bit output.
4042 * config.bfd (x86_64): Add.
4043 * configure.in: Add support for bfd_elf64_x86_64_vec.
4044 * cpu-i386.c (bfd_x86_64_arch_intel_syntax, bfd_x86_64_arch): Add.
4045 (bfd_i386_arch, i8086_ar): Link in.
4046 * elf64-x86-64.c: New file.
4047 * reloc.c (ENUMDOC): Add BFD_RELOC_X86_64*.
4048 * targets.c (bfd_elf64_x86_64_vec): Add.
4049 (bfd_target_vect): Add bfd_elf64_x86_64_vec.
4050
40512000-11-30 Kazu Hirata <kazu@hxi.com>
4052
4053 * xcofflink.c: Fix formatting.
4054
40552000-11-28 Kazu Hirata <kazu@hxi.com>
4056
4057 * aoutx.h: Fix formatting.
4058 * bfd-in.h: Likewise.
4059 * bfd-in2.h: Likewise.
4060 * cache.c: Likewise.
4061 * cisco-core.c: Likewise.
4062 * coff64-rs6000.c: Likewise.
4063 * coffcode.h: Likewise.
4064 * coffswap.h: Likewise.
4065 * corefile.c: Likewise.
4066 * elf32-mips.c: Likewise.
4067
40682000-11-27 Kazu Hirata <kazu@hxi.com>
4069
4070 * aout-adobe.c: Fix formatting.
4071 * coff64-rs6000.c: Likewise.
4072 * coffgen.c: Likewise.
4073 * cofflink.c: Likewise.
4074
40752000-11-27 Philip Blundell <pb@futuretv.com>
4076
4077 * libcoff-in.h (coff_tdata): Add `strings_written' flag.
4078 (obj_coff_strings_written): New accessor macro for above.
4079 * libcoff.h: Regenerate.
4080 * cofflink.c (_bfd_coff_final_link): Say that we wrote the
4081 strings.
4082 * coffcode.h (coff_write_object_contents): No need to write out
4083 the string table if it's already been done.
4084
40852000-11-22 Philip Blundell <pb@futuretv.com>
4086
4087 * cofflink.c (_bfd_coff_generic_relocate_section): Don't object to
4088 weak undefined symbols.
4089
40902000-11-24 Nick Clifton <nickc@redhat.com>
4091
4092 * archures.c (bfd_mach_arm_5TE): Define.
4093 (bfd_mach_arm+XScale): Define.
4094 * bfd-in2.h: Regenerate.
4095
4096 * coff-arm.c (coff_arm_reloc_type_lookup): Accept
4097 BFD_RELOC_ARM_PCREL_BLX.
4098
4099 * coffcode.h (coff_set_flags): Set flags for 5t, 5te and
4100 XScale machine numbers.
4101
4102 * config.bfd (xscale-elf): Add target.
4103 (xscale-coff): Add target.
4104
4105 * cpu-arm.c: Add xscale machine name.
4106 Add v5t, v5te and XScale machine numbers.
4107
41082000-11-23 Kazu Hirata <kazu@hxi.com>
4109
4110 * aix386-core.c: Fix formatting.
4111
41122000-11-22 Jim Wilson <wilson@redhat.com>
4113
4114 * coff-ia64.c (howto_table): Use EMPTY_HOWTO.
4115 (in_reloc_p): Add ATTRIBUTE_UNUSED to unused parameters.
4116 * cpu-ia64-opc.c (ins_rsvd, ext_rsvd, ins_const, ext_const): Likewise.
4117 (ins_imms_scaled): Initialize sign_bit at function entry.
4118 (elf64_ia64_operands): Add missing initializers.
4119 * elfxx-ia64.c (elfNN_ia64_reloc, elfNN_ia64_reloc_type_lookup,
4120 elfNN_ia64_info_to_howto, elfNN_ia64_fake_sections,
4121 elfNN_ia64_add_symbol_hook, elfNN_ia64_is_local_label_name,
4122 elfNN_ia64_local_hash_table_init, get_fptr, get_pltoff,
4123 elfNN_ia64_adjust_dynamic_symbol): Add ATTRIBUTE_UNUSED for unused
4124 parameters.
4125 (elfNN_ia64_info_to_howto): Initialize free_relocs, free_contents,
4126 and free_extsyms at function entry.
4127 (elfNN_add_symbol_hook): Add unsigned cast to bfd_get_gp_size result.
4128 (elfNN_ia64_create_dynamic_sections): Delete unused local h.
4129 (get_got): Delete unused local srel.
4130 (elfNN_ia64_check_relocs): Initialize dynrel_type when declared.
4131 (elfNN_ia64_relocate_section): Delete unused local dynindx.
4132
41332000-11-21 Kazu Hirata <kazu@hxi.com>
4134
4135 * coff-a29k.c: Fix formatting.
4136 * coff-h8500.c: Likewise.
4137 * coff-i960.c: Likewise.
4138 * coff-ppc.c: Likewise.
4139 * coff-rs6000.c: Likewise.
4140 * coff-stgo32.c: Likewise.
4141 * coff-tic54x.c: Likewise.
4142 * coff-w65.c: Likewise.
4143 * cpu-h8500.c: Likewise.
4144 * cpu-hppa.c: Likewise.
4145 * cpu-ns32k.c: Likewise.
4146 * ecoff.c: Likewise.
4147 * ecofflink.c: Likewise.
4148
41492000-11-21 Nick Clifton <nickc@redhat.com>
4150
4151 * elf32-sh.c (sh_elf_reloc_loop): Fix compile time warning, and
4152 remove possibility of infinite loop.
4153
41542000-11-20 Kazu Hirata <kazu@hxi.com>
4155
4156 * aix386-core.c: Fix formatting.
4157 * aout-adobe.c: Likewise.
4158 * aout-arm.c: Likewise.
4159 * aout-encap.c: Likewise.
4160 * aout-ns32k.c: Likewise.
4161 * aout-target.h: Likewise.
4162 * aout-tic30.c: Likewise.
4163 * aoutf1.h: Likewise.
4164 * aoutx.h: Likewise.
4165 * archive.c: Likewise.
4166 * bfd-in.h: Likewise.
4167 * bfd-in2.h: Likewise.
4168 * bfd.c: Likewise.
4169 * bout.c: Likewise.
4170
41712000-11-17 H.J. Lu <hjl@gnu.org>
4172
4173 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Don't create
4174 pltoff entries for DT_INIT and DT_FINI.
4175 (elfNN_ia64_final_link): Don't set DT_INIT/FINI entries.
4176 (elfNN_ia64_finish_dynamic_sections): Don't fill in DT_INIT/FINI
4177 entries.
4178
41792000-11-16 Richard Henderson <rth@redhat.com>
4180
4181 * elfxx-ia64.c (elfNN_ia64_check_relocs): Handle IPLT relocs.
4182 (allocate_dynrel_entries): Likewise.
4183 (elfNN_ia64_relocate_section): Likewise. Set REL addends correctly.
4184 (set_pltoff_entry): Likewise.
4185 (ia64_howto_table): Remove R_IA64_SEGBASE, and R_IA64_EPLT[ML]SB
4186 (elfNN_ia64_reloc_type_lookup): Likewise.
4187 (elfNN_ia64_install_value): Likewise.
4188 (elfNN_ia64_relocate_section): Likewise.
4189 * reloc.c (BFD_RELOC_IA64_SEGBASE): Remove.
4190 (BFD_RELOC_IA64_EPLTMSB, BFD_RELOC_IA64_EPLTLSB): Remove.
4191
41922000-11-16 Kazu Hirata <kazu@hxi.com>
4193
4194 * cpu-a29k.c: Fix formatting.
4195 * cpu-alpha.c: Likewise.
4196 * cpu-arm.c: Likewise.
4197 * cpu-avr.c: Likewise.
4198 * cpu-d10v.c: Likewise.
4199 * cpu-h8500.c: Likewise.
4200 * cpu-hppa.c: Likewise.
4201 * cpu-i370.c: Likewise.
4202 * cpu-i386.c: Likewise.
4203 * cpu-i960.c: Likewise.
4204 * cpu-ia64-opc.c: Likewise.
4205 * cpu-ia64.c: Likewise.
4206 * cpu-m32r.c: Likewise.
4207 * cpu-m68hc11.c: Likewise.
4208 * cpu-m68hc12.c: Likewise.
4209 * cpu-m68k.c: Likewise.
4210 * cpu-m88k.c: Likewise.
4211 * cpu-mips.c: Likewise.
4212 * cpu-ns32k.c: Likewise.
4213 * cpu-pj.c: Likewise.
4214 * cpu-powerpc.c: Likewise.
4215 * cpu-sh.c: Likewise.
4216 * cpu-sparc.c: Likewise.
4217 * cpu-tic54x.c: Likewise.
4218 * cpu-v850.c: Likewise.
4219 * cpu-vax.c: Likewise.
4220 * cpu-w65.c: Likewise.
4221 * cpu-we32k.c: Likewise.
4222 * cpu-z8k.c: Likewise.
4223 * dwarf1.c: Likewise.
4224 * dwarf2.c: Likewise.
4225
42262000-11-15 Kazu Hirata <kazu@hxi.com>
4227
4228 * coff-arm.c: Fix formatting.
4229 * coff-ppc.c: Likewise.
4230 * coff-rs6000.c: Likewise.
4231 * coff-sh.c: Likewise.
4232 * coff-sparc.c: Likewise.
4233 * coff-tic30.c: Likewise.
4234 * coff-tic54x.c: Likewise.
4235 * coff-tic80.c: Likewise.
4236 * coff-w65.c: Likewise.
4237 * coff-we32k.c: Likewise.
4238 * coff-z8k.c: Likewise.
4239
42402000-11-15 Richard Henderson <rth@redhat.com>
4241
4242 * elf64-alpha.c (elf64_alpha_check_relocs): Create the reloc
4243 section with the same ALLOC|LOAD flags as the source section.
4244
42452000-11-14 Jakub Jelinek <jakub@redhat.com>
4246
4247 * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used
4248 by STO_ALPHA constants.
4249
42502000-11-14 Kazu Hirata <kazu@hxi.com>
4251
4252 * coff-pmac.c: Fix formatting.
4253 * coff-ppc.c: Likewise.
4254
42552000-11-13 H.J. Lu <hjl@gnu.org>
4256
4257 * elflink.h (elf_link_add_object_symbols): Also add indirect
4258 symbols for common symbols with the default version.
4259
42602000-11-09 Philip Blundell <pb@futuretv.com>
4261
4262 * section.c (STD_SECTION): Set gc_mark flag.
4263
42642000-11-11 Kazu Hirata <kazu@hxi.com>
4265
4266 * coff-i960.c: Likewise.
4267 * coff-m68k.c: Likewise.
4268 * coff-m88k.c: Likewise.
4269 * coff-mcore.c: Likewise.
4270 * coff-mips.c: Likewise.
4271
42722000-11-11 Bernd Schmidt <bernds@cygnus.co.uk>
4273
4274 * elf32-sh.c (sh_elf_relocate_section): Ignore R_SH_NONE relocs.
4275
42762000-11-10 Kazu Hirata <kazu@hxi.com>
4277
4278 * coff-h8300.c: Fix formatting.
4279 * coff-h8500.c: Likewise.
4280 * coff-i386.c: Likewise.
4281 * coff-i860.c: Likewise.
4282 * coff-i960.c: Likewise.
4283 * coff-ia64.c: Likewise.
4284
42852000-11-09 Kazu Hirata <kazu@hxi.com>
4286
4287 * archive.c: Fix formatting.
4288 * archures.c: Likewise.
4289
42902000-11-07 Richard Henderson <rth@redhat.com>
4291
4292 * elfxx-ia64.c (elf64_ia64_final_link): New local unwind_output_sec.
4293 Set it before bfd_elf64_bfd_final_link call. Use it after the call.
4294 * section.c (bfd_set_section_contents): Call memcpy if
4295 section->contents set and location not equal to contents plus offset.
4296
42972000-11-08 Kazu Hirata <kazu@hxi.com>
4298
4299 * bfd-in.h: Fix formatting.
4300 * bfd-in2.h: Likewise.
4301 * bfd.c: Likewise.
4302 * binary.c: Likewise.
4303 * bout.c: Likewise.
4304 * coff-a29k.c: Likewise.
4305 * coff-alpha.c: Likewise.
4306 * coff-apollo.c: Likewise.
4307 * coff-aux.c: Likewise.
4308
43092000-11-07 Kazu Hirata <kazu@hxi.com>
4310
4311 * aix386-core.c: Fix formatting.
4312 * aoutf1.h: Likewise.
4313 * aoutx.h: Likewise.
4314 * archures.c: Likewise.
4315 * armnetbsd.c: Likewise.
4316
43172000-11-07 Alan Modra <alan@linuxcare.com.au>
4318
4319 * coff-h8300.c (special): Adjust reloc address.
4320
43212000-11-06 Steve Ellcey <sje@cup.hp.com>
4322
4323 * archures.c (bfd_mach_ia64_elf64, bfd_mach_ia64_elf32): Add defines
4324 to differentiate elf32 and elf64 on ia64.
4325 * bfd-in2.h: Regenerate.
4326 * config.bfd: Add target for "ia64*-*-hpux*".
4327 * configure.in: Add bfd_elf32_ia64_big_vec to selvecs switch.
4328 * configure: Regenerate.
4329 * cpu-ia64.c (bfd_ia64_elf32_arch): Add elf32 arch info structure.
4330 * targets.c: Add bfd_target bfd_elf32_ia64_big_vec.
4331
4332 * Makefile.am: Make elf32-ia64.c and elf64-ia64.c derived objects
4333 from elfxx-ia64.c. Add depenency rules for making elf32-ia64.lo.
4334 * Makefile.in: Regnerate.
4335 * elf64-ia64.c: Deleted.
4336 * elfxx-ia64.c: New file, paramaterized version of elf64-ia64.c.
4337
43382000-11-06 Kazu Hirata <kazu@hxi.com>
4339
4340 * aout-adobe.c: Fix formatting.
4341 * aout-arm.c: Likewise.
4342 * aout-cris.c: Likewise.
4343 * aout-encap.c: Likewise.
4344 * aout-ns32k.c: Likewise.
4345 * aout-target.h: Likewise.
4346 * aout-tic30.c: Likewise.
4347
43482000-11-05 Philip Blundell <philb@gnu.org>
4349
4350 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit
4351 BFDs containing no sections to be merged, regardless of their flags.
4352
43532000-11-04 Philip Blundell <philb@gnu.org>
4354
4355 * elf32-arm.h (elf32_arm_relocate_section): Suppress error message
4356 if a relocation for an undefined symbol also results in an
4357 overflow.
4358
43592000-11-06 Christopher Faylor <cgf@cygnus.com>
4360
4361 * config.bfd: Add support for Sun Chorus.
4362
43632000-11-05 David O'Brien <obrien@FreeBSD.org>
4364
4365 * configure.in: Recognize alpha-*-freebsd*.
4366 * configure: Regenerate.
4367
43682000-11-02 Luciano Gemme <ishitawa@yahoo.com>
4369
4370 * srec.c (CHUNK): Rename to DEFAULT_CHUNK.
4371 (Chunk): New global variable set by a parameter in objcopy.c.
4372 (S3Forced): New global variable set by a parameter in
4373 objcopy.c.
4374 (srec_set_section_contents): If S3Forced is true, always generate
4375 S3 records.
4376 (srec_write_section): Use 'Chunk' to limit maximum length of S
4377 records.
4378
43792000-11-02 Per Lundberg <plundis@chaosdev.org>
4380
4381 * config.bfd: Add support for i[3456]86-chaosdev-storm-chaos.
4382 * Makefile.in: Regenerate.
4383 * bfd-in2.h: Regenerate.
4384 * po/bfd.pot: Regenerate.
4385
43862000-10-31 Philip Blundell <philb@gnu.org>
4387
4388 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle
4389 EF_SOFT_FLOAT if it is defined.
4390
43912000-10-27 Philip Blundell <philb@gnu.org>
4392
4393 * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse
4394 attempts to mix PIC code with non-PIC, just mark the output as
4395 being position dependent.
4396 (elf32_arm_merge_private_bfd_data): Likewise. Print an error
4397 message for EF_SOFT_FLOAT mismatches. Display diagnostics for
4398 all mismatches, not just the first one.
4399
44002000-10-25 Chris Demetriou <cgd@sibyte.com>
4401
4402 * ieee.c (ieee_archive_p): Plug one of many possible
4403 memory leaks in error handling.
4404
44052000-10-20 Jakub Jelinek <jakub@redhat.com>
4406
4407 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data,
4408 elf32_sparc_object_p, elf32_sparc_final_write_processing):
4409 Support v8plusb.
4410 * elf64-sparc.c (sparc64_elf_merge_private_bfd_data,
4411 sparc64_elf_object_p): Support v9b.
4412 * archures.c: Declare v8plusb and v9b machines.
4413 * bfd-in2.h: Ditto.
4414 * cpu-sparc.c: Ditto.
4415
44162000-10-16 Geoffrey Keating <geoffk@shoggoth.cygnus.com>
4417
4418 * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location
4419 of a GOT reloc.
4420
4421 * elf32-ppc.c (SYMBOL_REFERENCES_LOCAL): New macro.
4422 (SYMBOL_CALLS_LOCAL): New macro.
4423 (ppc_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL.
4424 (ppc_elf_check_relocs): Use SYMBOL_REFERENCES_LOCAL.
4425 (ppc_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL.
4426 (ppc_elf_relocate_section): Use flag variable to determine
4427 whether the relocation refers to a local symbol.
4428 Test whether a PLTREL24 reloc will produce a reloc by looking
4429 to see whether a PLT entry was made.
4430
44312000-10-14 Geoffrey Keating <geoffk@shoggoth.cygnus.com>
4432
4433 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT
4434 entries that could serve as a definition for a weak symbol.
4435
44362000-10-13 Ulf Carlsson <ulfc@engr.sgi.com>
4437
4438 From Ralf Baechle <ralf@gnu.org>
4439
4440 * elf32-mips.c (mips_elf_create_dynamic_relocation): New argument
4441 local_p. Add symbol value only for non-R_MIPS_REL32 relocations
4442 against local symbols.
4443 (_bfd_mips_elf_finish_dynamic_sections): Undo patch from 2000-10-01.
4444
44452000-10-12 Alan Modra <alan@linuxcare.com.au>
4446
4447 * section.c (struct sec): Add kept_section.
4448 (struct bfd_comdat_info): Remove sec, we can use above.
4449 (STD_SECTION): Add initializer.
4450 (bfd_make_section_anyway): Init here too.
4451
4452 * bfd-in2.h: Regenerate.
4453
4454 * elflink.h (elf_link_add_object_symbols): Remove unnecessary
4455 zeroing of `flags'.
4456 (elf_link_input_bfd): Set all asection->symbol->value's here, and
4457 fudge values for discarded link-once section symbols.
4458
4459 * elf64-hppa.c: Include alloca-conf.h
4460
44612000-10-11 Alan Modra <alan@linuxcare.com.au>
4462
4463 * elf.c (swap_out_syms): Revert 2000-10-07 changes.
4464
4465 * ieee.c (ieee_make_empty_symbol): Oops, bfd_zalloc needs another arg.
4466
44672000-10-10 Alan Modra <alan@linuxcare.com.au>
4468
4469 * ieee.c (ieee_make_empty_symbol): Use bfd_zalloc, not bfd_zmalloc.
4470
44712000-10-10 Tom Rix <trix@redhat.com>
4472
4473 * section.c (bfd_make_section_anyway): Release newsect ptr when
4474 newsect->symbol fails to alloc. Use bfd_release instead of free.
4475
44762000-10-09 Richard Henderson <rth@cygnus.com
4477
4478 * elf64-ia64.c (elf64_ia64_unwind_entry_compare_bfd): New.
4479 (elf64_ia64_unwind_entry_compare): New.
4480 (elf64_ia64_final_link): Sort the .IA_64.unwind section.
4481
44822000-10-07 Alan Modra <alan@linuxcare.com.au>
4483
4484 * elflink.h (size_dynamic_sections): Don't create various tags if
4485 .dynstr is excluded from the link. Don't set first dynsym entry
4486 if dynsymcount is zero.
4487 (elf_bfd_final_link): Don't try to swap out dynamic syms if
4488 .dynsym excluded from the link. Don't try to write any dynamic
4489 sections excluded from the link.
4490
4491 * elf.c (swap_out_syms): Handle global section symbols.
4492
44932000-10-05 DJ Delorie <dj@redhat.com>
4494
4495 * peigen.c (_bfd_pei_swap_scnhdr_out): note extended relocs
4496 * coffcode.h (coff_set_alignment_hook): read extended reloc count
4497 (coff_write_relocs): write extended reloc count
4498 (coff_write_object_contents): account for extended relocs
4499
45002000-10-05 Jim Wilson <wilson@cygnus.com>
4501
4502 * elf-bfd.h (struct elf_backend_data): Add elf_backend_section_flags
4503 field.
4504 * elf.c (_bfd_elf_make_section_from_shdr): Call the
4505 elf_backend_section_flags function.
4506 * elf64-ia64.c (elf64_ia64_section_from_shdr): Delete flag conversion
4507 code.
4508 (elf64_ia64_section_flags): New function containing flag conversion
4509 code.
4510 (elf_backend_section_flags): Define to elf64_ia64_section_flags.
4511 * elfxx-target.h (elf_backend_section_flags): Define.
4512 (elfNN_bed): Initialize elf_backend_section_flags field.
4513
45142000-10-02 Alan Modra <alan@linuxcare.com.au>
4515
4516 * elf32-hppa.c (elf32_hppa_check_relocs): Correct call to
4517 _bfd_elf32_gc_record_vtable. Correct a comment.
4518
45192000-10-01 Ulf Carlsson <ulfc@engr.sgi.com>
4520
4521 From Ralf Baechle <ralf@gnu.org>
4522
4523 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Mark gld
4524 produces binaries with got[1] = 0x80000001 to differenciate them
4525 for the dynamic linker from the broken binaries produced by old
4526 versions.
4527
45282000-09-30 Petr Sorfa <petrs@sco.com>
4529
4530 * elf.c (elfcore_grok_pstatus): Check for size of pxstatus_t.
4531 (elfcore_grok_lwpstatus): Check for size of lwpxstatus_t.
4532 * configure.in: Add check for pxstatus_t and lwpxstatus_t.
4533 * configure: Regenerate.
4534
45352000-09-27 Hans-Peter Nilsson <hp@axis.com>
4536
4537 Define two bfd_targets for absence and presence of leading
4538 underscore on symbols. Make sure to only link same kind.
4539 * elf32-cris.c (cris_elf_object_p,
4540 cris_elf_final_write_processing, cris_elf_print_private_bfd_data,
4541 cris_elf_merge_private_bfd_data): New.
4542 (elf_backend_object_p, elf_backend_final_write_processing,
4543 bfd_elf32_bfd_print_private_bfd_data,
4544 bfd_elf32_bfd_merge_private_bfd_data): Define.
4545 <Target vector definition>: Include elf32-target.h twice with
4546 different macro settings:
4547 (TARGET_LITTLE_SYM): First as bfd_elf32_cris_vec, then as
4548 bfd_elf32_us_cris_vec.
4549 (TARGET_LITTLE_NAME): First as "elf32-cris", then "elf32-us-cris".
4550 (elf_symbol_leading_char): First as 0, then '_'.
4551 (INCLUDED_TARGET_FILE): Define for second include of elf32-target.h.
4552 * config.bfd (cris-*-*): Add bfd_elf32_us_cris_vec to targ_selvecs.
4553 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vector.
4554 * configure: Regenerate.
4555 * targets.c: Declare bfd_elf32_us_cris_vec.
4556 * po/bfd.pot: Regenerate.
4557
45582000-09-29 Momchil Velikov <velco@fadata.bg>
4559
4560 * elf32-arm.h (arm_add_to_rel): Correctly adjust the addend for
4561 R_ARM_THM_PC22 relocations.
4562
45632000-09-29 NIIBE Yutaka <gniibe@chroot.org>
4564
4565 * elflink.h (elf_link_add_object_symbols): Don't bfd_release runpath.
4566
45672000-09-29 Momchil Velikov <velco@fadata.bg>
4568
4569 * elf.c (elf_fake_sections): Do not mark the section SHT_NOBITS if
4570 is has the SEC_HAS_CONTENTS flag set.
4571