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