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