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