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