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