4355d515336d4b33fb711c3e6a4473f2e9e11b7a
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 1999-12-07 Jim Blandy <jimb@cygnus.com>
2
3 Add support for SSE registers in ELF core files.
4 * elf.c (elfcore_make_note_pseudosection): New function.
5 (elfcore_grok_prfpreg): Use it.
6 (elfcore_grok_prxfpreg): New function.
7 (elfcore_grok_note): Recognize Linux NT_PRXFPREG notes.
8
9 1999-12-03 Ian Lance Taylor <ian@zembu.com>
10
11 * elf32-mips.c (mips_elf_calculate_relocation): Divide R_MIPS_PC16
12 value by 4 before storing it back in the field. From
13 Koundinya. K <kk@ddeorg.soft.net>.
14
15 Tue Nov 30 22:41:14 1999 Jeffrey A Law (law@cygnus.com)
16
17 * archures.c (bfd_mach_am33): Define.
18 * bfd-in2.h: Rebuilt.
19 * cpu-m10300.c (bfd_am33_arch): Add to the mn103 architecture list
20 * elf-m10300.c (mn10300_elf_relax_section): Handle am33 instructions.
21 (compute_function_info): Handle additional registers saved by
22 movm on the am33.
23 (elf_mn10300_mach): Handle E_MN10300_MACH_AM33.
24 (_bfd_mn10300_elf_final_write_processing): Handle bfd_mach_am33.
25
26 1999-11-29 Jim Blandy <jimb@cygnus.com>
27
28 * elf.c (bfd_get_elf_phdrs, bfd_get_elf_phdr_upper_bound): New
29 functions.
30 * bfd-in2.h (bfd_get_elf_phdrs, bfd_get_elf_phdr_upper_bound): New
31 declarations.
32
33 1999-11-27 Michael Meissner <meissner@cygnus.com>
34
35 * reloc.c (BFD_RELOC_ALPHA_USER_LITERAL): New relocation for
36 internal use within gas for alpha explicit relocations.
37 (BFD_RELOC_ALPHA_USER_LITUSE_BASE): Ditto.
38 (BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF): Ditto.
39 (BFD_RELOC_ALPHA_USER_LITUSE_JSR): Ditto.
40 (BFD_RELOC_ALPHA_USER_GPDISP): Ditto.
41 (BFD_RELOC_ALPHA_USER_GPRELHIGH): Ditto.
42 (BFD_RELOC_ALPHA_USER_GPRELLOW): Ditto.
43
44 * elf64-alpha.c (elf64_alpha_reloc_map): Add mappings for
45 BFD_RELOC_ALPHA_USER_*.
46
47 * bfd-in2.h: Regenerate.
48 * libbfd.h: Regenerate.
49
50 1999-11-26 Fred Fish <fnf@cygnus.com>
51
52 * elf.c (elfcore_read_notes): Add prototype for static function.
53 (_bfd_elf_make_section_from_phdr): Renamed from bfd_section_from_phdr.
54 (bfd_section_from_phdr): Replacement function that calls
55 _bfd_elf_make_section_from_phdr for generic segment types and
56 backend fucntion pointed to by elf_backend_section_from_phdr for
57 backend specific segment types.
58 (_bfd_elfcore_section_from_phdr): Remove call to elfcore_read_notes,
59 now called by _bfd_elf_make_section_from_phdr. Note that this func
60 is now just a stub between the caller and bfd_section_from_phdr.
61
62 * elf-bfd.h (struct elf_backend_data): Add new function pointer
63 elf_backend_section_from_phdr.
64 (elf_backend_section_from_phdr): Add prototype.
65
66 * elfxx-target.h (elf_backend_section_from_phdr): Define default.
67 (elfNN_bed): Add elf_backend_section_from_phdr.
68
69 1999-11-25 Nick Clifton <nickc@cygnus.com>
70
71 * coff-arm.c (bfd_arm_get_bfd_for_interworking): Add
72 SEC_CODE and SEC_READONLY flags to glue sections.
73
74 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Add
75 SEC_CODE and SEC_READONLY flags to glue sections.
76
77 1999-11-20 Nick Clifton <nickc@cygnus.com>
78
79 * coff-mcore.c (coff_mcore_relocate_section): Fix typo in previous
80 delta.
81
82 1999-11-19 Catherine Moore <clm@cygnus.com>
83
84 * elf32-m68k.c (elf_cpu32_plt0_entry): Fix encoding.
85 (elf_cpu32_plt_entry): Likewise.
86
87 1999-11-18 Nick Clifton <nickc@cygnus.com>
88
89 * coff-mcore.c (coff_mcore_rtype_to_howto): Special case handling
90 for RVA relocs.
91 (coff_mcore_relocate_section): Initialise addend to 0.
92 Special case processing of RVA reloc.
93
94 1999-11-17 Richard Henderson <rth@cygnus.com>
95
96 * elf-bfd.h (struct elf_backend_data): Reorder collect and
97 type_change_ok; add sign_extend_vma.
98 * elf32-mips.c (elf_backend_sign_extend_vma): Define.
99 * elfcode.h (elf_swap_symbol_in): Mind be->sign_extend_vma.
100 (elf_swap_shdr_in, elf_swap_phdr_in): Likewise.
101 * elfxx-target.h (elf_backend_sign_extend_vma): Default.
102 (elfNN_bed): Follow struture changes.
103
104 1999-11-09 Ian Lance Taylor <ian@zembu.com>
105
106 * libbfd.c (bfd_read): Check result of read against desired result
107 using !=, not <.
108 (_bfd_generic_get_section_contents): Set bfd_error if the seek is
109 invalid compared to the section size.
110
111 * ieee.c (ieee_slurp_debug): Get the length of the debug
112 information right if there is no data part.
113
114 Tue Nov 2 01:44:41 1999 Jeffrey A Law (law@cygnus.com)
115
116 * som.c (som_fixup_formats): Improve handling of R_AUX_UNWIND,
117 R_LINETAB, R_LINETAB_ESC, and R_COMMENT.
118
119 1999-10-28 Ian Lance Taylor <ian@zembu.com>
120
121 * elflink.h (elf_bfd_final_link): Make last_local signed.
122
123 1999-10-27 Ian Lance Taylor <ian@zembu.com>
124
125 * stabs.c (_bfd_link_section_stabs): Make sure .stabstr section
126 starts with a zero.
127
128 Sat Oct 23 17:36:12 1999 Andrew Cagney <cagney@b1.cygnus.com>
129
130 * archures.c: Add definitions bfd_mach_d10v, bfd_mach_d10v_ts2 and
131 bfd_mach_d10v_ts3.
132 * cpu-d10v.c (d10v_ts3_info, d10v_ts2_info): Add.
133 * bfd-in2.h: Regenerate.
134
135 1999-10-15 Andrew Haley <aph@cygnus.com>
136
137 * dwarf1.c (parse_die): Fail to parse a die if its length is zero.
138
139 Sun Oct 17 17:19:00 1999 Jeffrey A Law (law@cygnus.com)
140
141 * libhppa.h (bfd_hppa_insn2fmt): Change to return an int.
142
143 1999-10-08 Ian Lance Taylor <ian@zembu.com>
144
145 * elflink.h (elf_merge_symbol): When overriding a weak symbol with
146 a defined symbol in a shared library, clear the DEF_DYNAMIC flag
147 too.
148
149 Fri Oct 8 13:03:45 1999 Geoffrey Keating <geoffk@cygnus.com>
150
151 * elf32-mips.c (mips_elf_calculate_relocation): R_MIPS_LITERAL
152 relocs also need the GP value.
153 (_bfd_mips_elf_relocate_section): Handle unpaired LO16 relocs
154 properly. Handle sign-extension for R_MIPS_64 correctly. Correct
155 the GP value for R_MIPS_LITERAL relocs too. Handle
156 R_MIPS_64 relocs properly on big-endian MIPS.
157 (mips_elf_sign_extend): Behave properly with 'long long'.
158 (mips_elf_highest): Correct typo.
159
160 Mon Oct 4 17:49:45 1999 Nick Clifton <nickc@cygnus.com>
161
162 * cpu-m32r.c (arch_info_struct): New static global.
163 (bfd_m32r_arch): Refer to it.
164 * elf32-m32r.c (m32r_elf_object_p): Recognize E_M32RX_ARCH.
165 (m32r_elf_print_private_bfd_data): Ditto.
166 (m32r_elf_final_write_processing): Handle bfd_mach_m32rx.
167 * archures.c (bfd_mach_m32rx): Define it.
168 * bfd-in2.h: Rebuild.
169
170 1999-09-28 Fred Fish <fnf@cygnus.com>
171
172 * targets.c (cisco_core_vec): Replaced with two new vecs ...
173 (cisco_core_big_vec): Add new bigendian vec.
174 (cisco_core_little_vec): Add new little endian vec.
175
176 * cisco-core.c (CRASH_INFO): Fixed offset replaced with ...
177 (crash_info_locs): Add array of possible offsets.
178 (MASK_ADDR): Mask to apply to crash info offset.
179 (crashinfo_external): Add textbase, database, bssbase and
180 turn into a typedef.
181 (cisco_core_file_validate): Renamed from cisco_core_file_p.
182 Many small changes to account for additional hardware versions.
183 Pick a reasonable size for ".reg" section. Add a ".crash"
184 section to allow access to crashinfo_external struct.
185 (cisco_core_file_p): New version of this function that
186 iterates over crash_info_locs, calling cisco_core_file_validate.
187 (cisco_core_vec): Old big endian only vec replaced with ...
188 (cisco_core_big_vec): Add big endian version.
189 (cisco_core_little_vec): Add little endian version.
190
191 * configure.in (cisco_core_vec): Split to two new vectors ...
192 (cisco_core_big_vec): New target vector.
193 (cisco_core_little_vec): New target vector.
194 * configure: Regenerate.
195 * config.bfd (targ): For m68*-*-aout* targ, change cisco_core_vec
196 to cisco_core_big_vec in targ_selvecs.
197
198 1999-09-28 Geoffrey Keating <geoffk@cygnus.com>
199
200 * elf32-mips.c (mips_elf_relocate_hi16): Unused, delete.
201 (mips_elf_relocate_got_local): Unused, delete.
202 (mips_elf_relocate_global_got): Unused, delete.
203
204 1999-09-24 Fred Fish <fnf@cygnus.com>
205
206 * elf.c (bfd_section_from_phdr): Add typename variable. Use p_type
207 to initialize it to something meaningful. Then use it to generate
208 more useful segment names.
209
210 Sun Sep 19 12:16:47 1999 Jeffrey A Law (law@cygnus.com)
211
212 * som.c (NO_PCREL_MODES): Define if the system does not define
213 R_SHORT_PCREL_MODE.
214 (hppa_som_gen_reloc_type): Handle both short and long pcrel branches.
215 (som_write_fixups): Eliminate redundant pcrel mode relocs. Handle
216 R_LONG_PCREL_MODE and R_SHORT_PCREL_MODE
217 * libhppa.h (dis_assemble_22): New function.
218 (bfd_hppa_insn2fmt): Handle long branch.
219
220 * libhppa.h (bfd_hppa_insn2fmt): Decode and handle formats found
221 in PA2.0.
222
223 1999-09-17 Alan Modra <alan@spri.levels.unisa.edu.au>
224
225 * coff-i386.c (coff_i386_reloc_type_lookup): Support BFD_RELOC_16,
226 BFD_RELOC_16_PCREL, BFD_RELOC_8, BFD_RELOC_8_PCREL relocs.
227 (reloc_howto_type howto_table): Tidy comments and whitespace.
228
229 1999-09-17 Nick Clifton <nickc@cygnus.com>
230
231 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Undo
232 previous delta. Set sec->gc_mark instead.
233
234 Thu Sep 16 11:21:13 1999 Catherine Moore <clm@cygnus.com>
235
236 * elf32-m68k.c (elf_cpu32_plt0_entry): Use a1 instead of a0.
237 (elf_cpu32_plt_entry): Likewise.
238
239 Thu Sep 16 10:48:17 1999 Jeffrey A Law (law@cygnus.com)
240
241 * elf-hppa.h (elf_hppa_final_write_processing): Turn on TRAPNIL.
242
243 * elf-hppa.h (elf_hppa_final_link): If unable to find __gp in the
244 symbol table, then just compute a suitable value (but do not
245 create a __gp symbol).
246
247 * elf-hppa.h (elf_hppa_relocate_section): Allow undefined
248 symbols when building shared libraries.
249 (elf_hppa_final_link_relocate): Correct handling of PCREL
250 relocations against undefined symbols.
251
252 1999-09-16 Nick Clifton <nickc@cygnus.com>
253
254 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Mark
255 interworking sections as linker created so that they will not
256 be removed by garbage collection.
257
258 Wed Sep 15 02:31:57 1999 Jeffrey A Law (law@cygnus.com)
259
260 * elf-hppa.h (elf_hppa_final_link): Revamp __gp handling.
261 (elf_hppa_final_link_relocate): Consistently create an absolute
262 address, then subtract out the value of __gp.
263
264 1999-09-14 Michael Meissner <meissner@cygnus.com>
265
266 * configure.in (Canonicalization of target names): Remove adding
267 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
268 generates $ac_config_sub with a ${CONFIG_SHELL} already.
269 * configure: Regenerate.
270
271 1999-09-14 Nick Clifton <nickc@cygnus.com>
272
273 * elf32-m32r.c (ELF_MAXPAGESIZE): Change to 0x1 (at request of
274 Mitsubishi).
275
276 Mon Sep 13 20:01:47 1999 Jeffrey A Law (law@cygnus.com)
277
278 * elf-hppa.h (elf_hppa_record_segment_addrs): New function.
279 (elf_hppa_final_link): Initialize text_segment_base and
280 data_segment_base.
281 (elf_hppa_final_link_relocate): Handle SEGREL relocations.
282
283 * elf-hppa.h (elf_hppa_final_link): Remove unused variables.
284 (elf_hppa_final_link_relocate): Likewise.
285 (elf_hppa_relocate_insn): Likewise.
286 (elf_hppa_relocate_section): Initialize HOWTO.
287
288 1999-09-13 Donn Terry <donn@interix.com>
289
290 * coffcode.h (styp_to_sec_flags): Further refinement of COMDAT
291 handling to support both GNU and MS objects.
292
293 * coffcode.h (coff_write_object_contents): Don't check reloc_count
294 when determining whether to set F_RELFLG.
295
296 1999-09-13 Philip Blundell <pb@nexus.co.uk>
297
298 * elf32-arm.h (elf32_arm_final_link_relocate): Don't range-check
299 PC24 relocs if the target is an undefined weak symbol.
300 (arm_add_to_rel): Fix compiler warning.
301 (elf32_arm_plt0_entry): Correct comments.
302
303 1999-09-13 Alan Modra <alan@spri.levels.unisa.edu.au>
304
305 * elfcode.h (write_relocs): Check for the_bfd NULL when handling
306 an absolute symbol in REL relocs.
307
308 Sun Sep 12 23:47:58 1999 Jeffrey A Law (law@cygnus.com)
309
310 * elf-hppa.h (elf_hppa_final_link_relocate): Handle SECREL32.
311 Stub SEGREL32. Return an error for any relocation not handled.
312
313 1999-09-12 Ian Lance Taylor <ian@zembu.com>
314
315 * cofflink.c (coff_link_add_symbols): Look for special MSVC string
316 constant symbols, and avoid multiple definition errors on them.
317
318 1999-09-12 Donn Terry <donn@interix.com>
319
320 * libbfd.c (bfd_log2): Rewrite to avoid infinite loop if most
321 significant bit is set.
322
323 1999-09-11 Ian Lance Taylor <ian@zembu.com>
324
325 * coff-ppc.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
326
327 * elfcode.h (write_relocs): Handle an absolute symbol in REL
328 relocs as we do for RELA relocs.
329
330 1999-09-11 Donn Terry <donn@interix.com>
331
332 * libpei.h (_bfd_pei_final_link_postscript): Declare.
333 (coff_final_link_postscript): Define.
334 * peigen.c (_bfd_pei_swap_aouthdr_out): Don't set value for data
335 directory entries here.
336 (_bfd_pei_final_link_postscript): New function.
337
338 * peigen.c (_bfd_pei_swap_scnhdr_out): Remove code which sets
339 section flags based on the section name.
340
341 * peicode.h (coff_swap_scnhdr_in): If COFF_IMAGE_WITH_PE, the
342 get the overflow of the s_nlnno field from the s_nreloc field.
343 * peigen.c (_bfd_pei_swap_scnhdr_out): If doing a final link, swap
344 the s_nlnno overflow of the .text section into the s_nreloc
345 field.
346
347 * peigen.c (add_data_entry): Declare.
348 (pei_swap_aouthdr_out): Get image size right. Set linker version
349 more intuitively.
350 (pei_swap_scnhdr_out): Test for UNINIT section, not .bss.
351 (pe_print_idata): Code cleanup, print more info, get rid of (now)
352 extraneous ImageBase.
353 (pe_print_edata): Likewise.
354 (pe_print_pdata): Likewise. Print exception entries.
355 (pe_print_reloc): Likewise. Print MIPS_JMPADDR.
356 (tbl): Make const, add "UNKNOWN".
357 (_bfd_pe_print_private_bfd_data_common): Print timestamp.
358 (_bfd_pe_bfd_copy_private_bfd_data_common): Don't copy deleted
359 section data directory.
360 (_bfd_pe_bfd_copy_private_section_data): Copy pe_flags.
361
362 * libpei.h (_bfd_pe_bfd_get_symbol_info): Declare.
363 * peigen.c (_bfd_pe_bfd_get_symbol_info): New function.
364 * peicode.h (coff_get_symbol_info): Define.
365
366 * config.bfd (i[3456]86-*-interix*): Set targ_cflags to
367 -DSTRICT_PE_FORMAT.
368 * coffcode.h (styp_to_sec_flags): Check STRICT_PE_FORMAT rather
369 than __INTERIX.
370 (coff_classify_symbol): Re-revert 1999-08-08 patch if
371 STRICT_PE_FORMAT.
372
373 * libpei.h: New file, broken out of peicode.h.
374 * peigen.c: New file, broken out of peicode.h.
375 * peicode.h: A bunch of code moved out to libpei.h and peigen.c.
376 * configure.in: Add peigen.lo to list of files required for each
377 PE target.
378 * Makefile.am: Rebuild dependencies.
379 (BFD32_BACKENDS): Add peigen.lo.
380 (BFD32_BACKENDS_CFILES): Add peigen.c.
381 (SOURCE_HFILES): Add libpei.h.
382 * configure, Makefile.in: Rebuild.
383
384 * peicode.h (coff_swap_scnhdr_in): Don't check for a special
385 section name of _BSS; check IMAGE_SCN_CNT_UNINITIALIZED_DATA
386 instead. Don't clear the s_paddr field for an uninitialized data
387 section.
388
389 * coffcode.h (coff_mkobject_hook): Set timestamp field in
390 coff_data_type to f_timdat.
391 * peicode.h (pe_mkobject_hook): Likewise.
392
393 * peicode.h (coff_swap_filehdr_in): Check the NT executable magic
394 number if COFF_IMAGE_WITH_PE.
395
396 * coffcode.h (coff_mkobject_hook): If COFF_WITH_PE, set HAS_DEBUG
397 to the reverse of IMAGE_FILE_DEBUG_STRIPPED.
398 (coff_write_object_contents): Set IMAGE_FILE_DEBUG_STRIPPED if
399 there is no SEC_DEBUGGING section.
400 * peicode.h (pe_mkobject_hook): Set HAS_DEBUG to the reverse of
401 IMAGE_FILE_DEBUG_STRIPPED.
402
403 * pe-i386.c (COFF_LONG_FILENAMES): Define.
404 (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
405 * pei-i386.c (COFF_LONG_FILENAMES): Define.
406 (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
407
408 * coffswap.h (IMAGE_BASE): Don't define.
409 * pei-arm.c (IMAGE_BASE): Don't define.
410 * pei-i386.c (IMAGE_BASE): Don't define.
411 * pei-mcore.c (IMAGE_BASE): Don't define.
412 * pei-ppc.c (IMAGE_BASE): Don't define.
413
414 * cofflink.c (_bfd_coff_link_input_bfd): When writing out a
415 symbol, switch on the class when determining whether to modify the
416 value. For PE, don't modify the value of a C_FCN symbol not named
417 .bf.
418
419 * libbfd-in.h (_bfd_abort): Declare.
420 (abort): Define.
421 * bfd.c (_bfd_abort): New function.
422 * libbfd.h: Rebuild.
423
424 * coffcode.h (coff_set_alignment_hook): Delete POWERPC_LE_PE
425 special handling.
426
427 * cofflink.c (_bfd_coff_link_input_bfd): If a symbol is stripped,
428 don't write out the associated line numbers.
429
430 * cofflink.c (_bfd_coff_write_global_sym): Handle section symbol
431 aux entries.
432
433 * cofflink.c (coff_link_add_symbols): Don't warn about symbol type
434 changes when the base type is unknown.
435
436 * coffgen.c (coff_print_symbol): Fix printing of aux record for
437 function symbols.
438
439 * syms.c (BSF_DEBUGGING_RELOC): Define.
440 * coffcode.h (coff_slurp_symbol_table): If PE, set BSF_DEBUGGING
441 for C_FCN/C_EFCN symbols, and set BSF_DEBUGGING_RELOC for such
442 symbols named .bf.
443 * coffgen.c (fixup_symbol_value): Relocate a symbol which has
444 BSF_DEBUGGING_RELOC set.
445 * bfd-in2.h: Rebuild.
446
447 1999-09-10 Ian Lance Taylor <ian@zembu.com>
448
449 * ecoff.c (bfd_debug_section): Update initialization for new
450 comdat_info field.
451 (_bfd_ecoff_styp_to_sec_flags): Add section parameter.
452 * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Update declaration.
453
454 1999-09-10 H.J. Lu <hjl@gnu.org>
455
456 * coff-alpha.c (alpha_ecoff_backend_data): Initialize the new
457 _bfd_filnmlen field.
458 * coff-mips.c (mips_ecoff_backend_data): Likewise.
459
460 Fri Sep 10 00:35:14 1999 Jeffrey A Law (law@cygnus.com)
461
462 * elf-hppa.h (elf_hppa_final_link_relocate): Create .opd entries
463 for FPTR relocs involving local symbols.
464
465 * elf-hppa.h (elf_hppa_final_link_relocate): Get the right
466 value for the stub address in a call through a stub.
467 Install the value for a local symbol directly into the DLT
468 instead of generating a reloc. Correctly handle FPTR64 relocs.
469
470 * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): New function.
471 (elf_hppa_remark_useless_dynamic_symbols): Similarly.
472 (elf_hppa_final_link): Call them.
473
474 1999-09-10 Ian Lance Taylor <ian@zembu.com>
475
476 * elflink.h (elf_fix_symbol_flags): Move weakdef handling here...
477 (elf_adjust_dynamic_symbol): ...from here.
478
479 Wed Sep 8 17:56:11 1999 Jeffrey A Law (law@cygnus.com)
480
481 * elf-hppa.h (elf_hppa_howto_table); There is no DIR64WR, DIR64DR
482 relocation, remove them. SECREL64->LTOFF16WF.
483 (elf_hppa_final_link_relocate): Handle LTOFF* relocations. Handle
484 DIR* relocations.
485 (elf_hppa_relocate_insn): Similarly.
486
487 * elf-hppa.h (elf_hppa_final_link_relocate): Handle PLTOFF* relocs.
488 (elf_hppa_relocate_insn): Similarly.
489
490 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DPREL* and
491 GPREL* relocations.
492 (elf_hppa_relocate_insn): Similarly.
493
494 * elf-hppa.h (elf_hppa_link_final_relocate): Fix typos.
495 Handle LTOFF_TP* relocs.
496 (elf_hppa_relocate_insn): Similarly.
497
498 * elf-hppa.h (elf_hppa_final_link_relocate): Handle PCREL* relocs.
499 Consistently deal with addends. Handle DLTIND14F and DLTREL14F.
500 (elf_hppa_relocate_insn): Handle PCREL* relocs.
501
502 * elf-hppa.h (elf_hppa_final_link_relocate): Handle LT_OFF_FPTR*,
503 DIR32, DIR64 and FPTR64 relocations.
504 (elf_hppa_relocate_insn): Similarly.
505
506 * elf-hppa.h (elf_hppa_final_link): Set the value of __gp to the
507 address of the .PARISC.global section.
508 (elf_hppa_relocate_section): Lookup and pass the PA64 hash
509 table entry elf_hppa_final_link_relocate. Do not give a warning
510 for a reloc against an external symbol if it has a PA64 hash
511 table entry.
512 (elf_hppa_final_link_relocate): Significantly rework. Handle
513 DLTIND relocations. Compute the final value of the relocation
514 before passing the value of elf_hppa_relocate_insn.
515 (elf_hppa_relocate_insn): Revamp to handle just bit tiwiddling
516 relocation support. Handle DLTIND relocation requests just like
517 DLTREL relocation requests. Simplify branch handling.
518
519 1999-09-08 Ulrich Drepper <drepper@cygnus.com>
520
521 * elf-hppa.h (elf_hppa_relocate_section): Catch problems with
522 non-allocated section as done in i386 version.
523 (elf_hppa_final_link_relocate): Uncomment R_PARISC_14F in switch
524 statement since this is no know relocation.
525
526 Tue Sep 7 17:25:12 1999 Jeffrey A Law (law@cygnus.com)
527
528 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14F
529 relocs.
530 (elf_hppa_relocate_insn): Similarly.
531
532 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14WR and
533 DLTREL14WD relocs.
534 (elf_hppa_relocate_insn): Similarly.
535
536 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14R and
537 DLTREL21L relocs. Pass the output bfd to elf_hppa_relocate_insn.
538 Pass the relocate type rather than the insn format to
539 elf_hppa_relocate_insn.
540 (elf_hppa_relocate_insn): Make switch dependent on relocation type
541 rather than the opcode. Handle DLTREL21L and DLTREL14R relocs.
542
543 1999-09-07 Ian Lance Taylor <ian@zembu.com>
544
545 * coffcode.h (bfd_coff_backend_data): Add _bfd_filnmlen field.
546 (bfd_coff_filnmlen): Define.
547 (bfd_coff_std_swap_table): Initialize new field.
548 * coffgen.c (coff_fix_symbol_name): Use bfd_coff_filnmlen rather
549 than FILNMLEN.
550 (coff_write_symbols): Likewise.
551 (coff_get_normalized_symtab): Likewise.
552 * coff-sh.c (bfd_coff_small_swap_table): Initialize new field.
553 * libcoff.h: Rebuild.
554
555 1999-09-06 Donn Terry <donn@interix.com>
556
557 * coffcode.h (sort_by_secaddr): New static function if
558 COFF_IMAGE_WITH_PE.
559 (coff_compute_section_file_positions): If COFF_IMAGE_WITH_PE, sort
560 sections by VMA when assigning target_index values. Always set
561 virt_size.
562
563 * libcoff-in.h (struct pei_section_tdata): Add pe_flags field.
564 * coffcode.h (coff_set_alignment_hook) [COFF_WITH_PE version]: Set
565 pe_flags field.
566 * libcoff.h: Rebuild.
567
568 * coffcode.h (coff_set_custom_section_alignment): Add const to
569 declaration to match definition.
570 (coff_write_object_contents): Don't set F_AR32W(R)? if
571 COFF_WITH_PE.
572
573 * coff-i386.c (in_reloc_p): Add declaration.
574 (i386coff_vec): Simplify initialization of
575 application_section_flags.
576
577 * coffcode.h (sec_to_styp_flags): Write separate COFF_WITH_PE
578 version. Move COFF_WITH_PE specific code to new version.
579 (stype_to_sec_flags): Likewise. Add section parameter.
580 * coffgen.c (make_a_section_from_file): Set target_index before
581 calling styp_to_sec_flags. Pass section to styp_to_sec_flags.
582 * libcoff.h: Rebuild.
583
584 * syms.c (stt): Add some PE/PEI section names.
585 (bfd_decode_symclass): Return 'w', not 'U', for a weak undefined
586 symbol.
587 (bfd_symbol_info): Check for 'w'.
588
589 * section.c (struct bfd_comdat_info): Define.
590 (asection): Add comdat field.
591 (STD_SECTION): Initialize comdat field.
592 (bfd_make_section_anyway): Likewise.
593 * bfd-in2.h: Rebuild.
594
595 1999-09-06 Andreas Schwab <schwab@suse.de>
596
597 * elflink.h (elf_link_add_object_symbols): Copy NON_GOT_REF flag
598 to version symbols.
599
600 1999-09-06 Nick Clifton <nickc@cygnus.com>
601
602 * elflink.h (elf_gc_record_vtentry): Use bfd_zmalloc and
603 bfd_realloc instead of calloc and realloc.
604
605 1999-09-04 Steve Chamberlain <sac@pobox.com>
606
607 * cpu-pj.c: New file.
608 * elf32-pj.c: New file.
609 * config.bfd (pj*): New cpu.
610 (pj-*-*, pjl-*-*): New targets.
611 * configure.in (bfd_elf32_pj_vec): New target vector.
612 (bfd_elf32_pjl_vec): New target vector.
613 * archures.c (bfd_arch_pj): Define.
614 * elf.c (prep_headers): Handle bfd_arch_pj.
615 * reloc.c: Define BFD_RELOC_PJ_* relocations.
616 * targets.c (bfd_elf32_pj_vec, bfd_elf32_pjl_vec): Declare and add
617 to target vector list.
618 * Makefile.am: Rebuild dependencies.
619 (ALL_MACHINES): Add cpu-pj.lo.
620 (ALL_MACHINES_CFILES): Add cpu-pj.c.
621 (BFD32_BACKENDS): Add elf32-pj.lo.
622 (BFD32_BACKENDS_CFILES): Add elf32-pj.c.
623 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
624
625 1999-09-04 Ian Lance Taylor <ian@zembu.com>
626
627 * elf-bfd.h (ELF_LINK_NON_GOT_REF): Define.
628 * elflink.h (elf_adjust_dynamic_symbol): Copy REF_REGULAR_NONWEAK
629 and NON_GOT_REF from weak defined symbol to real symbol.
630 * elf32-i386.c (elf_i386_check_relocs): Set NON_GOT_REF.
631 (elf_i386_adjust_dynamic_symbol): If NON_GOT_REF is not set, don't
632 create a COPY reloc.
633 * elf32-sparc.c (elf32_sparc_check_relocs): Set NON_GOT_REF.
634 (elf32_sparc_adjust_dynamic_symbol): If NON_GOT_REF is not set,
635 don't create a COPY reloc.
636
637 1999-09-03 Ian Lance Taylor <ian@zembu.com>
638
639 * elflink.h (elf_bfd_final_link): When counting relocations, don't
640 count those in sections we are not including in the link.
641
642 Thu Sep 2 17:41:20 1999 Jeffrey A Law (law@cygnus.com)
643
644 * elflink.h (elf_link_add_object_symbols): Work around bogus SH_LINK
645 field in hpux11 shared libraries.
646
647 1999-09-02 Nick Clifton <nickc@cygnus.com>
648
649 * elflink.h (elf_gc_record_vtentry): Fix memory leak.
650
651 Wed Sep 1 13:34:29 1999 Jeffrey A Law (law@cygnus.com)
652
653 * elf-hppa.h (elf_hppa_add_symbol_hook): New function.
654 (elf_hppa_final_link, elf_hppa_relocate_section): Likewise.
655 (elf_hppa_final_link_relocate, elf_hppa_relocate_insn): Likewise.
656
657 1999-08-31 Alexandre Petit-Bianco <apbianco@cygnus.com>
658
659 * elflink.h (record_link_assignment): When possible, keep the
660 original type of the symbol.
661
662 Mon Aug 30 15:26:48 1999 Jeffrey A Law (law@cygnus.com)
663
664 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Allow both
665 R_PARISC_DIR32 and R_PARISC_DIR64 regardless of how the
666 tools were configured.
667 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Declare.
668
669 1999-08-26 Mark Mitchell <mark@codesourcery.com>
670
671 * elf32-mips.c (_bfd_mips_elf_check_relocs): Don't allocate local
672 GOT entries for GOT16 relocations; they're not required.
673
674 1999-08-24 Nick Clifton <nickc@cygnus.com>
675
676 From a patch submitted by Roland McGrath <roland@baalperazim.frob.com>
677
678 * config.bfd (arm-*-netbsd*): New target.
679 * configure.in (armnetbsd_vec): New target vector.
680 * configure: Regenerate
681 * targets.c (bfd_target_vector): Add &armnetbsd_vec.
682
683 * Makefile.am (BFD32_BACKENDS): Add armnetbsd.lo.
684 (ALL_MACHINES_CFILES): Add armnetbsd.c.
685 (armnetbsd.lo): New rule with deps.
686 * Makefile.in: Regenerate.
687
688 * armnetbsd.c: New file: Definitions specific to arm-netbsd
689 target.
690
691 Tue Aug 24 00:25:58 1999 Jeffrey A Law (law@cygnus.com)
692
693 * som.c (som_slurp_symbol_table): Fix typo in comment.
694
695 Fri Aug 20 17:01:23 1999 Jeffrey A Law (law@cygnus.com)
696
697 * elf-hppa.h (elf_hppa_fake_sections): Compute section indices
698 here instead of using elf_section_data...
699
700 1999-08-19 Nick Clifton <nickc@cygnus.com>
701
702 * coff-mcore.c (mcore_emit_base_file_entry): New function: Emit
703 relocations into the base file.
704 (coff_mcore_relocate_section): Call mcore_emit_base_file_entry if
705 we are building a base file.
706
707 1999-08-19 Nick Clifton <nickc@cygnus.com>
708
709 * elf32-arm.h (arm_add_to_rel): New function. Add a value to
710 a REL style reloc.
711 (elf32_arm_relocate_section): Use arm_add_to_rel to increment
712 REL relocs when performing a partial relocation.
713
714 1999-08-18 Donn Terry <donn@interix.com>
715
716 * cofflink.c: Move definitions of N_TMASK, et. al., out of
717 _bfd_coff_link_input_bfd into top level.
718
719 * coff-i386.c (coff_i386_reloc): Handle R_IMAGEBASE.
720 (RTYPE2HOWTO): Return NULL if reloc type is out of range.
721 (coff_i386_rtype_to_howto): Likewise.
722 * coffcode.h (coff_slurp_symbol_table): Change a -2 to N_DEBUG.
723 Completely ignore symbols which are all zero.
724 (dummy_reloc16_estimate): Add return 0.
725 * cofflink.c (_bfd_coff_link_input_bfd): Rename inner scope
726 variable copy to name_copy to avoid shadowing outer scope
727 variable.
728 * libcoff-in.h (coff_data_type): Change raw_syment_count field
729 from unsigned int to unsigned long. Add timestamp field.
730 * libcoff.h: Rebuild.
731
732 1999-08-17 H.J. Lu <hjl@gnu.org>
733
734 * elf32-hppa.c (bfd_elf32_bfd_is_local_label_name): Fix typo in
735 macro definition.
736
737 1999-08-17 Ian Lance Taylor <ian@zembu.com>
738
739 * elf32-mips.c (_bfd_mips_elf_add_symbol_hook): Set BSF_DYNAMIC
740 for special section symbols.
741 * elflink.h (elf_merge_symbol): If we have no old BFD, check
742 BSF_DYNAMIC on the section symbol to see whether the old BFD is
743 dynamic.
744
745 1999-08-15 Mark Mitchell <mark@codesourcery.com>
746
747 * elf32-mips.c (mips_elf_calculate_relocation): Fix unfortunate
748 coincidence of variable names between old and new code.
749
750 1999-08-12 Nick Clifton <nickc@cygnus.com>
751
752 * elf32-arm.h (elf32_arm_to_thumb_stub): Make 'offset' parameter
753 into a bfd_vma and 'addend' parameter a 'bfd_signed_vma'.
754 (elf32_thumb_to_arm_stub): Make 'offset' parameter into a bfd_vma
755 and 'addend' parameter a 'bfd_signed_vma'.
756 (elf32_arm_final_link_relocate): Do not involve stubs in
757 R_ARM_THM_PC22 relocs relative to section symbols, they are long
758 jumps, not function calls.
759
760 1999-08-11 Robin Farine <advanc@dial.eunet.ch>
761
762 * elf32-arm.h (elf32_arm_final_link_relocate): Check for overflow
763 in R_ARM_PC24 relocs.
764
765 Tue Aug 10 12:48:09 1999 Jeffrey A Law (law@cygnus.com)
766
767 * elf-hppa.h (elf_hppa_fake_sections): New function.
768 * elf32-hppa.c (elf_backend_fake_sections): Define.
769
770 * elf-hppa.h (elf_hppa_final_write_processing): Update for
771 recent changes to the arch_info structure.
772
773 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle
774 R_HPPA_SEGBASE and R_HPPA_SEGREL32.
775 * cpu-hppa.c (bfd_hppa20w_arch): New entry in architecture info
776 list.
777
778 Tue Aug 10 00:34:29 1999 Mark P. Mitchell <mark@codesourcery.com>
779 Ralf Baechle <ralf@uni-koblenz.de>
780
781 * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Always
782 output DT_MIPS_GOTSYM.
783 (_bfd_mips_elf_finish_dynamic_sections): Use the same value as
784 DT_MIPS_SYMTABNO if there are no global GOT symbols.
785
786 Tue Aug 10 00:21:08 1999 Mark P. Mitchell <mark@codesourcery.com>
787
788 * elf32-mips.c (mips_elf_create_dynamic_relocation): Change
789 prototype. Handle local symbols. Add commentary.
790 (mips_elf_calculate_relocation): Adjust accordingly.
791 (_bfd_mips_elf_check_relocs): Handle local symbols in R_MIPS_32
792 relocations.
793
794 * elflink.h (elf_bfd_final_link): Tweak last change.
795
796 1999-08-09 Mark Mitchell <mark@codesourcery.com>
797
798 * elflink.h (elf_link_size_reloc_section): Use the counts in the
799 elf-section data to allocate just the right amount of relocation
800 space. Don't allocate the hash space twice.
801 (elf_bfd_final_link): Calculate the amount of space to allocate in
802 each relocation section.
803
804 Mon Aug 9 17:37:30 1999 Jeffrey A Law (law@cygnus.com)
805
806 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case 32): When in
807 64bit mode, generate a section relative relocation for a 32bit
808 wide relocation.
809 (elf_hppa_is_local_label_name): New function.
810 * elf32-hppa.c (elf_hppa_is_local_label_name): Deleted. To be
811 shared between 32bit and 64bit port.
812
813 1999-08-09 Mark Mitchell <mark@codesourcery.com>
814
815 * elf32-mips.c (elf_mips_howto_table): Fix src_mask for
816 R_MIPS_GOT16 and R_MIPS_CALL16.
817 (mips_elf_got16_entry): Use mips_elf_high to calculate the value
818 to use when looking for a preexisting GOT entry.
819
820 1999-08-09 Jakub Jelinek <jj@ultra.linux.cz>
821
822 * elf64-sparc.c (sparc64_elf_relocate_section): Back out part of
823 the Sep. 4th, 1998 change. glibc 2.0.x dynamic linker had bug,
824 not binutils.
825 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
826
827 1999-08-09 Geoff Keating <geoffk@cygnus.com>
828
829 * elflink.h (elf_link_output_extsym): Don't output a weak
830 reference to an undefined symbol just because it was defined weak
831 in a shared object.
832
833 1999-08-09 Eli Zaretskii <eliz@is.elta.co.il>
834
835 * coffgen.c (coff_find_nearest_line): When looking for file, use
836 last best match rather than first. If address is beyond last line
837 number record, don't return the last line as the correct value.
838
839 1999-08-08 Ian Lance Taylor <ian@zembu.com>
840
841 * section.c (SEC_SMALL_DATA): Rename from SEC_SHORT.
842 * bfd-in2.h: Rebuild.
843
844 1999-08-08 Mark Elbrecht <snowball3@bigfoot.com>
845
846 * libcoff-in.h (struct coff_section_alignment_entry): Define.
847 * coffcode.h (coff_set_custom_section_alignment): New static
848 function.
849 (coff_section_alignment_table): New static array.
850 (coff_new_section_hook): Use coff_set_customer_section_alignment.
851 * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
852 * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
853 * libcoff.h: Rebuild.
854
855 1999-08-08 Ian Lance Taylor <ian@zembu.com>
856
857 * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to
858 MKDEP.
859 * Makefile.in: Rebuild.
860
861 1999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
862
863 * section.c (SEC_SHARED): Define.
864 * coffcode.h (sec_to_styp_flags): Handle SEC_SHARED.
865 (styp_to_sec_flags): Likewise.
866 * peicode.h (coff_swap_scnhdr_out): Likewise.
867 * bfd-in2.h: Rebuild.
868
869 1999-08-08 Ian Lance Taylor <ian@zembu.com>
870
871 * coffcode.h (coff_classify_symbol): Comment out part of
872 1999-08-05 change which breaks cygwin DLLs.
873
874 * acinclude.m4 (BFD_BINARY_FOPEN): Change -windows to -windows*.
875 * aclocal.m4, configure: Rebuild.
876
877 1999-08-06 Ian Lance Taylor <ian@zembu.com>
878
879 * section.c (global_syms): Only initialize union field if
880 __STDC__.
881
882 1999-08-04 Mark Mitchell <mark@codesourcery.com>
883
884 * elf32-mips.c (mips_elf_got16_entry): Don't multiply GOT index by
885 the size of a GOT entry here.
886 (mips_elf_calculate_relocation): Don't create a local GOT entry
887 for the symbol in a GOT16 relocation; just for it's high-order bit
888 (_bfd_mips_elf_relocate_section): Fix thinko.
889
890 1999-08-05 Ian Lance Taylor <ian@zembu.com>
891
892 Based on patches from Donn Terry <donn@interix.com>:
893 * coffcode.h (enum coff_symbol_classification): Define.
894 (bfd_coff_backend_data): Rename _bfd_coff_sym_is_global to
895 _bfd_coff_classify_symbol. Change return type.
896 (bfd_coff_classify_symbol): Rename from bfd_coff_sym_is_global.
897 (coff_slurp_symbol_table): Use coff_classify_symbol.
898 (coff_classify_symbol): New static function.
899 (coff_sym_is_global): Never define.
900 (bfd_coff_std_swap_table): Initialize with coff_classify_symbol.
901 * cofflink.c (coff_link_check_ar_symbols): Use
902 bfd_coff_classify_symbol rather than bfd_coff_sym_is_global.
903 (coff_link_add_symbols): Likewise.
904 (_bfd_coff_link_input_bfd): Likewise.
905 * coff-sh.c (bfd_coff_small_swap_table): Initialize with
906 coff_classify_symbol.
907 * libcoff.h: Rebuild.
908
909 Wed Aug 4 18:08:07 1999 Jeffrey A Law (law@cygnus.com)
910
911 * libhppa.h (R_HPPA_LTPSEL, R_HPPA_RTPSEL): New field selectors
912 (e_ltpsel, e_rtpsel): Similarly.
913
914 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle 21bit e_ltpsel
915 and 14bit ertpsel. Handle 64bit psel.
916
917 1999-08-04 Mark Mitchell <mark@codesourcery.com>
918
919 * elf32-mips.c (_bfd_mips_elf_relocate_section): Tweak HI16/LO16
920 handling for REL relocations. And only left-shift R_MIPS26
921 relocation addends where necessary.
922
923 1999-08-03 Mark Mitchell <mark@codesourcery.com>
924
925 * elf32-mips.c (mips_elf_next_lo16_addend): Rename to ...
926 (mips_elf_next_lo16_relocation): Don't compute the addend here.
927 Just return the relocation found.
928 (mips_elf_relocate_section): Pull the LO16 addend out of the
929 section itself when using REL relocations.
930
931 * elf32-mips.c (mips_elf_calculate_relocation): Restore
932 _DYNAMIC_LINK handling and handling of undefined symbols in shared
933 libraries.
934
935 1999-08-03 Ian Lance Taylor <ian@zembu.com>
936
937 * elf32-ppc.c (ppc_elf_relocate_section): Don't use the relocation
938 value of a symbol in a SEC_DEBUGGING section. Warn when doing a
939 relocation against a symbol in an input section with no output
940 section. From Daniel Jacobowitz <drow@false.org>.
941
942 * coff-stgo32.c (go32_stubbed_coff_object_p): Remove; not used.
943
944 * acinclude.m4 (BFD_CC_FOR_BUILD): Change to use conftest, and to
945 look for generated file correctly.
946 * aclocal.m4, configure: Rebuild.
947
948 1999-08-02 Mark Mitchell <mark@codesourcery.com>
949
950 * elf32-mips.c (_bfd_mips_elf_relocate_section): Handle R_MIPS_26
951 and R_MIPS16_26 relocations correctly when relocating.
952 (_bfd_mips_elf_check_relocs): Don't assume that R_MIPS_CALL_HI16
953 and R_MIPS_CALL_LO16 are for global symbols.
954
955 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz>
956
957 * elflink.h (elf_bfd_final_link): Copy the whole isym, not just
958 some fields.
959 * elf64-sparc.c (sparc64_elf_output_arch_syms): Declare used
960 variables and initialize them.
961
962 1999-08-01 Mark Mitchell <mark@codesourcery.com>
963
964 * elf32-mips.c (_bfd_mips_elf_final_link): Handle the case where
965 there are no global symbols requiring GOT entries.
966 (_bfd_mips_elf_size_dynamic_sections): Likewise.
967 (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
968 (_bfd_mips_elf_finish_dynamic_sections): Likewise.
969
970 * elf32-mips.c (mips_elf_calculate_relocation): Undefined weak
971 symbols are considered to have the value zero.
972 (_bfd_mips_elf_relocate_section): Don't try to perform a
973 relocation for an undefined symbol.
974 (_bfd_mips_elf_check_relocs): Allocate locate GOT space for local
975 GOT16 relocations.
976
977 1999-07-30 Jakub Jelinek <jj@ultra.linux.cz>
978
979 * elf64-sparc.c (sparc64_elf_build_plt): Cosmetic change - ABI
980 wants ba,a,pt %xcc instead of %icc.
981 Emit correct .PLT0-(.PLTN+4) initial value into the pointer slots
982 of large PLT entries.
983 (sparc64_elf_plt_ptr_offset): Fix calculation.
984 (sparc64_elf_finish_dynamic_symbol): Negative value of R_SPARC_JMP_SLOT
985 addend should be relative to load address, not .plt section start.
986 (sparc64_elf_size_info): Sparc64 uses 32bit .hash entries.
987
988 1999-07-30 Jakub Jelinek <jj@ultra.linux.cz>
989
990 * elf-bfd.h (struct elf_backend_data): Add
991 print_symbol_all and output_arch_syms backend methods.
992 * elfxx-target.h: Likewise.
993 * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create,
994 sparc64_elf_add_symbol_hook, sparc64_elf_output_arch_syms,
995 sparc64_elf_get_symbol_type, sparc64_elf_symbol_processing): New
996 functions.
997 (sparc64_elf_size_dynamic_sections): Leave space for STT_REGISTER
998 symbols in .dynsym, add their names into .dynstr. Put those symbols
999 into dynlocal.
1000 (sparc64_elf_finish_dynamic_sections): Fix up DT_SPARC_REGISTER
1001 pointers to STT_REGISTER symbols in dynsym section.
1002 (sparc64_elf_print_symbol_all): New function.
1003 * elf.c (bfd_elf_print_symbol): Allow special backend symbol
1004 printing using the print_symbol_all hook.
1005
1006 1999-07-30 Catherine Moore <clm@cygnus.com>
1007
1008 * elf32-arm.h (elf32_arm_check_relocs): Use r_offset for
1009 R_ARM_GNU_VTENTRY.
1010
1011 1999-07-29 Richard Henderson <rth@cygnus.com>
1012
1013 * elf32-mips.c (_bfd_mips_elf_final_link): Only re-sort dynsyms if
1014 dynamic_sections_created.
1015
1016 1999-07-29 Richard Henderson <rth@cygnus.com>
1017
1018 * elf32-mips.c (mips_info_to_howto_rel): Split out switch to ...
1019 (mips_rtype_to_howto): ... new function.
1020 (_bfd_mips_elf_relocate_section): Use it.
1021
1022 1999-07-28 Mark Mitchell <mark@codesourcery.com>
1023
1024 * elf32-mips.c (_bfd_mips_elf_relocate_section): Fix typo.
1025
1026 1999-07-27 Nick Clifton <nickc@cygnus.com>
1027
1028 Patch generated by Bernd Schmidt. <bernds@cygnus.co.uk>
1029
1030 * coff-arm.c (coff_arm_is_local_label_name): Change to strip
1031 out only symbols that start with LOCAL_LABEL_PREFIX followed by 'L'.
1032
1033 1999-07-23 Donn Terry <donn@interix.com>
1034
1035 * libcoff-in.h (coff_link_hash_entry): Add coff_link_hash_flags
1036 field, and define COFF_LINK_HASH_PE_SECTION_SYMBOL.
1037 * cofflink.c (coff_link_add_symbols): If PE, handle section
1038 symbols specially.
1039 * libcoff.h: Rebuild.
1040
1041 * config.bfd (i[3456]86-*-interix*): New target.
1042
1043 1999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
1044
1045 * coffcode.h (styp_to_sec_flags): If COFF_LONG_SECTION_NAMES and
1046 COFF_SUPPORT_GNU_LINKONCE, mark sections whose names begin with
1047 .gnu.linkonce with SEC_LINKONCE and SEC_LINK_DUPLICATES_DISCARD.
1048 * coff-go32.c: (COFF_LONG_SECTION_NAMES): Define.
1049 (COFF_SUPPORT_GNU_LINKONCE): Define.
1050 * coff-stgo32.c: (COFF_LONG_SECTION_NAMES): Define.
1051 (COFF_SUPPORT_GNU_LINKONCE): Define.
1052
1053 1999-07-21 Ian Lance Taylor <ian@zembu.com>
1054
1055 From Mark Elbrecht:
1056 * makefile.dos: Remove; obsolete.
1057 * configure.bat: Remove; obsolete.
1058
1059 1999-07-21 H.J. Lu <hjl@gnu.org>
1060
1061 * config.bfd (i[3456]86-*-vxworks*): Add targ_underscore=yes.
1062
1063 1999-07-21 Philippe De Muyter <phdm@macqel.be>
1064
1065 * cofflink.c (_bfd_coff_generic_relocate_section): Issue an error
1066 message and fail if a symbol index is out of range.
1067
1068 1999-07-21 Ian Lance Taylor <ian@zembu.com>
1069
1070 * elf32-mips.c (mips_elf_calculate_relocation): Get the GP value
1071 when looking at a R_MIPS_GOT16 relocation.
1072
1073 1999-07-20 Nick Clifton <nickc@cygnus.com>
1074
1075 * coff-m88k.c: Use CREATE_BIG_COFF_TARGET_VEC.
1076
1077 Mon Jul 19 14:03:44 1999 Mark P. Mitchell <mark@codesourcery.com>
1078
1079 * elf32-mips.c (_bfd_mips_elf_final_link): Restore setting of GP
1080 removed in previous change.
1081 (_bfd_mips_elf_relocate_section): Adjust GP relative relocations
1082 in relocateable output.
1083
1084 1999-07-19 Ian Lance Taylor <ian@zembu.com>
1085
1086 * coff-m88k.c (m88kbcs_vec): Initialize new field of bfd_target
1087 structure.
1088
1089 * elflink.h (elf_merge_symbol): Do merge symbols from the same BFD
1090 if they appear to be specially created by the linker.
1091
1092 1999-07-19 Nick Clifton <nickc@cygnus.com>
1093
1094 * targets.c (alternative_target): New field in bfd_target
1095 structure.
1096 (bfd_search_for_target): New function: Find a target that
1097 satisifies a search function.
1098 * bfd-in2.h: Regenerate.
1099
1100 * elfxx-target.h: Initialise the alternative_target field of
1101 the bfd_target structures to point to the other target (if
1102 defined).
1103 * nlm-target.h: Initialise the alternative_target field of
1104 the bfd_target structures to point to the other target (if
1105 defined).
1106
1107 * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): New macro.
1108 (CREATE_LITTLE_COFF_TARGET_VEC): New macro.
1109
1110 * aix386-core.c: Initialise new field of bfd_target structure.
1111 * aout-adobe.c: Initialise new field of bfd_target structure.
1112 * aout-arm.c: Initialise new field of bfd_target structure.
1113 * aout-target.h: Initialise new field of bfd_target structure.
1114 * aout-tic30.c: Initialise new field of bfd_target structure.
1115 * binary.c: Initialise new field of bfd_target structure.
1116 * bout.c: Initialise new field of bfd_target structure.
1117 * cisco-core.c: Initialise new field of bfd_target structure.
1118 * coff-a29k.c: Use CREATE_BIG_COFF_TARGET_VEC.
1119 * coff-alpha.c: Initialise new field of bfd_target structure.
1120 * coff-apollo.c: Use CREATE_BIG_COFF_TARGET_VEC.
1121 * coff-arm.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC.
1122 * coff-h8300.c: Use CREATE_BIG_COFF_TARGET_VEC.
1123 * coff-h8500.c: Use CREATE_BIG_COFF_TARGET_VEC.
1124 * coff-i386.c: Initialise new field of bfd_target structure.
1125 * coff-i860.c: Initialise new field of bfd_target structure.
1126 * coff-i960.c: Use CREATE_LITTLE_COFF_TARGET_VEC.
1127 * coff-m68k.c: Use CREATE_BIG_COFF_TARGET_VEC.
1128 * coff-mcore.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC.
1129 * coff-mips.c: Initialise new field of bfd_target structure.
1130 * coff-ppc.c: Initialise new field of bfd_target structure.
1131 * coff-rs6000.c: Initialise new field of bfd_target structure.
1132 * coff-sh.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC.
1133 * coff-sparc.c: Use CREATE_BIG_COFF_TARGET_VEC.
1134 * coff-tic30.c: Initialise new field of bfd_target structure.
1135 * coff-tic80.c: Use CREATE_LITTLE_COFF_TARGET_VEC.
1136 * coff-w65.c: Use CREATE_LITTLE_COFF_TARGET_VEC.
1137 * coff-we32k.c: Use CREATE_BIG_COFF_TARGET_VEC.
1138 * coff-z8k.c: Use CREATE_BIG_COFF_TARGET_VEC.
1139 * hppabsd-core.c: Initialise new field of bfd_target structure.
1140 * hpux-core.c: Initialise new field of bfd_target structure.
1141 * i386msdos.c: Initialise new field of bfd_target structure.
1142 * i386os9k.c: Initialise new field of bfd_target structure.
1143 * ieee.c: Initialise new field of bfd_target structure.
1144 * ihex.c: Initialise new field of bfd_target structure.
1145 * irix-core.c: Initialise new field of bfd_target structure.
1146 * mipsbsd.c: Initialise new field of bfd_target structure.
1147 * netbsd-core.c: Initialise new field of bfd_target structure.
1148 * oasys.c: Initialise new field of bfd_target structure.
1149 * osf-core.c: Initialise new field of bfd_target structure.
1150 * ppcboot.c: Initialise new field of bfd_target structure.
1151 * ptrace-core.c: Initialise new field of bfd_target structure.
1152 * sco5-core.c: Initialise new field of bfd_target structure.
1153 * som.c: Initialise new field of bfd_target structure.
1154 * srec.c: Initialise new field of bfd_target structure.
1155 * tekhex.c: Initialise new field of bfd_target structure.
1156 * trad-core.c: Initialise new field of bfd_target structure.
1157 * versados.c: Initialise new field of bfd_target structure.
1158 * vms.c: Initialise new field of bfd_target structure.
1159
1160 1999-07-19 Andreas Schwab <schwab@suse.de>
1161
1162 * elflink.h (elf_bfd_final_link): Remove unused variables rel_hash
1163 and rel_hdr.
1164
1165 Sat Jul 17 02:28:28 1999 Mark P. Mitchell <mark@codesourcery.com>
1166
1167 * elflink.h (elf_link_adjust_relocs): New function.
1168 (elf_bfd_final_link): Use it.
1169 (elf_link_input_bfd): Deal with the fact that there can be
1170 two relocation sections for a single section.
1171 (elf_reloc_link_order): Likewise.
1172
1173 * elf32-mips.c (_bfd_mips_elf_final_link): Don't set GP for
1174 a relocateable object.
1175 (_bfd_mips_elf_relocate_section): Handle relocateable links.
1176
1177 1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
1178
1179 * elf64-sparc.c (sparc64_elf_info_to_howto): Use ELF64_R_TYPE_ID.
1180 (sparc64_elf_get_reloc_upper_bound,
1181 sparc64_elf_get_dynamic_reloc_upper_bound,
1182 sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table,
1183 sparc64_elf_canonicalize_dynamic_reloc, sparc64_elf_write_relocs):
1184 New functions.
1185 (sparc64_elf_check_relocs, sparc64_elf_relocate_section): Use
1186 ELF64_R_TYPE_ID/DATA where appropriate.
1187
1188 1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
1189
1190 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Remove
1191 DT_SPARC_PLTFMT.
1192
1193 1999-07-16 Ian Lance Taylor <ian@zembu.com>
1194
1195 * elf32-mips.c (mips_elf_local_relocation_p): New static
1196 function.
1197 (mips_elf_next_lo16_addend): Call bfd_set_error on failure.
1198 (mips_elf_calculate_relocation): Use mips_elf_local_relocation_p.
1199 Always set *require_jalxp.
1200 (mips_elf_stub_section_p): Mark abfd parameter as unused.
1201 (_bfd_mips_elf_relocate_section): Only look for LO16 following
1202 GOT16 if the GOT16 is against a local symbol. Don't return false
1203 for an undefined symbol. If there is an overflow, assert that we
1204 have a name.
1205
1206 1999-07-16 Andreas Schwab <schwab@suse.de>
1207
1208 * elflink.h (elf_link_record_local_dynamic_symbol): Remove unused
1209 variables `link' and `elfsec'.
1210 (elf_bfd_final_link): Remove unused variable `os'.
1211
1212 Thu Jul 15 17:55:31 1999 Mark P. Mitchell <mark@codesourcery.com>
1213
1214 * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Don't require
1215 a PT_PHDR program headers.
1216 (_bfd_mips_elf_final_link): Don't assume there are going to be
1217 section symbols when we're not building a shared object.
1218 (_bfd_mips_elf_check_relocs): Make sure we have a GOT when
1219 we need one.
1220
1221 1999-07-15 J.T. Conklin <jtc@redback.com>
1222
1223 * config.bfd (i[3456]86-*-vxworks*): New target.
1224
1225 1999-07-15 Mark Mitchell <mark@codesourcery.com>
1226
1227 * elf32-mips.c (mips_elf_stub_section_p): New function.
1228 (mips_elf_calculate_relocation): Handle MIPS16 stub functions.
1229 (mips_elf_relocate_section): Adjust calling sequence for
1230 mips_elf_calculate_relocation and mips_elf_perform_relocation.
1231 (mips_elf_perform_relocation): Turn `jal' into `jalx' where
1232 required.
1233
1234 1999-07-15 Ian Lance Taylor <ian@zembu.com>
1235
1236 * configure.in: Bump version number to 2.9.5.
1237 * configure: Rebuild.
1238
1239 Thu Jul 15 02:56:15 1999 Jeffrey A Law (law@cygnus.com)
1240
1241 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case R_HPPA): Handle
1242 64bit format.
1243 (_bfd_elf_hppa_gen_reloc_type, case R_GOTOFF): Use base reloc type
1244 to derive final type instead of hardwiring a selection.
1245
1246 1999-07-14 Mark Mitchell <mark@codesourcery.com>
1247
1248 * elf32-mips.c (mips_elf_obtain_contents): Swap 16-bit halves of
1249 things relocated by R_MIPS16_GPREL.
1250 (mips_elf_perform_relocation): Likewise.
1251
1252 Wed Jul 14 15:23:19 1999 Jim Wilson <wilson@cygnus.com>
1253
1254 * elfxx-target.h (elfNN_bed): Add elf_backend_want_dynbss.
1255
1256 1999-07-14 Richard Henderson <rth@cygnus.com>
1257
1258 * elf32-mips.c (struct mips_got_info): Add global_gotno.
1259 (_bfd_mips_elf_size_dynamic_sections): Set it.
1260 (_bfd_mips_elf_final_link): Re-sort; verify the got did not grow.
1261 (mips_elf_sort_hash_table): Set max_non_got_dynindex based off
1262 new argument max_local.
1263
1264 1999-07-14 Mark Mitchell <mark@codesourcery.com>
1265
1266 * elf32-mips.c (mips_elf_obtain_contents): Swap the 16-bit
1267 subwords when handling an R_MIPS16_26 relocation.
1268 (mips_elf_perform_relocation): Don't be paranoid abour right-shift
1269 semantics.
1270
1271 * elf32-mips.c (elf_mips16_gprel_howto): Adjust src_mask and
1272 dst_mask to match reality.
1273 (_bfd_mips_elf_calculate_relocation): Handle R_MIPS16_GPREL.
1274 (mips_elf_obtain_contents): Use bfd_get.
1275 (mips_elf_perform_relocation): Handle R_MIPS16_GPREL.
1276 (mips_elf_relocate_section): Likewise.
1277
1278 1999-07-13 Mark Mitchell <mark@codesourcery.com>
1279
1280 * elf32-mips.c (mips_elf_calculate_relocation): Handle R_MIPS16_26.
1281 (mips_elf_relocate_section): Adjust calling sequence for
1282 mips_elf_perform_relocation.
1283 (mips_elf_perform_relocation): Take additional argument. Handle
1284 R_MIPS16_26. Use bfd_put for convenience.
1285
1286 1999-07-13 Richard Henderson <rth@cygnus.com>
1287
1288 * elf.c (assign_file_positions_for_segments): Thinko last change.
1289 Always overwrite p_flags.
1290
1291 1999-07-13 Richard Henderson <rth@cygnus.com>
1292
1293 * elf-bfd.h (struct elf_backend_data): Add want_dynbss.
1294 * elflink.c (_bfd_elf_create_dynamic_sections): Only create
1295 .dynbss and .rel[a].bss if want_dynbss.
1296 * elfxx-target.h (elf_backend_want_dynbss): Provide default.
1297
1298 1999-07-13 Richard Henderson <rth@cygnus.com>
1299
1300 * elf.c (assign_file_positions_for_segments): Don't overwrite p_flags.
1301
1302 1999-07-13 Richard Henderson <rth@cygnus.com>
1303
1304 * elf-bfd.h (struct elf_link_local_dynamic_entry): New.
1305 (struct elf_link_hash_table): Add dynlocal.
1306 (_bfd_elf_link_lookup_local_dynindx): Prototype.
1307 (_bfd_elf_link_adjust_dynindx): Delete.
1308 (_bfd_elf_link_renumber_dynsyms): Prototype.
1309 (_bfd_elf,link_record_local_dynamic_symbol): Prototype.
1310 * elfcode.h (elf_link_record_local_dynamic_symbol): New alias.
1311 * elflink.c (_bfd_elf_link_adjust_dynindx): Delete.
1312 (_bfd_elf_link_lookup_local_dynindx): New function.
1313 (elf_link_renumber_hash_table_dynsyms): New function.
1314 (_bfd_elf_link_renumber_dynsyms): New function.
1315 * elflink.h (elf_link_record_local_dynamic_symbol): New function.
1316 (struct elf_assign_sym_version_info): Delete removed_dynamic.
1317 (bfd_elf,size_dynamic_sections): Use _bfd_strip_section_from_output
1318 instead of elf_link_remove_section_and_adjust_dynindices.
1319 Remove removed_dynamic code. Use _bfd_elf_link_renumber_dynsyms.
1320 (elf_link_assign_sym_version): Remove removed_dynamic code.
1321 (elf_link_renumber_dynsyms): Delete.
1322 (elf_bfd_final_link): Install section and local symbols into .dynsym.
1323
1324 * elf32-m68k.c (elf_m68k_adjust_dynindx): Delete.
1325 (elf_m68k_size_dynamic_sections): Don't set section dynindicies.
1326 (elf_m68k_finish_dynamic_sections): Don't write section dynsyms.
1327 * elf32-mips.c: Similarly.
1328 * elf32-ppc.c: Similarly.
1329 * elf32-sparc.c: Similarly.
1330 * elf64-alpha.c: Similarly.
1331 * elf64-sparc.c: Similarly.
1332
1333 1999-07-13 Mark Mitchell <mark@codesourcery.com>
1334
1335 * elf32-mips.c (mips_elf_calculate_relocation): Do not complain
1336 when _gp_disp is undefined. Do not check R_MIPS_LO16 for overflow
1337 when the relocation is against _gp_disp.
1338
1339 1999-07-12 Mark Mitchell <mark@codesourcery.com>
1340
1341 * dwarf2.c (read_attribute): Support DW_FORM_ref8.
1342 * elf32-mips.c (mips_elf_link_hash_entry): Change mips_32_relocs
1343 to possibly_dynamic_relocs. Adjust usage throughout code.
1344 (elf_mips_howto_table): Handle R_MIPS_64 correctly.
1345 (elf_mips_ctor64_howto): Likewise.
1346 (mips_elf_calculate_relocation): Handle R_MIPS_64 like R_MIPS_32.
1347 Adjust indentation.
1348 (mips_elf_relocate_section): Handle R_MIPS_64 in 32-bit mode.
1349 (_bfd_mips_elf_check_relocs): Handle R_MIPS_64 like R_MIPS_32.
1350 Use MIPS_ELF_GOT_SIZE to calculate the size of GOT entries.
1351 * elf64-mips.c (elf_backend_may_use_rel_p): Define.
1352
1353 1999-07-12 Ian Lance Taylor <ian@zembu.com>
1354
1355 * Makefile.am: Rebuild dependencies.
1356 * Makefile.in: Rebuild.
1357
1358 * bfd-in.h: Remove tests of COFF_IMAGE_WITH_PE.
1359 * bfd-in2.h: Rebuild.
1360
1361 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
1362 as appropriate. Use EMPTY_HOWTO as appropriate. Fill in
1363 structure initializations. Add casts.
1364 * reloc.c (EMPTY_HOWTO): Define.
1365 * bfd-in2.h: Rebuild.
1366 * coff-h8300.c (h8300_reloc16_extra_cases): Remove useless
1367 comparisons against 0.
1368 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Change
1369 previous_ibfd_e_flags to unsigned long.
1370 * vms.h (struct vms_private_data_struct): Change section_count to
1371 unsigned.
1372 * vms-gsd.c (_bfd_vms_slurp_gsd): Change psect_idx to unsigned.
1373 (_bfd_vms_write_gsd): Change symnum to unsigned.
1374 * vms-hdr.c (_bfd_vms_write_hdr): Change symnum to unsigned.
1375 * vms-tir.c (etir_sta): Change psect to unsigned.
1376 (alloc_section): Change idx to unsigned.
1377 (tir_sta, tir_ctl): Change psect to unsigned.
1378 (_bfd_vms_write_tir): Change len and before to bfd_size_type.
1379 * vms.c (priv_section_count): Change to unsigned.
1380
1381 1999-07-12 Andreas Schwab <schwab@suse.de>
1382
1383 * elf32-m68k.c: Add some ATTRIBUTE_UNUSED.
1384 * m68klinux.c: Likewise.
1385
1386 1999-07-12 Ian Lance Taylor <ian@zembu.com>
1387
1388 * Many files: Changes to avoid gcc warnings: Remove unused local
1389 variables. Add default case to enum switches.
1390 * coff-arm.c (bfd_arm_allocate_interworking_sections): Only
1391 compile if not COFF_IMAGE_WITH_PE.
1392 (record_arm_to_thumb_glue, record_thumb_to_arm_glue): Likewise.
1393 (bfd_arm_get_bfd_for_interworking): Likewise.
1394 (bfd_arm_process_before_allocation): Likewise.
1395 * epoc-pei-arm.c: Don't rename bfd_arm functions.
1396 * pei-arm.c: Likewise.
1397 * elf32-mips.c (mips_elf_link_hash_table_create): Don't declare.
1398 (MIPS_ELF_ADD_DYNAMIC_ENTRY): Correct last change.
1399 (mips_elf_got16_entry): Put parens around & in body of ==.
1400 (mips_elf_calculate_relocation): Correct test for empty string.
1401 * vms-gsd.c: Use _bfd_error_handler rather than fprintf to
1402 stderr.
1403 * vms-misc.c (_bfd_vms_length_hash_symbol): Correct sprintf
1404 format.
1405
1406 1999-07-11 Ian Lance Taylor <ian@zembu.com>
1407
1408 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
1409 as appropriate. Fill in structure initializations. Add variable
1410 initializations. Add casts.
1411 * dwarf1.c (parse_line_table): Change eachLine to unsigned long.
1412 (dwarf1_unit_find_nearest_line): Change i to unsigned long.
1413
1414 * elf.c (bfd_elf_hash): Change parameter from unsigned char * to
1415 char *.
1416 * elf-bfd.h (bfd_elf_hash): Update declaration.
1417 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove casts
1418 when calling bfd_elf_hash.
1419
1420 1999-07-11 Mark Mitchell <mark@codesourcery.com>
1421
1422 * libbfd.c (bfd_put_8): Make it of type `void'.
1423 * bfd-in2.h: Regenerated.
1424 * elf32-mips.c (MIPS_ELF_ADD_DYNAMIC_ENTRY): Conditionalize
1425 for 32-bit hosts.
1426 (_bfd_mips_elf_final_link): Likewise.
1427
1428 * elflink.h (elf_link_read_relocs_from_section): Be type-correct.
1429
1430 Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
1431
1432 * config.bfd (hppa*-*-linux-gnu*): New target
1433
1434 1999-07-07 Mark Mitchell <mark@codesourcery.com>
1435
1436 * elf-bfd.h (_bfd_mips_elf_section_from_shdr): Constify.
1437 (_bfd_mips_elf_create_dynamic_sections): New function.
1438 (_bfd_mips_elf_add_symbol_hook): Likewise.
1439 (_bfd_mips_elf_adjust_dynamic_symbol): Likewise.
1440 (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
1441 (_bfd_mips_elf_finish_dynamic_sections): Likewise.
1442 (_bfd_mips_elf_gc_mark_hook): Likewise.
1443 (_bfd_mips_elf_gc_sweep_hook): Likewise.
1444 (_bfd_mips_elf_always_size_sections): Likewise.
1445 (_bfd_mips_elf_size_dynamic_sections): Likewise.
1446 (_bfd_mips_elf_check_relocs): Likewise.
1447 (_bfd_mips_elf_link_hash_table_create): Likewise.
1448 (_bfd_mips_elf_print_private_data): Likewise.
1449 (_bfd_mips_elf_link_output_symbol_hook): Likewise.
1450 (_bfd_mips_elf_final_link): Likewise.
1451 (_bfd_mips_elf_additional_program_headers): Likewise.
1452 (_bfd_mips_elf_modify_segment_map): Likewise.
1453 (_bfd_mips_elf_relocate_section): Likewise.
1454 * elf32-mips.c (mips_elf32_object_p): Move contents into
1455 _bfd_mips_elf_object_p.
1456 (mips_elf_additional_program_headers): Rename to
1457 _bfd_mips_elf_additional_program_headers.
1458 (mips_elf_modify_segment_map): Rename to
1459 _bfd_mips_elf_modify_segment_map.
1460 (elf_mips_abi_name): Change prototype.
1461 (mips_elf32_section_from_shdr): Merge into
1462 _bfd_mips_elf_section_from_shdr.
1463 (mips_elf32_section_processing): Merge into
1464 _bfd_mips_elf_section_processing.
1465 (mips_elf_final_link): Rename to _bfd_mips_elf_final_link. Invoke
1466 the right back-end ELF linker.
1467 (mips_elf_relocate_section): Rename to
1468 _bfd_mips_elf_relocate_section. Clean up. Adjust for 64-bit code.
1469 (mips_elf_link_output_symbol_hook): Rename to
1470 _bfd_mips_elf_link_output_symbol_hook.
1471 (mips_elf_create_dynamic_section): Rename to
1472 _bfd_mips_elf_create_dynamic_section.
1473 (mips_elf_check_relocs): Rename to _bfd_mips_elf_check_relocs.
1474 Adjust for 64-bit code. Use mips_elf_got_section.
1475 (mips_elf_adjust_dynamic_symbol): Rename to
1476 _bfd_mips_elf_adjust_dynamic_symbol. Use
1477 mips_elf_allocate_dynamic_relocations.
1478 (mips_elf_finish_dynamic_symbol): Rename to
1479 _bfd_mips_elf_finish_dynamic_symbol. Use mips_elf_got_section.
1480 Adjust for 64-bit code.
1481 (mips_elf_finish_dynamic_sections): Rename to
1482 _bfd_mips_elf_finish_dynamic_sections. Adjust for 64-bit code.
1483 (mips_elf_always_size_sections): Rename to
1484 _bfd_mips_elf_always_size_sections.
1485 (mips_elf_add_symbol_hook): Rename to
1486 _bfd_mips_elf_add_symbol_hook.
1487 (mips_elf_next_lo16_addend): Constify.
1488 (mips_elf_calculate_relocation): Likewise.
1489 (mips_elf_obtain_contents): Likewise.
1490 (mips_elf_perform_relocation): Likewise.
1491 (mips_elf_create_dynamic_relocation): Likewise.
1492 (mips_elf_allocate_dynamic_relocations): New function.
1493 (MIPS_ELF_REL_DYN_SECTION_NAME): New macro.
1494 (MIPS_ELF_REL_SIZE): Likewise.
1495 (MIPS_ELF_DYN_SIZE): Likewise.
1496 (MIPS_ELF_GOT_SIZE): Likewise.
1497 (MIPS_ELF_SYM_SIZE): Likewise.
1498 (MIPS_ELF_LOG_FILE_ALIGN): Likewise.
1499 (MIPS_ELF_GET_WORD): Likewise.
1500 (MIPS_ELF_PUT_WORD): Likewise.
1501 (MIPS_ELF_ADD_DYNAMIC_ENTRY): Likewise.
1502 (STUB_LW): Conditionalize for 64-bit value.
1503 (elf_mips_howto_table): Add R_MIPS_HIGHER and R_MIPS_HIGHEST
1504 entries.
1505 (_bfd_mips_elf_merge_private_bfd_data): Merge e_ident[EI_CLASS].
1506 Check it for inconsistency.
1507 (_bfd_mips_elf_print_private_bfd_data): Print ABI=64 for 64-bit
1508 ABI.
1509 (_bfd_mips_elf_fake_sections): Remove duplicate handling of
1510 .msym.
1511 (mips_elf_global_got_index): Use MIPS_ELF_GOT_SIZE.
1512 (mips_elf_got_offset_from_index): Use misp_elf_got_section.
1513 (mips_elf_create_local_got_entry): Use MIPS_ELF_GOT_SIZE.
1514 (mips_elf_local_got_index): Likewise.
1515 (mips_elf_got_page): Likewise.
1516 (mips_elf_got_info): Likewise.
1517 (mips_elf_create_dynamic_relocation): Handle 32-bit/64-bit split.
1518 (ELF_DYNAMIC_INTERPRETER): Handle 64-bit code.
1519 (mips_elf_create_dynamic_sections): Use MIPS_ELF_LOG_FILE_ALIGN,
1520 instead of constant `2'.
1521 (mips_elf_create_got_section): Tidy. Use MIPS_ELF_GOT_SIZE.
1522 (mips_elf_create_msym_section): Use MIPS_ELF_LOG_FILE_ALIGN.
1523 (mips_elf_size_dynamic_sections): Use
1524 MIPS_ELF_REL_DYN_SECTION_NAME, MIPS_ELF_GOT_SIZE,
1525 MIPS_ELF_ADD_DYNAMIC_ENTRY. Remove #if 0'd code.
1526 Adjust all releveant entries in elf backend table.
1527 * elf64-mips.c (mips_elf64_section_from_shdr): Remove.
1528 (mips_elf64_section_processing): Likewise.
1529 Adjust elf backend entries to use _bfd_mips_elf variants now
1530 publicly available.
1531
1532 * elflink.h (elf_link_create_dynamic_sections): Handle non-standard
1533 hash-entry sizes.
1534 (size_dynamic_sections): Likewise.
1535 (elf_link_output_extsym): Likewise.
1536 * elf.c: (elf_fake_sections): Likewise.
1537 * libbfd.c (bfd_get): New macro.
1538 (bfd_put): Likewise.
1539 * bfd-in2.h: Regenerated.
1540
1541 1999-07-07 Mark Mitchell <mark@codesourcery.com>
1542
1543 * elf-bfd.h (elf_size_info): Add hash_entry_size,
1544 int_rels_per_ext_rel, swap_dyn_out, swap_reloc_in, swap_reloc_out,
1545 wap_reloca_in, and swap_reloca_out.
1546 * elflink.h (elf_link_read_relocs_from_section): Adjust to handle
1547 multiple internal relocations per external relocation.
1548 (link_read_relocs): Likewise.
1549 (elf_bfd_final_link): Likewise.
1550 (elf_link_input_bfd): Likewise.
1551 (elf_gc_mark): Likewise.
1552 (elf_gc_smash_unused_vtentry_relocs): Likewise.
1553 * elfcode.h (elf_swap_dyn_out): Adjust type to match
1554 elf_swap_dyn_in.
1555 (size_info): Add entries for new fields.
1556 * elf64-mips.c (mips_elf64_swap_reloc_out): Enable.
1557 (mips_elf64_be_swap_reloc_in): New function.
1558 (mips_elf64_be_swap_reloc_out): Likewise.
1559 (mips_elf64_be_swap_reloca_in): Likewise.
1560 (mips_elf64_be_swap_reloca_out): Likewise.
1561 (mips_elf64_size_info): Add entries for new fields.
1562
1563 1999-07-07 Ian Lance Taylor <ian@zembu.com>
1564
1565 * elflink.h (elf_bfd_final_link): Assert that section reloc_count
1566 field equals the new rel_count field.
1567 (elf_link_input_bfd): When doing a relocateable link, use the new
1568 rel_count field rather than the reloc_count field.
1569 (elf_reloc_link_order): Likewise.
1570 (elf_finish_pointer_linker_section): Likewise.
1571
1572 Based on patch from H.J. Lu <hjl@gnu.org>:
1573 * elflink.h (elf_merge_symbol): Permit a non-weak definition in a
1574 shared library to override a weak definition in a regular object.
1575
1576 Tue Jul 6 10:23:39 1999 Jeffrey A Law (law@cygnus.com)
1577
1578 * libhppa.h: Revert July 2, 1999 patch.
1579
1580 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): T mode selectors
1581 need to generate DLTIND relocations, not DLTREL relocations.
1582
1583 1999-07-05 Nick Clifton <nickc@cygnus.com>
1584
1585 * coffcode.h (coff_set_arch_mach_hook): Recognise arm 5
1586 architectures.
1587 (coff_set_flags): Recognise arm 5 architectures.
1588
1589 * cpu-arm.c: Add support for strongarm and arm9 cpus.
1590 Add support for armv5 architecture.
1591
1592 * archures.c: Add bfd_mach_arm_5 and bfd_mach_arm_5T.
1593
1594 * reloc.c: Add new, assembler only, ARM reloc:
1595 BFD_RELOC_ARM_ADRL_IMMEDIATE.
1596
1597 * bfd-in2.h: Regenerate.
1598
1599 1999-07-02 Mark Mitchell <mark@codesourcery.com>
1600
1601 * dwarf2.c (parse_comp_unit): Add ABBREV_LENGTH parameter.
1602 (_bfd_dwarf2_find_nearest_line): Add ADDR_SIZE parameter.
1603 * elf.c (_bfd_elf_find_nearest_line): Pass it.
1604 * elf32-arm.h (elf32_arm_find_nearest_line): Likewise.
1605 * elf32-mips.c (ABI_64_P): New macro.
1606 (IRIX_COMPAT): We are IRIX6-compatible if ABI_64_P.
1607 (_bfd_mips_elf_find_nearest_line): Adjust call to
1608 _bfd_dwarf2_find_nearest_line.
1609 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
1610 * libbfd.h: Regenerated.
1611
1612 1999-07-02 Ian Lance Taylor <ian@zembu.com>
1613
1614 * config.bfd: Add * at the end of i[3456]86-*-unixware.
1615
1616 Fri Jul 2 12:21:10 1999 Jeffrey A Law (law@cygnus.com)
1617
1618 * libhppa.h (HPPA_R_ARG_RELOC): Delete.
1619 (HPPA_R_CONSTANT, HPPA_R_ADDEND): Likewise.
1620
1621 1999-07-01 Mark Mitchell <mark@codesourcery.com>
1622
1623 * elf-bfd.h (bfd_elf_section_data): Add rel_count and rel_count2
1624 fields.
1625 (_bfd_elf_init_reloc_shdr): New function.
1626 * elf.c (_bfd_elf_new_section_hook): Use bfd_zalloc, rather than
1627 bfd_alloc followed by memset.
1628 (_bfd_elf_init_reloc_shdr): New function, split out from ...
1629 (elf_fake_sections): Here.
1630 (assign_section_numbers): Assign section numbers for the second
1631 relocation section, if required.
1632 * elflink.h (elf_link_output_relocs): New function.
1633 (elf_link_size_reloc_section): Likewise.
1634 (elf_bfd_final_link): Use elf_link_size_reloc_section.
1635 (elf_link_input_bfd): Use elf_link_output_relocs.
1636
1637 * elf32-mips.c (_bfd_mips_elf_fake_sections): Use
1638 _bfd_elf_init_reloc_shdr to initialize rel_hdr2.
1639
1640 Thu Jul 1 13:58:48 1999 Jeffrey A Law (law@cygnus.com)
1641
1642 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle R_PCREL_CALL
1643 with 22bit format.
1644
1645 1999-06-28 Mark Mitchell <mark@codesourcery.com>
1646
1647 * elf32-mips.c (mips_elf_got_info): Move declaration before
1648 prototypes. Change global_gotsym to be a pointer to a hash entry,
1649 rather than a number index.
1650 (mips_elf_link_hash_entry): Move declaration before prototypes.
1651 (mips_elf_irix6_finish_dynamic_symbol): New function.
1652 (mips_elf_sign_extend): Likewise.
1653 (mips_elf_high): Likewise.
1654 (mips_elf_higher): Likewise.
1655 (mips_elf_highest): Likewise.
1656 (mips_elf_global_got_index): Likewise.
1657 (mips_elf_local_got_index): Likewise.
1658 (mips_elf_got_offset_from_index): Likeiwse.
1659 (mips_elf_record_global_got_symbol): Likewise.
1660 (mips_elf_got_page): Likewise.
1661 (mips_elf_next_lo16_addend): Likewise.
1662 (mips_elf_calculate_relocation): Likewise.
1663 (mips_elf_obtain_contents): Likewise.
1664 (mips_elf_perform_relocation): Likewise.
1665 (mips_elf_assign_gp): Likewise.
1666 (mips_elf_sort_hash_table_f): Likewise.
1667 (mips_elf_sort_hash_table): Likewise.
1668 (mips_elf_got_section): Likewise.
1669 (mips_elf_got_info): Likewise.
1670 (mips_elf_create_local_got_entry): Likewise.
1671 (mips_elf_got16_entry): Likewise.
1672 (mips_elf_create_dynamic_relocation): Likewise.
1673 (elf_mips_howto_table): Add description of R_MIPS_SCN_DISP.
1674 (mips_elf_final_gp): Use mips_elf_assign_gp.
1675 (_bfd_mips_elf_symbol_processing): Don't move SHN_COMMON symbols
1676 into SHN_SCOMMON automatically on IRIX6.
1677 (mips_elf_add_symbol_hook): Likewise.
1678 (mips_elf_relocate_section): Rewrite, using
1679 mips_elf_calculate_relocation and mips_elf_perform_relocation.
1680 (mips_elf_create_dynamic_section): Use MIPS_ELF_STUB_SECTION_NAME.
1681 Don't deal with .rld_map on IRIX6.
1682 (mips_elf_create_got_section): Adjust use of global_gotsym. Set
1683 section flags appropriately for .got.
1684 (mips_elf_check_relocs): Handle IRIX6 relocations making use of
1685 the got. Call mips_elf_record_global_got_symbol and allocate
1686 local got space appropriately.
1687 (mips_elf_size_dynamic_sections): Use bfd_byte *, not unsigned
1688 char *. Rework calculation of GOT size. Sort dynamic symbol
1689 table entries so entries that do not require GOT entries appear at
1690 the beginning. Don't use DT_MIPS_HIPAGENO on IRIX6. Remove dead
1691 code dealing with DT_INIT and DT_FINI. Remove fiddling with
1692 global_gotsym.
1693 (mips_elf_finish_dynamic_symbol): Adjust creation of global GOT
1694 entries.
1695 (mips_elf_finish_dynamic_symbol): Use
1696 mips_elf_irix6_finish_dynamic_symbol.
1697 (mips_elf_finish_dynamic_sections): Correct off-by-one error
1698 setting DT_MIPS_UNREFEXTNO. Adjust setting of DT_MIPS_GOTSYM for
1699 change to global_gotsym. Set DT_MIPS_OPTIONS on IRIX6.
1700
1701 1999-06-30 Ian Lance Taylor <ian@zembu.com>
1702
1703 * elf32-mips.c (mips_elf_final_link): Don't set CPIC when doing a
1704 relocateable link. From Ralf Baechle <ralf@uni-koblenz.de>.
1705
1706 1999-06-04 Philip Blundell <philb@gnu.org>
1707
1708 * elf32-arm.h (elf_backend_got_header_size): Define.
1709 (elf_backend_plt_header_size): Likewise.
1710
1711 1999-06-28 Jim Pick <jim@jimpick.com>
1712
1713 * elf32-arm.h (elf32_arm_relocate_section): Mind no_undefined
1714
1715 Tue Jun 29 02:25:03 1999 Jeffrey A Law (law@cygnus.com)
1716
1717 * elf-hppa.c (elf_hppa_howto_table): Use bfd_elf_generic_reloc as
1718 relocation function.
1719 * elf32-hppa.c (hppa_elf_reloc): Kill unused/unwanted function.
1720
1721 1999-06-27 Mark Mitchell <mark@codesourcery.com>
1722
1723 * elf32-mips.c (MIPS_ELF_SRDATA_SECTION_NAME): New macro.
1724 (MIPS_ELF_OPTIONS_SECTION_NAME): Likewise.
1725 (MIPS_ELF_STUB_SECTION_NAME): Likewise.
1726 (_bfd_mips_elf_section_from_shdr): Use them.
1727 (_bfd_mips_elf_fake_sections): Likewise. Add .srdata to the list
1728 of GP-relative sections.
1729 (_bfd_mips_elf_set_section_contents): Use them.
1730 (_bfd_mips_elf_section_processing): Share code between .sdata and
1731 .lit4/.lit8 sections. Set appropriate flags for .srdata.
1732 (mips_elf_additional_program_headers): Add handling for
1733 PT_MIPS_OPTIONS segment on IRIX6.
1734 (mips_elf_modify_segment_map): Likeiwse.
1735 (mips_elf_final_link): Set EF_MIPS_CPIC when required by the ABI.
1736 Include the options sections on IRIX6. Don't look for GP-relative
1737 sections by name; use SHF_MIPS_GPREL instead.
1738 (ELF_DYNAMIC_INTERPRETER): Adjust to use /usr/lib32/libc.so.1 for
1739 the N32 ABI.
1740 (mips_elf_create_dynamic_sections): Don't muck about with section
1741 alignments and such on IRIX6.
1742 (mips_elf_adjust_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME.
1743 (mips_elf_size_dynamic_sections): Likewise. Adjust to handle the
1744 fact that ELF_DYNAMIC_INTERPRETER is no longer a constant. Use
1745 bfd_zalloc rather than bfd_alloc and memset.
1746 (mips_elf_finish_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME.
1747 Don't assert the existence of .rld_map on IRIX6.
1748 (mips_elf_finish_dynamic_sections): Use MIPS_ELF_STUB_SECTION_NAME.
1749
1750 * elf32-mips.c (mips_elf_adjust_dynindx): Remove.
1751 (mips_elf_size_dynamic_sections): Use _bfd_elf_link_adjust_dynindx
1752 instead.
1753
1754 1999-06-26 Mark Mitchell <mark@codesourcery.com>
1755
1756 * elf32-mips.c (mips_elf_swap_msym_in): New function.
1757 (mips_elf_swap_msym_out): New function.
1758 (mips_elf_create_msym_section): Likewise.
1759 (MIPS_ELF_MSYM_SECTION_NAME): New macro.
1760 (_bfd_mips_elf_final_write_processing): Set sh_link for .msym.
1761 (_bfd_mips_elf_section_from_shdr): Reject an SHT_MIPS_MSYM
1762 section not named .msym.
1763 (_bfd_mips_elf_fake_sections): Use MIPS_ELF_MSYM_SECTION_NAME, not
1764 .msym directly. Set appropriate attributes for the .msym
1765 section.
1766 (mips_elf_link_hash_entry): Add min_dyn_reloc_index field.
1767 (mips_elf_link_hash_newfunc): Clear it.
1768 (mips_elf_create_dynamic_sections): Create the .msym section
1769 on IRIX6.
1770 (mips_elf_size_dynamic_sections): Allocate space for the
1771 .msym section. Add a DT_MIPS_MSYM entry.
1772 (mips_elf_finish_dynamic_symbol): Write out a .msym entry for
1773 the symbol.
1774 (mips_elf_finish_dynamic_sections): Assign a value for
1775 DT_MIPS_MSYM. Add .msym entries for the section symbols as well.
1776
1777 * elf32-mips.c (irix_compat_t): New enumeration.
1778 (ABI_N32_P): New macro.
1779 (IRIX_COMPAT): Likewise.
1780 (SGI_COMPAT): Implement in terms of IRIX_COMPAT.
1781 (mips_elf_relocate_section): Fix typo.
1782
1783 1999-06-26 Mumit Khan <khan@xraylith.wisc.edu>
1784
1785 * peicode.h (coff_swap_scnhdr_out): Mark non readonly BFD sections
1786 as writable PE sections.
1787
1788 1999-06-26 David Mosberger <davidm@hpl.hp.com>
1789
1790 * dwarf2.c (struct arange): New type.
1791 (struct comp_unit): Replace LOW and HIGH by member ARANGE.
1792 (arange_add): New function.
1793 (decode_line_info): Keep track of address ranges that a compilation
1794 unit covers.
1795 (comp_unit_contains_address): Return true if address is contained
1796 in _any_ of the address ranges associated with a compilation unit.
1797 (_bfd_dwarf2_find_nearest_line): Call comp_unit_find_nearest_line
1798 on the first comp_unit that contains the address.
1799
1800 1999-06-26 David Mosberger <davidm@hpl.hp.com>
1801
1802 * dwarf2.c (struct dwarf2_debug): Add member dwarf_line_buffer.
1803 (decode_line_info): Add variable STASH and initialize it to point
1804 to the per-bfd dwarf2_debug info. Remove static variable
1805 dwarf_line_buffer and use stash->dwarf_line_buffer in its place.
1806
1807 1999-06-26 Ian Lance Taylor <ian@zembu.com>
1808
1809 * elflink.h (elf_link_output_extsym): It's OK for a -Bsymbolic
1810 shared library to have an undefined symbol.
1811
1812 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:
1813 * elf32-ppc.c (ppc_elf_relocate_section): Fix last patch.
1814
1815 Thu Jun 24 20:59:11 1999 Jeffrey A Law (law@cygnus.com)
1816
1817 * elf-hppa.c (elf_hppa_final_write_processing): New function.
1818 * elf32-hppa.c: Remove everything related to symbol extension
1819 sections & records. Use the common elf_hppa_final_write_processing.
1820
1821 1999-06-22 Mark Mitchell <mark@codesourcery.com>
1822
1823 * elflink.h (size_dynamic_sections): Use user-specified init/fini
1824 functions instead of _init/_fini if requested.
1825
1826 1999-06-23 Ian Lance Taylor <ian@zembu.com>
1827
1828 * elf.c (bfd_section_from_shdr): Avoid crashing on a bogus sh_link
1829 field.
1830
1831 1999-06-22 Ian Lance Taylor <ian@zembu.com>
1832
1833 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:
1834 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set unused dynindx
1835 field to 0, not -1.
1836 (ppc_elf_finish_dynamic_sections): Check for positive section
1837 dynindx field, rather than comparing against -1.
1838 (ppc_elf_relocate_section): Only return false if undefined_symbol
1839 or reloc_overflow fail, not always upon encountering an error.
1840
1841 1999-06-22 Mark Mitchell <mark@codesourcery.com>
1842
1843 * elflink.h (link_read_relocs): Explicitly cast external_relocs to
1844 bfd_byte * before performing pointer arithmetic.
1845
1846 Tue Jun 22 13:06:25 1999 Jeffrey A Law (law@cygnus.com)
1847
1848 * elf-hppa.h: New file. Common stuff for elf32 and elf64 PA
1849 support.
1850 * elf32-hppa.c: Include elf-hppa.h.
1851 (ARCH_SIZE): Define.
1852 (elf_hppa_reloc_type_lookup): Delete. Found in the common code
1853 now.
1854 (elf32_hppa_info_to_howto): Similarly.
1855 (elf_hppa_howto_table): Similarly.
1856 (elf_hppa_reloc_type_lookup): Similarly.
1857 (hppa_elf_gen_reloc_type): Similarly.
1858 * elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete.
1859
1860 1999-06-22 Nick Clifton <nickc@cygnus.com>
1861
1862 * elf32-v850.c (v850_elf_final_link_relocate): Catch overflow
1863 handling R_V850_22_PCREL relocation.
1864
1865 1999-06-21 Ian Lance Taylor <ian@zembu.com>
1866
1867 * coff-arm.c (arm_emit_base_file_entry): Explicitly declare return
1868 type.
1869
1870 Sun Jun 20 14:13:57 1999 Richard Henderson <rth@cygnus.com>
1871
1872 * section.c (_bfd_strip_section_from_output): Ignore sections
1873 DISCARDed by the link script.
1874
1875 1999-06-19 Ian Lance Taylor <ian@zembu.com>
1876
1877 * elflink.h (elf_link_remove_section_and_adjust_dynindices):
1878 Remove unused local variable spp.
1879
1880 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't crash if
1881 the entry symbol is not set.
1882
1883 Fri Jun 18 04:24:57 1999 Richard Henderson <rth@cygnus.com>
1884
1885 * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust
1886 GPDISP or LITUSE in a relocatable link.
1887
1888 Thu Jun 17 21:24:43 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1889
1890 * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc.
1891 * (alloc_dwarf1_func): Likewise.
1892
1893 Wed Jun 16 03:09:57 1999 Jeffrey A Law (law@cygnus.com)
1894
1895 * libhppa.h: Fix various formatting errors.
1896 (assemble_3); Rewrite using CATENATE.
1897 (assemble_17): Fix various bugs.
1898
1899 1999-06-16 Nick Clifton <nickc@cygnus.com>
1900
1901 * elf32-mcore.c (R_MCORE_RAW): Fix definition.
1902
1903 1999-06-15 Richard Henderson <rth@cygnus.com>
1904
1905 * section.c (SEC_SHORT): Define.
1906 * bfd-in2.h: Rebuild.
1907
1908 1999-06-13 Mark Mitchell <mark@codesourcery.com>
1909
1910 * elflink.h (elf_link_remove_section_and_adjust_dynindices):
1911 Remove abfd parameter. Use _bfd_strip_section_from_output.
1912 (bfd_elf_size_dynamic_sections): Adjust callers accordingly.
1913
1914 * elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function.
1915 * elflink.c (_bfd_elf_link_adjust_dynindx): Define it.
1916 * elflink.h (elf_link_remove_section_and_adjust_dynindices): New
1917 function.
1918 (bfd_elf_size_dynamic_sections): Use it.
1919
1920 1999-06-13 Alan Modra <alan@spri.levels.unisa.edu.au>
1921
1922 * elf32-i386.c (elf_howto_table): Change R_386_PC8 from
1923 complain_overflow_bitfield to complain_overflow_signed.
1924
1925 1999-06-13 Mark Mitchell <mark@codesourcery.com>
1926
1927 * elflink.h (elf_link_read_relocs_from_section): New function,
1928 split out from ...
1929 (elf_link_read_relocs): Here. Use it for both relocation
1930 sections.
1931
1932 1999-06-12 Mark Mitchell <mark@codesourcery.com>
1933
1934 * elfcode.h (elf_slurp_reloc_table_from_section): Don't assume
1935 asect->reloc_count is valid.
1936
1937 1999-06-12 Ian Lance Taylor <ian@zembu.com>
1938
1939 * elf32-mips.c (mips_elf32_section_processing): Permit a
1940 SHT_MIPS_REGINFO section to have a size of 0.
1941
1942 1999-06-12 David O'Brien <obrien@freebsd.org>
1943
1944 * config.bfd (alpha*-*-freebsd*): New target.
1945 (i[3456]86-*-freebsd*): Now defaults to ELF.
1946
1947 1999-06-11 Ian Lance Taylor <ian@zembu.com>
1948
1949 * reloc.c (_bfd_relocate_contents): Permit bitfield relocations to
1950 wrap if the relocation covers the high bit of an address.
1951
1952 * dwarf2.c (decode_line_info): Remove unused variable first_time.
1953
1954 1999-06-10 Jakub Jelinek <jj@ultra.linux.cz>
1955
1956 * elf64_sparc.c (sparc64_elf_relocate_section): Use R_SPARC_max_std
1957 instead of R_SPARC_max.
1958 (sparc64_elf_info_to_howto): Likewise.
1959 * elf32_sparc.c (elf32_sparc_relocate_section): Likewise.
1960 (elf32_sparc_info_to_howto): Likewise; handle vtable relocations.
1961
1962 1999-06-07 Richard Henderson <rth@cygnus.com>
1963
1964 * section.c (_bfd_strip_section_from_output): Remove output
1965 sections with no initial link_order.
1966
1967 1999-06-07 Nick Clifton <nickc@cygnus.com>
1968
1969 * elf32-m88k.c (ELF_MAXPAGESIZE): Define.
1970
1971 Mon Jun 7 11:49:43 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1972
1973 * Makefile.am (SOURCE_HFILES): Add missing headers.
1974 * Makefile.in: Regenerated.
1975
1976 1999-06-06 Mark Mitchell <mark@codesourcery.com>
1977
1978 * elf32-mips.c (_bfd_mips_elf_print_private_data): Recognize
1979 the N32 ABI.
1980
1981 1999-06-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1982
1983 * elf32-ppc.c (ppc_elf_relocate_section): Don't barf on out of
1984 range undefweak symbols.
1985 * hash.c: Add missing comma after @xref{}
1986 * linker.c: Likewise.
1987
1988 1999-06-04 Nick Clifton <nickc@cygnus.com>
1989
1990 * elfxx-target.h (ELF_MAXPAGESIZE): Produce an error message
1991 if not defined.
1992 * elf32-gen.c (ELF_MAXPAGESIZE): Define.
1993 * elf32-i860.c (ELF_MAXPAGESIZE): Define.
1994 * elf32-i960.c (ELF_MAXPAGESIZE): Define.
1995 * elf64-gen.c (ELF_MAXPAGESIZE): Define.
1996
1997 1999-06-04 Ian Lance Taylor <ian@zembu.com>
1998
1999 * Makefile.am: Rebuild dependencies.
2000 (BFD32_BACKENDS): Add dwarf1.lo.
2001 (BFD32_BACKENDS_CFILES): Add dwarf1.c.
2002 * Makefile.in: Rebuild.
2003
2004 1999-06-04 Nick Clifton <nickc@cygnus.com>
2005
2006 * Makefile.am: Add epoc-arm-pe target.
2007 * Makefile.in: Regenerate.
2008 * pe-arm.c: Only redefine interworking function names if they have
2009 not already been redefined.
2010 * pei-arm.c: Only redefine interworking function names if they have
2011 not already been redefined.
2012 * epoc-pe-arm.c: Redefine interworking function names to avoid a
2013 name space clash.
2014 * epoc-pei-arm.c: Redefine interworking function names to avoid a
2015 name space clash.
2016
2017 1999-06-03 Nick Clifton <nickc@cygnus.com>
2018
2019 * elfxx-target.h (ELF_MAXPAGESIZE): Default to 0x1000 not 1.
2020
2021 Fri Jun 4 10:05:11 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2022
2023 * elf.c (elf_fake_sections): Undo change of 1999-05-10.
2024
2025 Fri Jun 4 03:10:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2026
2027 * elf32-sh.c (sh_elf_relax_delete_bytes): Fix setting of
2028 start / stop for recalculating of r_addend of R_SH_SWITCH*.
2029
2030 Fri Jun 4 02:53:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2031
2032 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH32
2033 in other text sections.
2034
2035 Fri Jun 4 02:29:34 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2036
2037 * libbfd.c (_bfd_generic_verify_endian_match): New function.
2038 * libbfd-in.h (_bfd_generic_verify_endian_match): Declare.
2039 * libbfd.h: Regenerate.
2040 * coff-sh.c (sh_merge_private_data): Delete.
2041 (coff_bfd_merge_private_bfd_data): Change to
2042 _bfd_generic_verify_endian_match.
2043 (elf32-sh.c): bfd_elf32_bfd_merge_private_bfd_data: Define.
2044
2045 1999-06-03 Ulrich Drepper <drepper@cygnus.com>
2046
2047 * elf32-arm.h: Fix typo: change ELF_MAXPAGE_SIZE to ELF_MAXPAGESIZE.
2048
2049 1999-06-03 Ian Lance Taylor <ian@zembu.com>
2050
2051 * bfd-in.h (bfd_elf32_arm_allocate_interworking_sections): Correct
2052 prototype.
2053 (bfd_elf32_arm_process_before_allocation): Likewise.
2054 * bfd-in2.h: Rebuild.
2055
2056 1999-06-03 David Mosberger <davidm@hpl.hp.com>
2057
2058 * dwarf2.c (struct line_info): Add member END_SEQUENCE to keep
2059 track of end_sequence markers.
2060 (add_line_info): Add END_SEQUENCE arg.
2061 (decode_line_info): Don't try to infer lo_pc and hi_pc from the
2062 debug-line info---it doesn't work right if a compilation unit
2063 consists of multiple discontiguous code-sequences. It would be
2064 worthwhile to optimize for the common case where a compilation
2065 unit results in a contiguous set of code sequences, but this is
2066 quite tricky to get right for arbitrary DWARF2 files.
2067 (lookup_address_in_line_info_table): Don't use the last line entry
2068 for a compilation unit for anything with an address higher than
2069 this line entry. Also, check for end_sequence markers to
2070 correctly handle discontinuities.
2071 (_bfd_dwarf2_find_nearest_line): When checking previously loaded
2072 compilation units, check all compilation units with each->high==0
2073 just like when reading compilation units.
2074
2075 * dwarf2.c (decode_line_info): Initialize table->files and
2076 table->last_line to NULL to avoid segfaults due to random
2077 values in these members.
2078 (concat_filename): Check for out-of-range file number before
2079 indexing filename table. Segfaults suck.
2080
2081 * dwarf2.c (decode_line_info): Don't truncate address to least
2082 significant 32 bits (breaks 64 bit targets).
2083 (lookup_address_in_function_table): Ditto.
2084 (comp_unit_contains_address): Ditto.
2085
2086 1999-06-02 Mark Mitchell <Mark Mitchell <mark@codesourcery.com>>
2087
2088 * elf32-mips.c (elf_mips_howto_table): Add R_MIPS_JALR.
2089 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
2090 (mips_elf64_howto_table_rela): Likewise.
2091
2092 * elfcode.h (elf_slurp_reloc_table_from_section): New function,
2093 split out from ...
2094 (elf_slurp_reloc_table): Here. Use it to handle the case where a
2095 single section has two associated relocation sections.
2096
2097 1999-06-02 Mark Salter <msalter@cygnus.com>
2098
2099 * coffcode.h (coff_set_alignment_hook): Set lma from s_vaddr if
2100 COFF_WITH_PE defined.
2101
2102 1999-06-02 Nick Clifton <nickc@cygnus.com>
2103
2104 * pe-arm.c: Rename global arm interworking functions to avoid name
2105 collision when all targets BFD is built.
2106 * pei-arm.c: Ditto.
2107
2108 1999-05-31 Mark Mitchell <mark@codesourcery.com>
2109
2110 * elf-bfd.h (elf_backend_data): Remove use_rela_p. Add
2111 may_use_rel_p, may_use_rela_p, default_use_rela_p.
2112 (bfd_elf_section_data): Add use_rela_p.
2113 * elf.c (bfd_section_from_shdr): Set use_rela_p appropriately.
2114 (_bfd_elf_new_section_hook): Likewise.
2115 (elf_fake_sections): Use may_use_rela_p, etc., instead of
2116 use_rela_p.
2117 (_bfd_elf_copy_private_section_data): Copy use_rela_p.
2118 * elfcode.h (write_relocs): Determine whether or not use rela
2119 relocs based on the relocation section header.
2120 * elflink.c (_bfd_elf_create_dynamic_sections): Use default_use_rela_p
2121 instead of use_rela_p.
2122 * elfxx-target.h (elf_backend_may_use_relp): New macro.
2123 (elf_backend_may_use_rela_p): Likewise.
2124 (elf_backend_default_use_rela_p): Likewise.
2125 (elfNN_bed): Use them.
2126
2127 Wed Jun 2 12:38:49 1999 Miodrag Vallat <miodrag@multimania.com>
2128
2129 * hosts/alphalinux.h (TRAD_CORE_EXTRA_SIZE_ALLOWED): Expand to 4096.
2130
2131 Tue Jun 1 17:57:58 1999 Mark P. Mitchell <mitchell@n02.acl.lanl.gov>
2132
2133 * reloc.c (BFD_RELOC_MIPS_SUB): New relocation.
2134 (BFD_RELOC_MIPS_GOT_PAGE): Likewise.
2135 (BFD_RELOC_MIPS_GOT_OFST): Likewise.
2136 (BFD_RELOC_MIPS_GOT_DISP): Likewise.
2137 * bfd-in2.h: Regenerated.
2138 * libbfd.h: Likewise.
2139 * elf32-mips.c (mips_info_to_howto_rela): New function.
2140 (USE_REL): Adjust for new conventions.
2141 (MINUS_ONE): New macro.
2142 (elf_mips_howto_table): Add R_MIPS_SUB.
2143 (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, MIPS_GOT_OFST,
2144 and MIPS_GOT_DISP.
2145 (mips_elf_final_write_processing): Set sh_link, not sh_info, for a
2146 .MIPS.content section.
2147 (_bfd_mips_elf_fake_sections): Treat all sections that begin
2148 with .MIPS.content as .MIPS.content sections. Set
2149 SHF_MNIPS_NOSTRIP for such section.
2150 (elf_info_to_howto): Define to mips_info_to_howto_rela.
2151 * elf64-mips.c (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE,
2152 MIPS_GOT_OFST, and MIPS_GOT_DISP.
2153
2154 Wed Jun 2 11:51:12 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2155
2156 * vms-misc.c (_bfd_vms_hash_newfunc): Fix use of uninitialized
2157 variable.
2158
2159 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Avoid ambigous
2160 `else'.
2161
2162 1999-05-30 Philip Blundell <philb@gnu.org>
2163
2164 * elf32-arm.h (elf32_arm_relocate_section): Reinstate change of
2165 1993-03-25 (!!). Take into account the bitmasks for the reloc so
2166 the addend does not overflow into the rest of the word.
2167
2168 1999-05-29 Nick Clifton <nickc@cygnus.com>
2169
2170 * bfd-in.h: Amend prototype for
2171 bfd_elf32_arm_process_before_allocation .
2172 * bfd-in.h: Regenerate.
2173
2174 * elfarm-oabi.c (NUM_ELEM): New macro: Compute the number of
2175 elements in a fixed sized array.
2176 (ARM_ELF_ABI_VERSION): Define.
2177 (ARM_ELF_OS_ABI_VERSION): Define.
2178 (R_ARM_THM_ABS5): Fix rightshift and size.
2179 (R_ARM_THM_PC22): Fix size.
2180 (R_ARM_PLT32): Define Howto.
2181 (find_howto): New function: Locate a howto based on a reloc
2182 number.
2183 (elf32_arm_info_to_howto): Use find_howto if necessary.
2184 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
2185 bfd_reloc_code_real_type.
2186 (elf32_arm_reloc_map[]): Add entries for BFD_RELOC_VTABLE_INHERIT
2187 and BFD_RELOC_VTABLE_ENTRY.
2188 (elf32_arm_reloc_type_lookup): Use find_howto if necessary.
2189
2190 * elfarm-nabi.c (NUM_ELEM): New macro: Compute the number of
2191 elements in a fixed sized array.
2192 (ARM_ELF_ABI_VERSION): Define.
2193 (ARM_ELF_OS_ABI_VERSION): Define.
2194 (R_ARM_THM_ABS5): Fix rightshift and size.
2195 (R_ARM_THM_PC22): Fix size.
2196 (elf32_arm_info_to_howto_rel): Rename to elf32_arm_info_to_howto.
2197 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
2198 bfd_reloc_code_real_type.
2199
2200 * elf32-arm.h (struct elf32_arm_link_hash_table): Add new field:
2201 no_pipeline_knowledge.
2202 (elf32_arm_link_hash_create): Initialise new field to zero.
2203 (bfd_elf32_arm_process_before_allocation): Add new paraemter:
2204 no_pipeline_knowledge. Use this parameter to initialise the field
2205 in the globals data structure.
2206 (elf32_arm_final_link_relocate): Only add in pipeline offset if
2207 no_pipeline_knowledge is false and the binary is from an old
2208 toolchain.
2209 (elf32_arm_merge_private_data): Generate an error if an attempt is
2210 made to linl together big endian and little endian code.
2211 (elf32_arm_post_process_headers): New function: Initialise the
2212 EI_OSABI and EI_ABIVERSION fields of the newly created ELF program
2213 header.
2214 (elf_backend_post_process_headers): Define.
2215
2216 1999-05-28 Nick Clifton <nickc@cygnus.com>
2217
2218 * elf-bfd.h (struct elf_backend_data): Add new field:
2219 elf_backend_post_process_headers.
2220
2221 * elfxx-target.h (elf_backend_post_process_headers): Define to
2222 NULL if not already defined.
2223 (elfNN_bed): Initialise elf_backend_post_process_headers field.
2224
2225 * elf.c (prep_headers): Set the EI_OSABI and EI_ABIVERSION fields
2226 to zero.
2227 (_bfd_elf_compute_section_file_positions): Call
2228 elf_backend_post_process_headers if defined.
2229
2230 1999-05-28 Ian Lance Taylor <ian@zembu.com>
2231
2232 * configure.in: Check whether getuid and getgid exist.
2233 * archive.c: Define getuid and getgid as macros if HAVE_GETUID or
2234 HAVE_GETGID are not defined, respectively.
2235 (bfd_write_armap): Don't special case on _WIN32 for getuid and
2236 getgid.
2237 * configure.host: Set ac_cv_func_get{ug}id for *-*-windows*.
2238 * configure, config.in: Rebuild.
2239
2240 1999-05-28 Martin Dorey <mdorey@madge.com>
2241
2242 * elf32-i960.c: New file.
2243 * elf.c (prep_headers): Handle bfd_arch_i960.
2244 * targets.c (bfd_target_vector): Add &bfd_elf32_i960_vec.
2245 * config.bfd (i960-*-elf*): New target.
2246 * configure.in (bfd_elf32_i960_vec): New target vector.
2247 * Makefile.am (BFD32_BACKENDS): Add elf32-i960.lo.
2248 (BFD32_BACKENDS_CFILES): Add elf32-i960.c.
2249 * Makefile.in, aclocal.m4, configure: Rebuild.
2250
2251 1999-05-27 Nick Clifton <nickc@cygnus.com>
2252
2253 * elfarm-oabi.c (elf32_arm_howto_table): Add entry for
2254 R_ARM_PLT32.
2255 (find_howto): New function: Find entries in the
2256 elf32_arm_howto_table.
2257 (elf32_arm_info_to_howto): Use find_howto if the entry cannot be
2258 computed simply.
2259 (elf32_arm_reloc_type_lookup): Add lookup for
2260 BFD_RELOC_ARM_PLT32.
2261
2262 1999-05-25 Philip Blundell <pb@nexus.co.uk>
2263
2264 * bfd/elf32-arm.h (elf32_arm_link_hash_newfunc): New function.
2265 (elf32_arm_link_hash_table_create): Use above function as the
2266 constructor for hash table entries.
2267 (elf32_arm_relocate_section): Avoid crash when there is no output
2268 section.
2269 (elf32_arm_final_link_relocate): New parameter h.
2270 (elf32_arm_relocate_section): Pass symbol hash entry to above
2271 routine.
2272 (elf32_arm_gc_sweep_hook, elf32_arm_check relocs): Correct
2273 comments.
2274
2275 1999-05-25 Catherine Moore <clm@cygnus.com>
2276
2277 * coff-arm.c (coff_arm_relocate_section): Don't emit
2278 base file entries for pc-relative values.
2279
2280 1999-05-25 DJ Delorie <dj@cygnus.com>
2281
2282 * peicode.h (coff_swap_sym_in): When we create the actual section
2283 to reflect the not-there section C_SECTION symbols refer to,
2284 change the symbol class to C_STAT as the section is now really
2285 there.
2286
2287 1999-05-24 Philip Blundell <pb@nexus.co.uk>
2288
2289 * elf32-arm.h (elf32_arm_relocate_section): Undo change of
2290 1999-03-25.
2291
2292 Mon May 17 13:35:35 1999 Stan Cox <scox@cygnus.com>
2293
2294 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed
2295 F_PIC_INT to F_PIC.
2296 * coffcode.h (coff_set_arch_mach_hook): Added F_ARM_2a, and
2297 F_ARM_3M labels. Changed F_PIC_INT to F_PIC.
2298
2299 1999-05-16 Nick Clifton <nickc@cygnus.com>
2300
2301 * coff-mcore.c (in_reloc_p): Reinstate.
2302
2303 1999-05-15 Nick Clifton <nickc@cygnus.com>
2304
2305 * reloc.c (BFD_RELOC_MCORE_RVA): Define.
2306 * bfd-in2.h: Regenerate.
2307 * coff-mcore.c (in_reloc_p): Remove defintion.
2308 (mcore_coff_howto): Add IMAGE_REL_MCORE_RVA.
2309 (mcore_coff_reloc_type_lookup): Map BFD_RELOC_RVA to
2310 IMAGE_REL_MCORE_RVA.
2311 (coff_mcore_rtype_to_howto): Add special processing for
2312 IMAGE_REL_MCORE_RVA.
2313 (coff_mcore_relocate_section): Add support for
2314 IMAGE_REL_MCORE_RVA.
2315 * elf32-mcore (mcore_elf_howto_): Add R_MCORE_RELATIVE.
2316 (mcore_elf_reloc_type_lookup): Map BFD_RELOC_RVA to
2317 R_MCORE_RELATIVE.
2318 (mcore_elf_relocate_section): Delete redundant case labels.
2319
2320 Fri May 14 10:59:55 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2321
2322 * elf32-arm.h (elf32_arm_relocate_section): Fix operator
2323 precedence between bit-and and comparison.
2324
2325 Thu May 13 09:45:23 1999 Joel Sherrill (joel@OARcorp.com)
2326
2327 * config.bfd (i[3456]86*-*-rtems*, m68k*-*-rtems*): Added to
2328 list of target formats (targ_selvecs).
2329 (i[3456]86*-*-rtemself*, mips*el-*-rtems*): New targets.
2330 (powerpcle*-*rtems*, sh-*-rtemself*): New targets.
2331
2332 1999-05-10 DJ Delorie <dj@cygnus.com>
2333
2334 * ecoff.c (_bfd_ecoff_write_armap): give the symtab element a
2335 reasonable mode until "ar x" is smart enough to skip it (fixes
2336 gcc/libgcc.a builds on mips-ecoff targets
2337
2338 * coffcode.h (styp_to_sec_flags): Explain how COMDATs are supposed
2339 to work. Hack to support MS import libraries, which use different
2340 COMDAT types than GNU.
2341 (coff_slurp_symbol_table): C_SECTION symbols are local; they refer
2342 to implied zero-length sections (see peicode below)
2343 * coffgen.c (coff_get_normalized_symtab): Properly read long MS
2344 filename symbols, which use one *or more* auxents.
2345 * coffswap.h (coff_swap_aux_in): ditto
2346 * peicode.h (coff_swap_sym_in): Build the implied zero-length
2347 sections
2348
2349 Tue May 11 15:51:58 1999 Jeffrey A Law (law@cygnus.com)
2350
2351 * elf32-v850.c (v850_elf_howto_table): Make partial_inplace false
2352 for all relocations.
2353
2354 1999-05-10 Catherine Moore <clm@cygnus.com>
2355
2356 * bfd-in.h (bfd_arm_allocate_interworking_sections): Static
2357 if COFF_IMAGE_WITH_PE.
2358 (bfd_arm_process_before_allocation): Likewise.
2359 (bfd_arm_get_bfd_for_interworking): Likewise.
2360 * coff-arm.c: Likewise.
2361 * bfd-in2.h: Regenerate.
2362 * configure.in (armpe_little_vec): Remove coff-arm.lo.
2363 (armpe_big_vec): Likewise.
2364 * configure: Rebuild.
2365
2366 1999-05-10 Nick Clifton <nickc@cygnus.com>
2367
2368 * elf.c (elf_fake_sections): Check for .rel. as start of rel
2369 section, not just .rel. Same for .rela.
2370
2371 1999-05-07 Nick Clifton <nickc@cygnus.com>
2372
2373 * coff-mcore.c (coff_mcore_relocate_section): Replace assert about
2374 endianism with an error message.
2375
2376 Thu May 6 17:09:09 1999 Fred Fish <fnf@be.com>
2377
2378 * dwarf2.c (read_abbrevs): Change cast of dwarf_abbrev_buffer
2379 assignment from "unsigned char *" to "char *".
2380 (decode_line_info): Likewise for dwarf_line_buffer assignment.
2381
2382 1999-05-05 Catherine Moore <clm@cygnus.com>
2383
2384 * coff-arm.c (coff_arm_relocate_section): Add one to
2385 address of ARM_RVA32 thumb functions.
2386
2387 1999-05-05 Catherine Moore <clm@cygnus.com>
2388
2389 * elf32-m68k.c (elf32_m68k_set_private_flags): New.
2390 (elf32_m68k_copy_private_bfd_data): New.
2391 (elf32_m68k_merge_private_bfd_data): New.
2392 (elf32_m68k_print_private_bfd_data): New.
2393 (CPU32_FLAG): Define.
2394 (PLT_CPU32_ENTRY_SIZE): Define.
2395 (elf_cpu32_plt0_entry): Declare.
2396 (elf_cpu32_plt_entry): Declare.
2397 (elf_m68k_adjust_dynamic_symbol): Generate cpu32 plt entries.
2398 (elf_m68k_finish_dynamic_symbol): Likewise.
2399 (elf_m68k_finish_dynamic_sections): Likewise.
2400 (elf_backend_plt_header_size): Remove definition.
2401 (bfd_elf32_bfd_copy_private_bfd_data): Define.
2402 (bfd_elf32_bfd_merge_private_bfd_data): Define.
2403 (bfd_elf32_bfd_set_private_flags): Define.
2404 (bfd_elf32_bfd_print_private_bfd_data): Define.
2405
2406 Mon May 3 09:24:49 1999 Jeffrey A Law (law@cygnus.com)
2407
2408 * som.c (som_fixup_formats): Fix comments for R_SHORT_PCREL_MODE
2409 and R_LONG_PCREL_MODE.
2410
2411 1999-04-29 Nick Clifton <nickc@cygnus.com>
2412
2413 * coff-mcore.c (coff_mcore_relocate_section): Fix typos.
2414
2415 Fri Apr 28 16:36:19 1999 Stan Cox <scox@cygnus.com>
2416
2417 * elf32-sh.c (sh_elf_relocate_section): Include relocation addend
2418 in relocation calculation.
2419
2420 1999-04-26 Tom Tromey <tromey@cygnus.com>
2421
2422 * aclocal.m4, configure: Updated for new version of libtool.
2423
2424 1999-04-21 Nick Clifton <nickc@cygnus.com>
2425
2426 * coff-mcore.c: Add support for mcore relocs.
2427
2428 1999-04-20 Gavin Romig-Koch <gavin@cygnus.com>
2429
2430 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): Scrap the
2431 incorrect use EF_MIPS_xxBITPTRS.
2432
2433 1999-04-18 Ian Lance Taylor <ian@zembu.com>
2434
2435 * elf64-alpha.c (elf64_alpha_relax_section): Remove unused local
2436 variable insn.
2437
2438 * bfd-in2.h: Rebuild.
2439 * libbfd.h: Rebuild.
2440
2441 Sat Apr 17 20:55:15 1999 Catherine Moore <clm@cygnus.com>
2442
2443 * coff-arm.c (coff_arm_rtype_to_howto): Remove ARM26D transform.
2444 (coff_arm_relocate_section): Add ARM26D transform. Only
2445 change to ARM26D for relocateable links.
2446
2447 1999-04-16 Gavin Romig-Koch <gavin@cygnus.com>
2448
2449 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): New.
2450 (bfd_elf32_bfd_print_private_bfd_data): New.
2451
2452 1999-04-15 Doug Evans <devans@casey.cygnus.com>
2453
2454 * elf32-arm.h (elf32_arm_final_link_relocate): For R_ARM_THM_ABS5,
2455 refetch addend if USE_REL, add many comments regarding current state.
2456 For R_ARM_THM_PC22, refetch addend if USE_REL, simplify.
2457 * elfarm-nabi.c (elf32_arm_howto_table): For R_ARM_THM_ABS5, fix
2458 size and rightshift. For R_ARM_THM_PC22, fix bitsize.
2459 * elfarm-oabi.c (elf32_arm_howto_table): Ditto.
2460
2461 Wed Apr 14 14:33:08 1999 Richard Henderson <rth@cygnus.com>
2462
2463 * elf32-mips.c (_bfd_mips_elf_read_ecoff_info): Zero `debug'.
2464 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Likewise.
2465
2466 1999-04-13 David Mosberger <davidm@hpl.hp.com>
2467
2468 * dwarf2.c (decode_line_info): Don't truncate address to least
2469 significant 32 bits (breaks 64 bit targets).
2470 (lookup_address_in_function_table): Ditto.
2471 (comp_unit_contains_address): Ditto.
2472
2473 Tue Apr 13 21:27:19 1999 Catherine Moore <clm@cygnus.com>
2474
2475 * coff-arm.c (arm_emit_base_file_entry): New routine.
2476 (A2T3_OFFSET): Define.
2477 (T2A3_OFFSET): Define.
2478 (coff_arm_relocate_section): Emit base file entries for interworking
2479 stubs.
2480
2481 1999-04-13 Philip Blundell <philb@gnu.org>
2482
2483 * elfarm-nabi.c (elf32_arm_howto_table): Add dummy entries for
2484 relocs 17 through 19.
2485
2486 Sun Apr 11 01:25:17 1999 Richard Henderson <rth@cygnus.com>
2487
2488 * elfcode.h: Remove fnmatch.h.
2489 * elflink.h (elf_link_assign_sym_version): Call back to ld
2490 instead of calling fnmatch.
2491
2492 * config.bfd (i?86-*-beoself): Include pe vecs.
2493
2494 Sun Apr 11 01:14:06 1999 Richard Henderson <rth@cygnus.com>
2495
2496 * elf32-i386.c (elf_i386_finish_dynamic_sections): Allow .plt
2497 to go missing.
2498
2499 1999-04-10 Richard Henderson <rth@cygnus.com>
2500
2501 * elf32-i386.c (elf_i386_relocate_section): Mind no_undefined
2502 when trying to resolve dynamic symbol references.
2503 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2504 * elf32-mips.c (mips_elf_relocate_section): Likewise.
2505 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2506 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
2507 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
2508 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
2509 * elflink.h (elf_link_output_extsym): Likewise.
2510
2511 Sat Apr 10 15:12:09 1999 Richard Henderson <rth@cygnus.com>
2512
2513 * section.c (_bfd_strip_section_from_output): New function moved from
2514 * elf64-alpha.c (elf64_alpha_strip_section_from_output): ... here.
2515 * elf32-i386.c (elf_i386_size_dynamic_sections): Use it.
2516 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
2517 * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
2518 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
2519 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
2520 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
2521 * bfd-in2.h: Update.
2522
2523 1999-04-09 Ian Lance Taylor <ian@zembu.com>
2524
2525 * elf64-sparc.c: Fix incorrect calls to bfd_check_overflow.
2526
2527 1999-04-08 Nick Clifton <nickc@cygnus.com>
2528
2529 * coff-mcore.c: New File: Support for mcore-pe targets.
2530 * cpu-mcore.c: New File: Support for mcore targets.
2531 * elf32-mcore.c: New File: Support for mcore-elf target.
2532 * pe-mcore.c: New File: Definitions for mcore-pe target.
2533 * pei-mcore.c: New File: Definitions for mcore-pei target.
2534 * Makefile.am: Add support for MCore targets.
2535 * Makefile.in: Regenerate.
2536 * config.bfd: Add support for MCore targets.
2537 * configure.in: Add support for MCore targets.
2538 * configure: Regenerate.
2539 * archures.c: Add support for MCore architecture.
2540 * bfd-in2.h: Regenerate.
2541 * coffcode.h: Add support for mcore-pe targets.
2542 * elf.c: Add support for mcore-elf target.
2543 * reloc.c: Add support for MCore relocs.
2544 * targets.c: Add support for MCore targets.
2545
2546 1999-04-07 Nick Clifton <nickc@cygnus.com>
2547
2548 * elfarm-nabi.c (elf32_arm_howto_table): Add entries for
2549 R_ARM_XPC25 and R_ARM_THM_XPC22.
2550 (elf32_arm_reloc_map): Remove redundant entries.
2551
2552 1999-04-06 Ian Lance Taylor <ian@zembu.com>
2553
2554 * sysdep.h (LC_MESSAGES): Never define.
2555
2556 1999-04-06 Chris Torek <torek@bsdi.com>
2557
2558 * reloc.c (bfd_check_overflow): Add addrsize parameter. Change
2559 all callers. Rewrite completely.
2560 (_bfd_relocate_contents): Rewrite overflow checking.
2561 * bfd-in2.h: Rebuild.
2562
2563 1999-04-05 Ian Lance Taylor <ian@zembu.com>
2564
2565 From Gabriel Paubert <paubert@iram.es>:
2566 * elf32-ppc.c (ppc_elf_howto_raw): Set R_PPC_GOT16_LO,
2567 R_PPC_PLT16_LO and R_PPC_SECTOFF_LO to be complain_overflow_dont.
2568 Set R_PPC_PLT16_HA, R_PPC_SECTOFF_HA and R_PPC_EMB_NADDR16_HA to
2569 have a rightshift of 16 and use ppc_elf_addr16_ha_reloc.
2570 * ppcboot.c (ppcboot_vec): Use little endian routines for
2571 headers.
2572
2573 * elf.c (elfcore_strndup): Only define if it will be used.
2574 * elf32-ppc.c (ppc_elf_relax_section): Remove unused locals irel
2575 and irelend.
2576 (ppc_elf_check_relocs): Remove unused local i.
2577 (ppc_elf_gc_mark_hook): Add default case to switch.
2578
2579 From Bernd Nitzler <nitzler@kagcpd01.ag01.kodak.COM>:
2580 * srec.c (srec_scan): Accept \r in symbol definitions.
2581 (srec_object_p): Set HAS_SYMS if we saw any symbols.
2582 (symbolsrec_object_p): Likewise.
2583
2584 1999-04-04 Don Bowman <don@pixsci.com>
2585
2586 * config.bfd: Add mips*el-*-vxworks* and mips*-*-vxworks*.
2587
2588 1999-04-04 Ian Lance Taylor <ian@zembu.com>
2589
2590 * dwarf1.c (parse_line_table): Remove unused locals last_pc and
2591 last_line.
2592 * elf-bfd.h (_bfd_elfcore_section_from_phdr): Declare.
2593 * elf32-i386.c (elf_i386_gc_mark_hook): Add default case to
2594 switch.
2595 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove unused
2596 local i.
2597 * syms.c (_bfd_stab_section_find_nearest_line): Remove unused
2598 local val.
2599
2600 1999-03-31 Nick Clifton <nickc@cygnus.com>
2601
2602 * config.bfd: Add support for arm-epoc-pe target.
2603 * configure.in: Add support for arm-epoc-pe target.
2604 * configure: Regenerate.
2605 * targets.c: Add support for arm-epoc-pe target.
2606 * coff-arm.c: Allow header files to override definition of
2607 TARGET_UNDERSCORE and USER_LABEL_PREFIX.
2608 * pe-arm.h: Allow previous header files to override definition of
2609 TARGET_LITTLE_SYM and TARGET_BIG_SYM.
2610 * pei-arm.h: Allow previous header files to override definition of
2611 TARGET_LITTLE_SYM and TARGET_BIG_SYM.
2612 * epoc-pe-arm.c: New file. Support arm-epoc-pe target.
2613 * epoc-pei-arm.c: New file. Support arm-epoc-pei target.
2614
2615 1999-03-30 Nick Clifton <nickc@cygnus.com>
2616
2617 * elf.c (elf_map_symbols): Handle the case where section
2618 symbols are generated for content-less sections which are
2619 not mapped to the output file.
2620
2621 * linker.c: Replace direct references to fields in BFD structure
2622 with accessor macros.
2623
2624 * elflink.h: Replace direct references to fields in BFD structure
2625 with accessor macros.
2626
2627 1999-03-25 Philip Blundell <pb@nexus.co.uk>
2628
2629 * config.bfd: Eliminate redundancy in checks for Linux/ARM.
2630
2631 * elf32-arm.h (elf32_arm_relocate_section): Take the rightshift into
2632 account when adjusting section symbols during a partial link.
2633
2634 1999-03-24 Nick Clifton <nickc@cygnus.com>
2635
2636 * coff-sparc.c (struct coff_reloc_map): Change type of field
2637 'bfd_reloc_val' to bfd_reloc_code_real_type.
2638 * elf-m10200.c (struct mn10200_reloc_map): Ditto.
2639 * elf-m10300.c (struct mn10300_reloc_map): Ditto.
2640 * elf32-arc.c (struct arc_reloc_map): Ditto.
2641 * elf32-d10v.c (struct d10v_reloc_map): Ditto.
2642 * elf32-d30v.c (struct d30v_reloc_map): Ditto.
2643 * elf32-fr30.c (struct fr30_reloc_map): Ditto.
2644 * elf32-m32r.c (struct m32r_reloc_map): Ditto.
2645 * elf32-sh.c (struct elf_reloc_map): Ditto.
2646 * elf32-sparc.c (struct elf_reloc_map): Ditto.
2647 * elf32-v850.c (struct v850_reloc_map): Ditto.
2648 * elf64-sparc.c (struct elf_reloc_map): Ditto.
2649 * elfarm-nabi.c (struct elf32_arm_reloc_map): Ditto.
2650 * elfarm-oabi.c (struct elf32_arm_reloc_map): Ditto.
2651
2652 1999-03-17 Martin Hunt <hunt@cygnus.com>
2653
2654 * syms.c (_bfd_stab_section_find_nearest_line): Changed this
2655 function so source-level assembly works. If multiple N_SOs
2656 are seen without and N_FUNs, create an indextable entry with
2657 a NULL function name.
2658
2659 1999-03-16 Gavin Romig-Koch <gavin@cygnus.com>
2660
2661 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data) Allow merging
2662 of certian similar cpus.
2663
2664 1999-03-16 Gavin Romig-Koch <gavin@cygnus.com>
2665
2666 * elf32-mips.c (_bfd_mips_elf_final_write_processing):
2667 Add the 5000. Change the architecture for the 5400 to mips4.
2668 (elf_mips_mach): Add r5000.
2669
2670 1999-03-11 Doug Evans <devans@casey.cygnus.com>
2671
2672 * cpu-i960.c (scan_i960_mach): Recognize i960:ka_sa and i960:kb_sb.
2673
2674 1999-03-11 Nick Clifton <nickc@cygnus.com>
2675
2676 * binary.c (binary_set_section_contents): Generate warning about
2677 huge file offsets for any section that will occupy file space, not
2678 just those that are loadable.
2679
2680 1999-02-24 Jim Blandy <jimb@zwingli.cygnus.com>
2681
2682 * libbfd.h: Regenerate after Nick Clifton's Feb 17 changes.
2683
2684 1999-02-22 Jim Lemke <jlemke@cygnus.com>
2685
2686 * elf32-ppc.c: Add ppc_elf_relax_section() for the ld option mpc860c0.
2687
2688 Mon Feb 22 18:26:51 1999 Ian Lance Taylor <ian@cygnus.com>
2689
2690 * elf-bfd.h (ELF_LINK_HASH_REF_REGULAR_NONWEAK): Define.
2691 * elflink.h: Revert all changes since Feb 16. Instead:
2692 (elf_link_add_object_symbols): Set REF_REGULAR_NONWEAK flag if
2693 appropriate. Copy it to version symbols.
2694 (elf_fix_symbol_flags): Set REF_REGULAR_NONWEAK for non ELF
2695 symbols if appropriate.
2696 (elf_adjust_dynamic_symbol): Set REF_REGULAR_NONWEAK for weakdef
2697 symbol if appropriate.
2698 (elf_link_output_extsym): If symbol is marked as undefined, and
2699 has no nonweak references, mark it as weak undefined.
2700
2701 Fri Feb 19 16:01:12 1999 Ian Lance Taylor <ian@cygnus.com>
2702
2703 * elflink.h (elf_merge_symbol): When overriding a dynamic
2704 definition with a weak undefined symbol, set NEEDS_PLT if it is a
2705 function.
2706 (elf_link_add_object_symbols): Don't copy the other field if we
2707 are overridding.
2708
2709 Thu Feb 18 18:07:43 1999 Ian Lance Taylor <ian@cygnus.com>
2710
2711 * elflink.h (elf_merge_symbol): Do not merge any symbol from a
2712 shared object with a weak undefined symbol.
2713
2714 1999-02-18 Nick Clifton <nickc@cygnus.com>
2715
2716 * elfarm-nabi.c: Set partial_inplace back to false.
2717
2718 1999-02-17 Nick Clifton <nickc@cygnus.com>
2719
2720 * coff-arm.c (TARGET_UNDERSCORE): Re-enable.
2721 (USER_LABEL_PREFIX): Set to "_".
2722
2723 The following patches are from: Scott Bambrough
2724 <scottb@corelcomputer.com>
2725
2726 * libaout.h (M_ARM6_NETBSD): Set to 143.
2727
2728 * reloc.c: Add ARM PIC relocs: BFD_RELOC_ARM_GOT12,
2729 BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_COPY,
2730 BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_PLT32,
2731 BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC.
2732 * bfd-in2.h: Regenerate.
2733
2734 * elfarm-nabi.c (elf32_arm_howto_table): Set partial_inplace to
2735 'true' as REL relocs are now being used. Add new PIC relocs:
2736 R_ARM_COPY, R_ARM_GLOB_DAT, R_ARM_JUMP_SLOT, R_ARM_RELATIVE,
2737 R_ARM_GOTOFF, R_ARM_GOTPC, R_ARM_GOT32, R_ARM_PLT32.
2738
2739 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Check byte order
2740 of targets.
2741 (elf32_arm_final_link_relocate): Change parameters so that entire
2742 reloc is passed. Add support for PIC relocs.
2743 (elf32_arm_relocate_section): Pass entire reloc to
2744 elf32_arm_final_link_relocate.
2745 (elf32_arm_check_relocs): Handle new PIC relocs.
2746 (elf32_arm_adjust_dynamic_symbol): New function.
2747 (elf32_arm_size_dynamic_sections): New function.
2748 (elf32_arm_discard_copies): New function.
2749 (elf32_arm_finish_dynamic_symbol): New function.
2750 (elf32_arm_finish_dynamic_sections): New function.
2751 (ELF_MAXPAGE_SIZE): Define.
2752 (bfd_elf32_bfd_reloc_type_lookup): Define.
2753 (elf_backend_relocate_section): Define.
2754 (elf_backend_adjust_dynamic_symbol): Define.
2755 (elf_backend_create_dynamic_sections): Define.
2756 (elf_backend_finish_dynamic_symbol): Define.
2757 (elf_backend_finish_dynamic_sections): Define.
2758 (elf_backend_size_dynamic_sections): Define.
2759 (elf_backend_plt_readonly): Define.
2760 (elf_backend_want_got_plt): Define.
2761 (elf_backend_want_plt_sym): Define.
2762
2763 Wed Feb 17 12:02:26 1999 Stan Cox <scox@cygnus.com>
2764
2765 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Make reginfo
2766 sections SEC_LINK_ONCE and SEC_LINK_DUPLICATES_SAME_SIZE.
2767 (_bfd_mips_elf_fake_sections): Likewise.
2768
2769 Wed Feb 17 12:07:23 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2770
2771 * elfarm-oabi.c (bfd_elf32_arm_allocate_interworking_sections,
2772 bfd_elf32_arm_get_bfd_for_interworking,
2773 bfd_elf32_arm_process_before_allocation): Define to avoid clash
2774 with elfarm-nabi.c.
2775
2776 * elf32-arm.h: Don't declare elf32_arm_info_to_howto.
2777 (elf32_thumb_to_arm_stub, elf32_arm_to_thumb_stub,
2778 elf32_arm_find_nearest_line): Make them static.
2779
2780 Tue Feb 16 22:44:37 1999 Ian Lance Taylor <ian@cygnus.com>
2781
2782 * elflink.h (elf_merge_symbol): Add pflags parameter. Change all
2783 callers. Do not merge a definition from a shared object with a
2784 weak undefined symbol.
2785 (elf_link_add_object_symbols): Do not change the symbol type or
2786 size if the old symbol overrides the new one.
2787
2788 1999-02-08 Nick Clifton <nickc@cygnus.com>
2789
2790 * config.bfd: Add support for strongarm target.
2791
2792 Mon Feb 8 11:18:14 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2793
2794 * elf32-m68k.c (reloc_map): Use the correct types for the struct
2795 fields instead of unsigned char.
2796
2797 Fri Feb 5 00:22:36 1999 Ian Lance Taylor <ian@cygnus.com>
2798
2799 * Makefile.am: Rebuild dependencies.
2800 * Makefile.in: Rebuild.
2801
2802 Thu Feb 4 22:30:13 1999 Ian Lance Taylor <ian@cygnus.com>
2803
2804 * configure.in: Change AC_PREREQ to 2.13. Remove AM_CYGWIN32.
2805 Change AM_EXEEXT to AC_EXEEXT and AM_PROG_INSTALL to
2806 AC_PROG_INSTALL. Add comments to uses of AC_DEFINE.
2807 * acinclude.m4: Add comments to uses of AC_DEFINE.
2808 * acconfig.h: Remove.
2809 * configure: Rebuild with current autoconf/automake.
2810 * aclocal.m4: Likewise.
2811 * config.in: Likewise.
2812 * Makefile.in: Likewise.
2813
2814 1999-02-04 DJ Delorie <dj@cygnus.com>
2815
2816 * libbfd.c (real_read): don't call fread for zero bytes. This
2817 covers up a bug (or misuse of bfd) that's exposed by Solaris.
2818
2819 Thu Feb 4 12:38:10 1999 Stan Cox <scox@cygnus.com>
2820
2821 * elf32-mips.c (mips_elf_relocate_section): Insure that the target
2822 of a jump is in the current 256 MB region.
2823
2824 Thu Feb 4 12:15:38 1999 Ian Lance Taylor <ian@cygnus.com>
2825
2826 * format.c (bfd_check_format_matches): Change last patch to only
2827 take effect for the binary target.
2828
2829 Wed Feb 3 19:40:12 1999 Ian Lance Taylor <ian@cygnus.com>
2830
2831 * elf32-i386.c (elf_i386_reloc_type_lookup): Add BFD_RELOC_CTOR.
2832
2833 Wed Feb 3 15:02:44 1999 Catherine Moore <clm@cygnus.com>
2834
2835 * elf32-fr30.c (fr30_elf_check_relocs): New routine.
2836
2837 Tue Feb 2 21:38:28 1999 Ian Lance Taylor <ian@cygnus.com>
2838
2839 * format.c (bfd_check_format_matches): If the target was
2840 previously specified, don't check other targets when checking for
2841 an archive file.
2842
2843 Tue Feb 2 18:16:43 1999 Catherine Moore <clm@cygnus.com>
2844
2845 * elf32-arm.h (elf32_arm_reloc_map): Removed.
2846 (elf32_arm_reloc_type_lookup): Removed
2847 * elfarm-nabi.c (elf32_arm_reloc_map): New.
2848 (elf32_arm_reloc_type_lookup): New.
2849 * elfarm-oabi.c (elf32_arm_reloc_map): New.
2850 (elf32_arm_reloc_type_lookup): New.
2851
2852 Mon Feb 1 19:49:21 1999 Catherine Moore <clm@cygnus.com>
2853
2854 * elfarm-nabi.c: Renamed from elf32-arm-newabi.c.
2855 * elfarm-oabi.c: Renamed from elf32-arm-oldabi.c
2856 * Makefile.am: Use new files.
2857 * Makefile.in: Regenerate.
2858 * configure.in: Use new files.
2859 * configure: Regenerate.
2860
2861 1999-02-01 Nick Clifton <nickc@cygnus.com>
2862
2863 * elf32-fr30.c (fr30_elf_gc_mark_hook): New function.
2864 (fr30_elf_gc_sweep_hook): New function.
2865 (elf_backend_can_gc_sections): Define.
2866
2867 Mon Feb 1 12:21:47 1999 Catherine Moore <clm@cygnus.com>
2868
2869 * targets.c (bfd_target_vector): Add bfd_elf32_littlearm_oabi_vec
2870 and bfd_elf32_bigarm_oabi_vec.
2871
2872 Mon Feb 1 11:46:31 1999 Catherine Moore <clm@cygnus.com>
2873
2874 * Makefile.am (elf32-arm-oldabi.lo): New.
2875 (elf32-arm-newabi.lo): New.
2876 * Makefile.in: Regenerate.
2877 * config.bfd (thumb-*-elf): Remove definition of targ_underscore.
2878 (arm-*-elf): Likewise.
2879 (arm-*-oabi): New.
2880 (thumb-*-oabi): New.
2881 * configure: Regenerate.
2882 * configure.in (bfd_elf32_littlearm_oabi_vec): New.
2883 (bfd_elf32_bigarm_oabi_vec): New.
2884 * elf32-arm-newabi.c: New.
2885 * elf32-arm-oldabi.c: New.
2886 * elf32-arm.c: Removed.
2887 * elf32-arm.h: New.
2888
2889 Mon Feb 1 11:52:12 1999 Frank Ch. Eigler <fche@cygnus.com>
2890
2891 * binary.c (binary_set_section_contents): Omit warnings for
2892 unloadable sections.
2893
2894 1999-01-31 Michael Meissner <meissner@cygnus.com>
2895
2896 * config.bfd (powerpc{,le}-*-vxworks*): Add aliases to
2897 powerpc{,le}-*-eabi.
2898
2899 1999-01-29 Nick Clifton <nickc@cygnus.com>
2900
2901 * dwarf2.c (read_unsigned_leb128): Remove unused variables.
2902 * dwarf2.c (read_signed_leb128): Remove unused variables.
2903
2904 Fri Jan 29 00:47:21 1999 H.J. Lu <hjl@gnu.org>
2905
2906 * elf.c (assign_file_positions_for_segments): Only adjust
2907 p_align when needed.
2908
2909 Thu Jan 28 20:05:22 1999 Ian Lance Taylor <ian@cygnus.com>
2910
2911 * binary.c (binary_set_section_contents): Don't return early for a
2912 non-loadable section, in case the first section is non-loadable.
2913 Don't set the low lma for a SEC_NEVER_LOAD section. From Maciej
2914 W. Rozycki <macro@ds2.pg.gda.pl>.
2915
2916 1999-01-28 Nick Clifton <nickc@cygnus.com>
2917
2918 * elf32-fr30.c (fr30_reloc_map): Add R_FR30_GNU_VTINHERIT and
2919 R_FR30_GNU_VTENTRY relocs.
2920
2921 Thu Jan 28 11:08:16 1999 Catherine Moore <clm@cygnus.com>
2922
2923 * elflink.h (elf_link_output_sym): Zero syms which are
2924 part of sections which have been excluded.
2925
2926 Wed Jan 27 13:35:35 1999 Stan Cox <scox@cygnus.com>
2927
2928 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed F_PIC
2929 to F_PIC_INT.
2930 * coffcode.h (coff_set_arch_mach_hook): Removed F_ARM_2a and
2931 F_ARM_3M labels. Changed F_PIC to F_PIC_INT.
2932
2933 1999-01-27 Nick Clifton <nickc@cygnus.com>
2934
2935 * elf32-fr30.c (fr30_elf_howto_table): Fix name of R_FR30_48
2936 relocation.
2937 (fr30_final_link_relocate): Use computed value as result of
2938 relocation.
2939
2940 1999-01-26 Frank Ch. Eigler <fche@cygnus.com>
2941
2942 * binary.c (binary_set_section_contents): Emit warning for
2943 huge file offsets due to widely-dispersed section LMAs.
2944
2945 Mon Jan 18 03:35:35 1999 Ian Lance Taylor <ian@cygnus.com>
2946
2947 * elf.c (assign_file_positions_for_segments): If not D_PAGED,
2948 align first section to largest section alignment, not first
2949 section alignment.
2950
2951 1999-01-04 Jason Molenda (jsm@bugshack.cygnus.com)
2952
2953 * configure.in: Require autoconf 2.12.1 or higher.
2954
2955 Tue Dec 22 15:21:41 1998 Catherine Moore <clm@cygnus.com>
2956
2957 * archures.c (bfd_mach_i386_i386_intel_syntax): Define.
2958 * bfd-in2.h: Likewise.
2959 * cpu-i386.c (bfd_i386_arch_intel_syntax): New.
2960
2961 1998-12-16 Gavin Romig-Koch <gavin@cygnus.com>
2962
2963 * archures.c,bfd-in2.h (bfd_mach_mips4111): New.
2964 * cpu-mips.c: Add support for and independent 4111.
2965 * elf32-mips.c (elf_mips_mach): E_MIPS_MACH_4111 -> bfd_mach_mips4111.
2966 (_bfd_mips_elf_final_write_processing):
2967 bfd_mach_mips4111 -> E_MIPS_ARCH_3 | E_MIPS_MACH_4111.
2968
2969 1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
2970
2971 * elf32-mips.c (elf_mips_abi_name): New.
2972 (_bfd_mips_elf_merge_private_bfd_data): Compare EF_MIPS_ABI flags.
2973
2974 1998-12-12 Gavin Romig-Koch <gavin@cygnus.com>
2975
2976 * elf32-mips.c (_bfd_mips_elf_final_write_processing):
2977 Handle bfd_mach_mips4300.
2978
2979 1998-12-11 Ulrich Drepper <drepper@cygnus.com>
2980
2981 * elf32-i386.c: Remove leaked development code from patch
2982 1998-12-10 by Richard Henderson.
2983
2984 1998-12-10 Richard Henderson <rth@cygnus.com>
2985
2986 * elf32-i386.c (elf_i386_relocate_section): Don't fail relocations
2987 in debug sections for symbol defined externally.
2988
2989 Thu Dec 10 10:58:38 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2990
2991 * targets.c (bfd_target_vector): Remove duplicate entry for
2992 tekhex_vec.
2993
2994 1998-12-09 Nick Clifton <nickc@cygnus.com>
2995
2996 * elf32-fr30.c (fr30_elf_howto_table): Set src_mask fields to 0
2997 since we are using RELAs.
2998
2999 Tue Dec 8 22:15:48 1998 Ian Lance Taylor <ian@cygnus.com>
3000
3001 SCO Open Server Release 5 core file support, from Jouke Numan
3002 <jnuman@hiscom.nl>:
3003 * sco5-core.c: New file.
3004 * configure.in (i[3456]86-*-sco3.2v5*): Use sco5-core.lo.
3005 (sco5-core.lo): Define SCO5_CORE in COREFLAG.
3006 * Makefile.am: Rebuild dependencies.
3007 (OPTIONAL_BACKENDS): Add sco5-core.lo.
3008 (OPTIONAL_BACKENDS_CFILES): Add sco5-core.c.
3009 * bfd.c (struct _bfd): Add sco5_core_data field to tdata.
3010 * targets.c (sco5_core_vec): Add to target list if SCO5_CORE.
3011 * bfd-in2.h, configure, Makefile.in: Rebuild.
3012
3013 Tue Dec 8 19:38:42 1998 Mark Klein <mklein@dis.com>
3014
3015 * config.bfd (hppa*-*-mpeix*): New target.
3016 * configure.in: Add AC_HEADER_DIRENT.
3017 (hppa*-*-mpeix*): New target.
3018 * configure.host (hppa*-*-mpeix*): New host.
3019 * hpux-core.c: Check HOST_HPPAMPEIX. Use HAVE_DIRENT_H and
3020 friends rather than just including <sys/dir.h>.
3021 * som.h (struct som_symbol): Add hppa_priv_level and apto
3022 tc_data. Change all users.
3023 (struct somdata): Add comp_unit field.
3024 (obj_som_compilation_unit): Define.
3025 (bfd_som_attach_compilation_unix): Declare.
3026 * som.c: Check HOST_HPPAMPEIX.
3027 (struct som_misc_symbol_info): Add new field priv_level.
3028 (som_object_setup): Add current_offset parameter. Change all
3029 callers.
3030 (setup_sections): Likewise.
3031 (som_object_p): For EXECLIBMAGIC, read the lst header.
3032 (som_write_symbol_strings): Add compilation_unit parameter.
3033 Change all callers.
3034 (som_finish_writing): Write out compilation_unit.
3035 (som_bfd_derive_misc_symbol_info): Set priv_level.
3036 (som_build_and_write_symbol_table): Set xleast field to 3.
3037 (som_slurp_symbol_table): Set symbol priv_level.
3038 (bfd_som_attach_compilation_unit): New function.
3039 (som_bfd_ar_write_symbol_stuff): Set xleast field to 3. Set
3040 priv_level into symbol_value.
3041 * configure, config.in: Rebuild.
3042
3043 Tue Dec 8 16:21:35 1998 Ian Lance Taylor <ian@cygnus.com>
3044
3045 * hpux-core.c (hpux_core_core_file_p): Change call to nonexistent
3046 warning function to call _bfd_error_handler instead.
3047
3048 * libbfd.c (COERCE32): Cast through unsigned long and long to
3049 avoid bug in old version of gcc.
3050
3051 * elf64-alpha.c (elf64_alpha_additional_program_headers): Remove.
3052 (elf_backend_additional_program_headers): Don't define.
3053
3054 1998-12-08 Nick Clifton <nickc@cygnus.com>
3055
3056 * elf32-fr30.c (fr30_final_link_relocate): Fix PC relative
3057 relocations to include offset of 2 included in the insns, and the
3058 offset of the relocs within the section.
3059
3060 Wed Dec 2 15:03:59 1998 David Taylor <taylor@texas.cygnus.com>
3061
3062 The following changes were made by David Taylor
3063 <taylor@texas.cygnus.com>, Edith Epstein
3064 <eepstein@sophia.cygnus.com>, Jim Blandy
3065 <jimb@zwingli.cygnus.com>, and Elena Zannoni
3066 <ezannoni@kwikemart.cygnus.com> as part of the project to merge in
3067 changes originally made by HP; HP did not create ChangeLog
3068 entries.
3069
3070 * aclocal.m4, configure, Makefile.in: Rebuilt using latest
3071 automake macro library.
3072
3073 * hpux-core.c (hpux_core_core_file_p): this function now
3074 understands HPUX 10.30 thread info. Yes, the thread stacks can be
3075 found in the corefile! Also, in hpux_core_core_file_p, if we
3076 encounter a section with an unknown type, don't punt. Instead,
3077 just skip it. Also, count the number of sections of known type
3078 that we encounter. If we encounter at least one good one, then
3079 we'll declare that the file is a core file. If we encounter any
3080 unknown ones but some known ones, then we'll issue a warning (but
3081 still declare it to be a core file). Also, correctly decide when a
3082 file is not a core.
3083 (PROC_INFO_HAS_THREAD_ID): define if CORE_ANON_SHMEM defined.
3084 (CORE_ANON_SHMEM): define if not defined.
3085 (hpux_core_struct): add members lwpid and user_tid.
3086 (core_kernel_thread_id, core_user_thread_id): new macros.
3087 (make_bfd_asection): use bfd_alloc to allocate room for a copy of
3088 the name before storing it in the bfd.
3089 (hpux_core_core_file_p): handle threads.
3090
3091 * libhppa.h (GET_FIELD): protect against redefinition.
3092 (HPPA_WIDE): define.
3093 (GET_FIELD): define.
3094 (GET_BIT): define.
3095 (MASK): define.
3096 (CATENATE): define.
3097 (ELEVEN): define.
3098 (sign_extend): redefine.
3099 (assemble_6): define.
3100 (assemble_12): rewrite.
3101 (assemble_16): define.
3102 (assemble_16a): define.
3103 (assemble_17): rewrite.
3104 (assemble_22): define.
3105
3106 1998-12-07 Nick Clifton <nickc@cygnus.com>
3107
3108 * elf32-fr30.c (fr30_final_link_relocate): Using signed
3109 relocations for signed values.
3110
3111 Sun Dec 6 16:30:33 1998 Ian Lance Taylor <ian@cygnus.com>
3112
3113 * mipsbsd.c (MY(set_arch_mach)): Make static.
3114 * aoutx.h (NAME(aout,machine_type)): For bfd_arch_mips, use
3115 bfd_mach_mips* macros rather than simple numbers.
3116
3117 COFF weak symbol support, based on patches from Mark Elbrecht
3118 <snowball3@usa.net>:
3119 * coffcode.h (coff_slurp_symbol_table): Handle C_WEAKEXT.
3120 * coffgen.c (coff_renumber_symbols): Handle weak symbols.
3121 (coff_write_alien_symbol): Likewise.
3122 * cofflink.c (coff_link_check_ar_symbols): Likewise.
3123 (coff_link_add_symbols): Likewise.
3124 (_bfd_coff_link_input_bfd): Likewise.
3125 (_bfd_coff_write_global_sym): Likewise.
3126
3127 * elf.c (copy_private_bfd_data): Always initialize the
3128 includes_phdrs field.
3129
3130 * elflink.h (elf_fix_symbol_flags): Check for case where a non-ELF
3131 file defines a symbol first mentioned in an ELF file.
3132
3133 * bfd-in.h: Always define BFD_HOST_64_BIT and BFD_HOST_U_64_BIT if
3134 possible, rather than only if BFD64.
3135 * elflink.h (compute_bucket_count): Just check BFD_HOST_U_64_BIT,
3136 not __GNUC__.
3137 * bfd-in2.h: Rebuild.
3138
3139 * srec.c (srec_set_section_contents): Correct test to avoid
3140 switching to 4 byte addresses after seeing a second section which
3141 requires 3 byte addresses. From Joel Schantz
3142 <joel.schantz@argosys.boeing.com>.
3143
3144 * config.bfd (m68*-*-gnu*): New target. From Aymeric Vincent
3145 <aymeric.vincent@emi.u-bordeaux.fr>.
3146
3147 1998-12-04 Jim Blandy <jimb@zwingli.cygnus.com>
3148
3149 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Fix logic to
3150 decide whether the output file is -mrelocatable-lib,
3151 -mrelocatable, or neither. (gdb.base/nodebug.exp)
3152
3153 1998-12-03 Nick Clifton <nickc@cygnus.com>
3154
3155 * elf32-fr30.c: Add support for R_FR30_48 reloc.
3156 * reloc.c: Add BFD_RELOC_FR30_48 relocation.
3157 * bfd-in2.h: Regenerate.
3158 * libbfd.h: Regenerate
3159
3160 Wed Dec 2 00:58:37 1998 Ian Lance Taylor <ian@cygnus.com>
3161
3162 * elflink.h (elf_adjust_dynamic_symbol): Warn on an attempt to
3163 link against a dynamic symbol with no type or size.
3164
3165 1998-12-01 Ulrich Drepper <drepper@cygnus.com>
3166
3167 * elf32-i386.c (i386_check_relocs) [R_386_32]: Don't emit
3168 relocation for section which does not get loaded.
3169 (elf_i386_relocate_section) [R_386_32]: Likewise.
3170
3171 Tue Dec 1 11:33:33 1998 Jim Wilson <wilson@cygnus.com>
3172
3173 * coff-h8300.c (h8300_bfd_link_add_symbols): Make reloc_size,
3174 reloc_count and i long instead of unsigned long. Handle error
3175 return from bfd_canonicalize_reloc.
3176
3177 1998-12-01 Nick Clifton <nickc@cygnus.com>
3178
3179 * elf32-v850.c (v850_elf_relocate_section): Detect the absence of
3180 a hash table.
3181
3182 Mon Nov 30 15:28:09 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3183
3184 * elf32-sh.c (elf/sh.h): Include.
3185 sh_reloc_type: Delete. Changed all references to elf_sh_reloc_type.
3186 (sh_elf_howto_tab): Add HOWTO for R_SH_SWITCH8.
3187 (sh_reloc_map): Map BFD_RELOC_8_PCREL to R_SH_SWITCH8.
3188 (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
3189 * Makefile.in: Add dependency of elf32-sh.lo on $(INCDIR)/elf/sh.h.
3190
3191 Fri Nov 27 17:51:38 1998 Geoff Keating <geoffk@ozemail.com.au>
3192
3193 * elflink.h (compute_bucket_count): Don't allow minsize==0, it
3194 causes division by zero later on.
3195
3196 Thu Nov 26 11:19:35 1998 Dave Brolley <brolley@cygnus.com>
3197
3198 * elf32-fr30.c (fr30_elf_pc9_reloc,fr30_elf_pc12_reloc): Not
3199 needed.
3200
3201 1998-11-25 DJ Delorie <dj@cygnus.com>
3202
3203 * coff-i386.c (i3coff_object_p): Remove hack. Use new emulation
3204 hook now.
3205
3206 Tue Nov 24 10:25:27 1998 Nick Clifton <nickc@cygnus.com>
3207
3208 * elf32-fr30.c (fr30_elf_relocate_section): Call
3209 fr30_final_link_relocate.
3210 (fr30_final_link_relocate): New function: Handle I20 and I32
3211 relocs.
3212 (fr30_elf_i32_reloc): New function: Handle I32 relocs.
3213 (fr30_elf_pc9_reloc): New function: Handle 9_PCREL relocs.
3214 (fr30_elf_pc12_reloc): New function: Handle 12_PCREL relocs.
3215
3216 * elf32-v850.c (v850_elf_relocate_section): Reset hi16s reloc
3217 chain to empty.
3218
3219 The following changes are based on a patch submitted by Gianluca
3220 Moro <glctr@abc.it>:
3221
3222 (v850_elf_perform_relocation): Only update a hi16s reloc if it has
3223 not already been updated.
3224 (find_remembered_hi16s_reloc): New parameter 'already_found'
3225 returns state of remembered hi16s reloc.
3226 (remember_hi16s_reloc): Set 'found' field to false.
3227 (hi16s_location): Add 'found' field.
3228
3229 1998-11-23 DJ Delorie <dj@cygnus.com>
3230
3231 * coff-i386.c (bfd_pe_dll_not_recognized_hack): the linker wants
3232 to see .DLL files as unrecognized.
3233 (i3coff_object_p): Sorry, had to hack it to not recognize these
3234 files (pei-i386) on request.
3235
3236 1998-11-23 DJ Delorie <dj@cygnus.com>
3237
3238 * opncls.c (bfd_make_readable): need more cleanup for symbols and
3239 relents. Call bfd_check_format to reinitialize.
3240
3241 Fri Nov 20 14:21:36 1998 Nick Clifton <nickc@cygnus.com>
3242
3243 * elf32-fr30.c (fr30_elf_relocate_section): Remove spurious
3244 warnings.
3245
3246 Thu Nov 19 14:42:15 1998 Geoffrey Noer <noer@cygnus.com>
3247
3248 * aclocal.m4: regenerate
3249 * configure: regenerate
3250
3251 Tue Nov 17 20:23:35 1998 Richard Henderson <rth@cygnus.com>
3252
3253 * elf-bfd.h (struct elf_link_hash_entry): Add vtable_entries_size.
3254 * elf.c (_bfd_elf_link_hash_newfunc): Clear it.
3255 * elflink.h (elf_gc_propagate_vtable_entries_used): Copy it, and
3256 respect it as an upper bound on what memory to reference.
3257 (elf_gc_smash_unused_vtentry_relocs): Likewise.
3258 (elf_gc_record_vtentry): Handle as-yet undefined vtables. Set and
3259 update vtable_entries_size appropriately.
3260
3261 Tue Nov 17 15:28:31 1998 Nick Clifton <nickc@cygnus.com>
3262
3263 * elf32-fr30.c (fr30_reloc_type_lookup): Used integers to hold
3264 reloc number.
3265
3266 Mon Nov 16 22:19:21 1998 DJ Delorie <dj@cygnus.com>
3267
3268 * archive.c (bfd_ar_hdr_from_filesystem): support BFD_IN_MEMORY
3269 bfds; they have no "file" so we fake it.
3270 * bfd-in2.h: add bfd_make_writable and bfd_make_readable (regen)
3271 * libbfd.c (bfd_write): Allow writing to BFD_IN_MEMORY bfds by
3272 resizing the memory buffer.
3273 * opncls.c (bfd_make_writable): New function; lets you write a
3274 bfd_create'd bfd to an in-memory buffer.
3275 (bfd_make_readable): New function; lets you read back that buffer
3276 as if it were from bfd_openr. Used to build generated archive
3277 members (winsup's ld's dlltool)
3278
3279 Mon Nov 16 19:15:19 1998 Dave Brolley <brolley@cygnus.com>
3280
3281 * po/bfd.pot: Regenerated.
3282
3283 Mon Nov 16 10:57:06 1998 Nick Clifton <nickc@cygnus.com>
3284
3285 * elf32-v850.c (hi16s_location): Replaced fixed size array with
3286 linked list.
3287
3288 Sun Nov 15 20:28:25 1998 Richard Henderson <rth@cygnus.com>
3289
3290 * elf64-alpha.c (elf64_alpha_relax_section): Search for the proper
3291 element of the gotentry list for local symbols too.
3292 (elf64_alpha_relocate_section): Unify local and global handling.
3293 Assert that gotent->use_count > 0.
3294
3295 Sat Nov 14 15:16:01 1998 Ian Lance Taylor <ian@cygnus.com>
3296
3297 * configure.in (vms_alpha_vec): Rename from evax_alpha_vec, and
3298 update for file name changes of July 2, 1998.
3299 (vms_vax_vec): New.
3300 * configure: Rebuild.
3301
3302 Thu Nov 12 19:19:54 1998 Dave Brolley <brolley@cygnus.com>
3303
3304 * po/bfd.pot: Regenerated.
3305
3306 Tue Nov 10 16:17:06 1998 Geoffrey Noer <noer@cygnus.com>
3307
3308 * acinclude.m4, config.bfd: detect cygwin* instead of cygwin32*.
3309 * aclocal.m4, configure: regenerate
3310
3311 Tue Nov 10 15:13:59 1998 Nick Clifton <nickc@cygnus.com>
3312
3313 * elf.c (prep_headers): Add support for bfd_arch_fr30.
3314
3315 Tue Nov 10 13:37:36 1998 Felix Lee <flee@cygnus.com>
3316
3317 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE,
3318 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): didn't define macro when value
3319 was cached.
3320 * aclocal.m4, configure: regenerated.
3321
3322 Tue Nov 10 14:31:01 1998 Catherine Moore <clm@cygnus.com>
3323
3324 * elf32-d10v.c (reloc_type): Add R_D10V_GNU_VTINHERIT and
3325 R_D10V_GNU_VTENTRY relocs.
3326 (elf_d10v_howto_table): Likewise.
3327 (d10v_reloc_map d10v_reloc_map): Likewise.
3328 (elf32_d10v_gc_mark_hook): New.
3329 (elf32_d10v_gc_sweep_hook): New.
3330 (elf32_d10v_check_relocs): New.
3331 (elf32_d10v_relocate_section): New.
3332 (elf_backend_relocate_section): Define.
3333 (elf_backend_can_gc_sections): Define.
3334
3335 Sat Nov 7 18:07:51 1998 Peter Schauer <peter.schauer@regent.e-technik.tu-muenchen.de>
3336
3337 * Makefile.am (BFD32_BACKENDS): Move vms files here...
3338 (BFD64_BACKENDS): ...from here.
3339 (BFD32_BACKENDS_CFILES): Move vms files here...
3340 (BFD64_BACKENDS_CFILES): ...from here.
3341 * Makefile.in: Rebuild.
3342
3343 Wed Nov 4 15:58:48 1998 Nick Clifton <nickc@cygnus.com>
3344
3345 * Makefile.am: Add FR30 target.
3346 * Makefile.in: Add FR30 target.
3347 * archures.c: Add support for FR30.
3348 * config.bfd: Add support for FR30.
3349 * configure.in: Add support for FR30.
3350 * reloc.c: Add support for FR30 relocations.
3351 * targets.c: Add support for FR30 relocations.
3352 * bfd-in2.h: Regenerate.
3353 * configure: Regenerate.
3354 * libbfd.h: Regenerate.
3355 * cpu-fr30.c: New file.
3356 * elf32-fr30.c: New file.
3357
3358 Mon Nov 2 14:59:33 1998 Geoffrey Noer <noer@cygnus.com>
3359
3360 * configure.in: detect cygwin* instead of cygwin32*
3361 * configure: regenerate
3362
3363 Sun Nov 1 19:32:28 1998 Jeffrey A Law (law@cygnus.com)
3364
3365 * elf-m10300.c (mn10300_elf_relax_section): Do not use alloca,
3366 use bfd_malloc and free instead and check return value from bfd_malloc.
3367
3368 Sun Nov 1 16:20:35 1998 Ian Lance Taylor <ian@cygnus.com>
3369
3370 * libbfd-in.h (_bfd_dwarf1_find_nearest_line): Declare.
3371 * libbfd.h: Rebuild.
3372
3373 * elf32-mips.c (mips_elf_dynsym_sec_names): Comment out.
3374 (SIZEOF_MIPS_DYNSYM_SECNAMES): Likewise.
3375 (MIPS_TEXT_DYNSYM_SECN): Likewise.
3376 (_bfd_mips_elf_fake_sections): Don't set sh_info field of a .hash
3377 section.
3378 (struct mips_elf_link_hash_table): Remove dynsym_sec_strindex
3379 field.
3380 (mips_elf_link_hash_table_create): Don't initialize
3381 dynsym_sec_strindex.
3382 (mips_elf_gc_mark_hook): Add default case to avoid warning.
3383 (mips_elf_size_dynamic_sections): Generate a section symbol for
3384 every output section.
3385 (mips_elf_finish_dynamic_sections): Count all sections for
3386 DT_MIPS_UNREFEXTNO.
3387 (mips_elf_finish_dynamic_sections): Use dynamic symbols for all
3388 output sections.
3389
3390 Sun Nov 1 12:46:53 1998 Geoff Keating <geoffk@ozemail.com.au>
3391
3392 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Allocate two slots
3393 for later PLT entries in large PLTs.
3394 (ppc_elf_finish_dynamic_symbol): Allow for the extra slots.
3395
3396 Sat Oct 31 20:10:09 1998 Jeffrey A Law (law@cygnus.com)
3397
3398 * elf32-ppc.c (ppc_elf_reload_section): Fix typo.
3399
3400 1998-10-26 15:58 Ulrich Drepper <drepper@cygnus.com>
3401
3402 * elf-bfd.h (struct elf_link_hash_entry): Add new field elf_hash_value.
3403 * elflink.h (elf_collect_hash_codes): New function. This function is
3404 called for each exported symbol and we compute the ELF hash value for
3405 it.
3406 (compute_bucket_value): New function. It is called from
3407 size_dynamic_sections to determine the hash table size. When we are
3408 optimizing a better, but slower, algorithm is used.
3409 (size_dynamic_sections): Call compute_bucket_value.
3410
3411 * elf.c (bfd_elf_hash): Optimize the hash function a bit.
3412
3413 Mon Oct 19 20:03:21 1998 Catherine Moore <clm@cygnus.com>
3414
3415 * elf32-sh.c: Add HOWTO entries for R_SH_GNU_VTINHERIT and
3416 R_SH_GNU_VTENTRY.
3417 (sh_elf_gc_mark_hook): New.
3418 (sh_elf_gc_sweep_hook): New.
3419 (sh_elf_check_relocs): New.
3420 (elf_backend_can_gc_sections): Define.
3421
3422 Mon Oct 19 16:57:05 1998 Felix Lee <flee@cygnus.com>
3423
3424 * acinclude.m4: undo previous gettext change
3425 * aclocal.m4: rebuild with right version of aclocal.
3426
3427 Mon Oct 19 01:47:21 1998 Felix Lee <flee@cygnus.com>
3428
3429 * acinclude.m4, aclocal.m4: move gettext-related fragments from
3430 aclocal.m4 to acinclude.m4, so they don't get lost.
3431
3432 * elfcore.h: rewrite for better corefile support.
3433 * elf.c (elfcore_*): new functions.
3434 * elf-bfd.h (elf_obj_tdata): new structure members.
3435 * acconfig.h, acinclude.m4, configure.in: add feature-tests for
3436 flavor of procfs.
3437 * aclocal.m4, config.in, configure, Makefile.in: regenerated.
3438
3439 Fri Oct 16 14:07:45 1998 Catherine Moore <clm@cygnus.com>
3440
3441 * elf32-m32r.c: Add HOWTO entries for R_M32R_GNU_VTINHERIT
3442 and R_M32R_GNU_VTENTRY.
3443 (elf_backend_can_gc_sections): Define.
3444 (m32r_elf_check_relocs): New.
3445 (m32r_elf_gc_mark_hook): New.
3446 (m32r_elf_gc_sweep_hook): New.
3447 (m32r_elf_relocate_section): Handle VT relocs.
3448
3449 Mon Oct 12 14:18:40 1998 Nick Clifton <nickc@cygnus.com>
3450
3451 * coff-arm.c (arm_relocate_section): Remove redundant test.
3452
3453 * bfd-in2.h (struct reloc_howto_struct): Improve comment to make
3454 cleat that the 'bitsize' field is the size of the bitfield AFTER
3455 relocation not before.
3456
3457 * elf32-m32r.c (R_M32R_18_PCREL): Fix size of bitfield.
3458
3459 * coff-mips.c (mips_relocate_hi): Cope with missing refhi or reflo
3460 relocs.
3461
3462 Tue Oct 6 09:20:44 1998 Catherine Moore <clm@cygnus.com>
3463
3464 * elf32-sparc.c: Add HOWTO entries for R_SPARC_GNU_VTINHERIT and
3465 R_SPARC_GNU_VTENTRY.
3466 (elf32_sparc_check_relocs): Handle them.
3467 (elf32_sparc_reloc_type_lookup): Likewise.
3468 (elf32_sparc_relocate_section): Likewise.
3469 (elf32_sparc_gc_mark_hook): New.
3470 (elf32_sparc_gc_sweep_hook): New.
3471
3472 Mon Oct 5 14:55:30 1998 Jeffrey A Law (law@cygnus.com)
3473
3474 * som.c (som_finish_writing): Perform some sanity checks when
3475 writing an executable or shared library.
3476
3477 Mon Oct 5 12:02:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
3478
3479 * dwarf1.c : New file. Adds _bfd_dwarf1_find_nearest_line.
3480 * configure.in (elf): Add dwarf1.lo.
3481 * elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info.
3482 * elf.c (_bfd_elf_find_nearest_line): Add call to
3483 _bfd_dwarf1_find_nearest_line.
3484 * elf32-mips.c (_bfd_mips_elf_find_nearest_line):
3485 Add call to _bfd_dwarf1_find_nearest_line.
3486 * configure: Rebuilt.
3487
3488 Mon Oct 5 10:06:22 1998 Catherine Moore <clm@cygnus.com>
3489
3490 * elflink.h (elf_gc_sections): Do not allow garbage
3491 collection if dynamic sections have been created.
3492
3493 Mon Oct 5 09:07:37 1998 Catherine Moore <clm@cygnus.com>
3494
3495 * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and
3496 R_V850_GNU_VTENTRY.
3497 (v850_elf_check_relocs): Handle VTINHERIT and VTENTRY relocs.
3498 (v850_elf_perform_relocation): Likewise.
3499 (v850_elf_final_link_relocate): Likewise.
3500 (v850_elf_relocate_section): Likewise.
3501 (v850_elf_gc_sweep_hook): New routine.
3502 (v850_elf_gc_mark_hook): New routine.
3503 (elf_backend_can_gc_sections): Define.
3504
3505 Mon Oct 5 09:04:25 1998 Catherine Moore <clm@cygnus.com>
3506
3507 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Don't assume
3508 that dynobj exists.
3509
3510 Sun Oct 4 23:29:34 1998 David Edelsohn <edelsohn@mhpcc.edu>
3511
3512 * rs6000-core.c (rs6000coff_core_file_matches_executable_p):
3513 Declare size as bfd_size_type.
3514 (rs6000coff_get_section_contents): Declare count as bfd_size_type.
3515
3516 Sun Oct 4 20:38:29 1998 Jeffrey A Law (law@cygnus.com)
3517
3518 * cpu-hppa.c (bfd_hppa20_arch): Define. Link it into the bfd_hppa_arch
3519 structure.
3520 * som.c (CPU_PA_RISC2_0): Define.
3521 (_PA_RISC2_0_ID): Likewise.
3522 (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed.
3523
3524 Sun Oct 4 21:19:09 1998 Ian Lance Taylor <ian@cygnus.com>
3525
3526 * elflink.h (elf_link_add_object_symbols): When a versioned symbol
3527 has a base which is already defined, only add the referenced
3528 symbol to the dynamic symbol table if it is defined or referenced
3529 by a regular file.
3530
3531 * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs
3532 correctly.
3533
3534 1998-09-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3535
3536 * elflink.h (elf_link_add_object_symbols): Undo last change.
3537
3538 Wed Sep 23 16:09:31 1998 Richard Henderson <rth@cygnus.com>
3539
3540 * elflink.h (elf_link_add_object_symbols): Don't record a dynamic
3541 symbol for the indirect alias to a versioned symbol.
3542
3543 Mon Sep 21 12:15:22 1998 Catherine Moore <clm@cygnus.com>
3544
3545 * elf32-i386.c (elf32_i386_vtinherit_howto): New.
3546 (elf32_i386_vtentry_howto): New.
3547 (elf_i386_reloc_type_lookup): Return elf32_i386_vtentry_howto
3548 or elf32_i386_vtinherit_howto on lookup.
3549
3550 Sun Sep 20 00:48:07 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3551
3552 * elf32-m68k.c: Include "elf/m68k.h". Remove definition of enum
3553 reloc_type. Rename R_68K__max to R_68K_max.
3554 (howto_table): Use _bfd_elf_rel_vtable_reloc_fn for a VTENTRY
3555 reloc.
3556
3557 Sun Sep 20 00:09:25 1998 Chris Torek <torek@bsdi.com>
3558
3559 * libbfd.c (bfd_getb32): Rewrite expression to get better code.
3560 (bfd_getl32, bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
3561
3562 * libbfd.c (bfd_log2): Cast to bfd_vma before shifting, not
3563 after.
3564
3565 Sat Sep 19 22:42:23 1998 Doug Rabson <dfr@nlsystems.com>
3566
3567 * elflink.h (elf_link_add_object_symbols): Ensure that the warning
3568 message has a null byte terminator.
3569
3570 Fri Sep 18 14:35:29 1998 Nick Clifton <nickc@cygnus.com>
3571
3572 * elf32-v850.c (v850_elf_perform_relocation): Ignore contents of
3573 word subject to R_V850_32 relocation.
3574
3575 Thu Sep 17 17:20:36 1998 Nick Clifton <nickc@cygnus.com>
3576
3577 * dwarf2.c: Add comment describing problem computing line numbers
3578 for undefined symbols at link time.
3579
3580 Thu Sep 17 16:03:28 1998 Richard Henderson <rth@cygnus.com>
3581
3582 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
3583 transform a defweak into a plt entry.
3584 (elf64_alpha_calc_dynrel_sizes): Allow room for secondary
3585 plt entry references to receive a RELATIVE reloc.
3586 (elf64_alpha_finish_dynamic_symbol): Fill them in.
3587 (elf64_alpha_relocate_section): Assert we don't overrun
3588 the allocated relocation space.
3589
3590 Wed Sep 16 18:03:13 1998 Nick Clifton <nickc@cygnus.com>
3591
3592 * elf.c (swap_out_syms): Always treat section symbols as
3593 special, even if they are attached to a common section.
3594
3595 Wed Sep 16 10:34:13 1998 Nick Clifton <nickc@cygnus.com>
3596
3597 * elf32-v850.c (v850_elf_symbol_processing): Move symbols in
3598 sections with v850 common section attributes into named v850
3599 common sections.
3600 (v850_elf_add_symbol_hook): Move symbols in sections with v850
3601 common section attributes into named v850 common sections.
3602
3603 Wed Sep 16 11:26:49 CDT 1998 Catherine Moore <clm@cygnus.com>
3604
3605 * elf32-arm.c (elf32_arm_gc_mark_hook): Remove print
3606 statement.
3607
3608 1998-09-15 Geoff Keating <geoffk@ozemail.com.au>
3609
3610 * elf32-ppc.c (ppc_elf_relocate_section): Reverse output_offset
3611 part of Vladimir's change of 1998-08-19. Make a R_PPC_SDAREL16
3612 reloc to the wrong section a warning, not an error. .dynsbss
3613 is not an output section, so there is no need to check for it.
3614
3615 Tue Sep 15 12:40:05 1998 Catherine Moore <clm@cygnus.com>
3616
3617 * elf-bfd.h: Add argument to elf_backend_get_symbol_type.
3618
3619 Tue Sep 15 08:34:40 1998 Catherine Moore <clm@cygnus.com>
3620
3621 * elf.c (swap_out_syms): Pass type to elf_backend_get_symbol_type.
3622 * elf32-arm.c: Add HOWTO entries for R_ARM_GNU_VTINHERIT and
3623 R_ARM_GNU_VTENTRY.
3624 (elf32_arm_gc_mark_hook): New.
3625 (elf32_arm_gc_sweep_hook): New.
3626 (elf32_arm_check_relocs): New.
3627 (elf32_arm_final_link_relocate): Handle VTINHERIT and VTENTRY
3628 relocations.
3629 (elf32_arm_relocate_section): Handle VTINHERIT and VTENTRY
3630 relocations.
3631
3632 1998-09-10 Geoff Keating <geoffk@ozemail.com.au>
3633
3634 * elf32-ppc.c (ppc_elf_relocate_section): If dynobj is NULL,
3635 assume there is no PLT or GOT.
3636
3637 Wed Sep 9 14:24:12 1998 Nick Clifton <nickc@cygnus.com>
3638
3639 * elf32-arm.c (elf32_arm_find_nearest_line): New function: just
3640 like _elf_bfd_find_nearest_line() except that STT_ARM_TFUNC is
3641 also accepted as a function symbol type.
3642
3643 Mon Sep 7 13:24:03 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
3644
3645 * rs6000-core.c (_LONG_LONG): Define for AIX 4.x only.
3646
3647 Sat Sep 5 20:40:18 1998 Ian Lance Taylor <ian@cygnus.com>
3648
3649 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): Correct definition to
3650 match definition of _bfd_gc_sections field.
3651 * libbfd.h: Rebuild.
3652
3653 Fri Sep 4 13:54:23 1998 David Miller <davem@dm.cobaltmicro.com>
3654
3655 * elf32-sparc.c (elf32_sparc_relocate_section): Properly adjust
3656 the addend of a dynamic relocation referencing a section.
3657 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
3658 (sparc64_elf_finish_dynamic_symbol): Fix the PLT relocation offset.
3659
3660 Thu Sep 3 17:28:50 1998 Richard Henderson <rth@cygnus.com>
3661
3662 * elflink.h (bfd_elfNN_size_dynamic_sections): Verify that the
3663 bed has a size_dynamic_sections routine before trying to use it.
3664
3665 Mon Aug 31 14:49:22 1998 Richard Henderson <rth@cygnus.com>
3666
3667 * elf32-mips.c (elf_mips_gnu_vtentry_howto): Use
3668 _bfd_elf_rel_vtable_reloc_fn.
3669
3670 Mon Aug 31 10:23:40 1998 Catherine Moore <clm@cygnus.com>
3671
3672 * Makefile.am: Add elf32-arm.c.
3673 * Makefile.in: Rebuild.
3674 * elf-bfd.h: Add elf_backend_get_symbol_type.
3675 * elf.c (swap_out_syms): If defined, call
3676 elf_backend_get_symbol_type.
3677 * elf32-arm.c: Define elf_backend_get_symbol_type.
3678 (elf32_arm_get_symbol-type): New routine.
3679 (record_thumb_to_arm_glue): Change to use STT_ARM_TFUNC.
3680 (bfd_elf32_arm_process_before_allocation): Change to
3681 check for STT_ARM_TFUNC.
3682 (elf32_arm_final_link_relocate): Likewise.
3683 * elfxx-target.h: Add elf_backend_get_symbol_type.
3684
3685 Fri Aug 28 19:44:07 1998 Richard Henderson <rth@cygnus.com>
3686
3687 * archures.c (bfd_mach_alpha_ev[456]): New.
3688 * cpu-alpha.c: Rework to match these types.
3689 * bfd-in2.h: Rebuild.
3690
3691 Fri Aug 28 19:38:53 1998 Richard Henderson <rth@cygnus.com>
3692
3693 * elf-bfd.h (_bfd_elf_rel_vtable_reloc_fn): Declare.
3694 * elf.c (_bfd_elf_rel_vtable_reloc_fn): New.
3695
3696 * elf32-i386.c (elf_howto_table): Add vtable relocs.
3697 (elf_i386_reloc_type_lookup): Recognize them.
3698 (elf_i386_check_relocs): Pass them off to generic code.
3699 (elf_i386_relocate_section): Ignore them.
3700 (elf_i386_gc_mark_hook, elf_i386_gc_sweep_hook): New.
3701 (elf_backend_can_gc_sections): True.
3702
3703 Thu Aug 20 15:03:45 1998 Nick Clifton <nickc@cygnus.com>
3704
3705 * elf32-arm.c (elf32_thumb_to_arm_stub): Check sym_sec is not NULL
3706 before looking at owner field.
3707 (elf32_arm_to_thumb_stub): Ditto.
3708 (elf32_arm_relocate_section): Compute name before calling
3709 elf32_arm_final_link_relocate().
3710
3711 Thu Aug 20 11:30:17 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
3712
3713 * elf.c: comment and formatting cleanups.
3714 * elfcore.h: ditto.
3715
3716 Wed Aug 19 15:43:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
3717
3718 * elfcode.h (elf_object_p): Reject files of header type ET_CORE
3719 (core files are treated differently than object files).
3720 * elf-bfd.h (_bfd_elf_write_corefile_contents,
3721 bfd_elf_mkcorefile): declare.
3722 * elfxx-target.h (_bfd_elf_write_corefile_contents,
3723 bfd_elf_mkcorefile): add to bfd_target vector.
3724 * elfcore.h (elf_core_file_p): save the program header table,
3725 and set the bfd architecture from the elf file header.
3726 * elf.c (bfd_elf_mkcorefile): new function.
3727 (_bfd_elf_write_corefile_contents): new function.
3728 (assign_file_positions_for_segments): add cases for handling
3729 PT_NOTE segments. (assign_file_positions_except_relocs):
3730 core files should be handled the same as exec files.
3731 (prep_headers): identify core files as type ET_CORE.
3732 (copy_private_bfd_data): identify the sections belonging to
3733 the PT_NOTE segment.
3734
3735 * elf32-sparc.c (elf32_sparc_final_write_processing):
3736 add break statement to default case.
3737
3738 1998-08-19 Vladimir N. Makarov <vmakarov@cygnus.com>
3739
3740 * elf32-ppc.c (ppc_elf_relocate_section): Check that output
3741 section (not input) will be in sections ".sbss", ".sbss2",
3742 ".sdata", and ".sdata" for R_PPC_SDAREL16, R_PPC_EMB_SDA2REL,
3743 R_PPC_EMB_SDA21, R_PPC_EMB_RELSDA. In all these cases also ignore
3744 output_offset for correct evaluation of addend.
3745
3746 Tue Aug 18 11:48:12 1998 Catherine Moore <clm@cygnus.com>
3747
3748 * elf32-arm.c: Add prefix bfd_ to elf32_arm_get_bfd_for_interworking,
3749 elf32_arm_allocate_interworking_sections and
3750 elf32_arm_process_before_allocation.
3751
3752 Tue Aug 18 11:46:00 1998 Nick Clifton <nickc@cygnus.com>
3753
3754 * bfd-in.h: Ammend prototype for
3755 elf32_arm_process_before_allocation to remove surplus third
3756 argument.
3757
3758 * bfd-in2.h: Regenerate.
3759
3760 Sat Aug 15 20:55:08 1998 Richard Henderson <rth@cygnus.com>
3761
3762 * elf64-alpha.c (elf64_alpha_relax_section): Handle indirect symbols.
3763
3764 Fri Aug 14 09:12:28 1998 Stan Cox <scox@cygnus.com>
3765
3766 * aoutx.h (aout_link_input_section_ext): Use the relocation already
3767 calculated for RELOC_SPARC_REV32 case.
3768
3769 Thu Aug 13 14:02:02 1998 Catherine Moore <clm@cygnus.com>
3770
3771 * bfd-in.h: Add prototypes for elf32_arm_get_bfd_for_interworking,
3772 elf32_arm_allocate_interworking_sections and
3773 elf32_arm_process_before_allocation.
3774 * bfd-in2.h: Regenerated.
3775 * elf32-arm.c Define elf32_arm_link_hash_table.
3776 (insert_thumb_branch): New routine.
3777 (find_thumb_glue): New routine.
3778 (find_arm_glue): New routine.
3779 (record_arm_to_thumb_glue): New routine.
3780 (record_thumb_to_arm_glue): New routine.
3781 (elf32_arm_link_hash_table_create): New routine.
3782 (elf32_arm_get_bfd_for_interworking): New routine.
3783 (elf32_arm_allocate_interworking_sections) New routine.
3784 (elf32_arm_process_before_allocation) New routine.
3785 (elf32_thumb_to_arm_stub): New routine.
3786 (elf32_arm_to_thumb_stub): New routine.
3787 (elf32_print_private_bfd_data): Fix typo.
3788 (elf32_arm_final_link_relocate): Add argument sym_sec.
3789 Check for branches to thumb symbols in case R_ARM_PC24.
3790 Check for branches to arm symbols in case R_ARM_THM_PC22.
3791 (elf32_arm_relocate_section): Pass symbol section to
3792 elf32_arm_final_link_relocate.
3793
3794 Wed Aug 12 19:00:39 1998 Geoff Keating <geoffk@ozemail.com.au>
3795
3796 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Generate PLT
3797 entries unless the symbol is defined in the executable; in
3798 particular, undefined weak symbols get a PLT entry.
3799
3800 Wed Aug 12 14:48:33 1998 Ian Lance Taylor <ian@cygnus.com>
3801
3802 * libaout.h: Remove nested comment to avoid warning.
3803
3804 Wed Aug 12 08:10:11 1998 Catherine Moore <clm@cygnus.com>
3805
3806 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
3807 R_ARM_PC24 relocation.
3808
3809 Tue Aug 11 14:42:26 1998 Catherine Moore <clm@cygnus.com>
3810
3811 * elf32-arm.c (elf32_arm_final_link_relocate): Remove unused
3812 argument is_local. Add argument sym_flags. Check sym_flags
3813 in R_ARM_ABS32 case. Include addend for R_ARM_THM_PC22 case.
3814 (elf32_arm_relocate_section): Don't pass local sym and pass
3815 sym_flags to elf32_arm_final_link_relocate.
3816
3817 Mon Aug 10 20:38:39 1998 Richard Henderson <rth@cygnus.com>
3818
3819 * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Correct last change
3820 to not count too few relocs for dynamicly linked executables.
3821
3822 Mon Aug 10 15:35:34 1998 Richard Henderson <rth@cygnus.com>
3823
3824 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Never consider
3825 symbols without a dynamic index dynamic. Consider all weak
3826 symbols dynamic.
3827 (elf64_alpha_strip_section_from_output): Don't assume 1-1
3828 correspondance between input and output sections.
3829
3830 Mon Aug 10 15:31:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3831
3832 * elflink.h (elf_gc_common_finalize_got_offsets): For backends
3833 that use a .got.plt section start the got offset at zero.
3834
3835 Mon Aug 10 17:31:21 1998 Ian Lance Taylor <ian@cygnus.com>
3836
3837 * ieee.c (ieee_write_processor): Correct the processor ID written
3838 out for bfd_arch_m68k, accommodating change of March 25.
3839
3840 Sun Aug 9 20:55:44 1998 Catherine Moore <clm@cygnus.com>
3841
3842 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
3843 R_ARM_THM_RPC22 relocations.
3844
3845 Sat Aug 8 15:15:30 1998 Richard Henderson <rth@cygnus.com>
3846
3847 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Undef weak symbols
3848 are always dynamic.
3849 (elf64_alpha_calc_dynrel_sizes): Allow enough room for RELATIVE
3850 .got relocs in -Bsymbolic shared objects.
3851
3852 Wed Aug 5 15:48:08 1998 Nick Clifton <nickc@cygnus.com>
3853
3854 * elf32-arm.c: Add private flags to ELF header.
3855 (elf32_arm_print_private_bfd_data): New Function.
3856 (elf32_arm_set_private_flags): New Function.
3857 (elf32_arm_copy_private_flags): New Function.
3858 (elf32_arm_merge_private_bfd_data): New Function.
3859
3860 Mon Aug 3 17:10:15 1998 Ian Lance Taylor <ian@cygnus.com>
3861
3862 * elf32-sparc.c (elf32_sparc_check_relocs): Permit WPLT30 against
3863 a local symbol.
3864 (elf32_sparc_relocate_section): Likewise.
3865
3866 Sun Aug 2 03:19:23 1998 Richard Henderson <rth@cygnus.com>
3867
3868 * elf32-ppc.c (ppc_elf_check_relocs): Init sgot to NULL. Create the
3869 .got if any relocation referrs to _GLOBAL_OFFSET_TABLE_.
3870 (ppc_elf_relocate_section): Pull sgot and splt search to the start
3871 of the function. Recognize no .plt as static linking.
3872
3873 1998-08-01 Ulrich Drepper <drepper@cygnus.com>
3874
3875 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Don't pass
3876 ".liblist" string through gettext.
3877
3878 Fri Jul 31 16:38:14 1998 Catherine Moore <clm@cygnus.com>
3879
3880 * Makefile.am: Add support for elf32-arm.lo.
3881 * Makefile.in: Rebuild.
3882 * config.bfd (arm-*-elf): Define targ_defvec and targ_selvecs.
3883 (thumb-*-elf): Define targ_defvec and targ_selvecs.
3884 * configure.in: Handle bfd_elf32_littlearm_vec and bfd_elf32_bigarm_vec.
3885 * configure: Regenerate.
3886 * elf.c: (prep_headers): Support arch_type of EM_ARM.
3887 * targets.c: Support new targets bfd_elf32_bigarm_vec and
3888 bfd_target bfd_elf32_littlearm_vec.
3889 * elf32-arm.c: New file.
3890
3891 Tue Jun 28 19:05:28 1998 Stan Cox <scox@cygnus.com>
3892
3893 * libaout.h (M_SPARCLITE_LE): New machine.
3894 * sunos.c (MACHTYPE_OK): Add machine M_SPARCLITE_LE.
3895 * aoutf1.h (sunos_set_arch_mach): Add machine M_SPARCLITE_LE.
3896 (sunos_write_object_contents): Add machine bfd_mach_sparc_sparclite_le
3897 * aoutx.h (howto_table_ext): Add relocation R_SPARC_REV32.
3898 (NAME(aout,machine_type)) Add machine bfd_mach_sparc_sparclite_le
3899 (aout_link_input_section_ext): Add RELOC_SPARC_REV32 support.
3900 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
3901 elf32_sparc_relocate_section): Rename R_SPARC_32LE to be R_SPARC_REV32
3902 * libbfd.h (bfd_reloc_code_real_names): Rename BFD_RELOC_SPARC_32LE to
3903 be BFD_RELOC_SPARC_REV32.
3904 * reloc.c: Ditto.
3905 * config.bfd (sparc86x-*-aout): New
3906
3907 Fri Jul 24 13:54:19 1998 Nick Clifton <nickc@cygnus.com>
3908
3909 * linker.c (_bfd_generic_final_link): Allocate NULL symbol before
3910 actually mapping the output sections.
3911
3912 Fri Jul 24 11:24:29 1998 Jeffrey A Law (law@cygnus.com)
3913
3914
3915 * elf-m10300.c (mn10300_elf_howto): Add R_MN10300_24 entry.
3916 (mn10300_elf_reloc_map): Similarly.
3917 (mn10300_elf_final_link_relocate): Handle R_MN10300_24.
3918
3919 Fri Jul 24 12:36:04 1998 Ian Lance Taylor <ian@cygnus.com>
3920
3921 * elf32-mips.c (elf_mips_howto_table): Add reloc types used on
3922 Irix 6.
3923 (bfd_elf32_bfd_reloc_type_lookup): Add default case.
3924 * elf64-mips.c: Replace all uses of mips_elf64_reloc_type with
3925 elf_mips_reloc_type defined in elf/mips.h.
3926
3927 1998-07-24 Ulrich Drepper <drepper@cygnus.com>
3928
3929 * elf64-mips.c: Remove reloc_type definition completely. It's now
3930 in elf/mips.h.
3931
3932 Thu Jul 23 13:33:19 1998 Doug Evans <devans@canuck.cygnus.com>
3933
3934 * elf64-mips.c (mips_elf64_reloc_type): #if 0 out more relocations
3935 as they are defined in elf/mips.h now.
3936
3937 Thu Jul 23 11:29:43 1998 Jeffrey A Law (law@cygnus.com)
3938
3939
3940 * Re-add lost change:
3941 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
3942 "movm_stack_size".
3943 (mn10300_elf_relax_section): Include stack space for register saves
3944 in the imm8 field of a "call" instruction.
3945 (compute_function_info): Determine how much stack is allocated by
3946 the movm instruction. Fix typo.
3947 (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
3948
3949 Thu Jul 23 11:38:05 1998 Ian Lance Taylor <ian@cygnus.com>
3950
3951 * elf32-sparc.c (elf_backend_got_header_size): Define as 4.
3952 * elf64-sparc.c (elf_backend_got_header_size): Define as 8.
3953
3954 1998-07-22 Ulrich Drepper <drepper@cygnus.com>
3955
3956 * elf32-ppc.c: Change use of pp_reloc_type to elf_ppc_reloc_type.
3957
3958 Wed Jul 22 16:27:18 1998 Nick Clifton <nickc@cygnus.com>
3959
3960 * elf32-hppa.h: Let ELF header define the enum containing the
3961 external reloc numbers.
3962 * elf32-i386.h: Likewise.
3963
3964 1998-07-22 14:57 Ulrich Drepper <drepper@cygnus.com>
3965
3966 * elf-m10300.c: Let ELF header now define the macros to get the enum.
3967 * elf32-mips.c: Likewise.
3968 * elf32-ppc.c: Likewise.
3969
3970 Wed Jul 22 13:53:52 1998 Nick Clifton <nickc@cygnus.com>
3971
3972 * bfd-in2.h: Change type of 'class' parameter to 'unsigned int' in
3973 bfd_coff_set_symbol_class(), in order to avoid K&R compatability
3974 prblems.
3975 * bfd-in.h: Regenerate.
3976 * coffgen.c (bfd_coff_set_symbol_class): Change type of 'class'
3977 parameter to 'unsigned int' to avoid K&R compatability problems.
3978
3979 Wed Jul 22 16:43:24 1998 Ian Lance Taylor <ian@cygnus.com>
3980
3981 * ieee.c (ieee_find_nearest_line): Change filename_ptr and
3982 functionname_ptr to be const. Change line_ptr to be unsigned.
3983
3984 * coffcode.h (coff_link_output_has_begun): Simplify handling when
3985 macro is not defined. Change second parameter from bfd_link_info
3986 to coff_final_link_info. Add prototype.
3987 (coff_final_link_postscript): Simplify handling when macro is not
3988 defined. Add prototype.
3989
3990 1998-07-22 13:08 Ulrich Drepper <drepper@cygnus.com>
3991
3992 * elf-mn10300.c: Before include system specific ELF header define
3993 START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS.
3994 * elf32-mips.c: Likewise.
3995 * elf32-ppc.c: Likewise.
3996
3997 Wed Jul 22 13:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
3998
3999 * elf64-mips.c (mips_elf64_reloc_type): Copy Ulrich's elf32-mips.c
4000 temporary patch over to elf64-mips.c as well.
4001
4002 1998-07-21 Ulrich Drepper <drepper@cygnus.com>
4003
4004 * elf32-mips.c (reloc_type): Temporarily disable definition of
4005 standard relocation since they are now defined in elf/mips.h.
4006
4007 Tue Jul 21 09:47:00 1998 Catherine Moore <clm@cygnus.com>
4008
4009 * elf-m10200.c (mn10200_elf_final_link_relocate):
4010 Modify range test for case R_MN10200_8.
4011
4012 * elf-m10300.c (mn10300_elf_final_link_relocate):
4013 Modify range test for case R_MN10300_8.
4014
4015 Mon Jul 20 18:50:54 1998 Richard Henderson <rth@cygnus.com>
4016
4017 * elf-bfd.h (struct elf_backend_data): Add got_ & plt_header_size.
4018 * elf32-i386.c (elf_backend_got_header_size): Define.
4019 (elf_backend_plt_header_size): Define.
4020 * elf32-m68k.c, elf32-mips.c, elf32-ppc.c: Likewise.
4021 * elf32-sparc.c, elf64-alpha.c, elf64-sparc.c: Likewise.
4022 * elfxx-target.h: Provide a default of zero.
4023 * elflink.c (_bfd_elf_create_got_section): Use got_header_size.
4024 * elflink.h (elf_gc_common_finalize_got_offsets): Likewise.
4025
4026 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't remove a PLT
4027 entry from an executable, even if the plt refcount goes to 0.
4028
4029 Mon Jul 20 12:47:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4030
4031 * aoutx.h (NAME(aout,find_nearest_line)): Also remember the
4032 directory name at the line number.
4033
4034 * elf.c (_bfd_elf_find_nearest_line): Also consider symbols
4035 with an unspecified type.
4036
4037 Wed Jul 15 11:20:01 1998 Ian Lance Taylor <ian@cygnus.com>
4038
4039 * sunos.c: Add undef of valid to avoid problem on SunOS.
4040
4041 Tue Jul 14 15:30:59 1998 Richard Henderson <rth@cygnus.com>
4042
4043 * config.bfd (i?86-pc-beos{pe,elf,}*): Recognize.
4044
4045 Tue Jul 14 11:22:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4046
4047 * elf32-m68k.c (elf_m68k_check_relocs): Also reference count
4048 R_68K_PCxx and R_68K_xx relocations. Make sure that
4049 ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference.
4050 (elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and
4051 R_68K_xx relocations.
4052 (elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol
4053 that has no plt entry.
4054 (elf_m68k_relocate_section): Ignore the plt offset in a static
4055 link.
4056 * elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for
4057 an ignored symbol.
4058 (elf_gc_common_finalize_got_offsets): Set the got offsets also in
4059 a static link.
4060
4061 * elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc
4062 types.
4063 (howto_table, reloc_map): Add entries for them.
4064 (elf_m68k_check_relocs): Handle them. Implement reference
4065 counting for got and plt entries.
4066 (elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions.
4067 (elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt
4068 symbols.
4069 (rtype_to_howto_rel, elf_info_to_howto_rel): Delete.
4070 (elf_m68k_relocate_section): Handle the new reloc types.
4071 (bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook,
4072 elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define.
4073 * elflink.h (elf_link_add_object_symbols): When creating an
4074 indirect reference for symbol versioning also copy the plt
4075 offset.
4076 (elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT
4077 flag also reset the plt offset.
4078 (elf_link_assign_sym_version): Likewise.
4079 (elf_gc_common_finalize_got_offsets): Increment the got offset by
4080 the size of the entry in bytes.
4081 (elf_gc_allocate_got_offsets): Likewise.
4082
4083 Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com>
4084
4085 * elflink.h (elf_gc_sections): Return true rather than falling off
4086 the bottom.
4087
4088 * coffgen.c (bfd_coff_set_symbol_class): Call bfd_alloc, not
4089 xmalloc.
4090
4091 Mon Jul 13 11:06:31 1998 Nick Clifton <nickc@cygnus.com>
4092
4093 * coff-arm.c: Supress definition of TARGET_UNDERSCORE and add a
4094 comment describing when it should be enabled.
4095 Changed definition of USER_LABEL_PREFIX to "", to fall into line
4096 with GCC sources.
4097
4098 Mon Jul 13 13:06:54 1998 Ian Lance Taylor <ian@cygnus.com>
4099
4100 * ieee.c (ieee_slurp_external_symbols): Handle call optimization
4101 information ATN records.
4102
4103 Fri Jul 10 16:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
4104
4105 * ieee.c (ieee_slurp_external_symbols): Select an appropriate
4106 section for an absolute symbol in a fully linked file. Based on
4107 patch from Christian Holland <CHolland@de.lucent.com>.
4108
4109 Wed Jul 8 11:29:56 1998 Manfred Hollstein <manfred@s-direktnet.de>
4110
4111 * coff-m88k.c (m88k_special_reloc): Don't lose the information
4112 that a symbol is undefined.
4113
4114 Tue Jul 7 21:47:02 1998 Jeffrey A Law (law@cygnus.com)
4115
4116 * som.c (som_bfd_gc_sections): Define.
4117
4118 Mon Jul 6 11:35:50 1998 Nick Clifton <nickc@cygnus.com>
4119
4120 * coff-arm.c (aoutarm_std_reloc_howto): Do not complain about
4121 overflows in ARM_26D patches, since they have already been
4122 implmented. Patch submitted by Dr. R.J. Black <rjb@dcs.gla.ac.uk>
4123
4124 Sat Jul 4 12:25:36 1998 Ian Lance Taylor <ian@cygnus.com>
4125
4126 * coffcode.h (coff_write_object_contents): If we have any long
4127 section names, call coff_write_symbols even if there are no
4128 symbols.
4129
4130 Fri Jul 3 13:11:35 1998 Ian Lance Taylor <ian@cygnus.com>
4131
4132 * elf.c (copy_private_bfd_data): Only set phdr_included once for a
4133 PT_LOAD segment, rather than only setting it once for the entire
4134 file.
4135
4136 * elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA,
4137 rather than ignoring every phdr with a p_paddr of 0, ignore all
4138 the phdrs if they all have a p_paddr of 0.
4139
4140 * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr
4141 section was discarded from the link.
4142
4143 Fri Jul 3 14:39:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4144
4145 * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number.
4146
4147 Fri Jul 3 14:35:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4148
4149 * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with
4150 floating point operations.
4151
4152 Thu Jul 2 18:37:25 1998 Ian Lance Taylor <ian@cygnus.com>
4153
4154 * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global
4155 function symbols.
4156
4157 Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de>
4158
4159 Merge of vax/vms (read-only) support
4160 * configure.com: Support Vax target.
4161 * makefile.vms: Support Vax target.
4162 * vms.h: Renamed from evax.h, merged vax/vms (read-only) support.
4163 * vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only)
4164 support.
4165 * vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only)
4166 support.
4167 * vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only)
4168 support.
4169 * vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only)
4170 support.
4171 * vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only)
4172 support.
4173 * libbfd.c (real_read): Use unbuffered read on VMS/Vax.
4174 * targets.c (bfd_target_ovax_flavour): New flavour.
4175 (vms_alpha_vec): Renamed from evax_alpha_vec.
4176 (vms_vax_vec): New.
4177 (target_vector): Update accordingly.
4178 * config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not
4179 evax_alpha_vec.
4180 (vax*-*-*vms*): New target.
4181 * Makefile.am: Update for renamed files. Rebuild dependencies.
4182 * bfd-in2.h: Rebuild.
4183 * configure.in, Makefile.in, aclocal.m4: Rebuild.
4184
4185 Thu Jul 2 13:31:55 1998 Ian Lance Taylor <ian@cygnus.com>
4186
4187 Based on patch from Matt Semersky <matts@scd.hp.com>:
4188 * linker.c (_bfd_generic_final_link): Force a trailing NULL
4189 pointer on abfd->outsymbols.
4190 (generic_add_output_symbol): Handle NULL sym parameter.
4191
4192 Wed Jul 1 17:05:53 1998 Nick Clifton <nickc@cygnus.com>
4193
4194 * elf.c (copy_private_bfd_data): Add support for changing VMA or
4195 LMA of sections.
4196
4197 Wed Jul 1 16:58:50 1998 Ian Lance Taylor <ian@cygnus.com>
4198
4199 * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons
4200 when handling 32 bit immediate relocs.
4201 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
4202
4203 Tue Jun 30 09:55:03 1998 Jeffrey A Law (law@cygnus.com)
4204
4205 * section.c (STD_SECTION): Account for recently added gc_mark
4206 field in struct asection.
4207
4208 * elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function.
4209 (bfd_elf32_bfd_merge_private_bfd_data): Define.
4210
4211 Thu Jun 25 18:31:41 1998 Richard Henderson <rth@cygnus.com>
4212
4213 ELF Section-level Garbage Collection:
4214 * bfd.c (bfd_gc_sections): New.
4215 * aout-adobe.c: Hook to default implementation.
4216 * aout-target.h, aout-tic30.c, binary.c, bout.c: Likewise.
4217 * coff-alpha.c, coff-mips.c, coff-rs6000.c, coffcode.h: Likewise.
4218 * evax-alpha.c, i386msdos.c, i386os9k.c, ieee.c: Likewise.
4219 * ihex.c, nlm-target.h, oasys.c, ppcboot.c, srec.c: Likewise.
4220 * tekhex.c, versados.c: Likewise.
4221 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): New.
4222 * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_gc_sections.
4223
4224 * reloc.c (BFD_RELOC_VTABLE_INHERIT, BFD_RELOC_VTABLE_ENTRY): New.
4225 (bfd_generic_gc_sections): New.
4226 * section.c (SEC_KEEP): New.
4227 (asection): Add gc_mark member.
4228
4229 * elfcode.h (elf_gc*): New name remappings.
4230 * elflink.h (elf_link_input_bfd): Don't set contents on stabs
4231 sections to be excluded.
4232 (elf_gc_mark, elf_gc_sweep, elf_gc_sweep_symbol): New.
4233 (elf_gc_propogate_vtable_entries_used): New.
4234 (elf_gc_smash_unused_vtentry_relocs): New.
4235 (elf_gc_sections, elf_gc_record_vtinherit, elf_gc_record_vtentry): New.
4236 (elf_gc_common_finalize_got_offsets): New.
4237 (elf_gc_allocate_got_offsets, elf_gc_common_final_link): New.
4238 * elfxx-target.h: Add and default gc hooks.
4239
4240 * elf-bfd.h (struct elf_link_hash_entry): Swap got_offset/plt_offset
4241 for unions.
4242 (struct elf_obj_tdata): Likewise for local_got_offsets.
4243 * elf.c, elf-i386.c, elf32-m68k.c, elf32-mips.c: Update all uses.
4244 * elf32-ppc.c, elf32-sparc.c, elf64-alpha.c: Likewise.
4245 * elf64-sparc.c, elflink.h: Likewise.
4246
4247 * elf-bfd.h (struct elf_link_hash_entry): Add vtable members.
4248 (ELF_LINK_HASH_MARK): Define.
4249 (struct elf_backend_data): Add GC hooks.
4250 * elf.c (_bfd_elf_link_hash_newfunc): Zero vtable members.
4251
4252 * elf-m10300.c (mn10300_elf_check_relocs): New.
4253 (mn10300_elf_gc_mark_hook): New.
4254 (R_MN10300_GNU_VTINHERIT, R_MN10300_GNU_VTENTRY): New.
4255 (elf_mn10300_howto, mn10300_reloc_map): Handle them.
4256 (mn10300_elf_final_link_relocate): Likewise.
4257 (mn10300_elf_relocate_section): Likewise.
4258 (elf_backend_can_gc_sections): Define.
4259 * elf32-mips.c (R_MIPS_GNU_VTINHERIT, R_MIPS_GNU_VTENTRY): New.
4260 (elf_mips_gnu_vtinherit_howto, elf_mips_gnu_vtentry_howto): New.
4261 (bfd_elf32_bfd_reloc_type_lookup): Handle them.
4262 (mips_info_to_howto_rel): Likewise.
4263 (mips_elf_relocate_section): Likewise.
4264 (mips_elf_check_relocs): Likewise.
4265 (mips_elf_gc_mark_hook, mips_elf_gc_sweep_hook): New.
4266 (elf_backend_can_gc_sections): Define.
4267 * elf32-ppc.c (R_PPC_GNU_VTINHERIT, R_PPC_GNU_VTENTRY): New.
4268 (ppc_elf_howto_raw): Handle them.
4269 (ppc_elf_reloc_type_lookup): Likewise.
4270 (ppc_elf_relocate_section): Likewise.
4271 (ppc_elf_check_relocs): Reference count .got and .plt entires.
4272 Handle new vtable relocs.
4273 (ppc_elf_adjust_dynamic_symbol): Recognize unused .plt entries.
4274 (ppc_elf_gc_mark_hook, ppc_elf_gc_sweep_hook): New.
4275 (elf_backend_can_gc_sections): Define.
4276
4277 Fri Jun 26 10:48:23 1998 Jeffrey A Law (law@cygnus.com)
4278
4279 * archures.c (bfd_mach_mn10300): Define.
4280 * elf-m10300.c: Include elf/mn10300.h
4281 (elf_mn10300_mach): New function.
4282 (_bfd_mn10300_elf_final_write_processing): Likewise.
4283 (_bfd_mn10300_elf_object_p): Likewise.
4284 (elf_backendfinal_write_processing): Define.
4285 (elf_backend_object_p): Likewise.
4286
4287 Thu Jun 25 18:31:08 1998 Nick Clifton <nickc@cygnus.com>
4288
4289 * elf32-v850.c (v850_elf_perform_relocation): Fix HI16_S
4290 relocation.
4291
4292 Wed Jun 24 17:17:57 1998 Ian Lance Taylor <ian@cygnus.com>
4293
4294 * elflink.h (elf_bfd_final_link): Loop over input_bfds using the
4295 link_next field, not the next field.
4296
4297 Sun Jun 21 19:38:39 1998 Ian Lance Taylor <ian@cygnus.com>
4298
4299 * elf.c (map_sections_to_segments): Check the section address
4300 against the phdr size both with and without a modulo of
4301 maxpagesize.
4302
4303 Fri Jun 19 17:08:18 1998 Ian Lance Taylor <ian@cygnus.com>
4304
4305 * elf32-mips.c (mips_elf_size_dynamic_sections): Only strip a
4306 linker created empty input section if the output section has the
4307 same name.
4308
4309 * elflink.h (elf_link_output_extsym): Print an error message if
4310 _bfd_elf_section_from_bfd_section fails.
4311
4312 * elf.c (_bfd_elf_section_from_bfd_section): Call bfd_set_error on
4313 failure.
4314
4315 Tue Jun 16 11:55:55 1998 Ian Lance Taylor <ian@cygnus.com>
4316
4317 * elf.c (copy_private_bfd_data): Improve handling of Solaris
4318 native linker output. Avoid putting an empty section in more than
4319 one segment.
4320
4321 Fri Jun 12 13:30:17 1998 Tom Tromey <tromey@cygnus.com>
4322
4323 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
4324 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
4325
4326 Fri Jun 12 13:34:02 1998 Doug Evans <devans@canuck.cygnus.com>
4327
4328 * elf.c (swap_out_syms): New arg relocatable_p.
4329 Don't add section VMA to symbols for relocatable output.
4330 (_bfd_elf_compute_section_file_positions): Update call to
4331 swap_out_syms.
4332
4333 Mon Jun 8 15:20:57 1998 Nick Clifton <nickc@cygnus.com>
4334
4335 * elf32-v850.c (v850_elf_perform_relocation): Make comparisons
4336 against 'addend' be signed rather than unsigned.
4337
4338 Sat Jun 6 00:31:21 1998 Nick Clifton <nickc@cygnus.com>
4339
4340 * elf32-m32r.c: Add prototyps for static functions.
4341
4342 * coff-arm.c: Add prototypes for static functions.
4343
4344 Fri Jun 5 17:21:51 1998 Nick Clifton <nickc@cygnus.com>
4345
4346 * elf.c (elf_sort_sections): Sort by LMA first then VMA, since the
4347 LMA is used to order sections in a segment.
4348
4349 * elf32-v850.c: Add prototypes for static functions.
4350 Change type of addend parameter to bfd_vma in various functions.
4351
4352 Fri Jun 5 18:09:58 1998 Ian Lance Taylor <ian@cygnus.com>
4353
4354 * aoutx.h (howto_table_ext): Change RELOC_BASE13 to use
4355 complain_overflow_signed instead of complain_overflow_bitfield.
4356
4357 Fri Jun 5 15:11:11 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4358
4359 * elf.c (elf_map_symbols): Don't add section VMA to symbol value
4360 when comparing against 0.
4361
4362 Wed Jun 3 17:52:49 1998 Ian Lance Taylor <ian@cygnus.com>
4363
4364 * Makefile.am (config.status): New target.
4365 * Makefile.in: Rebuild.
4366
4367 Wed Jun 3 12:18:24 1998 Stan Cox <scox@equinox.cygnus.com>
4368
4369 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Give an
4370 error if previous object endianness doesn't match current object.
4371
4372 Tue Jun 2 17:50:59 1998 Nick Clifton <nickc@cygnus.com>
4373
4374 * elf32-v850.c (v850_elf_print_private_bfd_data): Call
4375 _bfd_elf_print_private)bfd_data ().
4376
4377 Tue Jun 2 15:29:35 1998 Ian Lance Taylor <ian@cygnus.com>
4378
4379 * elflink.h (elf_merge_symbol): Don't always set type_change_ok
4380 and size_change_ok.
4381 (elf_link_add_object_symbols): Set type_change_ok and
4382 size_change_ok before calling elf_merge_symbol.
4383
4384 * elf32-mips.c (mips_elf_relocate_section): If we issue an
4385 undefined symbol error, don't also issue an overflow error.
4386
4387 Tue Jun 2 13:51:00 1998 Geoff Keating <geoffk@ozemail.com.au>
4388
4389 * elf32-ppc.c (ppc_elf_relocate_section): The target of an
4390 R_PPC_LOCAL24PC relocation should be local; if not, print an error
4391 message instead of crashing.
4392
4393 Mon Jun 1 18:23:12 1998 Yuli Barcohen <yuli.barcohen@telrad.co.il>
4394
4395 * archures.c (bfd_mach_cpu32): Define.
4396 (bfd_default_scan): Add case for 68060. Fix 68332 case to use
4397 bfd_mach_cpu32.
4398 * cpu-m68k.c (arch_info_struct): Add m68k:cpu32.
4399 * ieee.c: Include <ctype.h>.
4400 (ieee_object_p): Parse out process ID string to make it more
4401 likely to be acceptable for bfd_scan_arch.
4402 * bfd-in2.h: Rebuild.
4403
4404 Mon Jun 1 11:12:02 1998 Nick Clifton <nickc@cygnus.com>
4405
4406 * elf32-m32r.c (m32r_elf_print_private_bfd_data): Also call
4407 _bfd_elf_print_private_bfd_data() so that the program header will
4408 be displayed.
4409
4410 Mon Jun 1 12:14:28 1998 Ian Lance Taylor <ian@cygnus.com>
4411
4412 * peicode.h (coff_swap_sym_in): Check for C_SECTION rather than
4413 0x68. Reindent. Add some comments.
4414
4415 Fri May 29 09:58:08 1998 Nick Clifton <nickc@cygnus.com>
4416
4417 * elf.c (copy_private_bfd_data): Adjust physical address of
4418 segment in output BFD to contain LMAs of its sections.
4419
4420 Tue May 26 19:37:47 1998 Stan Cox <scox@equinox.cygnus.com>
4421
4422 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
4423 elf32_sparc_relocate_section): Added R_SPARC_32LE for little
4424 endian data 32 bit relocations.
4425 (elf32_sparc_merge_private_bfd_data): Check if linking little
4426 endian objects with big endian objects.
4427 (elf32_sparc_object_p): Set bfd_mach_sparc_sparclite_le.
4428 (elf32_sparc_final_write_processing): Set EF_SPARC_LEDATA in e_flags.
4429 * libbfd.h (bfd_reloc_code_real_names): Added BFD_RELOC_SPARC_32LE.
4430 * reloc.c: Same.
4431 * cpu-sparc.c (arch_info_struct): Added sparc:sparclite_le
4432 * archures.c (bfd_mach_sparc_sparclite_le): New.
4433 * bfd-in2.h (BFD_RELOC_SPARC_32LE, bfd_mach_sparc_sparclite_le): New.
4434
4435 Thu May 21 16:59:28 1998 Nick Clifton <nickc@cygnus.com>
4436
4437 * peicode.h (add_data_entry): Fix precedence of operators in if ()
4438 statement.
4439
4440 Tue May 19 18:41:19 1998 Ian Lance Taylor <ian@cygnus.com>
4441
4442 * bfd-in.h: Move over patch to bfd-in2.h.
4443
4444 * reloc.c (bfd_check_overflow): Add casts before shifts which may
4445 not fit in 32 bits.
4446 (_bfd_relocate_contents): Likewise.
4447
4448 Mon May 18 14:44:15 1998 Nick Clifton <nickc@cygnus.com>
4449
4450 * peicode.h (add_data_entry): If the section has no private data
4451 then do not create a Data Dictionary entry for it.
4452
4453 Mon May 18 00:09:28 1998 Richard Henderson <rth@cygnus.com>
4454
4455 * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes.
4456 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots,
4457 elf64_alpha_size_got_sections): Rewrite, handling multiple got
4458 subsections during relaxation more correctly.
4459
4460 Thu May 14 14:22:58 1998 Nick Clifton <nickc@cygnus.com>
4461
4462 * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class ().
4463 Add extra argument to bfd_arm_process_before_allocation ().
4464 * bfd-in.h: Reflect changes made in bfd-in2.h.
4465 * coffgen.c (bfd_coff_set_symbol_class): New function. Set the
4466 coff class of a BFD symbol.
4467 * coff-arm.c: Add support for interworking between Thumb code and
4468 non-interworking aware ARM code.
4469
4470 Sun May 10 22:33:59 1998 Jeffrey A Law (law@cygnus.com)
4471
4472 * po/Make-in (install-info): New target.
4473
4474 Thu May 7 17:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
4475
4476 * filemode.c: Remove; not used.
4477
4478 If sysdep.h includes a header file, don't include it again:
4479 * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or
4480 <errno.h>.
4481 * aoutx.h: Don't include <string.h>. Use "sysdep.h" rather than
4482 <sysdep.h>.
4483 * archive.c: Don't include <string.h> or <errno.h>.
4484 * evax-alpha.c; Don't include <stdio.h>.
4485 * evax-egsd.c: Likewise.
4486 * evax-etir.c: Likewise.
4487 * evax-misc.c: Likewise.
4488 * evax-emh.c: Likewise. Also, don't include <sys/types.h>.
4489 * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or
4490 <errno.h>.
4491 * hpux-core.c: Likewise.
4492 * netbsd-core.c: Likewise.
4493 * som.c: Likewise.
4494 * libbfd.c: Don't include <sys/types.h>.
4495 * nlmcode.h: Don't include <string.h>.
4496 * osf-core.c: Don't include <string.h> or <stdio.h>.
4497 * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>,
4498 <errno.h>, or <unistd.h>.
4499 * trad-core.c: Don't include <stdio.h> or <sys/types.h>.
4500
4501 Thu May 7 13:12:50 1998 Klaus Kaempf <kkaempf@progis.de>
4502
4503 * configure.com: If the version number can not be found in
4504 configure.in, set it to "unknown" rather than "2.8.1".
4505
4506 Wed May 6 09:46:05 1998 Gavin Koch <gavin@cygnus.com>
4507
4508 * elf32-mips.c (elf_mips_mach): New.
4509 (_bfd_mips_elf_object_p): Use elf_mips_mach.
4510 (_bfd_mips_elf_final_write_processing): Use the names
4511 of machines, rather than the numbers. Set both the ARCH
4512 and MACH in e_flags. Handle a few more specific machines.
4513 (_bfd_mips_elf_merge_private_bfd_data): Merge both
4514 EF_MIPS_ARCH and EF_MIPS_MACH.
4515
4516 Tue May 5 21:01:53 1998 Richard Henderson <rth@cygnus.com>
4517
4518 * syms.c (bfd_is_local_label): Revert last change.
4519 * srec.c (srec_write_symbols): Discard debugging symbols.
4520
4521 Tue May 5 23:36:06 1998 Ian Lance Taylor <ian@cygnus.com>
4522
4523 * som.c: Include <ctype.h>.
4524 * som.h: Don't include sysdep.h.
4525
4526 Tue May 5 18:29:24 1998 Tom Tromey <tromey@cygnus.com>
4527
4528 * libbfd.h: Rebuilt.
4529 * libbfd-in.h: Removed gettext includes and defines.
4530 * sysdep.h: Moved gettext-related includes and defines here.
4531
4532 Tue May 5 16:47:54 1998 Richard Henderson <rth@cygnus.com>
4533
4534 * srec.c (srec_write_symbols): Use bfd_is_local_label rather than
4535 an ad-hoc test. Kill bogus #if 0 code.
4536 * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local.
4537
4538 Mon May 4 16:10:33 1998 Ian Lance Taylor <ian@cygnus.com>
4539
4540 * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address
4541 when generating a normal executable for a symbol defined in a
4542 regular file. When copying a reloc into the output file, adjust
4543 the addend for a PC relative reloc against a global symbol.
4544
4545 Mon May 4 10:08:18 1998 Tom Tromey <tromey@cygnus.com>
4546
4547 * libbfd.h: Rebuilt.
4548 * libbfd-in.h (_): Define as dgettext.
4549
4550 Mon May 4 11:02:23 1998 Ian Lance Taylor <ian@cygnus.com>
4551
4552 * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma,
4553 not signed.
4554 * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS
4555 when declaring parameter types.
4556 (pe_saved_coff_bfd_copy_private_bfd_data): Likewise.
4557
4558 Wed Apr 29 15:35:03 1998 Ian Lance Taylor <ian@cygnus.com>
4559
4560 * config.bfd: If we include any ELF targets in targ_defvec and/or
4561 targ_selvecs, then add the generic ELF targets to targ_selvecs.
4562 * elf32-gen.c (dummy): New static const variable.
4563 (elf_generic_info_to_howto): New static function.
4564 (elf_generic_info_to_howto_rel): New static function.
4565 (elf_info_to_howto): Define as elf_generic_info_to_howto.
4566 (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel.
4567 * elf64-gen.c: Same changes as elf32-gen.c.
4568 * elfcode.h (elf_object_p): For the generic target, ignore a
4569 failure of bfd_default_set_arch_mach. Fix indentation a bit.
4570
4571 Tue Apr 28 20:05:52 1998 Ian Lance Taylor <ian@cygnus.com>
4572
4573 * configure.in (WIN32LIBADD): Add -lintl on cygwin32.
4574 * configure: Rebuild.
4575
4576 Tue Apr 28 12:16:57 1998 Jason Molenda (crash@bugshack.cygnus.com)
4577
4578 * config.bfd: Update OSR5/Unixware patterns.
4579
4580 Mon Apr 27 18:02:24 1998 Richard Henderson <rth@cygnus.com>
4581
4582 * elf.c (assign_file_positions_for_segments): Allow for holes
4583 between sections added by a link script.
4584
4585 Mon Apr 27 11:49:55 1998 Ian Lance Taylor <ian@cygnus.com>
4586
4587 * configure.in: Change version number to 2.9.4
4588 * configure: Rebuild.
4589
4590 Based on patch from H.J. Lu <hjl@gnu.org>:
4591 * elf.c (bfd_elf_get_bfd_needed_list): New function.
4592 * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare.
4593 * bfd-in2.h: Rebuild.
4594
4595 Sat Apr 25 20:07:53 1998 Richard Henderson <rth@cygnus.com>
4596
4597 * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other.
4598 Change all users.
4599
4600 Sat Apr 25 18:29:07 1998 Richard Henderson <rth@cygnus.com>
4601
4602 * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members.
4603 (elf64_alpha_relax_section): Fill them in.
4604 (elf64_alpha_relax_opt_call): Implement more than a stub.
4605 (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default
4606 alignment on .scommon.
4607 (elf64_alpha_merge_gots): Merge use counts as well.
4608
4609 Sat Apr 25 14:07:29 1998 Richard Henderson <rth@cygnus.com>
4610
4611 * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section
4612 for calculating a local symbol's address.
4613 (elf64_alpha_calc_got_offsets): Skip entries with 0 use count.
4614 Set the .got's cooked size as well as the raw size.
4615
4616 Fri Apr 24 09:16:00 1998 Nick Clifton <nickc@cygnus.com>
4617
4618 * elf32-v850.c (v850_elf_print_private_bfd_data): Add
4619 internationalisation of printed information.
4620
4621 * coff-arm.c (coff_arm_print_private_bfd_data): Add
4622 internationalisation of printed information.
4623
4624 Fri Apr 24 12:09:18 1998 Ian Lance Taylor <ian@cygnus.com>
4625
4626 * syms.c (struct indexentry): Change directory_name, file_name,
4627 and function_name fields to char *.
4628 (struct stab_find_info): Change cached_file_name field to char *.
4629
4630 Thu Apr 23 08:13:04 1998 Nick Clifton <nickc@cygnus.com>
4631
4632 * peicode.h (dir_names): Add missing N_() macros to dir_names array.
4633
4634 Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
4635
4636 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
4637
4638 Wed Apr 22 17:48:48 1998 Ian Lance Taylor <ian@cygnus.com>
4639
4640 * Makefile.am (install-data-local): Make $(includedir).
4641 * Makefile.in: Rebuild.
4642
4643 Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
4644
4645 * libbfd-in.h: Use `gettext' and not `dgettext' for now.
4646
4647 Wed Apr 22 12:53:40 1998 Ian Lance Taylor <ian@cygnus.com>
4648
4649 * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl.
4650 * Makefile.in: Rebuild.
4651
4652 * bfd-in2.h: Rebuild for Nick's changes.
4653
4654 Tue Apr 21 23:11:51 1998 Richard Henderson <rth@cygnus.com>
4655
4656 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last
4657 change wrt length == max_namelen.
4658
4659 Tue Apr 21 21:19:36 1998 Tom Tromey <tromey@scribbles.cygnus.com>
4660
4661 * Many files: Added gettext invocations around user-visible
4662 strings.
4663 * libbfd-in.h: Added gettext includes and defines.
4664 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
4665 HAVE_LC_MESSAGES): Define.
4666 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
4667 po/Makefile.
4668 * Makefile.am (SUBDIRS): Added po.
4669 (POTFILES): New macro.
4670 (po/POTFILES.in): New target.
4671 (SOURCE_HFILES): New macro.
4672 (HFILES): Use it.
4673 * po/Make-in, po/POTFILES.in, po/bfd.pot: New files.
4674
4675 Tue Apr 21 13:38:18 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
4676
4677 * elfcore.h (bfd_prstatus): Copy core_prstatus from the first
4678 NT_PRSTATUS note section encountered, it contains the status of
4679 the currently executing thread when the core file was written.
4680
4681 Tue Apr 21 10:00:12 1998 Nick Clifton <nickc@cygnus.com>
4682
4683 * libcoff.h: Add extra parameter to
4684 bfd_coff_link_output_has_begun overrideable function.
4685 * cofflink.c: Pass extra parameter to
4686 bfd_coff_link_output_has_begun function.
4687 * bfd-in.h: Add prototypes for exported ARM interworking
4688 functions.
4689 * peicode.h: ARM specific code reorganised to conform to BFD
4690 coding conventions.
4691 * coffcode.h: ARM specific code reorganised to conform to BFD
4692 coding conventions.
4693 * coff-arm.c: Code reorganised to conform to the BFD coding
4694 conventions. Global variables have been moved into an ARM
4695 specific hash table structure and a new function:
4696 bfd_arm_get_bfd_for_interworking() has been created which is
4697 called from the linker scripts.
4698
4699 Tue Apr 21 00:11:51 1998 Richard Henderson <rth@cygnus.com>
4700
4701 * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test.
4702
4703 * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from
4704 elf64_alpha_relax_find_reloc_ofs. Changed all callers.
4705 (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss.
4706 (elf64_alpha_size_got_sections): Don't merge .got sections twice.
4707
4708 Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
4709
4710 * config.bfd: Added sparc86x support.
4711
4712 Fri Apr 17 22:29:04 1998 Ian Lance Taylor <ian@cygnus.com>
4713
4714 * elf32-mips.c (mips_elf_relocate_section): Do not complain about
4715 an out of range pc-relative jump/call to an undefined weak symbol.
4716
4717 Thu Apr 16 13:49:00 1998 Richard Henderson <rth@cygnus.com>
4718
4719 * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp
4720 comparisons signed.
4721
4722 Thu Apr 16 11:43:33 1998 Ian Lance Taylor <ian@cygnus.com>
4723
4724 * archive.c (bfd_generic_archive_p): If a slurp subroutine returns
4725 an error other than bfd_error_system_call, set the error to
4726 bfd_error_wrong_format.
4727
4728 * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add
4729 bfd_elf32_powerpcle_vec.
4730
4731 * elf.c (copy_private_bfd_data): If all the p_paddr fields in the
4732 program segments are zero, don't set p_paddr_valid.
4733
4734 Wed Apr 15 22:15:16 1998 Richard Henderson <rth@cygnus.com>
4735
4736 * elf64-alpha.c: Initial implementation of relaxation --
4737 (struct alpha_elf_link_hash_entry): Add use_count member.
4738 (elf64_alpha_check_relocs): Initialize and increment it.
4739 (elf64_alpha_can_merge_gots): Check it when considering merging.
4740 (elf64_alpha_merge_gots): Drop entries with zero use.
4741 (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
4742 (elf64_alpha_always_size_sections): Split out got sizing ...
4743 (elf64_alpha_size_got_sections): ... here. New function.
4744 (elf64_alpha_relax_find_reloc_ofs): New function.
4745 (elf64_alpha_relax_with_lituse): Likewise.
4746 (elf64_alpha_relax_without_lituse): Likewise.
4747 (elf64_alpha_relax_opt_call): Likewise.
4748 (elf64_alpha_relax_section): Likewise.
4749 (elf64_alpha_add_symbol_hook): Likewise.
4750 (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16.
4751 (elf64_alpha_relocate_section): Likewise.
4752 (bfd_elf64_bfd_relax_section): Define.
4753 (elf_backend_add_symbol_hook): Likewise.
4754
4755 Wed Apr 15 16:08:46 1998 Richard Henderson <rth@cygnus.com>
4756
4757 * elf.c (prep_headers): Use new EM_SPARCV9 symbol.
4758 * elf64-sparc.c (ELF_MACHINE_CODE): Likewise.
4759 (ELF_MACHINE_ALT1): New. Set to EM_OLD_SPARC64.
4760
4761 Wed Apr 15 11:34:33 1998 Ian Lance Taylor <ian@cygnus.com>
4762
4763 * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32.
4764 * configure: Rebuild.
4765
4766 Mon Apr 13 16:46:27 1998 Ian Lance Taylor <ian@cygnus.com>
4767
4768 * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@.
4769 (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@.
4770 * configure.in: Define and substitute WIN32LDFLAGS and
4771 WIN32LIBADD.
4772 * aclocal.m4: Rebuild with new libtool.
4773 * configure, Makefile.in: Rebuild.
4774
4775 Fri Apr 10 13:44:27 1998 Ian Lance Taylor <ian@cygnus.com>
4776
4777 * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol
4778 before any other symbols in the same section.
4779
4780 Wed Apr 8 14:50:23 1998 Michael Meissner <meissner@cygnus.com>
4781
4782 * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF
4783 systems.
4784
4785 Tue Apr 7 16:25:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
4786
4787 * dwarf2.c (comp_unit): Move it earlier in the source. Add
4788 addr_size.
4789 (read_address): Replace 'bdf*' argument with 'comp_unit*' argument.
4790 Use addr_size for address size, rather than sizeof(bfd_vma).
4791 (read_attribute): Replace bdf* argument with 'comp_unit*' argument.
4792 Fix call to read_address.
4793 (decode_line_info): Replace bdf* argument with 'comp_unit*' argument.
4794 Scrap other unneeded arguments. Fix call to read_address.
4795 (scan_unit_for_functions): Fix call to read_attribute.
4796 (parse_comp_unit): We now handle more values for addr_size.
4797 Set addr_size in unit. Fix call to read_attribute and
4798 decode_line_info.
4799
4800 Tue Apr 7 15:44:47 1998 Gavin Romig-Koch <gavin@cygnus.com>
4801
4802 * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null.
4803
4804 Tue Apr 7 12:35:18 1998 Ian Lance Taylor <ian@cygnus.com>
4805
4806 * archures.c (bfd_default_scan): Add m68k cases back to default
4807 switch, reverting patch of March 25, since IEEE support depends
4808 upon them.
4809
4810 Mon Apr 6 14:06:40 1998 Ian Lance Taylor <ian@cygnus.com>
4811
4812 * Makefile.am (diststuff): New target.
4813 * Makefile.in: Rebuild.
4814
4815 Sun Apr 5 16:21:44 1998 Jeffrey A Law (law@cygnus.com)
4816
4817 * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of
4818 som_offset when we have an extended name table.
4819
4820 Sun Apr 5 16:04:39 1998 H.J. Lu <hjl@gnu.org>
4821
4822 * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before
4823 trying to copy it.
4824 * Makefile.in: Rebuild.
4825
4826 Fri Apr 3 11:09:42 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4827
4828 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section
4829 symbols when creating a shared library.
4830 (elf_m68k_adjust_dynindx): New function, used by above code.
4831 (elf_m68k_finish_dynamic_sections): Initialize the section
4832 symbols.
4833 (elf_m68k_relocate_section): Change abort to BFD_ASSERT.
4834
4835 Wed Apr 1 16:04:02 1998 Nick Clifton <nickc@cygnus.com>
4836
4837 * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant
4838 value 11.
4839
4840 Wed Apr 1 13:36:58 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4841
4842 * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix
4843 assertion.
4844
4845 Tue Mar 31 00:12:12 1998 Jeffrey A Law (law@cygnus.com)
4846
4847 * elf-m10300.c (mn10300_elf_relax_section): Correctly handle
4848 absolute symbols.
4849
4850 Mon Mar 30 12:46:15 1998 Ian Lance Taylor <ian@cygnus.com>
4851
4852 * configure.in: Set version to 2.9.1.
4853 * configure: Rebuild.
4854
4855 * Branched binutils 2.9.
4856
4857 Mon Mar 30 12:20:50 1998 Brent Baccala <baccala@freesoft.org>
4858
4859 * syms.c (ENABLE_CACHING): Define.
4860 (struct indexentry): Define.
4861 (struct stab_cache): Remove.
4862 (cmpindexentry): New static function.
4863 (struct stab_find_info): Add new fields: indextable,
4864 indextablesize, cached_indexentry, cached_offset, cached_stab, and
4865 cached_file_name. Remove fields: file_cache, function_cache, and
4866 line_cache.
4867 (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted
4868 index table and search it.
4869
4870 Mon Mar 30 10:39:34 1998 Ian Lance Taylor <ian@cygnus.com>
4871
4872 * elf.c (_bfd_elf_copy_private_section_data): Call
4873 copy_private_bfd_data once we've seen the last SEC_ALLOC section.
4874
4875 * cpu-mips.c: Remove trailing comma at end of enumeration list.
4876
4877 Sat Mar 28 16:33:02 1998 Ian Lance Taylor <ian@cygnus.com>
4878
4879 * coff-arm.c: Define all globally visible variables and functions
4880 only when COFF_WITH_PE is not defined.
4881 * configure.in (armpe_little_vec, armpe_big_vec): Add
4882 coff-arm.lo.
4883 * configure: Rebuild.
4884
4885 Fri Mar 27 16:06:02 1998 Ian Lance Taylor <ian@cygnus.com>
4886
4887 Fix some gcc -Wall warnings:
4888 * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings.
4889 * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise.
4890 * archures.c (bfd_default_scan): Likewise.
4891 * bfd.c (bfd_scan_vma): Likewise.
4892 * binary.c (mangle_name): Likewise
4893 * coff-arm.c (aoutarm_fix_pcrel_26): Likewise.
4894 * coff-sh.c (sh_relocate_section): Likewise.
4895 * coff-stgo32.c (create_go32_stub): Likewise.
4896 * coffcode.h (coff_slurp_line_table): Likewise.
4897 * ecoff.c (_bfd_ecoff_write_armap): Likewise.
4898 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
4899 (assign_file_positions_for_segments): Likewise.
4900 * elf32-mips.c (mips_elf_relocate_section): Likewise.
4901 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
4902 * oasys.c (oasys_write_sections): Likewise.
4903 * ppcboot.c (ppcboot_object_p): Likewise.
4904 (mangle_name): Likewise.
4905 * riscix.c (riscix_fix_pcrel_26): Likewise.
4906 * srec.c (srec_scan): Likewise.
4907 * stabs.c (_bfd_write_section_stabs): Likewise.
4908 * sunos.c (sunos_add_dynamic_symbols): Likewise.
4909 * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to
4910 switch. Declare parameters for function pointers.
4911 * archures.c (bfd_default_scan): Add braces to avoid ambiguous if
4912 warning.
4913 * elf.c (elf_sort_sections): Likewise.
4914 * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation.
4915 Add default cases to switches.
4916 (coff_arm_relocate_section): Remove unused local variables.
4917 Always set rstat.
4918 (coff_arm_bfd_set_private_flags): Change flag variable to type
4919 flagword.
4920 * coff-mips.c (mips_relocate_section): Initialize use_lo.
4921 * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int.
4922 (dump_toc): Change cat to const, and initialize it.
4923 * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff.
4924 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
4925 (sh_elf_relocate_section): Initialize r_symndx.
4926 * coffcode.h (coff_compute_section_file_positions): Only declare
4927 old_sofar if ALIGN_SECTIONS_IN_FILE.
4928 (coff_write_object_contents): Initialize csym.
4929 * coffgen.c (coff_pointerize_aux): Make type and class unsigned.
4930 * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to
4931 switch.
4932 * dwarf2.c: Include libiberty.h.
4933 (read_2_signed_bytes, read_4_signed_bytes): Comment out.
4934 (decode_line_info): Remove unused local variables.
4935 * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise.
4936 (m32r_elf_relocate_section): Likewise.
4937 * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise.
4938 (v850_elf_reloc): Likewise.
4939 * elf-bfd.h (elf_linker_section_t): Make alignment unsigned.
4940 (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned.
4941 * elf.c (assign_file_positions_for_segments): Always set adjust.
4942 * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr. Fully
4943 parenthesize expression.
4944 * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h.
4945 (m32r_elf_object_p): Return a value.
4946 (m32r_elf_print_private_bfd_data): Change fprintf format string.
4947 * elf32-mips.c (mips_elf_final_link): Initialize last.
4948 (mips_elf_finish_dynamic_sections): Initialize last and dindx.
4949 * elf32-v850.c (v850_elf_object_p): Return a value.
4950 (v850_elf_print_private_bfd_data): Change fprintf format string.
4951 * elfcode.h (elf_slurp_symbol_table): Change symcount and i to
4952 unsigned long.
4953 * elflink.h (elf_link_add_object_symbols): Change vernum to
4954 unsigned int, and initialize it. Change fprintf format string.
4955 (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type
4956 when setting or comparing to soname_indx.
4957 (elf_create_pointer_linker_section): Change num_symbols to
4958 unsigned int.
4959 * libcoff-in.h (coff_data_type): Change flags to flagword.
4960 * peicode.h (pe_print_idata): Initialize idx. Change j to
4961 bfd_size_type. Initialize hint_member. Remove useless test to
4962 time_stamp.
4963 (pe_print_edata): Change num_functions and num_names in struct
4964 EDT_type to unsigned long. Remove cast. Change fprintf format
4965 string.
4966 * ppcboot.c (ppcboot_object_p): Change i to size_t.
4967 * reloc.c (bfd_get_reloc_size): Change return type to unsigned
4968 int.
4969 * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to
4970 int *. Update uses. Change j to long.
4971 * bfd-in2.h, libcoff.h: Rebuild.
4972
4973 Fri Mar 27 10:10:46 1998 Catherine Moore <clm@cygnus.com>
4974
4975 * elf32-v850.c Remove definition of USE_REL.
4976 (v850_elf_info_to_howto_rela): New function.
4977 (v850_elf_perform_relocation): Renamed from
4978 v850_elf_store_addend_in_insn. Removed replace argument.
4979 (v850_elf_reloc): store the relocation in the addend field instead
4980 of the insn.
4981 (v850_elf_final_link_relocate): Now calls
4982 v850_elf_perform_relocation.
4983 (v850_elf_relocate_section): Remove code to generate REL
4984 relocations.
4985
4986 Thu Mar 26 13:32:17 1998 Ian Lance Taylor <ian@cygnus.com>
4987
4988 * coffcode.h (coff_new_section_hook): Set the type and storage
4989 class in the native symbol information allocated for a new section
4990 symbol.
4991
4992 Thu Mar 26 10:13:41 1998 Nick Clifton <nickc@cygnus.com>
4993
4994 * peicode.h: Chain together calls to
4995 coff_bfd_copy_private_bfd_data and
4996 coff_bfd_print_private_bfd_data.
4997
4998 * coff-arm.c: Add prototypes for
4999 coff_arm_bfd_print_private_bfd_data and
5000 coff_arm_bfd_copy_private_bfd_data.
5001
5002 Wed Mar 25 15:45:55 1998 Nick Clifton <nickc@cygnus.com>
5003
5004 * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE
5005 build.
5006
5007 * peicode.h: Call arm-coff private data functions after handling
5008 pe private data.
5009
5010 * coff-arm.c: Turn statics into globals so that they can be shared
5011 both pe and pei backends.
5012
5013 Wed Mar 25 15:19:38 1998 Ian Lance Taylor <ian@cygnus.com>
5014
5015 * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than
5016 plain numbers.
5017 (sunos_write_object_contents): Likewise.
5018 * aoutx.h (NAME(aout,machine_type)): Likewise.
5019 * coffcode.h (coff_set_arch_mach_hook): Likewise.
5020
5021 Wed Mar 25 13:59:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5022
5023 * archures.c (bfd_mach_m68*): Add definitions for various m68k
5024 variants.
5025 (bfd_default_scan): Remove m68k special cases.
5026 * bfd-in2.h: Rebuild.
5027 * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather
5028 than plain numbers.
5029 * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
5030 * cpu-m68k.c (arch_info_struct): Likewise. Add entry for
5031 m68k:68000.
5032 (bfd_m68k_arch): Set mach field to zero to signal no explicit
5033 selection, change printable_name to just "m68k" and make that the
5034 default instead of m68k:68020.
5035
5036 * aout-tic30.c (NAME): Define this to avoid multiple definitions
5037 from aoutx.h.
5038 (MY_get_section_contents): Define as aout_32_get_section_contents
5039 rather than NAME(aout,get_section_contents).
5040
5041 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast.
5042
5043 * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha
5044 and call bfd_default_set_arch_mach to do the real work.
5045
5046 Wed Mar 25 10:41:35 1998 Richard Henderson <rth@cygnus.com>
5047
5048 * bout.c (BALX): Include return register g14 as part of the insn.
5049 (BALX_MASK): New.
5050 (calljx_callback): Use it.
5051
5052 Wed Mar 25 11:19:28 1998 Ian Lance Taylor <ian@cygnus.com>
5053
5054 * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma.
5055 * libbfd.h: Rebuild.
5056
5057 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change
5058 byte_count to unsigned int.
5059 (mn10300_elf_relax_section): Initialize internal_relocs. Remove
5060 unused local variables.
5061
5062 * evax-alpha.c (evax_close_and_cleanup): Remove unused local
5063 variables er and er1.
5064
5065 * cpu-v850.c: Include <ctype.h>.
5066 (scan): Case isdigit argument to unsigned char.
5067
5068 From Yan Meroth <YAN.MEROTH@st.com>:
5069 * ihex.c (ihex_scan): Add extbase variable so that getting an
5070 extended linear address record does not ignore any previous
5071 extended address.
5072 (ihex_write_object_contents): When writing out an extended linear
5073 address record, zero out any previous extended address.
5074
5075 Tue Mar 24 16:09:43 1998 Manfred Hollstein <manfred@s-direktnet.de>
5076
5077 * ieee.c (do_one): Check section before dereferencing it.
5078 (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr.
5079 (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive.
5080
5081 Mon Mar 23 18:51:47 1998 Joel Sherrill <joel@OARcorp.com>
5082
5083 * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF.
5084
5085 Mon Mar 23 14:23:36 1998 Nick Clifton <nickc@cygnus.com>
5086
5087 * coff-arm.c: Add interworking functions to pe backends.
5088
5089 Fri Mar 20 18:47:20 1998 Ian Lance Taylor <ian@cygnus.com>
5090
5091 * configure.in: Use AM_DISABLE_SHARED.
5092 * aclocal.m4, configure: Rebuild with libtool 1.2.
5093
5094 Fri Mar 20 11:25:41 1998 Nick Clifton <nickc@cygnus.com>
5095
5096 * coff-arm.c (coff_arm_relocate_section): Better error messages
5097 when interowrking conflucts occur. Courtesy of Jonathan Walton
5098 and Tony Thompson.
5099 (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted
5100 relocations. Patch courtesy of Jonathan Walton and Tony
5101 Thompson.
5102
5103 Fri Mar 20 02:26:43 1998 Richard Henderson <rth@cygnus.com>
5104
5105 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert
5106 part of Feb 22 change controling when to override the existing
5107 symbol with the .plt entry.
5108
5109 Wed Mar 18 09:26:25 1998 Nick Clifton <nickc@cygnus.com>
5110
5111 * config.bfd (targ_cpu): Add thumb-pe target.
5112
5113 * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external
5114 functions in PE build.
5115
5116 Sun Mar 8 23:37:26 1998 Stan Cox <scox@equinox.cygnus.com>
5117
5118 * config.bfd (sparclite-*-elf*): Added.
5119
5120 Mon Feb 23 19:31:19 1998 Ian Lance Taylor <ian@cygnus.com>
5121
5122 * configure.in: Add elf.lo to elf shell variable.
5123 * Makefile.am (BFD_LIBS): Remove elf.lo.
5124 (BFD_LIBS_CFILES): Remove elf.c.
5125 (BFD32_BACKENDS): Add elf.lo.
5126 (BFD32_BACKENDS_CFILES): Add elf.c.
5127 * configure, Makefile.in: Rebuild.
5128
5129 1998-02-23 15:53 Richard Henderson <rth@cygnus.com>
5130
5131 * elf32-i386.c (elf_i386_relocate_section): A pc-relative
5132 relocation against a now-local symbol should not have a dynamic
5133 relocation.
5134
5135 Mon Feb 23 16:17:08 1998 Ian Lance Taylor <ian@cygnus.com>
5136
5137 * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in
5138 COFF filehdr flags.
5139 (pe_print_private_bfd_data): Print PE flags. From Mikey
5140 <jeffdb@netzone.com>.
5141
5142 Sun Feb 22 20:39:00 1998 Richard Henderson <rth@cygnus.com>
5143
5144 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create
5145 a plt entry when we can determine that we authoritatively define
5146 the symbol.
5147
5148 Sun Feb 22 20:33:05 1998 Richard Henderson <rth@cygnus.com>
5149
5150 * configure.in (COREFILE selection): Remove sparc-*-linux*. They
5151 don't actually use trad-core, but a SunOS-style core file handled
5152 by gdb directly.
5153 * hosts/sparclinux.h: Remove.
5154
5155 Wed Feb 18 15:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
5156
5157 * peicode.h (pe_print_idata): If there is no .idata section, look
5158 for the import tables in some other section. Make the initial
5159 label line up better with the data. Print the import address
5160 table even if there is no import name table. If the import
5161 address table holds actual addresses, print them.
5162
5163 Tue Feb 17 12:58:34 1998 Ian Lance Taylor <ian@cygnus.com>
5164
5165 * libbfd.c (bfd_seek): If fseek fails, save errno around call to
5166 bfd_tell. If errno is EINVAL, set bfd_error_file_truncated, not
5167 bfd_error_system_call.
5168
5169 Fri Feb 13 13:11:33 1998 Ian Lance Taylor <ian@cygnus.com>
5170
5171 * Makefile.am (AUTOMAKE_OPTIONS): Define.
5172 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
5173
5174 From H.J. Lu <hjl@gnu.org>:
5175 * Makefile.am (libbfd_la_LDFLAGS): Define.
5176 * Makefile.in: Rebuild.
5177
5178 Thu Feb 12 17:31:11 1998 Ian Lance Taylor <ian@cygnus.com>
5179
5180 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
5181 * netbsd.h (MACHTYPE_OK): Define.
5182 (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when
5183 calling N_SET_MACHTYPE, rather than having a switch.
5184 * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD,
5185 and M_ALPHA_NETBSD.
5186 * i386netbsd.c (MACHTYPE_OK): Don't define.
5187 (DEFAULT_MID): Define.
5188 * m68k4knetbsd.c (SEGMENT_SIZE): Don't define.
5189 (MACHTYPE_OK): Don't define.
5190 (DEFAULT_MID): Define.
5191 * m68knetbsd.c: (MACHTYPE_OK): Don't define.
5192 (DEFAULT_MID): Define.
5193 * ns32knetbsd.c (MACHTYPE_OK): Don't define.
5194 (DEFAULT_MID): Define.
5195 * sparcnetbsd.c (MACHTYPE_OK): Don't define.
5196 (DEFAULT_MID): Define.
5197
5198 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
5199 * vaxnetbsd.c: New file.
5200 * netbsd-core.c: Clean up. Remove unused macros. Use netbsd
5201 rather than netbsd_core.
5202 * targets.c (vaxnetbsd_vec): Declare.
5203 (bfd_target_vector): Add vaxnetbsd_vec. If NETBSD_CORE is
5204 defined, add netbsd_core_vec.
5205 * configure.in: Set COREFILE for alpha*-*-netbsd* and
5206 powerpc-*-netbsd* to netbsd-core.lo. If COREFILE is
5207 netbsd-core.lo, set COREFLAG to -DNETBSD_CORE.
5208 * config.bfd (alpha*-*-netbsd*): New target.
5209 * Makefile.am: Rebuild dependencies.
5210 (BFD32_BACKENDS): Add vaxnetbsd.lo.
5211 (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c.
5212 * configure, Makefile.in: Rebuild.
5213
5214 * configure.host: Remove the old shared library build stuff. We
5215 now use libtool instead.
5216
5217 Wed Feb 11 17:13:09 1998 Richard Henderson <rth@cygnus.com>
5218
5219 * tekhex.c (tekhex_write_object_contents): Call tekhex_init.
5220
5221 Tue Feb 10 19:23:28 1998 H.J. Lu <hjl@gnu.org>
5222
5223 * configure.in: Take stab-syms.lo out of sparclinux_vec list.
5224 * configure: Rebuild.
5225
5226 Tue Feb 10 15:16:38 1998 Nick Clifton <nickc@cygnus.com>
5227 * elf32-v850.c (remember_hi16s_reloc): New function.
5228 (find_remembered_hi16s_reloc): New function.
5229 (v850_elf_store_addend_in_insn): Use the above new functions to
5230 match up HI6S relocs with LO16 relocs.
5231
5232 Tue Feb 10 15:01:39 1998 Ian Lance Taylor <ian@cygnus.com>
5233
5234 * configure.in: Change -linux* to -linux-gnu*.
5235 * config.bfd, configure.host: Likewise.
5236 * configure: Rebuild.
5237
5238 Mon Feb 9 19:40:59 1998 Nick Clifton <nickc@cygnus.com>
5239
5240 * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another
5241 LO16/HI16S bug and improve comments about what is going on.
5242
5243 Sat Feb 7 15:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
5244
5245 * configure, aclocal.m4: Rebuild with new libtool.
5246
5247 Fri Feb 6 14:48:20 1998 Nick Clifton <nickc@cygnus.com>
5248
5249 * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain
5250 when merging v850 code into v850e/v850ea code. Do not initialise
5251 output flags if the input is the default architecture.
5252
5253 Fri Feb 6 11:50:22 1998 Jeffrey A Law (law@cygnus.com)
5254
5255 * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR
5256 get the size from bfd_arch_bits_per_address instead of directly
5257 from the isa.
5258
5259 Thu Feb 5 14:21:34 1998 Michael Meissner <meissner@cygnus.com>
5260
5261 * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address
5262 to wrap, just return all 1's bits instead.
5263 * libbfd.h: Regenerate.
5264
5265 Thu Feb 5 11:51:05 1998 Ian Lance Taylor <ian@cygnus.com>
5266
5267 * coff-i386.c (coff_pe_i386_relocate_section): New static function
5268 if COFF_WITH_PE.
5269 (coff_relocate_section): If COFF_WITH_PE, define as
5270 coff_pe_i386_relocate_section.
5271 * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE,
5272 skip empty sections, to match coff_write_object_contents.
5273
5274 * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend,
5275 rather than swapping out r_offset twice. From Luke Deller
5276 <luked@cse.unsw.edu.au>.
5277
5278 Wed Feb 4 19:11:28 1998 Ian Lance Taylor <ian@cygnus.com>
5279
5280 * configure.in: Set libtool_enable_shared rather than
5281 libtool_shared. Remove diversion hack.
5282 * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild
5283 with new libtool.
5284
5285 Wed Feb 4 16:10:21 1998 Brent Baccala <baccala@freesoft.org>
5286
5287 * syms.c (struct stab_cache): Define.
5288 (struct stab_find_info): Remove cached_offset, cached_stab,
5289 cached_str, and cached_stroff fields. Add file_cache,
5290 function_cache, and line_cache fields.
5291 (_bfd_stab_section_find_nearest_line): Use extensive caching to
5292 speed up searches.
5293
5294 Wed Feb 4 13:34:22 1998 Ian Lance Taylor <ian@cygnus.com>
5295
5296 * peicode.h (pe_print_idata): Check for import of ordinal rather
5297 than name.
5298 (pe_print_edata): If there is no .edata section, look for the
5299 export data in some other section.
5300
5301 Mon Feb 2 20:05:42 1998 Jason Molenda (crash@bugshack.cygnus.com)
5302
5303 * configure.in: Change version to 2.8.4.
5304 * configure: Regenerated.
5305
5306 Mon Feb 2 17:39:39 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
5307
5308 Add tms320c30 support:
5309 * cpu-tic30.c: New file.
5310 * aout-tic30.c: New file.
5311 * coff-tic30.c: New file.
5312 * archures.c (bfd_arch_tic30): Define.
5313 (bfd_tic30_arch): Declare.
5314 (bfd_archures_list): Add bfd_tic30_arch.
5315 * targets.c (bfd_target_vector): Add tic30_aout_vec and
5316 tic30_coff_vec.
5317 * reloc.c (BFD_RELOC_TIC30_LDP): Define.
5318 * coffcode.h (coff_set_arch_mach_hook): Add tic30 case.
5319 (coff_set_flags): Likewise.
5320 * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets.
5321 * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors.
5322 * Makefile.am: Rebuild dependencies.
5323 (ALL_MACHINES): Add cpu-tic30.lo.
5324 (ALL_MACHINES_CFILES): Add cpu-tic30.c.
5325 (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo.
5326 (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c.
5327 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
5328
5329 Mon Feb 2 12:25:12 1998 Nick Clifton <nickc@cygnus.com>
5330
5331 * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc
5332 to lag behind LO16 reloc by a couple of instructions.
5333
5334 Mon Feb 2 14:09:46 1998 Ian Lance Taylor <ian@cygnus.com>
5335
5336 * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force
5337 make to reexamine the file timestamp.
5338 ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise.
5339
5340 * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from
5341 0x100000.
5342
5343 Fri Jan 30 19:07:07 1998 Geoff Keating <geoffk@ozemail.com.au>
5344
5345 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure
5346 to create .dynsbss and .rela.sbss sections.
5347 (ppc_elf_adjust_dynamic_symbol): Put space for small data to be
5348 copied from dynamic objects into .sbss.
5349 (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't
5350 use it. Correct typo of .rela.sdata2.
5351 (ppc_elf_finish_dynamic_symbol): Generate reloc to where we
5352 put the data, which may now be in .sbss.
5353 (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss.
5354 (elf_backend_create_dynamic_sections): Define as
5355 ppc_elf_create_dynamic_sections.
5356
5357 * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs
5358 against _GLOBAL_OFFSET_TABLE_.
5359 (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in
5360 shared libraries which refer to local symbols. Make sure that the
5361 test for allocating space for a reloc in a shared object is the
5362 same as the test for emitting a reloc.
5363
5364 Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
5365
5366 * config.bfd (i[3456]-*-mingw32*): New target.
5367 * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32.
5368 * aclocal.m4, configure: Rebuild.
5369
5370 Wed Jan 28 13:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
5371
5372 * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we
5373 have a bfd_object.
5374
5375 Tue Jan 27 21:43:55 1998 Richard Henderson <rth@cygnus.com>
5376
5377 Sparc v9 ABI compliant PLT:
5378 * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries.
5379 (plt_templates, sparc64_elf_build_plt_entry): Delete.
5380 (LARGE_PLT_THRESHOLD): New define.
5381 (GOT_RESERVED_ENTRIES): V9 ABI only uses 1.
5382 (sparc64_elf_build_plt): New function.
5383 (sparc64_elf_plt_entry_offset): Likewise.
5384 (sparc64_elf_plt_ptr_offset): Likewise.
5385 (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to
5386 contain the index for convenience. Skip the initial entries
5387 in .rela.plt.
5388 (sparc64_elf_size_dynamic_sections): Zero the allocated contents
5389 memory for the benefit of .rela.plt.
5390 (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset.
5391 (sparc64_elf_finish_dynamic_symbol): Kill template stuff. Use
5392 sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc.
5393 (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt.
5394 Call sparc64_elf_build_plt.
5395 (elf_backend_want_got_plt): No.
5396 (elf_backend_plt_readonly): No.
5397 (elf_backend_plt_alignment): 8.
5398
5399 * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab.
5400 * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it.
5401 * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it
5402 to be called.
5403
5404 Tue Jan 27 21:45:15 1998 Jeffrey A Law (law@cygnus.com)
5405
5406 * archures.c (bfd_mach_mips*): Add definitions for various MIPS
5407 processors.
5408 * cpu-mips.c (arch_info_struct): Add mips variants.
5409 * bfd-in2.h: Rebuilt.
5410
5411 Tue Jan 27 15:06:04 1998 Nick Clifton <nickc@cygnus.com>
5412
5413 * coff-arm.c (coff_arm_relocate_section): Preserve the contents of
5414 t2a3_b_insn.
5415
5416 Tue Jan 27 12:47:27 1998 Robert Lipe <robertl@dgii.com>
5417
5418 * config.bfd (i[3456]86-sco3.2v5*): ELF now the default.
5419 (i[3456]86sco3.2v5*coff): New target.
5420
5421 Mon Jan 26 15:41:30 1998 Ian Lance Taylor <ian@cygnus.com>
5422
5423 * bfd-in2.h: Rebuild with changes to chew--tab expansion.
5424
5425 Thu Jan 22 21:26:48 1998 Richard Henderson <rth@cygnus.com>
5426
5427 * bfd.c (bfd_get_error_handler): Add orthogonal function.
5428 * bfd-in2.h: Regenerate.
5429
5430 Thu Jan 22 21:13:39 1998 Richard Henderson <rth@cygnus.com>
5431
5432 * tekhex.c (tekhex_write_object_contents): Check for no symbols.
5433
5434 Wed Jan 21 21:19:03 1998 Ian Lance Taylor <ian@cygnus.com>
5435
5436 * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't
5437 adjust addend for an output common symbol (from Jimmy Blair
5438 <jimmyb@wrs.com>). If COFF_WITH_PE, adjust addend for PC relative
5439 defined symbol to counteract adjustment made in generic relocation
5440 code.
5441
5442 * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h.
5443
5444 Wed Jan 21 21:16:06 1998 Manfred Hollstein <manfred@s-direktnet.de>
5445
5446 * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name.
5447 (GET_SCNDHR_NLNNO): Likewise.
5448
5449 Mon Jan 19 12:49:52 1998 Ian Lance Taylor <ian@cygnus.com>
5450
5451 * cpu-sh.c (arch_info_struct): Correct next field of sh3e.
5452
5453 Wed Jan 14 17:23:27 1998 Nick Clifton <nickc@cygnus.com>
5454
5455 * elf32-m32r.c: Add macros to handle NOP insertion.
5456
5457 Wed Jan 14 16:15:22 1998 Richard Henderson <rth@cygnus.com>
5458
5459 * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section.
5460 (xcoff_mark): Likewise.
5461 (xcoff_build_ldsyms): Mark absolute symbols.
5462
5463 Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com>
5464
5465 * bout.c (b_out_write_object_contents): Sort symbols before output
5466 to keep {CALL,BAL}NAME symbols adjacent.
5467 (b_out_symbol_cmp): New function.
5468
5469 For older changes see ChangeLog-9697
5470 \f
5471 Local Variables:
5472 mode: change-log
5473 left-margin: 8
5474 fill-column: 74
5475 version-control: never
5476 End:
This page took 0.146844 seconds and 3 git commands to generate.