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