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