1999-06-27 H.J. Lu <hjl@gnu.org>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
a94a7c1c
MM
11999-06-26 Mark Mitchell <mark@codesourcery.com>
2
3 * elf32-mips.c (irix_compat_t): New enumeration.
4 (ABI_N32_P): New macro.
5 (IRIX_COMPAT): Likewise.
6 (SGI_COMPAT): Implement in terms of IRIX_COMPAT.
7 (mips_elf_relocate_section): Fix typo.
8
254f5c45
ILT
91999-06-26 Mumit Khan <khan@xraylith.wisc.edu>
10
11 * peicode.h (coff_swap_scnhdr_out): Mark non readonly BFD sections
12 as writable PE sections.
13
f623be2b
RH
141999-06-26 David Mosberger <davidm@hpl.hp.com>
15
16 * dwarf2.c (struct arange): New type.
17 (struct comp_unit): Replace LOW and HIGH by member ARANGE.
18 (arange_add): New function.
19 (decode_line_info): Keep track of address ranges that a compilation
20 unit covers.
21 (comp_unit_contains_address): Return true if address is contained
22 in _any_ of the address ranges associated with a compilation unit.
23 (_bfd_dwarf2_find_nearest_line): Call comp_unit_find_nearest_line
24 on the first comp_unit that contains the address.
25
69dd2e2d
RH
261999-06-26 David Mosberger <davidm@hpl.hp.com>
27
28 * dwarf2.c (struct dwarf2_debug): Add member dwarf_line_buffer.
29 (decode_line_info): Add variable STASH and initialize it to point
30 to the per-bfd dwarf2_debug info. Remove static variable
31 dwarf_line_buffer and use stash->dwarf_line_buffer in its place.
32
0429ebd0
ILT
331999-06-26 Ian Lance Taylor <ian@zembu.com>
34
1d7b28df
ILT
35 * elflink.h (elf_link_output_extsym): It's OK for a -Bsymbolic
36 shared library to have an undefined symbol.
37
0429ebd0
ILT
38 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:
39 * elf32-ppc.c (ppc_elf_relocate_section): Fix last patch.
40
4517897e
JL
41Thu Jun 24 20:59:11 1999 Jeffrey A Law (law@cygnus.com)
42
43 * elf-hppa.c (elf_hppa_final_write_processing): New function.
44 * elf32-hppa.c: Remove everything related to symbol extension
45 sections & records. Use the common elf_hppa_final_write_processing.
46
f0c2e336
MM
471999-06-22 Mark Mitchell <mark@codesourcery.com>
48
49 * elflink.h (size_dynamic_sections): Use user-specified init/fini
50 functions instead of _init/_fini if requested.
51
03ae5f59
ILT
521999-06-23 Ian Lance Taylor <ian@zembu.com>
53
54 * elf.c (bfd_section_from_shdr): Avoid crashing on a bogus sh_link
55 field.
56
464e1740
ILT
571999-06-22 Ian Lance Taylor <ian@zembu.com>
58
59 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:
60 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set unused dynindx
61 field to 0, not -1.
62 (ppc_elf_finish_dynamic_sections): Check for positive section
63 dynindx field, rather than comparing against -1.
64 (ppc_elf_relocate_section): Only return false if undefined_symbol
65 or reloc_overflow fail, not always upon encountering an error.
66
2f5116e2
MM
671999-06-22 Mark Mitchell <mark@codesourcery.com>
68
69 * elflink.h (link_read_relocs): Explicitly cast external_relocs to
70 bfd_byte * before performing pointer arithmetic.
71
9e103c9c
JL
72Tue Jun 22 13:06:25 1999 Jeffrey A Law (law@cygnus.com)
73
74 * elf-hppa.h: New file. Common stuff for elf32 and elf64 PA
75 support.
76 * elf32-hppa.c: Include elf-hppa.h.
77 (ARCH_SIZE): Define.
78 (elf_hppa_reloc_type_lookup): Delete. Found in the common code
79 now.
80 (elf32_hppa_info_to_howto): Similarly.
81 (elf_hppa_howto_table): Similarly.
82 (elf_hppa_reloc_type_lookup): Similarly.
83 (hppa_elf_gen_reloc_type): Similarly.
84 * elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete.
85
232fb1a3
NC
861999-06-22 Nick Clifton <nickc@cygnus.com>
87
88 * elf32-v850.c (v850_elf_final_link_relocate): Catch overflow
89 handling R_V850_22_PCREL relocation.
90
271025eb
ILT
911999-06-21 Ian Lance Taylor <ian@zembu.com>
92
93 * coff-arm.c (arm_emit_base_file_entry): Explicitly declare return
94 type.
95
0bde07d4
RH
96Sun Jun 20 14:13:57 1999 Richard Henderson <rth@cygnus.com>
97
98 * section.c (_bfd_strip_section_from_output): Ignore sections
99 DISCARDed by the link script.
100
f800e11d
ILT
1011999-06-19 Ian Lance Taylor <ian@zembu.com>
102
103 * elflink.h (elf_link_remove_section_and_adjust_dynindices):
104 Remove unused local variable spp.
105
106 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't crash if
107 the entry symbol is not set.
108
72b60c23
RH
109Fri Jun 18 04:24:57 1999 Richard Henderson <rth@cygnus.com>
110
111 * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust
112 GPDISP or LITUSE in a relocatable link.
113
aec89efb
JR
114Thu Jun 17 21:24:43 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
115
116 * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc.
117 * (alloc_dwarf1_func): Likewise.
118
5ba624b0
JL
119Wed Jun 16 03:09:57 1999 Jeffrey A Law (law@cygnus.com)
120
121 * libhppa.h: Fix various formatting errors.
122 (assemble_3); Rewrite using CATENATE.
123 (assemble_17): Fix various bugs.
124
59d23ada
NC
1251999-06-16 Nick Clifton <nickc@cygnus.com>
126
127 * elf32-mcore.c (R_MCORE_RAW): Fix definition.
128
0c3ff40b
RH
1291999-06-15 Richard Henderson <rth@cygnus.com>
130
131 * section.c (SEC_SHORT): Define.
132 * bfd-in2.h: Rebuild.
133
42751cf3
MM
1341999-06-13 Mark Mitchell <mark@codesourcery.com>
135
78de0b43
MM
136 * elflink.h (elf_link_remove_section_and_adjust_dynindices):
137 Remove abfd parameter. Use _bfd_strip_section_from_output.
138 (bfd_elf_size_dynamic_sections): Adjust callers accordingly.
139
42751cf3
MM
140 * elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function.
141 * elflink.c (_bfd_elf_link_adjust_dynindx): Define it.
142 * elflink.h (elf_link_remove_section_and_adjust_dynindices): New
143 function.
144 (bfd_elf_size_dynamic_sections): Use it.
145
3e269912
ILT
1461999-06-13 Alan Modra <alan@spri.levels.unisa.edu.au>
147
148 * elf32-i386.c (elf_howto_table): Change R_386_PC8 from
149 complain_overflow_bitfield to complain_overflow_signed.
150
6b5bd373
MM
1511999-06-13 Mark Mitchell <mark@codesourcery.com>
152
153 * elflink.h (elf_link_read_relocs_from_section): New function,
154 split out from ...
155 (elf_link_read_relocs): Here. Use it for both relocation
156 sections.
157
57e21bef
MM
1581999-06-12 Mark Mitchell <mark@codesourcery.com>
159
160 * elfcode.h (elf_slurp_reloc_table_from_section): Don't assume
161 asect->reloc_count is valid.
162
cc3bfcee
ILT
1631999-06-12 Ian Lance Taylor <ian@zembu.com>
164
165 * elf32-mips.c (mips_elf32_section_processing): Permit a
166 SHT_MIPS_REGINFO section to have a size of 0.
167
7a50d4ac
ILT
1681999-06-12 David O'Brien <obrien@freebsd.org>
169
170 * config.bfd (alpha*-*-freebsd*): New target.
171 (i[3456]86-*-freebsd*): Now defaults to ELF.
172
f5f9cc4f
ILT
1731999-06-11 Ian Lance Taylor <ian@zembu.com>
174
44257b8b
ILT
175 * reloc.c (_bfd_relocate_contents): Permit bitfield relocations to
176 wrap if the relocation covers the high bit of an address.
177
f5f9cc4f
ILT
178 * dwarf2.c (decode_line_info): Remove unused variable first_time.
179
60dac299
RH
1801999-06-10 Jakub Jelinek <jj@ultra.linux.cz>
181
182 * elf64_sparc.c (sparc64_elf_relocate_section): Use R_SPARC_max_std
183 instead of R_SPARC_max.
184 (sparc64_elf_info_to_howto): Likewise.
185 * elf32_sparc.c (elf32_sparc_relocate_section): Likewise.
186 (elf32_sparc_info_to_howto): Likewise; handle vtable relocations.
187
9d7428a9
RH
1881999-06-07 Richard Henderson <rth@cygnus.com>
189
190 * section.c (_bfd_strip_section_from_output): Remove output
191 sections with no initial link_order.
192
3c82f80f
NC
1931999-06-07 Nick Clifton <nickc@cygnus.com>
194
195 * elf32-m88k.c (ELF_MAXPAGESIZE): Define.
196
eb519dff
AS
197Mon Jun 7 11:49:43 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
198
199 * Makefile.am (SOURCE_HFILES): Add missing headers.
200 * Makefile.in: Regenerated.
201
7f7e7b68
MM
2021999-06-06 Mark Mitchell <mark@codesourcery.com>
203
204 * elf32-mips.c (_bfd_mips_elf_print_private_data): Recognize
205 the N32 ABI.
206
dc1bc0c9
RH
2071999-06-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
208
209 * elf32-ppc.c (ppc_elf_relocate_section): Don't barf on out of
210 range undefweak symbols.
211 * hash.c: Add missing comma after @xref{}
212 * linker.c: Likewise.
213
79e5982f
NC
2141999-06-04 Nick Clifton <nickc@cygnus.com>
215
216 * elfxx-target.h (ELF_MAXPAGESIZE): Produce an error message
217 if not defined.
218 * elf32-gen.c (ELF_MAXPAGESIZE): Define.
219 * elf32-i860.c (ELF_MAXPAGESIZE): Define.
220 * elf32-i960.c (ELF_MAXPAGESIZE): Define.
221 * elf64-gen.c (ELF_MAXPAGESIZE): Define.
222
4a54b465
ILT
2231999-06-04 Ian Lance Taylor <ian@zembu.com>
224
225 * Makefile.am: Rebuild dependencies.
226 (BFD32_BACKENDS): Add dwarf1.lo.
227 (BFD32_BACKENDS_CFILES): Add dwarf1.c.
228 * Makefile.in: Rebuild.
229
7714a18c
NC
2301999-06-04 Nick Clifton <nickc@cygnus.com>
231
232 * Makefile.am: Add epoc-arm-pe target.
233 * Makefile.in: Regenerate.
234 * pe-arm.c: Only redefine interworking function names if they have
235 not already been redefined.
236 * pei-arm.c: Only redefine interworking function names if they have
237 not already been redefined.
238 * epoc-pe-arm.c: Redefine interworking function names to avoid a
239 name space clash.
240 * epoc-pei-arm.c: Redefine interworking function names to avoid a
241 name space clash.
242
dece4658
NC
2431999-06-03 Nick Clifton <nickc@cygnus.com>
244
245 * elfxx-target.h (ELF_MAXPAGESIZE): Default to 0x1000 not 1.
246
a9d024b8
AS
247Fri Jun 4 10:05:11 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
248
249 * elf.c (elf_fake_sections): Undo change of 1999-05-10.
250
06e1ba78
JR
251Fri Jun 4 03:10:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
252
253 * elf32-sh.c (sh_elf_relax_delete_bytes): Fix setting of
254 start / stop for recalculating of r_addend of R_SH_SWITCH*.
255
084aa3aa
JR
256Fri Jun 4 02:53:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
257
258 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH32
259 in other text sections.
260
875f7f69
JR
261Fri Jun 4 02:29:34 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
262
263 * libbfd.c (_bfd_generic_verify_endian_match): New function.
264 * libbfd-in.h (_bfd_generic_verify_endian_match): Declare.
265 * libbfd.h: Regenerate.
266 * coff-sh.c (sh_merge_private_data): Delete.
267 (coff_bfd_merge_private_bfd_data): Change to
268 _bfd_generic_verify_endian_match.
269 (elf32-sh.c): bfd_elf32_bfd_merge_private_bfd_data: Define.
270
6a9d5c9a
UD
2711999-06-03 Ulrich Drepper <drepper@cygnus.com>
272
273 * elf32-arm.h: Fix typo: change ELF_MAXPAGE_SIZE to ELF_MAXPAGESIZE.
274
a3e38ad3
ILT
2751999-06-03 Ian Lance Taylor <ian@zembu.com>
276
277 * bfd-in.h (bfd_elf32_arm_allocate_interworking_sections): Correct
278 prototype.
279 (bfd_elf32_arm_process_before_allocation): Likewise.
280 * bfd-in2.h: Rebuild.
281
159002ff
RH
2821999-06-03 David Mosberger <davidm@hpl.hp.com>
283
284 * dwarf2.c (struct line_info): Add member END_SEQUENCE to keep
285 track of end_sequence markers.
286 (add_line_info): Add END_SEQUENCE arg.
287 (decode_line_info): Don't try to infer lo_pc and hi_pc from the
288 debug-line info---it doesn't work right if a compilation unit
289 consists of multiple discontiguous code-sequences. It would be
290 worthwhile to optimize for the common case where a compilation
291 unit results in a contiguous set of code sequences, but this is
292 quite tricky to get right for arbitrary DWARF2 files.
293 (lookup_address_in_line_info_table): Don't use the last line entry
294 for a compilation unit for anything with an address higher than
295 this line entry. Also, check for end_sequence markers to
296 correctly handle discontinuities.
297 (_bfd_dwarf2_find_nearest_line): When checking previously loaded
298 compilation units, check all compilation units with each->high==0
299 just like when reading compilation units.
300
301 * dwarf2.c (decode_line_info): Initialize table->files and
302 table->last_line to NULL to avoid segfaults due to random
303 values in these members.
304 (concat_filename): Check for out-of-range file number before
305 indexing filename table. Segfaults suck.
306
307 * dwarf2.c (decode_line_info): Don't truncate address to least
308 significant 32 bits (breaks 64 bit targets).
309 (lookup_address_in_function_table): Ditto.
310 (comp_unit_contains_address): Ditto.
311
42fdc509
MM
3121999-06-02 Mark Mitchell <Mark Mitchell <mark@codesourcery.com>>
313
314 * elf32-mips.c (elf_mips_howto_table): Add R_MIPS_JALR.
315 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
316 (mips_elf64_howto_table_rela): Likewise.
317
318 * elfcode.h (elf_slurp_reloc_table_from_section): New function,
319 split out from ...
320 (elf_slurp_reloc_table): Here. Use it to handle the case where a
321 single section has two associated relocation sections.
6a9d5c9a 322
9d8cefa9
RH
3231999-06-02 Mark Salter <msalter@cygnus.com>
324
325 * coffcode.h (coff_set_alignment_hook): Set lma from s_vaddr if
326 COFF_WITH_PE defined.
327
c9fca91d
NC
3281999-06-02 Nick Clifton <nickc@cygnus.com>
329
330 * pe-arm.c: Rename global arm interworking functions to avoid name
331 collision when all targets BFD is built.
332 * pei-arm.c: Ditto.
333
bf572ba0
MM
3341999-05-31 Mark Mitchell <mark@codesourcery.com>
335
336 * elf-bfd.h (elf_backend_data): Remove use_rela_p. Add
337 may_use_rel_p, may_use_rela_p, default_use_rela_p.
338 (bfd_elf_section_data): Add use_rela_p.
339 * elf.c (bfd_section_from_shdr): Set use_rela_p appropriately.
340 (_bfd_elf_new_section_hook): Likewise.
341 (elf_fake_sections): Use may_use_rela_p, etc., instead of
342 use_rela_p.
343 (_bfd_elf_copy_private_section_data): Copy use_rela_p.
344 * elfcode.h (write_relocs): Determine whether or not use rela
345 relocs based on the relocation section header.
346 * elflink.c (_bfd_elf_create_dynamic_sections): Use default_use_rela_p
347 instead of use_rela_p.
348 * elfxx-target.h (elf_backend_may_use_relp): New macro.
349 (elf_backend_may_use_rela_p): Likewise.
350 (elf_backend_default_use_rela_p): Likewise.
351 (elfNN_bed): Use them.
6a9d5c9a 352
3fe702fd
RH
353Wed Jun 2 12:38:49 1999 Miodrag Vallat <miodrag@multimania.com>
354
355 * hosts/alphalinux.h (TRAD_CORE_EXTRA_SIZE_ALLOWED): Expand to 4096.
356
3f830999
MM
357Tue Jun 1 17:57:58 1999 Mark P. Mitchell <mitchell@n02.acl.lanl.gov>
358
359 * reloc.c (BFD_RELOC_MIPS_SUB): New relocation.
360 (BFD_RELOC_MIPS_GOT_PAGE): Likewise.
361 (BFD_RELOC_MIPS_GOT_OFST): Likewise.
362 (BFD_RELOC_MIPS_GOT_DISP): Likewise.
363 * bfd-in2.h: Regenerated.
364 * libbfd.h: Likewise.
365 * elf32-mips.c (mips_info_to_howto_rela): New function.
366 (USE_REL): Adjust for new conventions.
367 (MINUS_ONE): New macro.
368 (elf_mips_howto_table): Add R_MIPS_SUB.
6a9d5c9a 369 (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, MIPS_GOT_OFST,
3f830999
MM
370 and MIPS_GOT_DISP.
371 (mips_elf_final_write_processing): Set sh_link, not sh_info, for a
372 .MIPS.content section.
373 (_bfd_mips_elf_fake_sections): Treat all sections that begin
374 with .MIPS.content as .MIPS.content sections. Set
375 SHF_MNIPS_NOSTRIP for such section.
376 (elf_info_to_howto): Define to mips_info_to_howto_rela.
377 * elf64-mips.c (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE,
378 MIPS_GOT_OFST, and MIPS_GOT_DISP.
379
70f06c4a
AS
380Wed Jun 2 11:51:12 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
381
015985c9
AS
382 * vms-misc.c (_bfd_vms_hash_newfunc): Fix use of uninitialized
383 variable.
384
70f06c4a 385 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Avoid ambigous
6a9d5c9a 386 `else'.
70f06c4a 387
2ef994e0
NC
3881999-05-30 Philip Blundell <philb@gnu.org>
389
390 * elf32-arm.h (elf32_arm_relocate_section): Reinstate change of
391 1993-03-25 (!!). Take into account the bitmasks for the reloc so
392 the addend does not overflow into the rest of the word.
393
ba96a88f
NC
3941999-05-29 Nick Clifton <nickc@cygnus.com>
395
396 * bfd-in.h: Amend prototype for
397 bfd_elf32_arm_process_before_allocation .
398 * bfd-in.h: Regenerate.
6a9d5c9a 399
ba96a88f
NC
400 * elfarm-oabi.c (NUM_ELEM): New macro: Compute the number of
401 elements in a fixed sized array.
402 (ARM_ELF_ABI_VERSION): Define.
403 (ARM_ELF_OS_ABI_VERSION): Define.
404 (R_ARM_THM_ABS5): Fix rightshift and size.
405 (R_ARM_THM_PC22): Fix size.
406 (R_ARM_PLT32): Define Howto.
407 (find_howto): New function: Locate a howto based on a reloc
408 number.
409 (elf32_arm_info_to_howto): Use find_howto if necessary.
410 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
411 bfd_reloc_code_real_type.
412 (elf32_arm_reloc_map[]): Add entries for BFD_RELOC_VTABLE_INHERIT
413 and BFD_RELOC_VTABLE_ENTRY.
414 (elf32_arm_reloc_type_lookup): Use find_howto if necessary.
415
416 * elfarm-nabi.c (NUM_ELEM): New macro: Compute the number of
417 elements in a fixed sized array.
418 (ARM_ELF_ABI_VERSION): Define.
419 (ARM_ELF_OS_ABI_VERSION): Define.
420 (R_ARM_THM_ABS5): Fix rightshift and size.
421 (R_ARM_THM_PC22): Fix size.
422 (elf32_arm_info_to_howto_rel): Rename to elf32_arm_info_to_howto.
423 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
424 bfd_reloc_code_real_type.
425
426 * elf32-arm.h (struct elf32_arm_link_hash_table): Add new field:
427 no_pipeline_knowledge.
428 (elf32_arm_link_hash_create): Initialise new field to zero.
429 (bfd_elf32_arm_process_before_allocation): Add new paraemter:
430 no_pipeline_knowledge. Use this parameter to initialise the field
431 in the globals data structure.
432 (elf32_arm_final_link_relocate): Only add in pipeline offset if
433 no_pipeline_knowledge is false and the binary is from an old
434 toolchain.
435 (elf32_arm_merge_private_data): Generate an error if an attempt is
436 made to linl together big endian and little endian code.
437 (elf32_arm_post_process_headers): New function: Initialise the
438 EI_OSABI and EI_ABIVERSION fields of the newly created ELF program
6a9d5c9a 439 header.
ba96a88f
NC
440 (elf_backend_post_process_headers): Define.
441
e6c51ed4
NC
4421999-05-28 Nick Clifton <nickc@cygnus.com>
443
444 * elf-bfd.h (struct elf_backend_data): Add new field:
445 elf_backend_post_process_headers.
446
447 * elfxx-target.h (elf_backend_post_process_headers): Define to
448 NULL if not already defined.
6a9d5c9a 449 (elfNN_bed): Initialise elf_backend_post_process_headers field.
e6c51ed4
NC
450
451 * elf.c (prep_headers): Set the EI_OSABI and EI_ABIVERSION fields
452 to zero.
453 (_bfd_elf_compute_section_file_positions): Call
6a9d5c9a 454 elf_backend_post_process_headers if defined.
e6c51ed4 455
633fd09f
ILT
4561999-05-28 Ian Lance Taylor <ian@zembu.com>
457
458 * configure.in: Check whether getuid and getgid exist.
459 * archive.c: Define getuid and getgid as macros if HAVE_GETUID or
460 HAVE_GETGID are not defined, respectively.
461 (bfd_write_armap): Don't special case on _WIN32 for getuid and
462 getgid.
463 * configure.host: Set ac_cv_func_get{ug}id for *-*-windows*.
464 * configure, config.in: Rebuild.
465
b2ef150d
ILT
4661999-05-28 Martin Dorey <mdorey@madge.com>
467
468 * elf32-i960.c: New file.
469 * elf.c (prep_headers): Handle bfd_arch_i960.
470 * targets.c (bfd_target_vector): Add &bfd_elf32_i960_vec.
471 * config.bfd (i960-*-elf*): New target.
472 * configure.in (bfd_elf32_i960_vec): New target vector.
473 * Makefile.am (BFD32_BACKENDS): Add elf32-i960.lo.
474 (BFD32_BACKENDS_CFILES): Add elf32-i960.c.
475 * Makefile.in, aclocal.m4, configure: Rebuild.
476
5f97aa0c
NC
4771999-05-27 Nick Clifton <nickc@cygnus.com>
478
479 * elfarm-oabi.c (elf32_arm_howto_table): Add entry for
6a9d5c9a 480 R_ARM_PLT32.
5f97aa0c
NC
481 (find_howto): New function: Find entries in the
482 elf32_arm_howto_table.
483 (elf32_arm_info_to_howto): Use find_howto if the entry cannot be
484 computed simply.
485 (elf32_arm_reloc_type_lookup): Add lookup for
6a9d5c9a 486 BFD_RELOC_ARM_PLT32.
5f97aa0c 487
780a67af
NC
4881999-05-25 Philip Blundell <pb@nexus.co.uk>
489
490 * bfd/elf32-arm.h (elf32_arm_link_hash_newfunc): New function.
491 (elf32_arm_link_hash_table_create): Use above function as the
492 constructor for hash table entries.
493 (elf32_arm_relocate_section): Avoid crash when there is no output
6a9d5c9a 494 section.
780a67af
NC
495 (elf32_arm_final_link_relocate): New parameter h.
496 (elf32_arm_relocate_section): Pass symbol hash entry to above
497 routine.
498 (elf32_arm_gc_sweep_hook, elf32_arm_check relocs): Correct
499 comments.
6a9d5c9a 500
fa0e42e4 5011999-05-25 Catherine Moore <clm@cygnus.com>
6a9d5c9a 502
fa0e42e4
CM
503 * coff-arm.c (coff_arm_relocate_section): Don't emit
504 base file entries for pc-relative values.
6a9d5c9a 505
93dfcdf0
DD
5061999-05-25 DJ Delorie <dj@cygnus.com>
507
508 * peicode.h (coff_swap_sym_in): When we create the actual section
509 to reflect the not-there section C_SECTION symbols refer to,
510 change the symbol class to C_STAT as the section is now really
511 there.
512
db65e864
NC
5131999-05-24 Philip Blundell <pb@nexus.co.uk>
514
515 * elf32-arm.h (elf32_arm_relocate_section): Undo change of
516 1999-03-25.
517
948221a8 518Mon May 17 13:35:35 1999 Stan Cox <scox@cygnus.com>
f6886bc4 519
948221a8
NC
520 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed
521 F_PIC_INT to F_PIC.
522 * coffcode.h (coff_set_arch_mach_hook): Added F_ARM_2a, and
523 F_ARM_3M labels. Changed F_PIC_INT to F_PIC.
6a9d5c9a 524
1349dd65
NC
5251999-05-16 Nick Clifton <nickc@cygnus.com>
526
527 * coff-mcore.c (in_reloc_p): Reinstate.
528
36797d47
NC
5291999-05-15 Nick Clifton <nickc@cygnus.com>
530
531 * reloc.c (BFD_RELOC_MCORE_RVA): Define.
532 * bfd-in2.h: Regenerate.
533 * coff-mcore.c (in_reloc_p): Remove defintion.
534 (mcore_coff_howto): Add IMAGE_REL_MCORE_RVA.
535 (mcore_coff_reloc_type_lookup): Map BFD_RELOC_RVA to
536 IMAGE_REL_MCORE_RVA.
537 (coff_mcore_rtype_to_howto): Add special processing for
538 IMAGE_REL_MCORE_RVA.
539 (coff_mcore_relocate_section): Add support for
6a9d5c9a 540 IMAGE_REL_MCORE_RVA.
36797d47
NC
541 * elf32-mcore (mcore_elf_howto_): Add R_MCORE_RELATIVE.
542 (mcore_elf_reloc_type_lookup): Map BFD_RELOC_RVA to
543 R_MCORE_RELATIVE.
6a9d5c9a
UD
544 (mcore_elf_relocate_section): Delete redundant case labels.
545
97eaf9de
AS
546Fri May 14 10:59:55 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
547
548 * elf32-arm.h (elf32_arm_relocate_section): Fix operator
549 precedence between bit-and and comparison.
550
2e9a84c8
RH
551Thu May 13 09:45:23 1999 Joel Sherrill (joel@OARcorp.com)
552
553 * config.bfd (i[3456]86*-*-rtems*, m68k*-*-rtems*): Added to
554 list of target formats (targ_selvecs).
555 (i[3456]86*-*-rtemself*, mips*el-*-rtems*): New targets.
556 (powerpcle*-*rtems*, sh-*-rtemself*): New targets.
557
ec0ef80e
DD
5581999-05-10 DJ Delorie <dj@cygnus.com>
559
560 * ecoff.c (_bfd_ecoff_write_armap): give the symtab element a
561 reasonable mode until "ar x" is smart enough to skip it (fixes
562 gcc/libgcc.a builds on mips-ecoff targets
563
564 * coffcode.h (styp_to_sec_flags): Explain how COMDATs are supposed
565 to work. Hack to support MS import libraries, which use different
566 COMDAT types than GNU.
567 (coff_slurp_symbol_table): C_SECTION symbols are local; they refer
568 to implied zero-length sections (see peicode below)
569 * coffgen.c (coff_get_normalized_symtab): Properly read long MS
570 filename symbols, which use one *or more* auxents.
571 * coffswap.h (coff_swap_aux_in): ditto
572 * peicode.h (coff_swap_sym_in): Build the implied zero-length
573 sections
6a9d5c9a 574
5c746d90
JL
575Tue May 11 15:51:58 1999 Jeffrey A Law (law@cygnus.com)
576
577 * elf32-v850.c (v850_elf_howto_table): Make partial_inplace false
578 for all relocations.
579
ba1b9317
CM
5801999-05-10 Catherine Moore <clm@cygnus.com>
581
582 * bfd-in.h (bfd_arm_allocate_interworking_sections): Static
583 if COFF_IMAGE_WITH_PE.
584 (bfd_arm_process_before_allocation): Likewise.
585 (bfd_arm_get_bfd_for_interworking): Likewise.
586 * coff-arm.c: Likewise.
587 * bfd-in2.h: Regenerate.
588 * configure.in (armpe_little_vec): Remove coff-arm.lo.
589 (armpe_big_vec): Likewise.
590 * configure: Rebuild.
591
c1f6bc03
NC
5921999-05-10 Nick Clifton <nickc@cygnus.com>
593
594 * elf.c (elf_fake_sections): Check for .rel. as start of rel
595 section, not just .rel. Same for .rela.
596
b23f908b
NC
5971999-05-07 Nick Clifton <nickc@cygnus.com>
598
599 * coff-mcore.c (coff_mcore_relocate_section): Replace assert about
600 endianism with an error message.
601
7fafc0fd
RH
602Thu May 6 17:09:09 1999 Fred Fish <fnf@be.com>
603
604 * dwarf2.c (read_abbrevs): Change cast of dwarf_abbrev_buffer
605 assignment from "unsigned char *" to "char *".
606 (decode_line_info): Likewise for dwarf_line_buffer assignment.
607
b44267fd
CM
6081999-05-05 Catherine Moore <clm@cygnus.com>
609
610 * coff-arm.c (coff_arm_relocate_section): Add one to
611 address of ARM_RVA32 thumb functions.
6a9d5c9a 612
b44267fd 6131999-05-05 Catherine Moore <clm@cygnus.com>
6a9d5c9a 614
9e1281c7
CM
615 * elf32-m68k.c (elf32_m68k_set_private_flags): New.
616 (elf32_m68k_copy_private_bfd_data): New.
617 (elf32_m68k_merge_private_bfd_data): New.
618 (elf32_m68k_print_private_bfd_data): New.
619 (CPU32_FLAG): Define.
620 (PLT_CPU32_ENTRY_SIZE): Define.
621 (elf_cpu32_plt0_entry): Declare.
622 (elf_cpu32_plt_entry): Declare.
623 (elf_m68k_adjust_dynamic_symbol): Generate cpu32 plt entries.
624 (elf_m68k_finish_dynamic_symbol): Likewise.
625 (elf_m68k_finish_dynamic_sections): Likewise.
626 (elf_backend_plt_header_size): Remove definition.
627 (bfd_elf32_bfd_copy_private_bfd_data): Define.
628 (bfd_elf32_bfd_merge_private_bfd_data): Define.
629 (bfd_elf32_bfd_set_private_flags): Define.
630 (bfd_elf32_bfd_print_private_bfd_data): Define.
6a9d5c9a 631
ac79f2f3
JL
632Mon May 3 09:24:49 1999 Jeffrey A Law (law@cygnus.com)
633
634 * som.c (som_fixup_formats): Fix comments for R_SHORT_PCREL_MODE
635 and R_LONG_PCREL_MODE.
636
252b5132
RH
6371999-04-29 Nick Clifton <nickc@cygnus.com>
638
639 * coff-mcore.c (coff_mcore_relocate_section): Fix typos.
640
641Fri Apr 28 16:36:19 1999 Stan Cox <scox@cygnus.com>
642
643 * elf32-sh.c (sh_elf_relocate_section): Include relocation addend
644 in relocation calculation.
645
6461999-04-26 Tom Tromey <tromey@cygnus.com>
647
648 * aclocal.m4, configure: Updated for new version of libtool.
649
6501999-04-21 Nick Clifton <nickc@cygnus.com>
651
652 * coff-mcore.c: Add support for mcore relocs.
653
6541999-04-20 Gavin Romig-Koch <gavin@cygnus.com>
655
656 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): Scrap the
657 incorrect use EF_MIPS_xxBITPTRS.
658
6591999-04-18 Ian Lance Taylor <ian@zembu.com>
660
661 * elf64-alpha.c (elf64_alpha_relax_section): Remove unused local
662 variable insn.
663
664 * bfd-in2.h: Rebuild.
665 * libbfd.h: Rebuild.
666
667Sat Apr 17 20:55:15 1999 Catherine Moore <clm@cygnus.com>
6a9d5c9a 668
252b5132
RH
669 * coff-arm.c (coff_arm_rtype_to_howto): Remove ARM26D transform.
670 (coff_arm_relocate_section): Add ARM26D transform. Only
671 change to ARM26D for relocateable links.
672
6731999-04-16 Gavin Romig-Koch <gavin@cygnus.com>
674
675 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): New.
676 (bfd_elf32_bfd_print_private_bfd_data): New.
677
6781999-04-15 Doug Evans <devans@casey.cygnus.com>
679
680 * elf32-arm.h (elf32_arm_final_link_relocate): For R_ARM_THM_ABS5,
681 refetch addend if USE_REL, add many comments regarding current state.
682 For R_ARM_THM_PC22, refetch addend if USE_REL, simplify.
683 * elfarm-nabi.c (elf32_arm_howto_table): For R_ARM_THM_ABS5, fix
684 size and rightshift. For R_ARM_THM_PC22, fix bitsize.
685 * elfarm-oabi.c (elf32_arm_howto_table): Ditto.
686
687Wed Apr 14 14:33:08 1999 Richard Henderson <rth@cygnus.com>
688
689 * elf32-mips.c (_bfd_mips_elf_read_ecoff_info): Zero `debug'.
690 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Likewise.
691
6921999-04-13 David Mosberger <davidm@hpl.hp.com>
693
694 * dwarf2.c (decode_line_info): Don't truncate address to least
695 significant 32 bits (breaks 64 bit targets).
696 (lookup_address_in_function_table): Ditto.
697 (comp_unit_contains_address): Ditto.
698
699Tue Apr 13 21:27:19 1999 Catherine Moore <clm@cygnus.com>
700
701 * coff-arm.c (arm_emit_base_file_entry): New routine.
702 (A2T3_OFFSET): Define.
703 (T2A3_OFFSET): Define.
704 (coff_arm_relocate_section): Emit base file entries for interworking
705 stubs.
706
7071999-04-13 Philip Blundell <philb@gnu.org>
708
709 * elfarm-nabi.c (elf32_arm_howto_table): Add dummy entries for
710 relocs 17 through 19.
711
712Sun Apr 11 01:25:17 1999 Richard Henderson <rth@cygnus.com>
713
714 * elfcode.h: Remove fnmatch.h.
715 * elflink.h (elf_link_assign_sym_version): Call back to ld
716 instead of calling fnmatch.
717
718 * config.bfd (i?86-*-beoself): Include pe vecs.
719
720Sun Apr 11 01:14:06 1999 Richard Henderson <rth@cygnus.com>
721
722 * elf32-i386.c (elf_i386_finish_dynamic_sections): Allow .plt
723 to go missing.
724
7251999-04-10 Richard Henderson <rth@cygnus.com>
726
727 * elf32-i386.c (elf_i386_relocate_section): Mind no_undefined
728 when trying to resolve dynamic symbol references.
729 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
730 * elf32-mips.c (mips_elf_relocate_section): Likewise.
731 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
732 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
733 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
734 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
735 * elflink.h (elf_link_output_extsym): Likewise.
736
737Sat Apr 10 15:12:09 1999 Richard Henderson <rth@cygnus.com>
738
739 * section.c (_bfd_strip_section_from_output): New function moved from
740 * elf64-alpha.c (elf64_alpha_strip_section_from_output): ... here.
741 * elf32-i386.c (elf_i386_size_dynamic_sections): Use it.
742 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
743 * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
744 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
745 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
746 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
747 * bfd-in2.h: Update.
748
7491999-04-09 Ian Lance Taylor <ian@zembu.com>
750
751 * elf64-sparc.c: Fix incorrect calls to bfd_check_overflow.
752
7531999-04-08 Nick Clifton <nickc@cygnus.com>
754
755 * coff-mcore.c: New File: Support for mcore-pe targets.
756 * cpu-mcore.c: New File: Support for mcore targets.
757 * elf32-mcore.c: New File: Support for mcore-elf target.
758 * pe-mcore.c: New File: Definitions for mcore-pe target.
759 * pei-mcore.c: New File: Definitions for mcore-pei target.
760 * Makefile.am: Add support for MCore targets.
761 * Makefile.in: Regenerate.
762 * config.bfd: Add support for MCore targets.
763 * configure.in: Add support for MCore targets.
764 * configure: Regenerate.
765 * archures.c: Add support for MCore architecture.
6a9d5c9a 766 * bfd-in2.h: Regenerate.
252b5132
RH
767 * coffcode.h: Add support for mcore-pe targets.
768 * elf.c: Add support for mcore-elf target.
769 * reloc.c: Add support for MCore relocs.
770 * targets.c: Add support for MCore targets.
771
7721999-04-07 Nick Clifton <nickc@cygnus.com>
773
774 * elfarm-nabi.c (elf32_arm_howto_table): Add entries for
775 R_ARM_XPC25 and R_ARM_THM_XPC22.
776 (elf32_arm_reloc_map): Remove redundant entries.
777
7781999-04-06 Ian Lance Taylor <ian@zembu.com>
779
780 * sysdep.h (LC_MESSAGES): Never define.
781
7821999-04-06 Chris Torek <torek@bsdi.com>
783
784 * reloc.c (bfd_check_overflow): Add addrsize parameter. Change
785 all callers. Rewrite completely.
786 (_bfd_relocate_contents): Rewrite overflow checking.
787 * bfd-in2.h: Rebuild.
788
7891999-04-05 Ian Lance Taylor <ian@zembu.com>
790
791 From Gabriel Paubert <paubert@iram.es>:
792 * elf32-ppc.c (ppc_elf_howto_raw): Set R_PPC_GOT16_LO,
793 R_PPC_PLT16_LO and R_PPC_SECTOFF_LO to be complain_overflow_dont.
794 Set R_PPC_PLT16_HA, R_PPC_SECTOFF_HA and R_PPC_EMB_NADDR16_HA to
795 have a rightshift of 16 and use ppc_elf_addr16_ha_reloc.
796 * ppcboot.c (ppcboot_vec): Use little endian routines for
797 headers.
798
799 * elf.c (elfcore_strndup): Only define if it will be used.
800 * elf32-ppc.c (ppc_elf_relax_section): Remove unused locals irel
801 and irelend.
802 (ppc_elf_check_relocs): Remove unused local i.
803 (ppc_elf_gc_mark_hook): Add default case to switch.
804
805 From Bernd Nitzler <nitzler@kagcpd01.ag01.kodak.COM>:
806 * srec.c (srec_scan): Accept \r in symbol definitions.
807 (srec_object_p): Set HAS_SYMS if we saw any symbols.
808 (symbolsrec_object_p): Likewise.
809
8101999-04-04 Don Bowman <don@pixsci.com>
811
812 * config.bfd: Add mips*el-*-vxworks* and mips*-*-vxworks*.
813
8141999-04-04 Ian Lance Taylor <ian@zembu.com>
815
816 * dwarf1.c (parse_line_table): Remove unused locals last_pc and
817 last_line.
818 * elf-bfd.h (_bfd_elfcore_section_from_phdr): Declare.
819 * elf32-i386.c (elf_i386_gc_mark_hook): Add default case to
820 switch.
821 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove unused
822 local i.
823 * syms.c (_bfd_stab_section_find_nearest_line): Remove unused
824 local val.
825
8261999-03-31 Nick Clifton <nickc@cygnus.com>
827
828 * config.bfd: Add support for arm-epoc-pe target.
829 * configure.in: Add support for arm-epoc-pe target.
830 * configure: Regenerate.
831 * targets.c: Add support for arm-epoc-pe target.
832 * coff-arm.c: Allow header files to override definition of
833 TARGET_UNDERSCORE and USER_LABEL_PREFIX.
834 * pe-arm.h: Allow previous header files to override definition of
835 TARGET_LITTLE_SYM and TARGET_BIG_SYM.
6a9d5c9a 836 * pei-arm.h: Allow previous header files to override definition of
252b5132
RH
837 TARGET_LITTLE_SYM and TARGET_BIG_SYM.
838 * epoc-pe-arm.c: New file. Support arm-epoc-pe target.
839 * epoc-pei-arm.c: New file. Support arm-epoc-pei target.
6a9d5c9a 840
252b5132
RH
8411999-03-30 Nick Clifton <nickc@cygnus.com>
842
843 * elf.c (elf_map_symbols): Handle the case where section
844 symbols are generated for content-less sections which are
845 not mapped to the output file.
846
847 * linker.c: Replace direct references to fields in BFD structure
848 with accessor macros.
849
850 * elflink.h: Replace direct references to fields in BFD structure
851 with accessor macros.
852
8531999-03-25 Philip Blundell <pb@nexus.co.uk>
854
855 * config.bfd: Eliminate redundancy in checks for Linux/ARM.
6a9d5c9a
UD
856
857 * elf32-arm.h (elf32_arm_relocate_section): Take the rightshift into
252b5132
RH
858 account when adjusting section symbols during a partial link.
859
8601999-03-24 Nick Clifton <nickc@cygnus.com>
861
862 * coff-sparc.c (struct coff_reloc_map): Change type of field
863 'bfd_reloc_val' to bfd_reloc_code_real_type.
864 * elf-m10200.c (struct mn10200_reloc_map): Ditto.
865 * elf-m10300.c (struct mn10300_reloc_map): Ditto.
866 * elf32-arc.c (struct arc_reloc_map): Ditto.
867 * elf32-d10v.c (struct d10v_reloc_map): Ditto.
868 * elf32-d30v.c (struct d30v_reloc_map): Ditto.
869 * elf32-fr30.c (struct fr30_reloc_map): Ditto.
870 * elf32-m32r.c (struct m32r_reloc_map): Ditto.
871 * elf32-sh.c (struct elf_reloc_map): Ditto.
872 * elf32-sparc.c (struct elf_reloc_map): Ditto.
873 * elf32-v850.c (struct v850_reloc_map): Ditto.
874 * elf64-sparc.c (struct elf_reloc_map): Ditto.
875 * elfarm-nabi.c (struct elf32_arm_reloc_map): Ditto.
876 * elfarm-oabi.c (struct elf32_arm_reloc_map): Ditto.
877
8781999-03-17 Martin Hunt <hunt@cygnus.com>
879
880 * syms.c (_bfd_stab_section_find_nearest_line): Changed this
881 function so source-level assembly works. If multiple N_SOs
882 are seen without and N_FUNs, create an indextable entry with
883 a NULL function name.
884
8851999-03-16 Gavin Romig-Koch <gavin@cygnus.com>
886
887 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data) Allow merging
888 of certian similar cpus.
889
8901999-03-16 Gavin Romig-Koch <gavin@cygnus.com>
891
892 * elf32-mips.c (_bfd_mips_elf_final_write_processing):
893 Add the 5000. Change the architecture for the 5400 to mips4.
894 (elf_mips_mach): Add r5000.
895
8961999-03-11 Doug Evans <devans@casey.cygnus.com>
897
898 * cpu-i960.c (scan_i960_mach): Recognize i960:ka_sa and i960:kb_sb.
899
9001999-03-11 Nick Clifton <nickc@cygnus.com>
901
902 * binary.c (binary_set_section_contents): Generate warning about
903 huge file offsets for any section that will occupy file space, not
904 just those that are loadable.
905
9061999-02-24 Jim Blandy <jimb@zwingli.cygnus.com>
907
908 * libbfd.h: Regenerate after Nick Clifton's Feb 17 changes.
909
9101999-02-22 Jim Lemke <jlemke@cygnus.com>
911
912 * elf32-ppc.c: Add ppc_elf_relax_section() for the ld option mpc860c0.
913
914Mon Feb 22 18:26:51 1999 Ian Lance Taylor <ian@cygnus.com>
915
916 * elf-bfd.h (ELF_LINK_HASH_REF_REGULAR_NONWEAK): Define.
917 * elflink.h: Revert all changes since Feb 16. Instead:
918 (elf_link_add_object_symbols): Set REF_REGULAR_NONWEAK flag if
919 appropriate. Copy it to version symbols.
920 (elf_fix_symbol_flags): Set REF_REGULAR_NONWEAK for non ELF
921 symbols if appropriate.
922 (elf_adjust_dynamic_symbol): Set REF_REGULAR_NONWEAK for weakdef
923 symbol if appropriate.
924 (elf_link_output_extsym): If symbol is marked as undefined, and
925 has no nonweak references, mark it as weak undefined.
926
927Fri Feb 19 16:01:12 1999 Ian Lance Taylor <ian@cygnus.com>
928
929 * elflink.h (elf_merge_symbol): When overriding a dynamic
930 definition with a weak undefined symbol, set NEEDS_PLT if it is a
931 function.
932 (elf_link_add_object_symbols): Don't copy the other field if we
933 are overridding.
934
935Thu Feb 18 18:07:43 1999 Ian Lance Taylor <ian@cygnus.com>
936
937 * elflink.h (elf_merge_symbol): Do not merge any symbol from a
938 shared object with a weak undefined symbol.
939
9401999-02-18 Nick Clifton <nickc@cygnus.com>
941
942 * elfarm-nabi.c: Set partial_inplace back to false.
943
9441999-02-17 Nick Clifton <nickc@cygnus.com>
945
946 * coff-arm.c (TARGET_UNDERSCORE): Re-enable.
947 (USER_LABEL_PREFIX): Set to "_".
948
949 The following patches are from: Scott Bambrough
950 <scottb@corelcomputer.com>
6a9d5c9a 951
252b5132
RH
952 * libaout.h (M_ARM6_NETBSD): Set to 143.
953
954 * reloc.c: Add ARM PIC relocs: BFD_RELOC_ARM_GOT12,
955 BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_COPY,
956 BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_PLT32,
957 BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC.
958 * bfd-in2.h: Regenerate.
959
960 * elfarm-nabi.c (elf32_arm_howto_table): Set partial_inplace to
961 'true' as REL relocs are now being used. Add new PIC relocs:
962 R_ARM_COPY, R_ARM_GLOB_DAT, R_ARM_JUMP_SLOT, R_ARM_RELATIVE,
963 R_ARM_GOTOFF, R_ARM_GOTPC, R_ARM_GOT32, R_ARM_PLT32.
964
965 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Check byte order
966 of targets.
967 (elf32_arm_final_link_relocate): Change parameters so that entire
968 reloc is passed. Add support for PIC relocs.
969 (elf32_arm_relocate_section): Pass entire reloc to
6a9d5c9a 970 elf32_arm_final_link_relocate.
252b5132
RH
971 (elf32_arm_check_relocs): Handle new PIC relocs.
972 (elf32_arm_adjust_dynamic_symbol): New function.
973 (elf32_arm_size_dynamic_sections): New function.
974 (elf32_arm_discard_copies): New function.
975 (elf32_arm_finish_dynamic_symbol): New function.
976 (elf32_arm_finish_dynamic_sections): New function.
977 (ELF_MAXPAGE_SIZE): Define.
978 (bfd_elf32_bfd_reloc_type_lookup): Define.
979 (elf_backend_relocate_section): Define.
980 (elf_backend_adjust_dynamic_symbol): Define.
981 (elf_backend_create_dynamic_sections): Define.
982 (elf_backend_finish_dynamic_symbol): Define.
983 (elf_backend_finish_dynamic_sections): Define.
984 (elf_backend_size_dynamic_sections): Define.
985 (elf_backend_plt_readonly): Define.
986 (elf_backend_want_got_plt): Define.
987 (elf_backend_want_plt_sym): Define.
6a9d5c9a 988
252b5132
RH
989Wed Feb 17 12:02:26 1999 Stan Cox <scox@cygnus.com>
990
991 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Make reginfo
992 sections SEC_LINK_ONCE and SEC_LINK_DUPLICATES_SAME_SIZE.
993 (_bfd_mips_elf_fake_sections): Likewise.
994
995Wed Feb 17 12:07:23 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
6a9d5c9a 996
252b5132
RH
997 * elfarm-oabi.c (bfd_elf32_arm_allocate_interworking_sections,
998 bfd_elf32_arm_get_bfd_for_interworking,
999 bfd_elf32_arm_process_before_allocation): Define to avoid clash
1000 with elfarm-nabi.c.
6a9d5c9a 1001
252b5132
RH
1002 * elf32-arm.h: Don't declare elf32_arm_info_to_howto.
1003 (elf32_thumb_to_arm_stub, elf32_arm_to_thumb_stub,
1004 elf32_arm_find_nearest_line): Make them static.
1005
1006Tue Feb 16 22:44:37 1999 Ian Lance Taylor <ian@cygnus.com>
1007
1008 * elflink.h (elf_merge_symbol): Add pflags parameter. Change all
1009 callers. Do not merge a definition from a shared object with a
1010 weak undefined symbol.
1011 (elf_link_add_object_symbols): Do not change the symbol type or
1012 size if the old symbol overrides the new one.
1013
10141999-02-08 Nick Clifton <nickc@cygnus.com>
1015
1016 * config.bfd: Add support for strongarm target.
1017
1018Mon Feb 8 11:18:14 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1019
1020 * elf32-m68k.c (reloc_map): Use the correct types for the struct
1021 fields instead of unsigned char.
1022
1023Fri Feb 5 00:22:36 1999 Ian Lance Taylor <ian@cygnus.com>
1024
1025 * Makefile.am: Rebuild dependencies.
1026 * Makefile.in: Rebuild.
1027
1028Thu Feb 4 22:30:13 1999 Ian Lance Taylor <ian@cygnus.com>
1029
1030 * configure.in: Change AC_PREREQ to 2.13. Remove AM_CYGWIN32.
1031 Change AM_EXEEXT to AC_EXEEXT and AM_PROG_INSTALL to
1032 AC_PROG_INSTALL. Add comments to uses of AC_DEFINE.
1033 * acinclude.m4: Add comments to uses of AC_DEFINE.
1034 * acconfig.h: Remove.
1035 * configure: Rebuild with current autoconf/automake.
1036 * aclocal.m4: Likewise.
1037 * config.in: Likewise.
1038 * Makefile.in: Likewise.
1039
10401999-02-04 DJ Delorie <dj@cygnus.com>
1041
1042 * libbfd.c (real_read): don't call fread for zero bytes. This
1043 covers up a bug (or misuse of bfd) that's exposed by Solaris.
1044
1045Thu Feb 4 12:38:10 1999 Stan Cox <scox@cygnus.com>
1046
1047 * elf32-mips.c (mips_elf_relocate_section): Insure that the target
1048 of a jump is in the current 256 MB region.
1049
1050Thu Feb 4 12:15:38 1999 Ian Lance Taylor <ian@cygnus.com>
1051
1052 * format.c (bfd_check_format_matches): Change last patch to only
1053 take effect for the binary target.
1054
1055Wed Feb 3 19:40:12 1999 Ian Lance Taylor <ian@cygnus.com>
1056
1057 * elf32-i386.c (elf_i386_reloc_type_lookup): Add BFD_RELOC_CTOR.
1058
1059Wed Feb 3 15:02:44 1999 Catherine Moore <clm@cygnus.com>
1060
1061 * elf32-fr30.c (fr30_elf_check_relocs): New routine.
1062
1063Tue Feb 2 21:38:28 1999 Ian Lance Taylor <ian@cygnus.com>
1064
1065 * format.c (bfd_check_format_matches): If the target was
1066 previously specified, don't check other targets when checking for
1067 an archive file.
1068
1069Tue Feb 2 18:16:43 1999 Catherine Moore <clm@cygnus.com>
1070
1071 * elf32-arm.h (elf32_arm_reloc_map): Removed.
1072 (elf32_arm_reloc_type_lookup): Removed
1073 * elfarm-nabi.c (elf32_arm_reloc_map): New.
1074 (elf32_arm_reloc_type_lookup): New.
1075 * elfarm-oabi.c (elf32_arm_reloc_map): New.
1076 (elf32_arm_reloc_type_lookup): New.
1077
1078Mon Feb 1 19:49:21 1999 Catherine Moore <clm@cygnus.com>
1079
1080 * elfarm-nabi.c: Renamed from elf32-arm-newabi.c.
1081 * elfarm-oabi.c: Renamed from elf32-arm-oldabi.c
1082 * Makefile.am: Use new files.
1083 * Makefile.in: Regenerate.
1084 * configure.in: Use new files.
6a9d5c9a 1085 * configure: Regenerate.
252b5132
RH
1086
10871999-02-01 Nick Clifton <nickc@cygnus.com>
1088
1089 * elf32-fr30.c (fr30_elf_gc_mark_hook): New function.
1090 (fr30_elf_gc_sweep_hook): New function.
1091 (elf_backend_can_gc_sections): Define.
1092
1093Mon Feb 1 12:21:47 1999 Catherine Moore <clm@cygnus.com>
1094
1095 * targets.c (bfd_target_vector): Add bfd_elf32_littlearm_oabi_vec
1096 and bfd_elf32_bigarm_oabi_vec.
1097
1098Mon Feb 1 11:46:31 1999 Catherine Moore <clm@cygnus.com>
1099
1100 * Makefile.am (elf32-arm-oldabi.lo): New.
1101 (elf32-arm-newabi.lo): New.
1102 * Makefile.in: Regenerate.
1103 * config.bfd (thumb-*-elf): Remove definition of targ_underscore.
1104 (arm-*-elf): Likewise.
1105 (arm-*-oabi): New.
1106 (thumb-*-oabi): New.
1107 * configure: Regenerate.
1108 * configure.in (bfd_elf32_littlearm_oabi_vec): New.
1109 (bfd_elf32_bigarm_oabi_vec): New.
1110 * elf32-arm-newabi.c: New.
1111 * elf32-arm-oldabi.c: New.
1112 * elf32-arm.c: Removed.
1113 * elf32-arm.h: New.
1114
1115Mon Feb 1 11:52:12 1999 Frank Ch. Eigler <fche@cygnus.com>
1116
1117 * binary.c (binary_set_section_contents): Omit warnings for
1118 unloadable sections.
1119
11201999-01-31 Michael Meissner <meissner@cygnus.com>
1121
1122 * config.bfd (powerpc{,le}-*-vxworks*): Add aliases to
1123 powerpc{,le}-*-eabi.
1124
11251999-01-29 Nick Clifton <nickc@cygnus.com>
1126
1127 * dwarf2.c (read_unsigned_leb128): Remove unused variables.
1128 * dwarf2.c (read_signed_leb128): Remove unused variables.
1129
1130Fri Jan 29 00:47:21 1999 H.J. Lu <hjl@gnu.org>
1131
1132 * elf.c (assign_file_positions_for_segments): Only adjust
1133 p_align when needed.
1134
1135Thu Jan 28 20:05:22 1999 Ian Lance Taylor <ian@cygnus.com>
1136
1137 * binary.c (binary_set_section_contents): Don't return early for a
1138 non-loadable section, in case the first section is non-loadable.
1139 Don't set the low lma for a SEC_NEVER_LOAD section. From Maciej
1140 W. Rozycki <macro@ds2.pg.gda.pl>.
1141
11421999-01-28 Nick Clifton <nickc@cygnus.com>
1143
1144 * elf32-fr30.c (fr30_reloc_map): Add R_FR30_GNU_VTINHERIT and
1145 R_FR30_GNU_VTENTRY relocs.
1146
1147Thu Jan 28 11:08:16 1999 Catherine Moore <clm@cygnus.com>
1148
1149 * elflink.h (elf_link_output_sym): Zero syms which are
1150 part of sections which have been excluded.
1151
1152Wed Jan 27 13:35:35 1999 Stan Cox <scox@cygnus.com>
1153
1154 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed F_PIC
1155 to F_PIC_INT.
1156 * coffcode.h (coff_set_arch_mach_hook): Removed F_ARM_2a and
1157 F_ARM_3M labels. Changed F_PIC to F_PIC_INT.
6a9d5c9a 1158
252b5132
RH
11591999-01-27 Nick Clifton <nickc@cygnus.com>
1160
1161 * elf32-fr30.c (fr30_elf_howto_table): Fix name of R_FR30_48
6a9d5c9a 1162 relocation.
252b5132 1163 (fr30_final_link_relocate): Use computed value as result of
6a9d5c9a 1164 relocation.
252b5132
RH
1165
11661999-01-26 Frank Ch. Eigler <fche@cygnus.com>
1167
1168 * binary.c (binary_set_section_contents): Emit warning for
1169 huge file offsets due to widely-dispersed section LMAs.
1170
1171Mon Jan 18 03:35:35 1999 Ian Lance Taylor <ian@cygnus.com>
1172
1173 * elf.c (assign_file_positions_for_segments): If not D_PAGED,
1174 align first section to largest section alignment, not first
1175 section alignment.
1176
11771999-01-04 Jason Molenda (jsm@bugshack.cygnus.com)
1178
1179 * configure.in: Require autoconf 2.12.1 or higher.
1180
1181Tue Dec 22 15:21:41 1998 Catherine Moore <clm@cygnus.com>
1182
1183 * archures.c (bfd_mach_i386_i386_intel_syntax): Define.
1184 * bfd-in2.h: Likewise.
1185 * cpu-i386.c (bfd_i386_arch_intel_syntax): New.
1186
11871998-12-16 Gavin Romig-Koch <gavin@cygnus.com>
1188
1189 * archures.c,bfd-in2.h (bfd_mach_mips4111): New.
1190 * cpu-mips.c: Add support for and independent 4111.
1191 * elf32-mips.c (elf_mips_mach): E_MIPS_MACH_4111 -> bfd_mach_mips4111.
6a9d5c9a 1192 (_bfd_mips_elf_final_write_processing):
252b5132
RH
1193 bfd_mach_mips4111 -> E_MIPS_ARCH_3 | E_MIPS_MACH_4111.
1194
11951998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
1196
1197 * elf32-mips.c (elf_mips_abi_name): New.
1198 (_bfd_mips_elf_merge_private_bfd_data): Compare EF_MIPS_ABI flags.
1199
12001998-12-12 Gavin Romig-Koch <gavin@cygnus.com>
1201
6a9d5c9a 1202 * elf32-mips.c (_bfd_mips_elf_final_write_processing):
252b5132
RH
1203 Handle bfd_mach_mips4300.
1204
12051998-12-11 Ulrich Drepper <drepper@cygnus.com>
1206
1207 * elf32-i386.c: Remove leaked development code from patch
1208 1998-12-10 by Richard Henderson.
1209
12101998-12-10 Richard Henderson <rth@cygnus.com>
1211
1212 * elf32-i386.c (elf_i386_relocate_section): Don't fail relocations
1213 in debug sections for symbol defined externally.
1214
1215Thu Dec 10 10:58:38 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1216
1217 * targets.c (bfd_target_vector): Remove duplicate entry for
1218 tekhex_vec.
1219
12201998-12-09 Nick Clifton <nickc@cygnus.com>
1221
1222 * elf32-fr30.c (fr30_elf_howto_table): Set src_mask fields to 0
1223 since we are using RELAs.
1224
1225Tue Dec 8 22:15:48 1998 Ian Lance Taylor <ian@cygnus.com>
1226
1227 SCO Open Server Release 5 core file support, from Jouke Numan
1228 <jnuman@hiscom.nl>:
1229 * sco5-core.c: New file.
1230 * configure.in (i[3456]86-*-sco3.2v5*): Use sco5-core.lo.
1231 (sco5-core.lo): Define SCO5_CORE in COREFLAG.
1232 * Makefile.am: Rebuild dependencies.
1233 (OPTIONAL_BACKENDS): Add sco5-core.lo.
1234 (OPTIONAL_BACKENDS_CFILES): Add sco5-core.c.
1235 * bfd.c (struct _bfd): Add sco5_core_data field to tdata.
1236 * targets.c (sco5_core_vec): Add to target list if SCO5_CORE.
1237 * bfd-in2.h, configure, Makefile.in: Rebuild.
1238
1239Tue Dec 8 19:38:42 1998 Mark Klein <mklein@dis.com>
1240
1241 * config.bfd (hppa*-*-mpeix*): New target.
1242 * configure.in: Add AC_HEADER_DIRENT.
1243 (hppa*-*-mpeix*): New target.
1244 * configure.host (hppa*-*-mpeix*): New host.
1245 * hpux-core.c: Check HOST_HPPAMPEIX. Use HAVE_DIRENT_H and
1246 friends rather than just including <sys/dir.h>.
1247 * som.h (struct som_symbol): Add hppa_priv_level and apto
1248 tc_data. Change all users.
1249 (struct somdata): Add comp_unit field.
1250 (obj_som_compilation_unit): Define.
1251 (bfd_som_attach_compilation_unix): Declare.
1252 * som.c: Check HOST_HPPAMPEIX.
1253 (struct som_misc_symbol_info): Add new field priv_level.
1254 (som_object_setup): Add current_offset parameter. Change all
1255 callers.
1256 (setup_sections): Likewise.
1257 (som_object_p): For EXECLIBMAGIC, read the lst header.
1258 (som_write_symbol_strings): Add compilation_unit parameter.
1259 Change all callers.
1260 (som_finish_writing): Write out compilation_unit.
1261 (som_bfd_derive_misc_symbol_info): Set priv_level.
1262 (som_build_and_write_symbol_table): Set xleast field to 3.
1263 (som_slurp_symbol_table): Set symbol priv_level.
1264 (bfd_som_attach_compilation_unit): New function.
1265 (som_bfd_ar_write_symbol_stuff): Set xleast field to 3. Set
1266 priv_level into symbol_value.
1267 * configure, config.in: Rebuild.
1268
1269Tue Dec 8 16:21:35 1998 Ian Lance Taylor <ian@cygnus.com>
1270
1271 * hpux-core.c (hpux_core_core_file_p): Change call to nonexistent
1272 warning function to call _bfd_error_handler instead.
1273
1274 * libbfd.c (COERCE32): Cast through unsigned long and long to
1275 avoid bug in old version of gcc.
1276
1277 * elf64-alpha.c (elf64_alpha_additional_program_headers): Remove.
1278 (elf_backend_additional_program_headers): Don't define.
1279
12801998-12-08 Nick Clifton <nickc@cygnus.com>
1281
1282 * elf32-fr30.c (fr30_final_link_relocate): Fix PC relative
1283 relocations to include offset of 2 included in the insns, and the
1284 offset of the relocs within the section.
1285
1286Wed Dec 2 15:03:59 1998 David Taylor <taylor@texas.cygnus.com>
1287
1288 The following changes were made by David Taylor
1289 <taylor@texas.cygnus.com>, Edith Epstein
1290 <eepstein@sophia.cygnus.com>, Jim Blandy
1291 <jimb@zwingli.cygnus.com>, and Elena Zannoni
1292 <ezannoni@kwikemart.cygnus.com> as part of the project to merge in
1293 changes originally made by HP; HP did not create ChangeLog
1294 entries.
1295
1296 * aclocal.m4, configure, Makefile.in: Rebuilt using latest
1297 automake macro library.
1298
1299 * hpux-core.c (hpux_core_core_file_p): this function now
1300 understands HPUX 10.30 thread info. Yes, the thread stacks can be
1301 found in the corefile! Also, in hpux_core_core_file_p, if we
1302 encounter a section with an unknown type, don't punt. Instead,
1303 just skip it. Also, count the number of sections of known type
1304 that we encounter. If we encounter at least one good one, then
1305 we'll declare that the file is a core file. If we encounter any
1306 unknown ones but some known ones, then we'll issue a warning (but
1307 still declare it to be a core file). Also, correctly decide when a
1308 file is not a core.
1309 (PROC_INFO_HAS_THREAD_ID): define if CORE_ANON_SHMEM defined.
1310 (CORE_ANON_SHMEM): define if not defined.
1311 (hpux_core_struct): add members lwpid and user_tid.
1312 (core_kernel_thread_id, core_user_thread_id): new macros.
1313 (make_bfd_asection): use bfd_alloc to allocate room for a copy of
1314 the name before storing it in the bfd.
1315 (hpux_core_core_file_p): handle threads.
1316
1317 * libhppa.h (GET_FIELD): protect against redefinition.
1318 (HPPA_WIDE): define.
1319 (GET_FIELD): define.
1320 (GET_BIT): define.
1321 (MASK): define.
1322 (CATENATE): define.
1323 (ELEVEN): define.
1324 (sign_extend): redefine.
1325 (assemble_6): define.
1326 (assemble_12): rewrite.
1327 (assemble_16): define.
1328 (assemble_16a): define.
1329 (assemble_17): rewrite.
1330 (assemble_22): define.
1331
13321998-12-07 Nick Clifton <nickc@cygnus.com>
1333
1334 * elf32-fr30.c (fr30_final_link_relocate): Using signed
1335 relocations for signed values.
1336
1337Sun Dec 6 16:30:33 1998 Ian Lance Taylor <ian@cygnus.com>
1338
1339 * mipsbsd.c (MY(set_arch_mach)): Make static.
1340 * aoutx.h (NAME(aout,machine_type)): For bfd_arch_mips, use
1341 bfd_mach_mips* macros rather than simple numbers.
1342
1343 COFF weak symbol support, based on patches from Mark Elbrecht
1344 <snowball3@usa.net>:
1345 * coffcode.h (coff_slurp_symbol_table): Handle C_WEAKEXT.
1346 * coffgen.c (coff_renumber_symbols): Handle weak symbols.
1347 (coff_write_alien_symbol): Likewise.
1348 * cofflink.c (coff_link_check_ar_symbols): Likewise.
1349 (coff_link_add_symbols): Likewise.
1350 (_bfd_coff_link_input_bfd): Likewise.
1351 (_bfd_coff_write_global_sym): Likewise.
1352
1353 * elf.c (copy_private_bfd_data): Always initialize the
1354 includes_phdrs field.
1355
1356 * elflink.h (elf_fix_symbol_flags): Check for case where a non-ELF
1357 file defines a symbol first mentioned in an ELF file.
1358
1359 * bfd-in.h: Always define BFD_HOST_64_BIT and BFD_HOST_U_64_BIT if
1360 possible, rather than only if BFD64.
1361 * elflink.h (compute_bucket_count): Just check BFD_HOST_U_64_BIT,
1362 not __GNUC__.
1363 * bfd-in2.h: Rebuild.
1364
1365 * srec.c (srec_set_section_contents): Correct test to avoid
1366 switching to 4 byte addresses after seeing a second section which
1367 requires 3 byte addresses. From Joel Schantz
1368 <joel.schantz@argosys.boeing.com>.
1369
1370 * config.bfd (m68*-*-gnu*): New target. From Aymeric Vincent
1371 <aymeric.vincent@emi.u-bordeaux.fr>.
1372
13731998-12-04 Jim Blandy <jimb@zwingli.cygnus.com>
1374
1375 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Fix logic to
1376 decide whether the output file is -mrelocatable-lib,
1377 -mrelocatable, or neither. (gdb.base/nodebug.exp)
1378
13791998-12-03 Nick Clifton <nickc@cygnus.com>
1380
1381 * elf32-fr30.c: Add support for R_FR30_48 reloc.
1382 * reloc.c: Add BFD_RELOC_FR30_48 relocation.
1383 * bfd-in2.h: Regenerate.
1384 * libbfd.h: Regenerate
1385
1386Wed Dec 2 00:58:37 1998 Ian Lance Taylor <ian@cygnus.com>
1387
1388 * elflink.h (elf_adjust_dynamic_symbol): Warn on an attempt to
1389 link against a dynamic symbol with no type or size.
1390
13911998-12-01 Ulrich Drepper <drepper@cygnus.com>
1392
1393 * elf32-i386.c (i386_check_relocs) [R_386_32]: Don't emit
1394 relocation for section which does not get loaded.
1395 (elf_i386_relocate_section) [R_386_32]: Likewise.
1396
1397Tue Dec 1 11:33:33 1998 Jim Wilson <wilson@cygnus.com>
1398
1399 * coff-h8300.c (h8300_bfd_link_add_symbols): Make reloc_size,
1400 reloc_count and i long instead of unsigned long. Handle error
1401 return from bfd_canonicalize_reloc.
1402
14031998-12-01 Nick Clifton <nickc@cygnus.com>
1404
1405 * elf32-v850.c (v850_elf_relocate_section): Detect the absence of
1406 a hash table.
1407
1408Mon Nov 30 15:28:09 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1409
1410 * elf32-sh.c (elf/sh.h): Include.
1411 sh_reloc_type: Delete. Changed all references to elf_sh_reloc_type.
1412 (sh_elf_howto_tab): Add HOWTO for R_SH_SWITCH8.
1413 (sh_reloc_map): Map BFD_RELOC_8_PCREL to R_SH_SWITCH8.
1414 (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
1415 * Makefile.in: Add dependency of elf32-sh.lo on $(INCDIR)/elf/sh.h.
1416
1417Fri Nov 27 17:51:38 1998 Geoff Keating <geoffk@ozemail.com.au>
1418
1419 * elflink.h (compute_bucket_count): Don't allow minsize==0, it
1420 causes division by zero later on.
1421
1422Thu Nov 26 11:19:35 1998 Dave Brolley <brolley@cygnus.com>
1423
1424 * elf32-fr30.c (fr30_elf_pc9_reloc,fr30_elf_pc12_reloc): Not
1425 needed.
1426
14271998-11-25 DJ Delorie <dj@cygnus.com>
1428
1429 * coff-i386.c (i3coff_object_p): Remove hack. Use new emulation
1430 hook now.
1431
1432Tue Nov 24 10:25:27 1998 Nick Clifton <nickc@cygnus.com>
1433
1434 * elf32-fr30.c (fr30_elf_relocate_section): Call
1435 fr30_final_link_relocate.
1436 (fr30_final_link_relocate): New function: Handle I20 and I32
1437 relocs.
1438 (fr30_elf_i32_reloc): New function: Handle I32 relocs.
1439 (fr30_elf_pc9_reloc): New function: Handle 9_PCREL relocs.
1440 (fr30_elf_pc12_reloc): New function: Handle 12_PCREL relocs.
1441
1442 * elf32-v850.c (v850_elf_relocate_section): Reset hi16s reloc
1443 chain to empty.
1444
1445 The following changes are based on a patch submitted by Gianluca
1446 Moro <glctr@abc.it>:
1447
1448 (v850_elf_perform_relocation): Only update a hi16s reloc if it has
1449 not already been updated.
1450 (find_remembered_hi16s_reloc): New parameter 'already_found'
1451 returns state of remembered hi16s reloc.
1452 (remember_hi16s_reloc): Set 'found' field to false.
1453 (hi16s_location): Add 'found' field.
1454
14551998-11-23 DJ Delorie <dj@cygnus.com>
1456
1457 * coff-i386.c (bfd_pe_dll_not_recognized_hack): the linker wants
1458 to see .DLL files as unrecognized.
1459 (i3coff_object_p): Sorry, had to hack it to not recognize these
1460 files (pei-i386) on request.
1461
14621998-11-23 DJ Delorie <dj@cygnus.com>
1463
1464 * opncls.c (bfd_make_readable): need more cleanup for symbols and
1465 relents. Call bfd_check_format to reinitialize.
1466
1467Fri Nov 20 14:21:36 1998 Nick Clifton <nickc@cygnus.com>
1468
1469 * elf32-fr30.c (fr30_elf_relocate_section): Remove spurious
1470 warnings.
1471
1472Thu Nov 19 14:42:15 1998 Geoffrey Noer <noer@cygnus.com>
1473
1474 * aclocal.m4: regenerate
1475 * configure: regenerate
1476
1477Tue Nov 17 20:23:35 1998 Richard Henderson <rth@cygnus.com>
1478
1479 * elf-bfd.h (struct elf_link_hash_entry): Add vtable_entries_size.
1480 * elf.c (_bfd_elf_link_hash_newfunc): Clear it.
1481 * elflink.h (elf_gc_propagate_vtable_entries_used): Copy it, and
1482 respect it as an upper bound on what memory to reference.
1483 (elf_gc_smash_unused_vtentry_relocs): Likewise.
1484 (elf_gc_record_vtentry): Handle as-yet undefined vtables. Set and
1485 update vtable_entries_size appropriately.
1486
1487Tue Nov 17 15:28:31 1998 Nick Clifton <nickc@cygnus.com>
1488
1489 * elf32-fr30.c (fr30_reloc_type_lookup): Used integers to hold
1490 reloc number.
1491
1492Mon Nov 16 22:19:21 1998 DJ Delorie <dj@cygnus.com>
1493
1494 * archive.c (bfd_ar_hdr_from_filesystem): support BFD_IN_MEMORY
1495 bfds; they have no "file" so we fake it.
1496 * bfd-in2.h: add bfd_make_writable and bfd_make_readable (regen)
1497 * libbfd.c (bfd_write): Allow writing to BFD_IN_MEMORY bfds by
1498 resizing the memory buffer.
1499 * opncls.c (bfd_make_writable): New function; lets you write a
1500 bfd_create'd bfd to an in-memory buffer.
1501 (bfd_make_readable): New function; lets you read back that buffer
1502 as if it were from bfd_openr. Used to build generated archive
1503 members (winsup's ld's dlltool)
1504
1505Mon Nov 16 19:15:19 1998 Dave Brolley <brolley@cygnus.com>
1506
1507 * po/bfd.pot: Regenerated.
1508
1509Mon Nov 16 10:57:06 1998 Nick Clifton <nickc@cygnus.com>
1510
1511 * elf32-v850.c (hi16s_location): Replaced fixed size array with
1512 linked list.
1513
1514Sun Nov 15 20:28:25 1998 Richard Henderson <rth@cygnus.com>
1515
1516 * elf64-alpha.c (elf64_alpha_relax_section): Search for the proper
1517 element of the gotentry list for local symbols too.
1518 (elf64_alpha_relocate_section): Unify local and global handling.
1519 Assert that gotent->use_count > 0.
1520
1521Sat Nov 14 15:16:01 1998 Ian Lance Taylor <ian@cygnus.com>
1522
1523 * configure.in (vms_alpha_vec): Rename from evax_alpha_vec, and
1524 update for file name changes of July 2, 1998.
1525 (vms_vax_vec): New.
1526 * configure: Rebuild.
1527
1528Thu Nov 12 19:19:54 1998 Dave Brolley <brolley@cygnus.com>
1529
1530 * po/bfd.pot: Regenerated.
1531
1532Tue Nov 10 16:17:06 1998 Geoffrey Noer <noer@cygnus.com>
1533
1534 * acinclude.m4, config.bfd: detect cygwin* instead of cygwin32*.
1535 * aclocal.m4, configure: regenerate
1536
1537Tue Nov 10 15:13:59 1998 Nick Clifton <nickc@cygnus.com>
1538
1539 * elf.c (prep_headers): Add support for bfd_arch_fr30.
1540
1541Tue Nov 10 13:37:36 1998 Felix Lee <flee@cygnus.com>
1542
1543 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE,
1544 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): didn't define macro when value
1545 was cached.
1546 * aclocal.m4, configure: regenerated.
1547
1548Tue Nov 10 14:31:01 1998 Catherine Moore <clm@cygnus.com>
1549
1550 * elf32-d10v.c (reloc_type): Add R_D10V_GNU_VTINHERIT and
1551 R_D10V_GNU_VTENTRY relocs.
1552 (elf_d10v_howto_table): Likewise.
1553 (d10v_reloc_map d10v_reloc_map): Likewise.
1554 (elf32_d10v_gc_mark_hook): New.
1555 (elf32_d10v_gc_sweep_hook): New.
1556 (elf32_d10v_check_relocs): New.
1557 (elf32_d10v_relocate_section): New.
1558 (elf_backend_relocate_section): Define.
1559 (elf_backend_can_gc_sections): Define.
1560
1561Sat Nov 7 18:07:51 1998 Peter Schauer <peter.schauer@regent.e-technik.tu-muenchen.de>
1562
1563 * Makefile.am (BFD32_BACKENDS): Move vms files here...
1564 (BFD64_BACKENDS): ...from here.
1565 (BFD32_BACKENDS_CFILES): Move vms files here...
1566 (BFD64_BACKENDS_CFILES): ...from here.
1567 * Makefile.in: Rebuild.
1568
1569Wed Nov 4 15:58:48 1998 Nick Clifton <nickc@cygnus.com>
1570
1571 * Makefile.am: Add FR30 target.
1572 * Makefile.in: Add FR30 target.
1573 * archures.c: Add support for FR30.
1574 * config.bfd: Add support for FR30.
1575 * configure.in: Add support for FR30.
1576 * reloc.c: Add support for FR30 relocations.
1577 * targets.c: Add support for FR30 relocations.
1578 * bfd-in2.h: Regenerate.
1579 * configure: Regenerate.
1580 * libbfd.h: Regenerate.
1581 * cpu-fr30.c: New file.
1582 * elf32-fr30.c: New file.
1583
1584Mon Nov 2 14:59:33 1998 Geoffrey Noer <noer@cygnus.com>
1585
1586 * configure.in: detect cygwin* instead of cygwin32*
1587 * configure: regenerate
1588
1589Sun Nov 1 19:32:28 1998 Jeffrey A Law (law@cygnus.com)
1590
1591 * elf-m10300.c (mn10300_elf_relax_section): Do not use alloca,
1592 use bfd_malloc and free instead and check return value from bfd_malloc.
1593
1594Sun Nov 1 16:20:35 1998 Ian Lance Taylor <ian@cygnus.com>
1595
1596 * libbfd-in.h (_bfd_dwarf1_find_nearest_line): Declare.
1597 * libbfd.h: Rebuild.
1598
1599 * elf32-mips.c (mips_elf_dynsym_sec_names): Comment out.
1600 (SIZEOF_MIPS_DYNSYM_SECNAMES): Likewise.
1601 (MIPS_TEXT_DYNSYM_SECN): Likewise.
1602 (_bfd_mips_elf_fake_sections): Don't set sh_info field of a .hash
1603 section.
1604 (struct mips_elf_link_hash_table): Remove dynsym_sec_strindex
1605 field.
1606 (mips_elf_link_hash_table_create): Don't initialize
1607 dynsym_sec_strindex.
1608 (mips_elf_gc_mark_hook): Add default case to avoid warning.
1609 (mips_elf_size_dynamic_sections): Generate a section symbol for
1610 every output section.
1611 (mips_elf_finish_dynamic_sections): Count all sections for
1612 DT_MIPS_UNREFEXTNO.
1613 (mips_elf_finish_dynamic_sections): Use dynamic symbols for all
1614 output sections.
1615
1616Sun Nov 1 12:46:53 1998 Geoff Keating <geoffk@ozemail.com.au>
1617
1618 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Allocate two slots
1619 for later PLT entries in large PLTs.
1620 (ppc_elf_finish_dynamic_symbol): Allow for the extra slots.
1621
1622Sat Oct 31 20:10:09 1998 Jeffrey A Law (law@cygnus.com)
1623
1624 * elf32-ppc.c (ppc_elf_reload_section): Fix typo.
1625
16261998-10-26 15:58 Ulrich Drepper <drepper@cygnus.com>
1627
1628 * elf-bfd.h (struct elf_link_hash_entry): Add new field elf_hash_value.
1629 * elflink.h (elf_collect_hash_codes): New function. This function is
1630 called for each exported symbol and we compute the ELF hash value for
1631 it.
1632 (compute_bucket_value): New function. It is called from
1633 size_dynamic_sections to determine the hash table size. When we are
1634 optimizing a better, but slower, algorithm is used.
1635 (size_dynamic_sections): Call compute_bucket_value.
1636
1637 * elf.c (bfd_elf_hash): Optimize the hash function a bit.
1638
1639Mon Oct 19 20:03:21 1998 Catherine Moore <clm@cygnus.com>
1640
1641 * elf32-sh.c: Add HOWTO entries for R_SH_GNU_VTINHERIT and
1642 R_SH_GNU_VTENTRY.
1643 (sh_elf_gc_mark_hook): New.
1644 (sh_elf_gc_sweep_hook): New.
1645 (sh_elf_check_relocs): New.
1646 (elf_backend_can_gc_sections): Define.
1647
1648Mon Oct 19 16:57:05 1998 Felix Lee <flee@cygnus.com>
1649
1650 * acinclude.m4: undo previous gettext change
1651 * aclocal.m4: rebuild with right version of aclocal.
1652
1653Mon Oct 19 01:47:21 1998 Felix Lee <flee@cygnus.com>
1654
1655 * acinclude.m4, aclocal.m4: move gettext-related fragments from
1656 aclocal.m4 to acinclude.m4, so they don't get lost.
1657
1658 * elfcore.h: rewrite for better corefile support.
1659 * elf.c (elfcore_*): new functions.
1660 * elf-bfd.h (elf_obj_tdata): new structure members.
1661 * acconfig.h, acinclude.m4, configure.in: add feature-tests for
1662 flavor of procfs.
1663 * aclocal.m4, config.in, configure, Makefile.in: regenerated.
1664
1665Fri Oct 16 14:07:45 1998 Catherine Moore <clm@cygnus.com>
1666
1667 * elf32-m32r.c: Add HOWTO entries for R_M32R_GNU_VTINHERIT
1668 and R_M32R_GNU_VTENTRY.
1669 (elf_backend_can_gc_sections): Define.
1670 (m32r_elf_check_relocs): New.
1671 (m32r_elf_gc_mark_hook): New.
1672 (m32r_elf_gc_sweep_hook): New.
1673 (m32r_elf_relocate_section): Handle VT relocs.
1674
1675Mon Oct 12 14:18:40 1998 Nick Clifton <nickc@cygnus.com>
1676
1677 * coff-arm.c (arm_relocate_section): Remove redundant test.
1678
1679 * bfd-in2.h (struct reloc_howto_struct): Improve comment to make
1680 cleat that the 'bitsize' field is the size of the bitfield AFTER
1681 relocation not before.
1682
1683 * elf32-m32r.c (R_M32R_18_PCREL): Fix size of bitfield.
1684
1685 * coff-mips.c (mips_relocate_hi): Cope with missing refhi or reflo
1686 relocs.
1687
1688Tue Oct 6 09:20:44 1998 Catherine Moore <clm@cygnus.com>
1689
1690 * elf32-sparc.c: Add HOWTO entries for R_SPARC_GNU_VTINHERIT and
1691 R_SPARC_GNU_VTENTRY.
1692 (elf32_sparc_check_relocs): Handle them.
1693 (elf32_sparc_reloc_type_lookup): Likewise.
1694 (elf32_sparc_relocate_section): Likewise.
1695 (elf32_sparc_gc_mark_hook): New.
1696 (elf32_sparc_gc_sweep_hook): New.
1697
1698Mon Oct 5 14:55:30 1998 Jeffrey A Law (law@cygnus.com)
1699
1700 * som.c (som_finish_writing): Perform some sanity checks when
1701 writing an executable or shared library.
1702
1703Mon Oct 5 12:02:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
1704
1705 * dwarf1.c : New file. Adds _bfd_dwarf1_find_nearest_line.
1706 * configure.in (elf): Add dwarf1.lo.
1707 * elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info.
1708 * elf.c (_bfd_elf_find_nearest_line): Add call to
1709 _bfd_dwarf1_find_nearest_line.
1710 * elf32-mips.c (_bfd_mips_elf_find_nearest_line):
1711 Add call to _bfd_dwarf1_find_nearest_line.
1712 * configure: Rebuilt.
1713
1714Mon Oct 5 10:06:22 1998 Catherine Moore <clm@cygnus.com>
1715
1716 * elflink.h (elf_gc_sections): Do not allow garbage
1717 collection if dynamic sections have been created.
1718
1719Mon Oct 5 09:07:37 1998 Catherine Moore <clm@cygnus.com>
1720
1721 * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and
1722 R_V850_GNU_VTENTRY.
1723 (v850_elf_check_relocs): Handle VTINHERIT and VTENTRY relocs.
1724 (v850_elf_perform_relocation): Likewise.
1725 (v850_elf_final_link_relocate): Likewise.
1726 (v850_elf_relocate_section): Likewise.
1727 (v850_elf_gc_sweep_hook): New routine.
1728 (v850_elf_gc_mark_hook): New routine.
1729 (elf_backend_can_gc_sections): Define.
1730
1731Mon Oct 5 09:04:25 1998 Catherine Moore <clm@cygnus.com>
1732
1733 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Don't assume
1734 that dynobj exists.
1735
1736Sun Oct 4 23:29:34 1998 David Edelsohn <edelsohn@mhpcc.edu>
1737
1738 * rs6000-core.c (rs6000coff_core_file_matches_executable_p):
1739 Declare size as bfd_size_type.
1740 (rs6000coff_get_section_contents): Declare count as bfd_size_type.
1741
1742Sun Oct 4 20:38:29 1998 Jeffrey A Law (law@cygnus.com)
1743
1744 * cpu-hppa.c (bfd_hppa20_arch): Define. Link it into the bfd_hppa_arch
1745 structure.
1746 * som.c (CPU_PA_RISC2_0): Define.
1747 (_PA_RISC2_0_ID): Likewise.
1748 (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed.
1749
1750Sun Oct 4 21:19:09 1998 Ian Lance Taylor <ian@cygnus.com>
1751
1752 * elflink.h (elf_link_add_object_symbols): When a versioned symbol
1753 has a base which is already defined, only add the referenced
1754 symbol to the dynamic symbol table if it is defined or referenced
1755 by a regular file.
1756
1757 * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs
1758 correctly.
1759
17601998-09-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1761
1762 * elflink.h (elf_link_add_object_symbols): Undo last change.
1763
1764Wed Sep 23 16:09:31 1998 Richard Henderson <rth@cygnus.com>
1765
1766 * elflink.h (elf_link_add_object_symbols): Don't record a dynamic
1767 symbol for the indirect alias to a versioned symbol.
1768
1769Mon Sep 21 12:15:22 1998 Catherine Moore <clm@cygnus.com>
1770
1771 * elf32-i386.c (elf32_i386_vtinherit_howto): New.
1772 (elf32_i386_vtentry_howto): New.
1773 (elf_i386_reloc_type_lookup): Return elf32_i386_vtentry_howto
1774 or elf32_i386_vtinherit_howto on lookup.
1775
1776Sun Sep 20 00:48:07 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1777
1778 * elf32-m68k.c: Include "elf/m68k.h". Remove definition of enum
1779 reloc_type. Rename R_68K__max to R_68K_max.
1780 (howto_table): Use _bfd_elf_rel_vtable_reloc_fn for a VTENTRY
1781 reloc.
1782
1783Sun Sep 20 00:09:25 1998 Chris Torek <torek@bsdi.com>
1784
1785 * libbfd.c (bfd_getb32): Rewrite expression to get better code.
1786 (bfd_getl32, bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
1787
1788 * libbfd.c (bfd_log2): Cast to bfd_vma before shifting, not
1789 after.
1790
1791Sat Sep 19 22:42:23 1998 Doug Rabson <dfr@nlsystems.com>
1792
1793 * elflink.h (elf_link_add_object_symbols): Ensure that the warning
1794 message has a null byte terminator.
1795
1796Fri Sep 18 14:35:29 1998 Nick Clifton <nickc@cygnus.com>
1797
1798 * elf32-v850.c (v850_elf_perform_relocation): Ignore contents of
1799 word subject to R_V850_32 relocation.
1800
1801Thu Sep 17 17:20:36 1998 Nick Clifton <nickc@cygnus.com>
1802
1803 * dwarf2.c: Add comment describing problem computing line numbers
1804 for undefined symbols at link time.
1805
1806Thu Sep 17 16:03:28 1998 Richard Henderson <rth@cygnus.com>
1807
1808 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
1809 transform a defweak into a plt entry.
1810 (elf64_alpha_calc_dynrel_sizes): Allow room for secondary
1811 plt entry references to receive a RELATIVE reloc.
1812 (elf64_alpha_finish_dynamic_symbol): Fill them in.
1813 (elf64_alpha_relocate_section): Assert we don't overrun
1814 the allocated relocation space.
1815
1816Wed Sep 16 18:03:13 1998 Nick Clifton <nickc@cygnus.com>
1817
1818 * elf.c (swap_out_syms): Always treat section symbols as
1819 special, even if they are attached to a common section.
1820
1821Wed Sep 16 10:34:13 1998 Nick Clifton <nickc@cygnus.com>
1822
1823 * elf32-v850.c (v850_elf_symbol_processing): Move symbols in
1824 sections with v850 common section attributes into named v850
1825 common sections.
1826 (v850_elf_add_symbol_hook): Move symbols in sections with v850
1827 common section attributes into named v850 common sections.
1828
1829Wed Sep 16 11:26:49 CDT 1998 Catherine Moore <clm@cygnus.com>
1830
1831 * elf32-arm.c (elf32_arm_gc_mark_hook): Remove print
1832 statement.
1833
18341998-09-15 Geoff Keating <geoffk@ozemail.com.au>
1835
1836 * elf32-ppc.c (ppc_elf_relocate_section): Reverse output_offset
1837 part of Vladimir's change of 1998-08-19. Make a R_PPC_SDAREL16
1838 reloc to the wrong section a warning, not an error. .dynsbss
1839 is not an output section, so there is no need to check for it.
1840
1841Tue Sep 15 12:40:05 1998 Catherine Moore <clm@cygnus.com>
1842
1843 * elf-bfd.h: Add argument to elf_backend_get_symbol_type.
1844
1845Tue Sep 15 08:34:40 1998 Catherine Moore <clm@cygnus.com>
1846
1847 * elf.c (swap_out_syms): Pass type to elf_backend_get_symbol_type.
1848 * elf32-arm.c: Add HOWTO entries for R_ARM_GNU_VTINHERIT and
1849 R_ARM_GNU_VTENTRY.
1850 (elf32_arm_gc_mark_hook): New.
1851 (elf32_arm_gc_sweep_hook): New.
1852 (elf32_arm_check_relocs): New.
1853 (elf32_arm_final_link_relocate): Handle VTINHERIT and VTENTRY
1854 relocations.
1855 (elf32_arm_relocate_section): Handle VTINHERIT and VTENTRY
1856 relocations.
1857
18581998-09-10 Geoff Keating <geoffk@ozemail.com.au>
1859
1860 * elf32-ppc.c (ppc_elf_relocate_section): If dynobj is NULL,
1861 assume there is no PLT or GOT.
1862
1863Wed Sep 9 14:24:12 1998 Nick Clifton <nickc@cygnus.com>
1864
1865 * elf32-arm.c (elf32_arm_find_nearest_line): New function: just
1866 like _elf_bfd_find_nearest_line() except that STT_ARM_TFUNC is
1867 also accepted as a function symbol type.
1868
1869Mon Sep 7 13:24:03 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
1870
1871 * rs6000-core.c (_LONG_LONG): Define for AIX 4.x only.
1872
1873Sat Sep 5 20:40:18 1998 Ian Lance Taylor <ian@cygnus.com>
1874
1875 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): Correct definition to
1876 match definition of _bfd_gc_sections field.
1877 * libbfd.h: Rebuild.
1878
1879Fri Sep 4 13:54:23 1998 David Miller <davem@dm.cobaltmicro.com>
1880
1881 * elf32-sparc.c (elf32_sparc_relocate_section): Properly adjust
1882 the addend of a dynamic relocation referencing a section.
1883 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1884 (sparc64_elf_finish_dynamic_symbol): Fix the PLT relocation offset.
1885
1886Thu Sep 3 17:28:50 1998 Richard Henderson <rth@cygnus.com>
1887
1888 * elflink.h (bfd_elfNN_size_dynamic_sections): Verify that the
1889 bed has a size_dynamic_sections routine before trying to use it.
1890
1891Mon Aug 31 14:49:22 1998 Richard Henderson <rth@cygnus.com>
1892
1893 * elf32-mips.c (elf_mips_gnu_vtentry_howto): Use
1894 _bfd_elf_rel_vtable_reloc_fn.
1895
1896Mon Aug 31 10:23:40 1998 Catherine Moore <clm@cygnus.com>
1897
1898 * Makefile.am: Add elf32-arm.c.
1899 * Makefile.in: Rebuild.
1900 * elf-bfd.h: Add elf_backend_get_symbol_type.
1901 * elf.c (swap_out_syms): If defined, call
1902 elf_backend_get_symbol_type.
1903 * elf32-arm.c: Define elf_backend_get_symbol_type.
1904 (elf32_arm_get_symbol-type): New routine.
1905 (record_thumb_to_arm_glue): Change to use STT_ARM_TFUNC.
1906 (bfd_elf32_arm_process_before_allocation): Change to
1907 check for STT_ARM_TFUNC.
1908 (elf32_arm_final_link_relocate): Likewise.
1909 * elfxx-target.h: Add elf_backend_get_symbol_type.
1910
1911Fri Aug 28 19:44:07 1998 Richard Henderson <rth@cygnus.com>
1912
1913 * archures.c (bfd_mach_alpha_ev[456]): New.
1914 * cpu-alpha.c: Rework to match these types.
1915 * bfd-in2.h: Rebuild.
1916
1917Fri Aug 28 19:38:53 1998 Richard Henderson <rth@cygnus.com>
1918
1919 * elf-bfd.h (_bfd_elf_rel_vtable_reloc_fn): Declare.
1920 * elf.c (_bfd_elf_rel_vtable_reloc_fn): New.
1921
1922 * elf32-i386.c (elf_howto_table): Add vtable relocs.
1923 (elf_i386_reloc_type_lookup): Recognize them.
1924 (elf_i386_check_relocs): Pass them off to generic code.
1925 (elf_i386_relocate_section): Ignore them.
1926 (elf_i386_gc_mark_hook, elf_i386_gc_sweep_hook): New.
1927 (elf_backend_can_gc_sections): True.
1928
1929Thu Aug 20 15:03:45 1998 Nick Clifton <nickc@cygnus.com>
1930
1931 * elf32-arm.c (elf32_thumb_to_arm_stub): Check sym_sec is not NULL
1932 before looking at owner field.
1933 (elf32_arm_to_thumb_stub): Ditto.
1934 (elf32_arm_relocate_section): Compute name before calling
1935 elf32_arm_final_link_relocate().
1936
1937Thu Aug 20 11:30:17 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
1938
1939 * elf.c: comment and formatting cleanups.
1940 * elfcore.h: ditto.
1941
1942Wed Aug 19 15:43:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
1943
1944 * elfcode.h (elf_object_p): Reject files of header type ET_CORE
1945 (core files are treated differently than object files).
1946 * elf-bfd.h (_bfd_elf_write_corefile_contents,
1947 bfd_elf_mkcorefile): declare.
1948 * elfxx-target.h (_bfd_elf_write_corefile_contents,
1949 bfd_elf_mkcorefile): add to bfd_target vector.
1950 * elfcore.h (elf_core_file_p): save the program header table,
1951 and set the bfd architecture from the elf file header.
1952 * elf.c (bfd_elf_mkcorefile): new function.
1953 (_bfd_elf_write_corefile_contents): new function.
1954 (assign_file_positions_for_segments): add cases for handling
1955 PT_NOTE segments. (assign_file_positions_except_relocs):
1956 core files should be handled the same as exec files.
1957 (prep_headers): identify core files as type ET_CORE.
1958 (copy_private_bfd_data): identify the sections belonging to
1959 the PT_NOTE segment.
1960
1961 * elf32-sparc.c (elf32_sparc_final_write_processing):
1962 add break statement to default case.
1963
19641998-08-19 Vladimir N. Makarov <vmakarov@cygnus.com>
1965
1966 * elf32-ppc.c (ppc_elf_relocate_section): Check that output
1967 section (not input) will be in sections ".sbss", ".sbss2",
1968 ".sdata", and ".sdata" for R_PPC_SDAREL16, R_PPC_EMB_SDA2REL,
1969 R_PPC_EMB_SDA21, R_PPC_EMB_RELSDA. In all these cases also ignore
1970 output_offset for correct evaluation of addend.
1971
1972Tue Aug 18 11:48:12 1998 Catherine Moore <clm@cygnus.com>
1973
1974 * elf32-arm.c: Add prefix bfd_ to elf32_arm_get_bfd_for_interworking,
1975 elf32_arm_allocate_interworking_sections and
1976 elf32_arm_process_before_allocation.
1977
1978Tue Aug 18 11:46:00 1998 Nick Clifton <nickc@cygnus.com>
1979
1980 * bfd-in.h: Ammend prototype for
1981 elf32_arm_process_before_allocation to remove surplus third
1982 argument.
1983
1984 * bfd-in2.h: Regenerate.
1985
1986Sat Aug 15 20:55:08 1998 Richard Henderson <rth@cygnus.com>
1987
1988 * elf64-alpha.c (elf64_alpha_relax_section): Handle indirect symbols.
1989
1990Fri Aug 14 09:12:28 1998 Stan Cox <scox@cygnus.com>
1991
1992 * aoutx.h (aout_link_input_section_ext): Use the relocation already
1993 calculated for RELOC_SPARC_REV32 case.
1994
1995Thu Aug 13 14:02:02 1998 Catherine Moore <clm@cygnus.com>
1996
1997 * bfd-in.h: Add prototypes for elf32_arm_get_bfd_for_interworking,
1998 elf32_arm_allocate_interworking_sections and
1999 elf32_arm_process_before_allocation.
2000 * bfd-in2.h: Regenerated.
2001 * elf32-arm.c Define elf32_arm_link_hash_table.
2002 (insert_thumb_branch): New routine.
2003 (find_thumb_glue): New routine.
2004 (find_arm_glue): New routine.
2005 (record_arm_to_thumb_glue): New routine.
2006 (record_thumb_to_arm_glue): New routine.
2007 (elf32_arm_link_hash_table_create): New routine.
2008 (elf32_arm_get_bfd_for_interworking): New routine.
2009 (elf32_arm_allocate_interworking_sections) New routine.
2010 (elf32_arm_process_before_allocation) New routine.
2011 (elf32_thumb_to_arm_stub): New routine.
2012 (elf32_arm_to_thumb_stub): New routine.
2013 (elf32_print_private_bfd_data): Fix typo.
2014 (elf32_arm_final_link_relocate): Add argument sym_sec.
2015 Check for branches to thumb symbols in case R_ARM_PC24.
2016 Check for branches to arm symbols in case R_ARM_THM_PC22.
2017 (elf32_arm_relocate_section): Pass symbol section to
2018 elf32_arm_final_link_relocate.
2019
2020Wed Aug 12 19:00:39 1998 Geoff Keating <geoffk@ozemail.com.au>
2021
2022 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Generate PLT
2023 entries unless the symbol is defined in the executable; in
2024 particular, undefined weak symbols get a PLT entry.
2025
2026Wed Aug 12 14:48:33 1998 Ian Lance Taylor <ian@cygnus.com>
2027
2028 * libaout.h: Remove nested comment to avoid warning.
2029
2030Wed Aug 12 08:10:11 1998 Catherine Moore <clm@cygnus.com>
2031
2032 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
2033 R_ARM_PC24 relocation.
2034
2035Tue Aug 11 14:42:26 1998 Catherine Moore <clm@cygnus.com>
2036
2037 * elf32-arm.c (elf32_arm_final_link_relocate): Remove unused
2038 argument is_local. Add argument sym_flags. Check sym_flags
2039 in R_ARM_ABS32 case. Include addend for R_ARM_THM_PC22 case.
2040 (elf32_arm_relocate_section): Don't pass local sym and pass
2041 sym_flags to elf32_arm_final_link_relocate.
2042
2043Mon Aug 10 20:38:39 1998 Richard Henderson <rth@cygnus.com>
2044
2045 * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Correct last change
2046 to not count too few relocs for dynamicly linked executables.
2047
2048Mon Aug 10 15:35:34 1998 Richard Henderson <rth@cygnus.com>
2049
2050 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Never consider
2051 symbols without a dynamic index dynamic. Consider all weak
2052 symbols dynamic.
2053 (elf64_alpha_strip_section_from_output): Don't assume 1-1
2054 correspondance between input and output sections.
2055
2056Mon Aug 10 15:31:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2057
2058 * elflink.h (elf_gc_common_finalize_got_offsets): For backends
2059 that use a .got.plt section start the got offset at zero.
2060
2061Mon Aug 10 17:31:21 1998 Ian Lance Taylor <ian@cygnus.com>
2062
2063 * ieee.c (ieee_write_processor): Correct the processor ID written
2064 out for bfd_arch_m68k, accommodating change of March 25.
2065
2066Sun Aug 9 20:55:44 1998 Catherine Moore <clm@cygnus.com>
2067
2068 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
2069 R_ARM_THM_RPC22 relocations.
2070
2071Sat Aug 8 15:15:30 1998 Richard Henderson <rth@cygnus.com>
2072
2073 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Undef weak symbols
2074 are always dynamic.
2075 (elf64_alpha_calc_dynrel_sizes): Allow enough room for RELATIVE
2076 .got relocs in -Bsymbolic shared objects.
2077
2078Wed Aug 5 15:48:08 1998 Nick Clifton <nickc@cygnus.com>
2079
2080 * elf32-arm.c: Add private flags to ELF header.
2081 (elf32_arm_print_private_bfd_data): New Function.
2082 (elf32_arm_set_private_flags): New Function.
2083 (elf32_arm_copy_private_flags): New Function.
2084 (elf32_arm_merge_private_bfd_data): New Function.
2085
2086Mon Aug 3 17:10:15 1998 Ian Lance Taylor <ian@cygnus.com>
2087
2088 * elf32-sparc.c (elf32_sparc_check_relocs): Permit WPLT30 against
2089 a local symbol.
2090 (elf32_sparc_relocate_section): Likewise.
2091
2092Sun Aug 2 03:19:23 1998 Richard Henderson <rth@cygnus.com>
2093
2094 * elf32-ppc.c (ppc_elf_check_relocs): Init sgot to NULL. Create the
2095 .got if any relocation referrs to _GLOBAL_OFFSET_TABLE_.
2096 (ppc_elf_relocate_section): Pull sgot and splt search to the start
2097 of the function. Recognize no .plt as static linking.
2098
20991998-08-01 Ulrich Drepper <drepper@cygnus.com>
2100
2101 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Don't pass
2102 ".liblist" string through gettext.
2103
2104Fri Jul 31 16:38:14 1998 Catherine Moore <clm@cygnus.com>
2105
2106 * Makefile.am: Add support for elf32-arm.lo.
2107 * Makefile.in: Rebuild.
2108 * config.bfd (arm-*-elf): Define targ_defvec and targ_selvecs.
2109 (thumb-*-elf): Define targ_defvec and targ_selvecs.
2110 * configure.in: Handle bfd_elf32_littlearm_vec and bfd_elf32_bigarm_vec.
2111 * configure: Regenerate.
2112 * elf.c: (prep_headers): Support arch_type of EM_ARM.
2113 * targets.c: Support new targets bfd_elf32_bigarm_vec and
2114 bfd_target bfd_elf32_littlearm_vec.
2115 * elf32-arm.c: New file.
2116
2117Tue Jun 28 19:05:28 1998 Stan Cox <scox@cygnus.com>
2118
2119 * libaout.h (M_SPARCLITE_LE): New machine.
2120 * sunos.c (MACHTYPE_OK): Add machine M_SPARCLITE_LE.
2121 * aoutf1.h (sunos_set_arch_mach): Add machine M_SPARCLITE_LE.
2122 (sunos_write_object_contents): Add machine bfd_mach_sparc_sparclite_le
2123 * aoutx.h (howto_table_ext): Add relocation R_SPARC_REV32.
2124 (NAME(aout,machine_type)) Add machine bfd_mach_sparc_sparclite_le
2125 (aout_link_input_section_ext): Add RELOC_SPARC_REV32 support.
2126 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
2127 elf32_sparc_relocate_section): Rename R_SPARC_32LE to be R_SPARC_REV32
2128 * libbfd.h (bfd_reloc_code_real_names): Rename BFD_RELOC_SPARC_32LE to
2129 be BFD_RELOC_SPARC_REV32.
2130 * reloc.c: Ditto.
2131 * config.bfd (sparc86x-*-aout): New
2132
2133Fri Jul 24 13:54:19 1998 Nick Clifton <nickc@cygnus.com>
2134
2135 * linker.c (_bfd_generic_final_link): Allocate NULL symbol before
2136 actually mapping the output sections.
2137
2138Fri Jul 24 11:24:29 1998 Jeffrey A Law (law@cygnus.com)
2139
2140
2141 * elf-m10300.c (mn10300_elf_howto): Add R_MN10300_24 entry.
2142 (mn10300_elf_reloc_map): Similarly.
2143 (mn10300_elf_final_link_relocate): Handle R_MN10300_24.
2144
2145Fri Jul 24 12:36:04 1998 Ian Lance Taylor <ian@cygnus.com>
2146
2147 * elf32-mips.c (elf_mips_howto_table): Add reloc types used on
2148 Irix 6.
2149 (bfd_elf32_bfd_reloc_type_lookup): Add default case.
2150 * elf64-mips.c: Replace all uses of mips_elf64_reloc_type with
2151 elf_mips_reloc_type defined in elf/mips.h.
2152
21531998-07-24 Ulrich Drepper <drepper@cygnus.com>
2154
2155 * elf64-mips.c: Remove reloc_type definition completely. It's now
2156 in elf/mips.h.
2157
2158Thu Jul 23 13:33:19 1998 Doug Evans <devans@canuck.cygnus.com>
2159
2160 * elf64-mips.c (mips_elf64_reloc_type): #if 0 out more relocations
2161 as they are defined in elf/mips.h now.
2162
2163Thu Jul 23 11:29:43 1998 Jeffrey A Law (law@cygnus.com)
2164
2165
2166 * Re-add lost change:
2167 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
2168 "movm_stack_size".
2169 (mn10300_elf_relax_section): Include stack space for register saves
2170 in the imm8 field of a "call" instruction.
2171 (compute_function_info): Determine how much stack is allocated by
2172 the movm instruction. Fix typo.
2173 (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
2174
2175Thu Jul 23 11:38:05 1998 Ian Lance Taylor <ian@cygnus.com>
2176
2177 * elf32-sparc.c (elf_backend_got_header_size): Define as 4.
2178 * elf64-sparc.c (elf_backend_got_header_size): Define as 8.
2179
21801998-07-22 Ulrich Drepper <drepper@cygnus.com>
2181
2182 * elf32-ppc.c: Change use of pp_reloc_type to elf_ppc_reloc_type.
2183
2184Wed Jul 22 16:27:18 1998 Nick Clifton <nickc@cygnus.com>
2185
2186 * elf32-hppa.h: Let ELF header define the enum containing the
2187 external reloc numbers.
2188 * elf32-i386.h: Likewise.
2189
21901998-07-22 14:57 Ulrich Drepper <drepper@cygnus.com>
2191
2192 * elf-m10300.c: Let ELF header now define the macros to get the enum.
2193 * elf32-mips.c: Likewise.
2194 * elf32-ppc.c: Likewise.
2195
2196Wed Jul 22 13:53:52 1998 Nick Clifton <nickc@cygnus.com>
2197
2198 * bfd-in2.h: Change type of 'class' parameter to 'unsigned int' in
2199 bfd_coff_set_symbol_class(), in order to avoid K&R compatability
2200 prblems.
2201 * bfd-in.h: Regenerate.
2202 * coffgen.c (bfd_coff_set_symbol_class): Change type of 'class'
2203 parameter to 'unsigned int' to avoid K&R compatability problems.
2204
2205Wed Jul 22 16:43:24 1998 Ian Lance Taylor <ian@cygnus.com>
2206
2207 * ieee.c (ieee_find_nearest_line): Change filename_ptr and
2208 functionname_ptr to be const. Change line_ptr to be unsigned.
2209
2210 * coffcode.h (coff_link_output_has_begun): Simplify handling when
2211 macro is not defined. Change second parameter from bfd_link_info
2212 to coff_final_link_info. Add prototype.
2213 (coff_final_link_postscript): Simplify handling when macro is not
2214 defined. Add prototype.
2215
22161998-07-22 13:08 Ulrich Drepper <drepper@cygnus.com>
2217
2218 * elf-mn10300.c: Before include system specific ELF header define
2219 START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS.
2220 * elf32-mips.c: Likewise.
2221 * elf32-ppc.c: Likewise.
2222
2223Wed Jul 22 13:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
2224
2225 * elf64-mips.c (mips_elf64_reloc_type): Copy Ulrich's elf32-mips.c
2226 temporary patch over to elf64-mips.c as well.
2227
22281998-07-21 Ulrich Drepper <drepper@cygnus.com>
2229
2230 * elf32-mips.c (reloc_type): Temporarily disable definition of
2231 standard relocation since they are now defined in elf/mips.h.
2232
2233Tue Jul 21 09:47:00 1998 Catherine Moore <clm@cygnus.com>
2234
2235 * elf-m10200.c (mn10200_elf_final_link_relocate):
2236 Modify range test for case R_MN10200_8.
2237
2238 * elf-m10300.c (mn10300_elf_final_link_relocate):
2239 Modify range test for case R_MN10300_8.
2240
2241Mon Jul 20 18:50:54 1998 Richard Henderson <rth@cygnus.com>
2242
2243 * elf-bfd.h (struct elf_backend_data): Add got_ & plt_header_size.
2244 * elf32-i386.c (elf_backend_got_header_size): Define.
2245 (elf_backend_plt_header_size): Define.
2246 * elf32-m68k.c, elf32-mips.c, elf32-ppc.c: Likewise.
2247 * elf32-sparc.c, elf64-alpha.c, elf64-sparc.c: Likewise.
2248 * elfxx-target.h: Provide a default of zero.
2249 * elflink.c (_bfd_elf_create_got_section): Use got_header_size.
2250 * elflink.h (elf_gc_common_finalize_got_offsets): Likewise.
2251
2252 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't remove a PLT
2253 entry from an executable, even if the plt refcount goes to 0.
2254
2255Mon Jul 20 12:47:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2256
2257 * aoutx.h (NAME(aout,find_nearest_line)): Also remember the
2258 directory name at the line number.
2259
2260 * elf.c (_bfd_elf_find_nearest_line): Also consider symbols
2261 with an unspecified type.
2262
2263Wed Jul 15 11:20:01 1998 Ian Lance Taylor <ian@cygnus.com>
2264
2265 * sunos.c: Add undef of valid to avoid problem on SunOS.
2266
2267Tue Jul 14 15:30:59 1998 Richard Henderson <rth@cygnus.com>
2268
2269 * config.bfd (i?86-pc-beos{pe,elf,}*): Recognize.
2270
2271Tue Jul 14 11:22:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2272
2273 * elf32-m68k.c (elf_m68k_check_relocs): Also reference count
2274 R_68K_PCxx and R_68K_xx relocations. Make sure that
2275 ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference.
2276 (elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and
2277 R_68K_xx relocations.
2278 (elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol
2279 that has no plt entry.
2280 (elf_m68k_relocate_section): Ignore the plt offset in a static
2281 link.
2282 * elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for
2283 an ignored symbol.
2284 (elf_gc_common_finalize_got_offsets): Set the got offsets also in
2285 a static link.
2286
2287 * elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc
2288 types.
2289 (howto_table, reloc_map): Add entries for them.
2290 (elf_m68k_check_relocs): Handle them. Implement reference
2291 counting for got and plt entries.
2292 (elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions.
2293 (elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt
2294 symbols.
2295 (rtype_to_howto_rel, elf_info_to_howto_rel): Delete.
2296 (elf_m68k_relocate_section): Handle the new reloc types.
2297 (bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook,
2298 elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define.
2299 * elflink.h (elf_link_add_object_symbols): When creating an
2300 indirect reference for symbol versioning also copy the plt
2301 offset.
2302 (elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT
2303 flag also reset the plt offset.
2304 (elf_link_assign_sym_version): Likewise.
2305 (elf_gc_common_finalize_got_offsets): Increment the got offset by
2306 the size of the entry in bytes.
2307 (elf_gc_allocate_got_offsets): Likewise.
2308
2309Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com>
2310
2311 * elflink.h (elf_gc_sections): Return true rather than falling off
2312 the bottom.
2313
2314 * coffgen.c (bfd_coff_set_symbol_class): Call bfd_alloc, not
2315 xmalloc.
2316
2317Mon Jul 13 11:06:31 1998 Nick Clifton <nickc@cygnus.com>
2318
2319 * coff-arm.c: Supress definition of TARGET_UNDERSCORE and add a
2320 comment describing when it should be enabled.
2321 Changed definition of USER_LABEL_PREFIX to "", to fall into line
2322 with GCC sources.
2323
2324Mon Jul 13 13:06:54 1998 Ian Lance Taylor <ian@cygnus.com>
2325
2326 * ieee.c (ieee_slurp_external_symbols): Handle call optimization
2327 information ATN records.
2328
2329Fri Jul 10 16:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
2330
2331 * ieee.c (ieee_slurp_external_symbols): Select an appropriate
2332 section for an absolute symbol in a fully linked file. Based on
2333 patch from Christian Holland <CHolland@de.lucent.com>.
2334
2335Wed Jul 8 11:29:56 1998 Manfred Hollstein <manfred@s-direktnet.de>
2336
2337 * coff-m88k.c (m88k_special_reloc): Don't lose the information
2338 that a symbol is undefined.
2339
2340Tue Jul 7 21:47:02 1998 Jeffrey A Law (law@cygnus.com)
2341
2342 * som.c (som_bfd_gc_sections): Define.
2343
2344Mon Jul 6 11:35:50 1998 Nick Clifton <nickc@cygnus.com>
2345
2346 * coff-arm.c (aoutarm_std_reloc_howto): Do not complain about
2347 overflows in ARM_26D patches, since they have already been
2348 implmented. Patch submitted by Dr. R.J. Black <rjb@dcs.gla.ac.uk>
2349
2350Sat Jul 4 12:25:36 1998 Ian Lance Taylor <ian@cygnus.com>
2351
2352 * coffcode.h (coff_write_object_contents): If we have any long
2353 section names, call coff_write_symbols even if there are no
2354 symbols.
2355
2356Fri Jul 3 13:11:35 1998 Ian Lance Taylor <ian@cygnus.com>
2357
2358 * elf.c (copy_private_bfd_data): Only set phdr_included once for a
2359 PT_LOAD segment, rather than only setting it once for the entire
2360 file.
2361
2362 * elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA,
2363 rather than ignoring every phdr with a p_paddr of 0, ignore all
2364 the phdrs if they all have a p_paddr of 0.
2365
2366 * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr
2367 section was discarded from the link.
2368
2369Fri Jul 3 14:39:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2370
2371 * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number.
2372
2373Fri Jul 3 14:35:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2374
2375 * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with
2376 floating point operations.
2377
2378Thu Jul 2 18:37:25 1998 Ian Lance Taylor <ian@cygnus.com>
2379
2380 * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global
2381 function symbols.
2382
2383Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de>
2384
2385 Merge of vax/vms (read-only) support
2386 * configure.com: Support Vax target.
2387 * makefile.vms: Support Vax target.
2388 * vms.h: Renamed from evax.h, merged vax/vms (read-only) support.
2389 * vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only)
2390 support.
2391 * vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only)
2392 support.
2393 * vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only)
2394 support.
2395 * vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only)
2396 support.
2397 * vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only)
2398 support.
2399 * libbfd.c (real_read): Use unbuffered read on VMS/Vax.
2400 * targets.c (bfd_target_ovax_flavour): New flavour.
2401 (vms_alpha_vec): Renamed from evax_alpha_vec.
2402 (vms_vax_vec): New.
2403 (target_vector): Update accordingly.
2404 * config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not
2405 evax_alpha_vec.
2406 (vax*-*-*vms*): New target.
2407 * Makefile.am: Update for renamed files. Rebuild dependencies.
2408 * bfd-in2.h: Rebuild.
2409 * configure.in, Makefile.in, aclocal.m4: Rebuild.
2410
2411Thu Jul 2 13:31:55 1998 Ian Lance Taylor <ian@cygnus.com>
2412
2413 Based on patch from Matt Semersky <matts@scd.hp.com>:
2414 * linker.c (_bfd_generic_final_link): Force a trailing NULL
2415 pointer on abfd->outsymbols.
2416 (generic_add_output_symbol): Handle NULL sym parameter.
2417
2418Wed Jul 1 17:05:53 1998 Nick Clifton <nickc@cygnus.com>
2419
2420 * elf.c (copy_private_bfd_data): Add support for changing VMA or
2421 LMA of sections.
2422
2423Wed Jul 1 16:58:50 1998 Ian Lance Taylor <ian@cygnus.com>
2424
2425 * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons
2426 when handling 32 bit immediate relocs.
2427 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
2428
2429Tue Jun 30 09:55:03 1998 Jeffrey A Law (law@cygnus.com)
2430
2431 * section.c (STD_SECTION): Account for recently added gc_mark
2432 field in struct asection.
2433
2434 * elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function.
2435 (bfd_elf32_bfd_merge_private_bfd_data): Define.
2436
2437Thu Jun 25 18:31:41 1998 Richard Henderson <rth@cygnus.com>
2438
2439 ELF Section-level Garbage Collection:
2440 * bfd.c (bfd_gc_sections): New.
2441 * aout-adobe.c: Hook to default implementation.
2442 * aout-target.h, aout-tic30.c, binary.c, bout.c: Likewise.
2443 * coff-alpha.c, coff-mips.c, coff-rs6000.c, coffcode.h: Likewise.
2444 * evax-alpha.c, i386msdos.c, i386os9k.c, ieee.c: Likewise.
2445 * ihex.c, nlm-target.h, oasys.c, ppcboot.c, srec.c: Likewise.
2446 * tekhex.c, versados.c: Likewise.
2447 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): New.
2448 * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_gc_sections.
2449
2450 * reloc.c (BFD_RELOC_VTABLE_INHERIT, BFD_RELOC_VTABLE_ENTRY): New.
2451 (bfd_generic_gc_sections): New.
2452 * section.c (SEC_KEEP): New.
2453 (asection): Add gc_mark member.
2454
2455 * elfcode.h (elf_gc*): New name remappings.
2456 * elflink.h (elf_link_input_bfd): Don't set contents on stabs
2457 sections to be excluded.
2458 (elf_gc_mark, elf_gc_sweep, elf_gc_sweep_symbol): New.
2459 (elf_gc_propogate_vtable_entries_used): New.
2460 (elf_gc_smash_unused_vtentry_relocs): New.
2461 (elf_gc_sections, elf_gc_record_vtinherit, elf_gc_record_vtentry): New.
2462 (elf_gc_common_finalize_got_offsets): New.
2463 (elf_gc_allocate_got_offsets, elf_gc_common_final_link): New.
2464 * elfxx-target.h: Add and default gc hooks.
2465
2466 * elf-bfd.h (struct elf_link_hash_entry): Swap got_offset/plt_offset
2467 for unions.
2468 (struct elf_obj_tdata): Likewise for local_got_offsets.
2469 * elf.c, elf-i386.c, elf32-m68k.c, elf32-mips.c: Update all uses.
2470 * elf32-ppc.c, elf32-sparc.c, elf64-alpha.c: Likewise.
2471 * elf64-sparc.c, elflink.h: Likewise.
2472
2473 * elf-bfd.h (struct elf_link_hash_entry): Add vtable members.
2474 (ELF_LINK_HASH_MARK): Define.
2475 (struct elf_backend_data): Add GC hooks.
2476 * elf.c (_bfd_elf_link_hash_newfunc): Zero vtable members.
2477
2478 * elf-m10300.c (mn10300_elf_check_relocs): New.
2479 (mn10300_elf_gc_mark_hook): New.
2480 (R_MN10300_GNU_VTINHERIT, R_MN10300_GNU_VTENTRY): New.
2481 (elf_mn10300_howto, mn10300_reloc_map): Handle them.
2482 (mn10300_elf_final_link_relocate): Likewise.
2483 (mn10300_elf_relocate_section): Likewise.
2484 (elf_backend_can_gc_sections): Define.
2485 * elf32-mips.c (R_MIPS_GNU_VTINHERIT, R_MIPS_GNU_VTENTRY): New.
2486 (elf_mips_gnu_vtinherit_howto, elf_mips_gnu_vtentry_howto): New.
2487 (bfd_elf32_bfd_reloc_type_lookup): Handle them.
2488 (mips_info_to_howto_rel): Likewise.
2489 (mips_elf_relocate_section): Likewise.
2490 (mips_elf_check_relocs): Likewise.
2491 (mips_elf_gc_mark_hook, mips_elf_gc_sweep_hook): New.
2492 (elf_backend_can_gc_sections): Define.
2493 * elf32-ppc.c (R_PPC_GNU_VTINHERIT, R_PPC_GNU_VTENTRY): New.
2494 (ppc_elf_howto_raw): Handle them.
2495 (ppc_elf_reloc_type_lookup): Likewise.
2496 (ppc_elf_relocate_section): Likewise.
2497 (ppc_elf_check_relocs): Reference count .got and .plt entires.
2498 Handle new vtable relocs.
2499 (ppc_elf_adjust_dynamic_symbol): Recognize unused .plt entries.
2500 (ppc_elf_gc_mark_hook, ppc_elf_gc_sweep_hook): New.
2501 (elf_backend_can_gc_sections): Define.
2502
2503Fri Jun 26 10:48:23 1998 Jeffrey A Law (law@cygnus.com)
2504
2505 * archures.c (bfd_mach_mn10300): Define.
2506 * elf-m10300.c: Include elf/mn10300.h
2507 (elf_mn10300_mach): New function.
2508 (_bfd_mn10300_elf_final_write_processing): Likewise.
2509 (_bfd_mn10300_elf_object_p): Likewise.
2510 (elf_backendfinal_write_processing): Define.
2511 (elf_backend_object_p): Likewise.
2512
2513Thu Jun 25 18:31:08 1998 Nick Clifton <nickc@cygnus.com>
2514
2515 * elf32-v850.c (v850_elf_perform_relocation): Fix HI16_S
2516 relocation.
2517
2518Wed Jun 24 17:17:57 1998 Ian Lance Taylor <ian@cygnus.com>
2519
2520 * elflink.h (elf_bfd_final_link): Loop over input_bfds using the
2521 link_next field, not the next field.
2522
2523Sun Jun 21 19:38:39 1998 Ian Lance Taylor <ian@cygnus.com>
2524
2525 * elf.c (map_sections_to_segments): Check the section address
2526 against the phdr size both with and without a modulo of
2527 maxpagesize.
2528
2529Fri Jun 19 17:08:18 1998 Ian Lance Taylor <ian@cygnus.com>
2530
2531 * elf32-mips.c (mips_elf_size_dynamic_sections): Only strip a
2532 linker created empty input section if the output section has the
2533 same name.
2534
2535 * elflink.h (elf_link_output_extsym): Print an error message if
2536 _bfd_elf_section_from_bfd_section fails.
2537
2538 * elf.c (_bfd_elf_section_from_bfd_section): Call bfd_set_error on
2539 failure.
2540
2541Tue Jun 16 11:55:55 1998 Ian Lance Taylor <ian@cygnus.com>
2542
2543 * elf.c (copy_private_bfd_data): Improve handling of Solaris
2544 native linker output. Avoid putting an empty section in more than
2545 one segment.
2546
2547Fri Jun 12 13:30:17 1998 Tom Tromey <tromey@cygnus.com>
2548
2549 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
2550 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
2551
2552Fri Jun 12 13:34:02 1998 Doug Evans <devans@canuck.cygnus.com>
2553
2554 * elf.c (swap_out_syms): New arg relocatable_p.
2555 Don't add section VMA to symbols for relocatable output.
2556 (_bfd_elf_compute_section_file_positions): Update call to
2557 swap_out_syms.
2558
2559Mon Jun 8 15:20:57 1998 Nick Clifton <nickc@cygnus.com>
2560
2561 * elf32-v850.c (v850_elf_perform_relocation): Make comparisons
2562 against 'addend' be signed rather than unsigned.
2563
2564Sat Jun 6 00:31:21 1998 Nick Clifton <nickc@cygnus.com>
2565
2566 * elf32-m32r.c: Add prototyps for static functions.
2567
2568 * coff-arm.c: Add prototypes for static functions.
2569
2570Fri Jun 5 17:21:51 1998 Nick Clifton <nickc@cygnus.com>
2571
2572 * elf.c (elf_sort_sections): Sort by LMA first then VMA, since the
2573 LMA is used to order sections in a segment.
2574
2575 * elf32-v850.c: Add prototypes for static functions.
2576 Change type of addend parameter to bfd_vma in various functions.
2577
2578Fri Jun 5 18:09:58 1998 Ian Lance Taylor <ian@cygnus.com>
2579
2580 * aoutx.h (howto_table_ext): Change RELOC_BASE13 to use
2581 complain_overflow_signed instead of complain_overflow_bitfield.
2582
2583Fri Jun 5 15:11:11 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2584
2585 * elf.c (elf_map_symbols): Don't add section VMA to symbol value
2586 when comparing against 0.
2587
2588Wed Jun 3 17:52:49 1998 Ian Lance Taylor <ian@cygnus.com>
2589
2590 * Makefile.am (config.status): New target.
2591 * Makefile.in: Rebuild.
2592
2593Wed Jun 3 12:18:24 1998 Stan Cox <scox@equinox.cygnus.com>
2594
2595 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Give an
2596 error if previous object endianness doesn't match current object.
2597
2598Tue Jun 2 17:50:59 1998 Nick Clifton <nickc@cygnus.com>
2599
2600 * elf32-v850.c (v850_elf_print_private_bfd_data): Call
2601 _bfd_elf_print_private)bfd_data ().
2602
2603Tue Jun 2 15:29:35 1998 Ian Lance Taylor <ian@cygnus.com>
2604
2605 * elflink.h (elf_merge_symbol): Don't always set type_change_ok
2606 and size_change_ok.
2607 (elf_link_add_object_symbols): Set type_change_ok and
2608 size_change_ok before calling elf_merge_symbol.
2609
2610 * elf32-mips.c (mips_elf_relocate_section): If we issue an
2611 undefined symbol error, don't also issue an overflow error.
2612
2613Tue Jun 2 13:51:00 1998 Geoff Keating <geoffk@ozemail.com.au>
2614
2615 * elf32-ppc.c (ppc_elf_relocate_section): The target of an
2616 R_PPC_LOCAL24PC relocation should be local; if not, print an error
2617 message instead of crashing.
2618
2619Mon Jun 1 18:23:12 1998 Yuli Barcohen <yuli.barcohen@telrad.co.il>
2620
2621 * archures.c (bfd_mach_cpu32): Define.
2622 (bfd_default_scan): Add case for 68060. Fix 68332 case to use
2623 bfd_mach_cpu32.
2624 * cpu-m68k.c (arch_info_struct): Add m68k:cpu32.
2625 * ieee.c: Include <ctype.h>.
2626 (ieee_object_p): Parse out process ID string to make it more
2627 likely to be acceptable for bfd_scan_arch.
2628 * bfd-in2.h: Rebuild.
2629
2630Mon Jun 1 11:12:02 1998 Nick Clifton <nickc@cygnus.com>
2631
2632 * elf32-m32r.c (m32r_elf_print_private_bfd_data): Also call
2633 _bfd_elf_print_private_bfd_data() so that the program header will
2634 be displayed.
2635
2636Mon Jun 1 12:14:28 1998 Ian Lance Taylor <ian@cygnus.com>
2637
2638 * peicode.h (coff_swap_sym_in): Check for C_SECTION rather than
2639 0x68. Reindent. Add some comments.
2640
2641Fri May 29 09:58:08 1998 Nick Clifton <nickc@cygnus.com>
2642
2643 * elf.c (copy_private_bfd_data): Adjust physical address of
2644 segment in output BFD to contain LMAs of its sections.
2645
2646Tue May 26 19:37:47 1998 Stan Cox <scox@equinox.cygnus.com>
2647
2648 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
2649 elf32_sparc_relocate_section): Added R_SPARC_32LE for little
2650 endian data 32 bit relocations.
2651 (elf32_sparc_merge_private_bfd_data): Check if linking little
2652 endian objects with big endian objects.
2653 (elf32_sparc_object_p): Set bfd_mach_sparc_sparclite_le.
2654 (elf32_sparc_final_write_processing): Set EF_SPARC_LEDATA in e_flags.
2655 * libbfd.h (bfd_reloc_code_real_names): Added BFD_RELOC_SPARC_32LE.
2656 * reloc.c: Same.
2657 * cpu-sparc.c (arch_info_struct): Added sparc:sparclite_le
2658 * archures.c (bfd_mach_sparc_sparclite_le): New.
2659 * bfd-in2.h (BFD_RELOC_SPARC_32LE, bfd_mach_sparc_sparclite_le): New.
2660
2661Thu May 21 16:59:28 1998 Nick Clifton <nickc@cygnus.com>
2662
2663 * peicode.h (add_data_entry): Fix precedence of operators in if ()
2664 statement.
2665
2666Tue May 19 18:41:19 1998 Ian Lance Taylor <ian@cygnus.com>
2667
2668 * bfd-in.h: Move over patch to bfd-in2.h.
2669
2670 * reloc.c (bfd_check_overflow): Add casts before shifts which may
2671 not fit in 32 bits.
2672 (_bfd_relocate_contents): Likewise.
2673
2674Mon May 18 14:44:15 1998 Nick Clifton <nickc@cygnus.com>
2675
2676 * peicode.h (add_data_entry): If the section has no private data
2677 then do not create a Data Dictionary entry for it.
2678
2679Mon May 18 00:09:28 1998 Richard Henderson <rth@cygnus.com>
2680
2681 * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes.
2682 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots,
2683 elf64_alpha_size_got_sections): Rewrite, handling multiple got
2684 subsections during relaxation more correctly.
2685
2686Thu May 14 14:22:58 1998 Nick Clifton <nickc@cygnus.com>
2687
2688 * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class ().
2689 Add extra argument to bfd_arm_process_before_allocation ().
2690 * bfd-in.h: Reflect changes made in bfd-in2.h.
2691 * coffgen.c (bfd_coff_set_symbol_class): New function. Set the
2692 coff class of a BFD symbol.
2693 * coff-arm.c: Add support for interworking between Thumb code and
2694 non-interworking aware ARM code.
2695
2696Sun May 10 22:33:59 1998 Jeffrey A Law (law@cygnus.com)
2697
2698 * po/Make-in (install-info): New target.
2699
2700Thu May 7 17:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
2701
2702 * filemode.c: Remove; not used.
2703
2704 If sysdep.h includes a header file, don't include it again:
2705 * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or
2706 <errno.h>.
2707 * aoutx.h: Don't include <string.h>. Use "sysdep.h" rather than
2708 <sysdep.h>.
2709 * archive.c: Don't include <string.h> or <errno.h>.
2710 * evax-alpha.c; Don't include <stdio.h>.
2711 * evax-egsd.c: Likewise.
2712 * evax-etir.c: Likewise.
2713 * evax-misc.c: Likewise.
2714 * evax-emh.c: Likewise. Also, don't include <sys/types.h>.
2715 * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or
2716 <errno.h>.
2717 * hpux-core.c: Likewise.
2718 * netbsd-core.c: Likewise.
2719 * som.c: Likewise.
2720 * libbfd.c: Don't include <sys/types.h>.
2721 * nlmcode.h: Don't include <string.h>.
2722 * osf-core.c: Don't include <string.h> or <stdio.h>.
2723 * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>,
2724 <errno.h>, or <unistd.h>.
2725 * trad-core.c: Don't include <stdio.h> or <sys/types.h>.
2726
2727Thu May 7 13:12:50 1998 Klaus Kaempf <kkaempf@progis.de>
2728
2729 * configure.com: If the version number can not be found in
2730 configure.in, set it to "unknown" rather than "2.8.1".
2731
2732Wed May 6 09:46:05 1998 Gavin Koch <gavin@cygnus.com>
2733
2734 * elf32-mips.c (elf_mips_mach): New.
2735 (_bfd_mips_elf_object_p): Use elf_mips_mach.
2736 (_bfd_mips_elf_final_write_processing): Use the names
2737 of machines, rather than the numbers. Set both the ARCH
2738 and MACH in e_flags. Handle a few more specific machines.
2739 (_bfd_mips_elf_merge_private_bfd_data): Merge both
2740 EF_MIPS_ARCH and EF_MIPS_MACH.
2741
2742Tue May 5 21:01:53 1998 Richard Henderson <rth@cygnus.com>
2743
2744 * syms.c (bfd_is_local_label): Revert last change.
2745 * srec.c (srec_write_symbols): Discard debugging symbols.
2746
2747Tue May 5 23:36:06 1998 Ian Lance Taylor <ian@cygnus.com>
2748
2749 * som.c: Include <ctype.h>.
2750 * som.h: Don't include sysdep.h.
2751
2752Tue May 5 18:29:24 1998 Tom Tromey <tromey@cygnus.com>
2753
2754 * libbfd.h: Rebuilt.
2755 * libbfd-in.h: Removed gettext includes and defines.
2756 * sysdep.h: Moved gettext-related includes and defines here.
2757
2758Tue May 5 16:47:54 1998 Richard Henderson <rth@cygnus.com>
2759
2760 * srec.c (srec_write_symbols): Use bfd_is_local_label rather than
2761 an ad-hoc test. Kill bogus #if 0 code.
2762 * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local.
2763
2764Mon May 4 16:10:33 1998 Ian Lance Taylor <ian@cygnus.com>
2765
2766 * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address
2767 when generating a normal executable for a symbol defined in a
2768 regular file. When copying a reloc into the output file, adjust
2769 the addend for a PC relative reloc against a global symbol.
2770
2771Mon May 4 10:08:18 1998 Tom Tromey <tromey@cygnus.com>
2772
2773 * libbfd.h: Rebuilt.
2774 * libbfd-in.h (_): Define as dgettext.
2775
2776Mon May 4 11:02:23 1998 Ian Lance Taylor <ian@cygnus.com>
2777
2778 * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma,
2779 not signed.
2780 * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS
2781 when declaring parameter types.
2782 (pe_saved_coff_bfd_copy_private_bfd_data): Likewise.
2783
2784Wed Apr 29 15:35:03 1998 Ian Lance Taylor <ian@cygnus.com>
2785
2786 * config.bfd: If we include any ELF targets in targ_defvec and/or
2787 targ_selvecs, then add the generic ELF targets to targ_selvecs.
2788 * elf32-gen.c (dummy): New static const variable.
2789 (elf_generic_info_to_howto): New static function.
2790 (elf_generic_info_to_howto_rel): New static function.
2791 (elf_info_to_howto): Define as elf_generic_info_to_howto.
2792 (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel.
2793 * elf64-gen.c: Same changes as elf32-gen.c.
2794 * elfcode.h (elf_object_p): For the generic target, ignore a
2795 failure of bfd_default_set_arch_mach. Fix indentation a bit.
2796
2797Tue Apr 28 20:05:52 1998 Ian Lance Taylor <ian@cygnus.com>
2798
2799 * configure.in (WIN32LIBADD): Add -lintl on cygwin32.
2800 * configure: Rebuild.
2801
2802Tue Apr 28 12:16:57 1998 Jason Molenda (crash@bugshack.cygnus.com)
2803
2804 * config.bfd: Update OSR5/Unixware patterns.
2805
2806Mon Apr 27 18:02:24 1998 Richard Henderson <rth@cygnus.com>
2807
2808 * elf.c (assign_file_positions_for_segments): Allow for holes
2809 between sections added by a link script.
2810
2811Mon Apr 27 11:49:55 1998 Ian Lance Taylor <ian@cygnus.com>
2812
2813 * configure.in: Change version number to 2.9.4
2814 * configure: Rebuild.
2815
2816 Based on patch from H.J. Lu <hjl@gnu.org>:
2817 * elf.c (bfd_elf_get_bfd_needed_list): New function.
2818 * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare.
2819 * bfd-in2.h: Rebuild.
2820
2821Sat Apr 25 20:07:53 1998 Richard Henderson <rth@cygnus.com>
2822
2823 * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other.
2824 Change all users.
2825
2826Sat Apr 25 18:29:07 1998 Richard Henderson <rth@cygnus.com>
2827
2828 * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members.
2829 (elf64_alpha_relax_section): Fill them in.
2830 (elf64_alpha_relax_opt_call): Implement more than a stub.
2831 (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default
2832 alignment on .scommon.
2833 (elf64_alpha_merge_gots): Merge use counts as well.
2834
2835Sat Apr 25 14:07:29 1998 Richard Henderson <rth@cygnus.com>
2836
2837 * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section
2838 for calculating a local symbol's address.
2839 (elf64_alpha_calc_got_offsets): Skip entries with 0 use count.
2840 Set the .got's cooked size as well as the raw size.
2841
2842Fri Apr 24 09:16:00 1998 Nick Clifton <nickc@cygnus.com>
2843
2844 * elf32-v850.c (v850_elf_print_private_bfd_data): Add
2845 internationalisation of printed information.
2846
2847 * coff-arm.c (coff_arm_print_private_bfd_data): Add
2848 internationalisation of printed information.
2849
2850Fri Apr 24 12:09:18 1998 Ian Lance Taylor <ian@cygnus.com>
2851
2852 * syms.c (struct indexentry): Change directory_name, file_name,
2853 and function_name fields to char *.
2854 (struct stab_find_info): Change cached_file_name field to char *.
2855
2856Thu Apr 23 08:13:04 1998 Nick Clifton <nickc@cygnus.com>
2857
2858 * peicode.h (dir_names): Add missing N_() macros to dir_names array.
2859
2860Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
2861
2862 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
2863
2864Wed Apr 22 17:48:48 1998 Ian Lance Taylor <ian@cygnus.com>
2865
2866 * Makefile.am (install-data-local): Make $(includedir).
2867 * Makefile.in: Rebuild.
2868
2869Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
2870
2871 * libbfd-in.h: Use `gettext' and not `dgettext' for now.
2872
2873Wed Apr 22 12:53:40 1998 Ian Lance Taylor <ian@cygnus.com>
2874
2875 * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl.
2876 * Makefile.in: Rebuild.
2877
2878 * bfd-in2.h: Rebuild for Nick's changes.
2879
2880Tue Apr 21 23:11:51 1998 Richard Henderson <rth@cygnus.com>
2881
2882 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last
2883 change wrt length == max_namelen.
2884
2885Tue Apr 21 21:19:36 1998 Tom Tromey <tromey@scribbles.cygnus.com>
2886
2887 * Many files: Added gettext invocations around user-visible
2888 strings.
2889 * libbfd-in.h: Added gettext includes and defines.
2890 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
2891 HAVE_LC_MESSAGES): Define.
2892 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
2893 po/Makefile.
2894 * Makefile.am (SUBDIRS): Added po.
2895 (POTFILES): New macro.
2896 (po/POTFILES.in): New target.
2897 (SOURCE_HFILES): New macro.
2898 (HFILES): Use it.
2899 * po/Make-in, po/POTFILES.in, po/bfd.pot: New files.
2900
2901Tue Apr 21 13:38:18 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
2902
2903 * elfcore.h (bfd_prstatus): Copy core_prstatus from the first
2904 NT_PRSTATUS note section encountered, it contains the status of
2905 the currently executing thread when the core file was written.
2906
2907Tue Apr 21 10:00:12 1998 Nick Clifton <nickc@cygnus.com>
2908
2909 * libcoff.h: Add extra parameter to
2910 bfd_coff_link_output_has_begun overrideable function.
2911 * cofflink.c: Pass extra parameter to
2912 bfd_coff_link_output_has_begun function.
2913 * bfd-in.h: Add prototypes for exported ARM interworking
2914 functions.
2915 * peicode.h: ARM specific code reorganised to conform to BFD
2916 coding conventions.
2917 * coffcode.h: ARM specific code reorganised to conform to BFD
2918 coding conventions.
2919 * coff-arm.c: Code reorganised to conform to the BFD coding
2920 conventions. Global variables have been moved into an ARM
2921 specific hash table structure and a new function:
2922 bfd_arm_get_bfd_for_interworking() has been created which is
2923 called from the linker scripts.
2924
2925Tue Apr 21 00:11:51 1998 Richard Henderson <rth@cygnus.com>
2926
2927 * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test.
2928
2929 * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from
2930 elf64_alpha_relax_find_reloc_ofs. Changed all callers.
2931 (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss.
2932 (elf64_alpha_size_got_sections): Don't merge .got sections twice.
2933
2934Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
2935
2936 * config.bfd: Added sparc86x support.
2937
2938Fri Apr 17 22:29:04 1998 Ian Lance Taylor <ian@cygnus.com>
2939
2940 * elf32-mips.c (mips_elf_relocate_section): Do not complain about
2941 an out of range pc-relative jump/call to an undefined weak symbol.
2942
2943Thu Apr 16 13:49:00 1998 Richard Henderson <rth@cygnus.com>
2944
2945 * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp
2946 comparisons signed.
2947
2948Thu Apr 16 11:43:33 1998 Ian Lance Taylor <ian@cygnus.com>
2949
2950 * archive.c (bfd_generic_archive_p): If a slurp subroutine returns
2951 an error other than bfd_error_system_call, set the error to
2952 bfd_error_wrong_format.
2953
2954 * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add
2955 bfd_elf32_powerpcle_vec.
2956
2957 * elf.c (copy_private_bfd_data): If all the p_paddr fields in the
2958 program segments are zero, don't set p_paddr_valid.
2959
2960Wed Apr 15 22:15:16 1998 Richard Henderson <rth@cygnus.com>
2961
2962 * elf64-alpha.c: Initial implementation of relaxation --
2963 (struct alpha_elf_link_hash_entry): Add use_count member.
2964 (elf64_alpha_check_relocs): Initialize and increment it.
2965 (elf64_alpha_can_merge_gots): Check it when considering merging.
2966 (elf64_alpha_merge_gots): Drop entries with zero use.
2967 (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
2968 (elf64_alpha_always_size_sections): Split out got sizing ...
2969 (elf64_alpha_size_got_sections): ... here. New function.
2970 (elf64_alpha_relax_find_reloc_ofs): New function.
2971 (elf64_alpha_relax_with_lituse): Likewise.
2972 (elf64_alpha_relax_without_lituse): Likewise.
2973 (elf64_alpha_relax_opt_call): Likewise.
2974 (elf64_alpha_relax_section): Likewise.
2975 (elf64_alpha_add_symbol_hook): Likewise.
2976 (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16.
2977 (elf64_alpha_relocate_section): Likewise.
2978 (bfd_elf64_bfd_relax_section): Define.
2979 (elf_backend_add_symbol_hook): Likewise.
2980
2981Wed Apr 15 16:08:46 1998 Richard Henderson <rth@cygnus.com>
2982
2983 * elf.c (prep_headers): Use new EM_SPARCV9 symbol.
2984 * elf64-sparc.c (ELF_MACHINE_CODE): Likewise.
2985 (ELF_MACHINE_ALT1): New. Set to EM_OLD_SPARC64.
2986
2987Wed Apr 15 11:34:33 1998 Ian Lance Taylor <ian@cygnus.com>
2988
2989 * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32.
2990 * configure: Rebuild.
2991
2992Mon Apr 13 16:46:27 1998 Ian Lance Taylor <ian@cygnus.com>
2993
2994 * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@.
2995 (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@.
2996 * configure.in: Define and substitute WIN32LDFLAGS and
2997 WIN32LIBADD.
2998 * aclocal.m4: Rebuild with new libtool.
2999 * configure, Makefile.in: Rebuild.
3000
3001Fri Apr 10 13:44:27 1998 Ian Lance Taylor <ian@cygnus.com>
3002
3003 * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol
3004 before any other symbols in the same section.
3005
3006Wed Apr 8 14:50:23 1998 Michael Meissner <meissner@cygnus.com>
3007
3008 * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF
3009 systems.
3010
3011Tue Apr 7 16:25:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
3012
3013 * dwarf2.c (comp_unit): Move it earlier in the source. Add
3014 addr_size.
3015 (read_address): Replace 'bdf*' argument with 'comp_unit*' argument.
3016 Use addr_size for address size, rather than sizeof(bfd_vma).
3017 (read_attribute): Replace bdf* argument with 'comp_unit*' argument.
3018 Fix call to read_address.
3019 (decode_line_info): Replace bdf* argument with 'comp_unit*' argument.
3020 Scrap other unneeded arguments. Fix call to read_address.
3021 (scan_unit_for_functions): Fix call to read_attribute.
3022 (parse_comp_unit): We now handle more values for addr_size.
3023 Set addr_size in unit. Fix call to read_attribute and
3024 decode_line_info.
3025
3026Tue Apr 7 15:44:47 1998 Gavin Romig-Koch <gavin@cygnus.com>
3027
3028 * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null.
3029
3030Tue Apr 7 12:35:18 1998 Ian Lance Taylor <ian@cygnus.com>
3031
3032 * archures.c (bfd_default_scan): Add m68k cases back to default
3033 switch, reverting patch of March 25, since IEEE support depends
3034 upon them.
3035
3036Mon Apr 6 14:06:40 1998 Ian Lance Taylor <ian@cygnus.com>
3037
3038 * Makefile.am (diststuff): New target.
3039 * Makefile.in: Rebuild.
3040
3041Sun Apr 5 16:21:44 1998 Jeffrey A Law (law@cygnus.com)
3042
3043 * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of
3044 som_offset when we have an extended name table.
3045
3046Sun Apr 5 16:04:39 1998 H.J. Lu <hjl@gnu.org>
3047
3048 * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before
3049 trying to copy it.
3050 * Makefile.in: Rebuild.
3051
3052Fri Apr 3 11:09:42 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3053
3054 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section
3055 symbols when creating a shared library.
3056 (elf_m68k_adjust_dynindx): New function, used by above code.
3057 (elf_m68k_finish_dynamic_sections): Initialize the section
3058 symbols.
3059 (elf_m68k_relocate_section): Change abort to BFD_ASSERT.
3060
3061Wed Apr 1 16:04:02 1998 Nick Clifton <nickc@cygnus.com>
3062
3063 * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant
3064 value 11.
3065
3066Wed Apr 1 13:36:58 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3067
3068 * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix
3069 assertion.
3070
3071Tue Mar 31 00:12:12 1998 Jeffrey A Law (law@cygnus.com)
3072
3073 * elf-m10300.c (mn10300_elf_relax_section): Correctly handle
3074 absolute symbols.
3075
3076Mon Mar 30 12:46:15 1998 Ian Lance Taylor <ian@cygnus.com>
3077
3078 * configure.in: Set version to 2.9.1.
3079 * configure: Rebuild.
3080
3081 * Branched binutils 2.9.
3082
3083Mon Mar 30 12:20:50 1998 Brent Baccala <baccala@freesoft.org>
3084
3085 * syms.c (ENABLE_CACHING): Define.
3086 (struct indexentry): Define.
3087 (struct stab_cache): Remove.
3088 (cmpindexentry): New static function.
3089 (struct stab_find_info): Add new fields: indextable,
3090 indextablesize, cached_indexentry, cached_offset, cached_stab, and
3091 cached_file_name. Remove fields: file_cache, function_cache, and
3092 line_cache.
3093 (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted
3094 index table and search it.
3095
3096Mon Mar 30 10:39:34 1998 Ian Lance Taylor <ian@cygnus.com>
3097
3098 * elf.c (_bfd_elf_copy_private_section_data): Call
3099 copy_private_bfd_data once we've seen the last SEC_ALLOC section.
3100
3101 * cpu-mips.c: Remove trailing comma at end of enumeration list.
3102
3103Sat Mar 28 16:33:02 1998 Ian Lance Taylor <ian@cygnus.com>
3104
3105 * coff-arm.c: Define all globally visible variables and functions
3106 only when COFF_WITH_PE is not defined.
3107 * configure.in (armpe_little_vec, armpe_big_vec): Add
3108 coff-arm.lo.
3109 * configure: Rebuild.
3110
3111Fri Mar 27 16:06:02 1998 Ian Lance Taylor <ian@cygnus.com>
3112
3113 Fix some gcc -Wall warnings:
3114 * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings.
3115 * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise.
3116 * archures.c (bfd_default_scan): Likewise.
3117 * bfd.c (bfd_scan_vma): Likewise.
3118 * binary.c (mangle_name): Likewise
3119 * coff-arm.c (aoutarm_fix_pcrel_26): Likewise.
3120 * coff-sh.c (sh_relocate_section): Likewise.
3121 * coff-stgo32.c (create_go32_stub): Likewise.
3122 * coffcode.h (coff_slurp_line_table): Likewise.
3123 * ecoff.c (_bfd_ecoff_write_armap): Likewise.
3124 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
3125 (assign_file_positions_for_segments): Likewise.
3126 * elf32-mips.c (mips_elf_relocate_section): Likewise.
3127 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
3128 * oasys.c (oasys_write_sections): Likewise.
3129 * ppcboot.c (ppcboot_object_p): Likewise.
3130 (mangle_name): Likewise.
3131 * riscix.c (riscix_fix_pcrel_26): Likewise.
3132 * srec.c (srec_scan): Likewise.
3133 * stabs.c (_bfd_write_section_stabs): Likewise.
3134 * sunos.c (sunos_add_dynamic_symbols): Likewise.
3135 * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to
3136 switch. Declare parameters for function pointers.
3137 * archures.c (bfd_default_scan): Add braces to avoid ambiguous if
3138 warning.
3139 * elf.c (elf_sort_sections): Likewise.
3140 * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation.
3141 Add default cases to switches.
3142 (coff_arm_relocate_section): Remove unused local variables.
3143 Always set rstat.
3144 (coff_arm_bfd_set_private_flags): Change flag variable to type
3145 flagword.
3146 * coff-mips.c (mips_relocate_section): Initialize use_lo.
3147 * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int.
3148 (dump_toc): Change cat to const, and initialize it.
3149 * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff.
3150 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
3151 (sh_elf_relocate_section): Initialize r_symndx.
3152 * coffcode.h (coff_compute_section_file_positions): Only declare
3153 old_sofar if ALIGN_SECTIONS_IN_FILE.
3154 (coff_write_object_contents): Initialize csym.
3155 * coffgen.c (coff_pointerize_aux): Make type and class unsigned.
3156 * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to
3157 switch.
3158 * dwarf2.c: Include libiberty.h.
3159 (read_2_signed_bytes, read_4_signed_bytes): Comment out.
3160 (decode_line_info): Remove unused local variables.
3161 * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise.
3162 (m32r_elf_relocate_section): Likewise.
3163 * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise.
3164 (v850_elf_reloc): Likewise.
3165 * elf-bfd.h (elf_linker_section_t): Make alignment unsigned.
3166 (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned.
3167 * elf.c (assign_file_positions_for_segments): Always set adjust.
3168 * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr. Fully
3169 parenthesize expression.
3170 * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h.
3171 (m32r_elf_object_p): Return a value.
3172 (m32r_elf_print_private_bfd_data): Change fprintf format string.
3173 * elf32-mips.c (mips_elf_final_link): Initialize last.
3174 (mips_elf_finish_dynamic_sections): Initialize last and dindx.
3175 * elf32-v850.c (v850_elf_object_p): Return a value.
3176 (v850_elf_print_private_bfd_data): Change fprintf format string.
3177 * elfcode.h (elf_slurp_symbol_table): Change symcount and i to
3178 unsigned long.
3179 * elflink.h (elf_link_add_object_symbols): Change vernum to
3180 unsigned int, and initialize it. Change fprintf format string.
3181 (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type
3182 when setting or comparing to soname_indx.
3183 (elf_create_pointer_linker_section): Change num_symbols to
3184 unsigned int.
3185 * libcoff-in.h (coff_data_type): Change flags to flagword.
3186 * peicode.h (pe_print_idata): Initialize idx. Change j to
3187 bfd_size_type. Initialize hint_member. Remove useless test to
3188 time_stamp.
3189 (pe_print_edata): Change num_functions and num_names in struct
3190 EDT_type to unsigned long. Remove cast. Change fprintf format
3191 string.
3192 * ppcboot.c (ppcboot_object_p): Change i to size_t.
3193 * reloc.c (bfd_get_reloc_size): Change return type to unsigned
3194 int.
3195 * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to
3196 int *. Update uses. Change j to long.
3197 * bfd-in2.h, libcoff.h: Rebuild.
3198
3199Fri Mar 27 10:10:46 1998 Catherine Moore <clm@cygnus.com>
3200
3201 * elf32-v850.c Remove definition of USE_REL.
3202 (v850_elf_info_to_howto_rela): New function.
3203 (v850_elf_perform_relocation): Renamed from
3204 v850_elf_store_addend_in_insn. Removed replace argument.
3205 (v850_elf_reloc): store the relocation in the addend field instead
3206 of the insn.
3207 (v850_elf_final_link_relocate): Now calls
3208 v850_elf_perform_relocation.
3209 (v850_elf_relocate_section): Remove code to generate REL
3210 relocations.
3211
3212Thu Mar 26 13:32:17 1998 Ian Lance Taylor <ian@cygnus.com>
3213
3214 * coffcode.h (coff_new_section_hook): Set the type and storage
3215 class in the native symbol information allocated for a new section
3216 symbol.
3217
3218Thu Mar 26 10:13:41 1998 Nick Clifton <nickc@cygnus.com>
3219
3220 * peicode.h: Chain together calls to
3221 coff_bfd_copy_private_bfd_data and
3222 coff_bfd_print_private_bfd_data.
3223
3224 * coff-arm.c: Add prototypes for
3225 coff_arm_bfd_print_private_bfd_data and
3226 coff_arm_bfd_copy_private_bfd_data.
3227
3228Wed Mar 25 15:45:55 1998 Nick Clifton <nickc@cygnus.com>
3229
3230 * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE
3231 build.
3232
3233 * peicode.h: Call arm-coff private data functions after handling
3234 pe private data.
3235
3236 * coff-arm.c: Turn statics into globals so that they can be shared
3237 both pe and pei backends.
3238
3239Wed Mar 25 15:19:38 1998 Ian Lance Taylor <ian@cygnus.com>
3240
3241 * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than
3242 plain numbers.
3243 (sunos_write_object_contents): Likewise.
3244 * aoutx.h (NAME(aout,machine_type)): Likewise.
3245 * coffcode.h (coff_set_arch_mach_hook): Likewise.
3246
3247Wed Mar 25 13:59:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3248
3249 * archures.c (bfd_mach_m68*): Add definitions for various m68k
3250 variants.
3251 (bfd_default_scan): Remove m68k special cases.
3252 * bfd-in2.h: Rebuild.
3253 * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather
3254 than plain numbers.
3255 * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
3256 * cpu-m68k.c (arch_info_struct): Likewise. Add entry for
3257 m68k:68000.
3258 (bfd_m68k_arch): Set mach field to zero to signal no explicit
3259 selection, change printable_name to just "m68k" and make that the
3260 default instead of m68k:68020.
3261
3262 * aout-tic30.c (NAME): Define this to avoid multiple definitions
3263 from aoutx.h.
3264 (MY_get_section_contents): Define as aout_32_get_section_contents
3265 rather than NAME(aout,get_section_contents).
3266
3267 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast.
3268
3269 * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha
3270 and call bfd_default_set_arch_mach to do the real work.
3271
3272Wed Mar 25 10:41:35 1998 Richard Henderson <rth@cygnus.com>
3273
3274 * bout.c (BALX): Include return register g14 as part of the insn.
3275 (BALX_MASK): New.
3276 (calljx_callback): Use it.
3277
3278Wed Mar 25 11:19:28 1998 Ian Lance Taylor <ian@cygnus.com>
3279
3280 * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma.
3281 * libbfd.h: Rebuild.
3282
3283 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change
3284 byte_count to unsigned int.
3285 (mn10300_elf_relax_section): Initialize internal_relocs. Remove
3286 unused local variables.
3287
3288 * evax-alpha.c (evax_close_and_cleanup): Remove unused local
3289 variables er and er1.
3290
3291 * cpu-v850.c: Include <ctype.h>.
3292 (scan): Case isdigit argument to unsigned char.
3293
3294 From Yan Meroth <YAN.MEROTH@st.com>:
3295 * ihex.c (ihex_scan): Add extbase variable so that getting an
3296 extended linear address record does not ignore any previous
3297 extended address.
3298 (ihex_write_object_contents): When writing out an extended linear
3299 address record, zero out any previous extended address.
3300
3301Tue Mar 24 16:09:43 1998 Manfred Hollstein <manfred@s-direktnet.de>
3302
3303 * ieee.c (do_one): Check section before dereferencing it.
3304 (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr.
3305 (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive.
3306
3307Mon Mar 23 18:51:47 1998 Joel Sherrill <joel@OARcorp.com>
3308
3309 * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF.
3310
3311Mon Mar 23 14:23:36 1998 Nick Clifton <nickc@cygnus.com>
3312
3313 * coff-arm.c: Add interworking functions to pe backends.
3314
3315Fri Mar 20 18:47:20 1998 Ian Lance Taylor <ian@cygnus.com>
3316
3317 * configure.in: Use AM_DISABLE_SHARED.
3318 * aclocal.m4, configure: Rebuild with libtool 1.2.
3319
3320Fri Mar 20 11:25:41 1998 Nick Clifton <nickc@cygnus.com>
3321
3322 * coff-arm.c (coff_arm_relocate_section): Better error messages
3323 when interowrking conflucts occur. Courtesy of Jonathan Walton
3324 and Tony Thompson.
3325 (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted
3326 relocations. Patch courtesy of Jonathan Walton and Tony
3327 Thompson.
3328
3329Fri Mar 20 02:26:43 1998 Richard Henderson <rth@cygnus.com>
3330
3331 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert
3332 part of Feb 22 change controling when to override the existing
3333 symbol with the .plt entry.
3334
3335Wed Mar 18 09:26:25 1998 Nick Clifton <nickc@cygnus.com>
3336
3337 * config.bfd (targ_cpu): Add thumb-pe target.
3338
3339 * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external
3340 functions in PE build.
3341
3342Sun Mar 8 23:37:26 1998 Stan Cox <scox@equinox.cygnus.com>
3343
3344 * config.bfd (sparclite-*-elf*): Added.
3345
3346Mon Feb 23 19:31:19 1998 Ian Lance Taylor <ian@cygnus.com>
3347
3348 * configure.in: Add elf.lo to elf shell variable.
3349 * Makefile.am (BFD_LIBS): Remove elf.lo.
3350 (BFD_LIBS_CFILES): Remove elf.c.
3351 (BFD32_BACKENDS): Add elf.lo.
3352 (BFD32_BACKENDS_CFILES): Add elf.c.
3353 * configure, Makefile.in: Rebuild.
3354
33551998-02-23 15:53 Richard Henderson <rth@cygnus.com>
3356
3357 * elf32-i386.c (elf_i386_relocate_section): A pc-relative
3358 relocation against a now-local symbol should not have a dynamic
3359 relocation.
3360
3361Mon Feb 23 16:17:08 1998 Ian Lance Taylor <ian@cygnus.com>
3362
3363 * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in
3364 COFF filehdr flags.
3365 (pe_print_private_bfd_data): Print PE flags. From Mikey
3366 <jeffdb@netzone.com>.
3367
3368Sun Feb 22 20:39:00 1998 Richard Henderson <rth@cygnus.com>
3369
3370 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create
3371 a plt entry when we can determine that we authoritatively define
3372 the symbol.
3373
3374Sun Feb 22 20:33:05 1998 Richard Henderson <rth@cygnus.com>
3375
3376 * configure.in (COREFILE selection): Remove sparc-*-linux*. They
3377 don't actually use trad-core, but a SunOS-style core file handled
3378 by gdb directly.
3379 * hosts/sparclinux.h: Remove.
3380
3381Wed Feb 18 15:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
3382
3383 * peicode.h (pe_print_idata): If there is no .idata section, look
3384 for the import tables in some other section. Make the initial
3385 label line up better with the data. Print the import address
3386 table even if there is no import name table. If the import
3387 address table holds actual addresses, print them.
3388
3389Tue Feb 17 12:58:34 1998 Ian Lance Taylor <ian@cygnus.com>
3390
3391 * libbfd.c (bfd_seek): If fseek fails, save errno around call to
3392 bfd_tell. If errno is EINVAL, set bfd_error_file_truncated, not
3393 bfd_error_system_call.
3394
3395Fri Feb 13 13:11:33 1998 Ian Lance Taylor <ian@cygnus.com>
3396
3397 * Makefile.am (AUTOMAKE_OPTIONS): Define.
3398 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
3399
3400 From H.J. Lu <hjl@gnu.org>:
3401 * Makefile.am (libbfd_la_LDFLAGS): Define.
3402 * Makefile.in: Rebuild.
3403
3404Thu Feb 12 17:31:11 1998 Ian Lance Taylor <ian@cygnus.com>
3405
3406 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3407 * netbsd.h (MACHTYPE_OK): Define.
3408 (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when
3409 calling N_SET_MACHTYPE, rather than having a switch.
3410 * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD,
3411 and M_ALPHA_NETBSD.
3412 * i386netbsd.c (MACHTYPE_OK): Don't define.
3413 (DEFAULT_MID): Define.
3414 * m68k4knetbsd.c (SEGMENT_SIZE): Don't define.
3415 (MACHTYPE_OK): Don't define.
3416 (DEFAULT_MID): Define.
3417 * m68knetbsd.c: (MACHTYPE_OK): Don't define.
3418 (DEFAULT_MID): Define.
3419 * ns32knetbsd.c (MACHTYPE_OK): Don't define.
3420 (DEFAULT_MID): Define.
3421 * sparcnetbsd.c (MACHTYPE_OK): Don't define.
3422 (DEFAULT_MID): Define.
3423
3424 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3425 * vaxnetbsd.c: New file.
3426 * netbsd-core.c: Clean up. Remove unused macros. Use netbsd
3427 rather than netbsd_core.
3428 * targets.c (vaxnetbsd_vec): Declare.
3429 (bfd_target_vector): Add vaxnetbsd_vec. If NETBSD_CORE is
3430 defined, add netbsd_core_vec.
3431 * configure.in: Set COREFILE for alpha*-*-netbsd* and
3432 powerpc-*-netbsd* to netbsd-core.lo. If COREFILE is
3433 netbsd-core.lo, set COREFLAG to -DNETBSD_CORE.
3434 * config.bfd (alpha*-*-netbsd*): New target.
3435 * Makefile.am: Rebuild dependencies.
3436 (BFD32_BACKENDS): Add vaxnetbsd.lo.
3437 (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c.
3438 * configure, Makefile.in: Rebuild.
3439
3440 * configure.host: Remove the old shared library build stuff. We
3441 now use libtool instead.
3442
3443Wed Feb 11 17:13:09 1998 Richard Henderson <rth@cygnus.com>
3444
3445 * tekhex.c (tekhex_write_object_contents): Call tekhex_init.
3446
3447Tue Feb 10 19:23:28 1998 H.J. Lu <hjl@gnu.org>
3448
3449 * configure.in: Take stab-syms.lo out of sparclinux_vec list.
3450 * configure: Rebuild.
3451
3452Tue Feb 10 15:16:38 1998 Nick Clifton <nickc@cygnus.com>
3453 * elf32-v850.c (remember_hi16s_reloc): New function.
3454 (find_remembered_hi16s_reloc): New function.
3455 (v850_elf_store_addend_in_insn): Use the above new functions to
3456 match up HI6S relocs with LO16 relocs.
3457
3458Tue Feb 10 15:01:39 1998 Ian Lance Taylor <ian@cygnus.com>
3459
3460 * configure.in: Change -linux* to -linux-gnu*.
3461 * config.bfd, configure.host: Likewise.
3462 * configure: Rebuild.
3463
3464Mon Feb 9 19:40:59 1998 Nick Clifton <nickc@cygnus.com>
3465
3466 * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another
3467 LO16/HI16S bug and improve comments about what is going on.
3468
3469Sat Feb 7 15:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
3470
3471 * configure, aclocal.m4: Rebuild with new libtool.
3472
3473Fri Feb 6 14:48:20 1998 Nick Clifton <nickc@cygnus.com>
3474
3475 * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain
3476 when merging v850 code into v850e/v850ea code. Do not initialise
3477 output flags if the input is the default architecture.
6a9d5c9a 3478
252b5132
RH
3479Fri Feb 6 11:50:22 1998 Jeffrey A Law (law@cygnus.com)
3480
3481 * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR
3482 get the size from bfd_arch_bits_per_address instead of directly
3483 from the isa.
3484
3485Thu Feb 5 14:21:34 1998 Michael Meissner <meissner@cygnus.com>
3486
3487 * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address
3488 to wrap, just return all 1's bits instead.
3489 * libbfd.h: Regenerate.
3490
3491Thu Feb 5 11:51:05 1998 Ian Lance Taylor <ian@cygnus.com>
3492
3493 * coff-i386.c (coff_pe_i386_relocate_section): New static function
3494 if COFF_WITH_PE.
3495 (coff_relocate_section): If COFF_WITH_PE, define as
3496 coff_pe_i386_relocate_section.
3497 * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE,
3498 skip empty sections, to match coff_write_object_contents.
3499
3500 * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend,
3501 rather than swapping out r_offset twice. From Luke Deller
3502 <luked@cse.unsw.edu.au>.
3503
3504Wed Feb 4 19:11:28 1998 Ian Lance Taylor <ian@cygnus.com>
3505
3506 * configure.in: Set libtool_enable_shared rather than
3507 libtool_shared. Remove diversion hack.
3508 * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild
3509 with new libtool.
3510
3511Wed Feb 4 16:10:21 1998 Brent Baccala <baccala@freesoft.org>
3512
3513 * syms.c (struct stab_cache): Define.
3514 (struct stab_find_info): Remove cached_offset, cached_stab,
3515 cached_str, and cached_stroff fields. Add file_cache,
3516 function_cache, and line_cache fields.
3517 (_bfd_stab_section_find_nearest_line): Use extensive caching to
3518 speed up searches.
3519
3520Wed Feb 4 13:34:22 1998 Ian Lance Taylor <ian@cygnus.com>
3521
3522 * peicode.h (pe_print_idata): Check for import of ordinal rather
3523 than name.
3524 (pe_print_edata): If there is no .edata section, look for the
3525 export data in some other section.
3526
3527Mon Feb 2 20:05:42 1998 Jason Molenda (crash@bugshack.cygnus.com)
3528
3529 * configure.in: Change version to 2.8.4.
3530 * configure: Regenerated.
3531
3532Mon Feb 2 17:39:39 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
3533
3534 Add tms320c30 support:
3535 * cpu-tic30.c: New file.
3536 * aout-tic30.c: New file.
3537 * coff-tic30.c: New file.
3538 * archures.c (bfd_arch_tic30): Define.
3539 (bfd_tic30_arch): Declare.
3540 (bfd_archures_list): Add bfd_tic30_arch.
3541 * targets.c (bfd_target_vector): Add tic30_aout_vec and
3542 tic30_coff_vec.
3543 * reloc.c (BFD_RELOC_TIC30_LDP): Define.
3544 * coffcode.h (coff_set_arch_mach_hook): Add tic30 case.
3545 (coff_set_flags): Likewise.
3546 * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets.
3547 * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors.
3548 * Makefile.am: Rebuild dependencies.
3549 (ALL_MACHINES): Add cpu-tic30.lo.
3550 (ALL_MACHINES_CFILES): Add cpu-tic30.c.
3551 (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo.
3552 (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c.
3553 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
3554
3555Mon Feb 2 12:25:12 1998 Nick Clifton <nickc@cygnus.com>
3556
3557 * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc
3558 to lag behind LO16 reloc by a couple of instructions.
3559
3560Mon Feb 2 14:09:46 1998 Ian Lance Taylor <ian@cygnus.com>
3561
3562 * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force
3563 make to reexamine the file timestamp.
3564 ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise.
3565
3566 * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from
3567 0x100000.
3568
3569Fri Jan 30 19:07:07 1998 Geoff Keating <geoffk@ozemail.com.au>
3570
3571 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure
3572 to create .dynsbss and .rela.sbss sections.
3573 (ppc_elf_adjust_dynamic_symbol): Put space for small data to be
3574 copied from dynamic objects into .sbss.
3575 (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't
3576 use it. Correct typo of .rela.sdata2.
3577 (ppc_elf_finish_dynamic_symbol): Generate reloc to where we
3578 put the data, which may now be in .sbss.
3579 (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss.
3580 (elf_backend_create_dynamic_sections): Define as
3581 ppc_elf_create_dynamic_sections.
3582
3583 * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs
3584 against _GLOBAL_OFFSET_TABLE_.
3585 (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in
3586 shared libraries which refer to local symbols. Make sure that the
3587 test for allocating space for a reloc in a shared object is the
3588 same as the test for emitting a reloc.
3589
3590Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
3591
3592 * config.bfd (i[3456]-*-mingw32*): New target.
3593 * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32.
3594 * aclocal.m4, configure: Rebuild.
3595
3596Wed Jan 28 13:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
3597
3598 * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we
3599 have a bfd_object.
3600
3601Tue Jan 27 21:43:55 1998 Richard Henderson <rth@cygnus.com>
3602
3603 Sparc v9 ABI compliant PLT:
3604 * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries.
3605 (plt_templates, sparc64_elf_build_plt_entry): Delete.
3606 (LARGE_PLT_THRESHOLD): New define.
3607 (GOT_RESERVED_ENTRIES): V9 ABI only uses 1.
3608 (sparc64_elf_build_plt): New function.
3609 (sparc64_elf_plt_entry_offset): Likewise.
3610 (sparc64_elf_plt_ptr_offset): Likewise.
3611 (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to
3612 contain the index for convenience. Skip the initial entries
3613 in .rela.plt.
3614 (sparc64_elf_size_dynamic_sections): Zero the allocated contents
3615 memory for the benefit of .rela.plt.
3616 (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset.
3617 (sparc64_elf_finish_dynamic_symbol): Kill template stuff. Use
3618 sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc.
3619 (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt.
3620 Call sparc64_elf_build_plt.
3621 (elf_backend_want_got_plt): No.
3622 (elf_backend_plt_readonly): No.
3623 (elf_backend_plt_alignment): 8.
3624
3625 * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab.
3626 * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it.
3627 * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it
3628 to be called.
3629
3630Tue Jan 27 21:45:15 1998 Jeffrey A Law (law@cygnus.com)
3631
3632 * archures.c (bfd_mach_mips*): Add definitions for various MIPS
3633 processors.
3634 * cpu-mips.c (arch_info_struct): Add mips variants.
3635 * bfd-in2.h: Rebuilt.
3636
3637Tue Jan 27 15:06:04 1998 Nick Clifton <nickc@cygnus.com>
3638
3639 * coff-arm.c (coff_arm_relocate_section): Preserve the contents of
3640 t2a3_b_insn.
3641
3642Tue Jan 27 12:47:27 1998 Robert Lipe <robertl@dgii.com>
3643
3644 * config.bfd (i[3456]86-sco3.2v5*): ELF now the default.
3645 (i[3456]86sco3.2v5*coff): New target.
3646
3647Mon Jan 26 15:41:30 1998 Ian Lance Taylor <ian@cygnus.com>
3648
3649 * bfd-in2.h: Rebuild with changes to chew--tab expansion.
3650
3651Thu Jan 22 21:26:48 1998 Richard Henderson <rth@cygnus.com>
3652
3653 * bfd.c (bfd_get_error_handler): Add orthogonal function.
3654 * bfd-in2.h: Regenerate.
3655
3656Thu Jan 22 21:13:39 1998 Richard Henderson <rth@cygnus.com>
3657
3658 * tekhex.c (tekhex_write_object_contents): Check for no symbols.
3659
3660Wed Jan 21 21:19:03 1998 Ian Lance Taylor <ian@cygnus.com>
3661
3662 * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't
3663 adjust addend for an output common symbol (from Jimmy Blair
3664 <jimmyb@wrs.com>). If COFF_WITH_PE, adjust addend for PC relative
3665 defined symbol to counteract adjustment made in generic relocation
3666 code.
3667
3668 * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h.
3669
3670Wed Jan 21 21:16:06 1998 Manfred Hollstein <manfred@s-direktnet.de>
3671
3672 * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name.
3673 (GET_SCNDHR_NLNNO): Likewise.
3674
3675Mon Jan 19 12:49:52 1998 Ian Lance Taylor <ian@cygnus.com>
3676
3677 * cpu-sh.c (arch_info_struct): Correct next field of sh3e.
3678
3679Wed Jan 14 17:23:27 1998 Nick Clifton <nickc@cygnus.com>
3680
3681 * elf32-m32r.c: Add macros to handle NOP insertion.
3682
3683Wed Jan 14 16:15:22 1998 Richard Henderson <rth@cygnus.com>
3684
3685 * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section.
3686 (xcoff_mark): Likewise.
3687 (xcoff_build_ldsyms): Mark absolute symbols.
3688
3689Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com>
3690
3691 * bout.c (b_out_write_object_contents): Sort symbols before output
3692 to keep {CALL,BAL}NAME symbols adjacent.
3693 (b_out_symbol_cmp): New function.
3694
3695For older changes see ChangeLog-9697
3696\f
3697Local Variables:
3698mode: change-log
3699left-margin: 8
3700fill-column: 74
3701version-control: never
3702End:
This page took 0.16768 seconds and 4 git commands to generate.