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