Improve section to segment mapping code.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
5c440b1e
NC
12000-07-31 Nick Clifton <nickc@cygnus.com>
2
3 * section.c (struct sec): Add new boolean field 'segment_mark'.
4 (STD_SECTION): Initialise new field to zero.
5
6 * bfd-in2.h: Regenerate.
7
8 * elf.c (copy_private_bfd_data): Reorganise section to segment
9 mapping to cope with moved sections requiring new segments,
10 and overlapping segments.
11 (SEGMENT_END): New macro: Return the end address of a segment.
12 (IS_CONTAINED_BY_VMA): New macro: Determine if a segment
13 contains a section by comparing their VMA addresses.
14 (IS_CONTAINED_BY_LMA): New macro: Determine if a segment
15 contains a section by comparing their LMA addresses.
16 (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a
17 section should be included in a segment.
18 (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment
19 follows another in memory.
20 (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two
21 segments overlap.
22
24208c5c
JE
23200007-22 Jason Eckhardt <jle@cygnus.com>
24
25 * cpu-i860.c: Added comments.
26
27 * elf32-i860.c (TARGET_LITTLE_SYM): Defined to
28 bfd_elf32_i860_little_vec.
29 (TARGET_LITTLE_NAME): Defined to "elf32-i860-little".
30 (ELF_MAXPAGESIZE): Changed to 4096.
31
32 * targets.c (bfd_elf32_i860_little_vec): Declaration of
33 new target.
34 (bfd_target_vector): Added bfd_elf32_i860_little_vec.
35
36 * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added
37 config for little endian elf32 i860.
38 (targ_defvec): Define for the new config above
39 as "bfd_elf32_i860_little_vec".
40 (targ_selvecs): Define for the new config above
41 as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
42
43 * configure.in (bfd_elf32_i860_little_vec): Added recognition
44 of new target vec.
45
46 * configure: Regenerated.
47
456981d7
L
482000-07-27 H.J. Lu <hjl@gnu.org>
49
50 * elflink.h (elf_merge_symbol): Take one more argument,
51 dt_needed, to indicate if the symbol comes from a DT_NEEDED
52 entry. Don't overide the existing weak definition if dt_needed
53 is true.
54 (elf_link_add_object_symbols): Pass dt_needed to
55 elf_merge_symbol ().
56
755cfd29
NC
572000-07-27 Nick Clifton <nickc@cygnus.com>
58
59 * elflink.h (elf_link_size_reloc_section): Zeroes the section's
60 allocated contents.
61
1a6df346
GK
622000-07-25 Geoffrey Keating <geoffk@cygnus.com>
63
adfdf838
GK
64 * configure.host (*-*-aix*): AIX has 'long long' always.
65
1a6df346
GK
66 * coff-rs6000.c (xcoff_write_one_armap_big): New procedure.
67 (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps.
68 (xcoff_write_archive_contents_big): Don't update the offset
69 of the symbol table, xcoff_write_armap will do it.
70
313ba8d6
UC
712000-07-23 Ulf Carlsson <ulfc@engr.sgi.com>
72
73 * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead
74 of dynobj for SGI_COMPAT checks.
75
3eb6f68f 762000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
20bccb34
NC
77
78 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function.
79 * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration.
80 * bfd-in2.h: Regenerate.
81
7a3120d9
NC
822000-07-21 Nick Clifton <nickc@cygnus.com>
83
84 * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of
85 range symbol indices in relocs and issue an error message.
86
4d538889
L
872000-07-20 H.J. Lu <hjl@gnu.org>
88
89 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check
90 info->new_dtags when setting DT_FLAGS_1. It will only be set
91 by the new linker options. It shouldn't break anything.
92
b586af58
L
932000-07-20 H.J. Lu <hjl@gnu.org>
94
95 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1
96 only if info->new_dtags is true.
97
c25373b7
L
982000-07-20 H.J. Lu <hjl@gnu.org>
99
100 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set
101 DT_RUNPATH and DT_FLAGS only if info->new_dtags is true.
102
06c15ad7
HPN
1032000-07-20 Hans-Peter Nilsson <hp@axis.com>
104
105 * Makefile.am (ALL_MACHINES): Add cpu-cris.lo.
106 (ALL_MACHINES_CFILES): Add cpu-cris.c.
107 (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo.
108 (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c.
109 (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules.
110 * Makefile.in: Rebuild.
111 * aclocal.m4: Rebuild.
112 * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris.
113 * archures.c (enum bfd_architecture): Add bfd_arch_cris.
114 (bfd_cris_arch): Declare.
115 (bfd_archures_list): Add bfd_cris_arch.
116 * bfd-in2.h: Rebuild.
117 * config.bfd: (cris-*-*): New target.
118 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors.
119 * configure: Rebuild.
120 * elf.c (prep_headers): Add bfd_arch_cris.
121 * libbfd.h: Rebuild.
122 * libaout.h (enum machine_type): Add M_CRIS.
123 * reloc.c: Add CRIS relocations.
3bd336f7 124 * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare.
06c15ad7
HPN
125 (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec.
126 * cpu-cris.c, aout-cris.c, elf32-cris.c: New files.
127 * po/POTFILES.in, po/bfd.pot: Regenerate.
128
d6cf2879
L
1292000-07-19 H.J. Lu <hjl@gnu.org>
130
131 * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set
132 DF_TEXTREL if DT_TEXTREL is set.
133 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
134 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
135 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
136 * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise.
137 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
138 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
139 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
140 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
141 * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise.
142 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
143
c25373b7 144 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also
d6cf2879
L
145 set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if
146 DT_RPATH is set.
147 Set the DT_FLAGS and DT_FLAGS_1 entries if necessary.
148
74816898
L
1492000-07-19 H.J. Lu <hjl@gnu.org>
150
151 * bfd-in.h (bfd_elf_set_dt_needed_soname): New.
152 * bfd-in2.h: Rebuild.
153
154 * elf-bfd.h (elf_obj_tdata): Add dt_soname.
155 (elf_dt_soname): New.
156
157 * elf.c (bfd_elf_set_dt_needed_soname): New.
158
159 * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED
160 entry if the shared object loaded by DT_NEEDED is used to
161 resolve the reference in a regular object.
162
36a30e65
L
1632000-07-19 H.J. Lu <hjl@gnu.org>
164
165 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG,
166 DT_DEPAUDIT and DT_AUDIT as strings.
167
1d713d9e
NC
1682000-07-19 Nick Clifton <nickc@cygnus.com>
169
170 * format.c: Fix formatting.
171
d48188b9
L
1722000-07-19 H.J. Lu <hjl@gnu.org>
173
174 * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM.
175
94558834
L
1762000-07-19 H.J. Lu <hjl@gnu.org>
177
178 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW,
179 DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ,
180 DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ,
181 DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1,
182 DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT,
183 DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT,
184 DT_FLAGS_1, DT_USED and DT_CHECKSUM.
185
125c4a69
NC
186Tue Jul 18 13:11:54 2000 Andrew Cagney <cagney@b1.cygnus.com>
187
188 * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move
189 renamed functions from here...
190 (assign_section_numbers): Use renamed functions.
191 (prep_headers): Use renamed functions.
192
193 * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here.
194 * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update.
195 * bfd-in2.h: Regenerate.
196
31a9bdd9
UC
1972000-07-18 Ulf Carlsson <ulfc@engr.sgi.com>
198
199 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add
313ba8d6 200 parenthesis in if statement.
31a9bdd9 201
f7cb7d68
UC
2022000-07-17 Koundinya K <kk@ddeorg.soft.net>
203
204 Enable the support for Traditional MIPS.
205 * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand
206 return ict_none appropriately for traditional mips targets.
207 (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips.
208 (STUB_MOVE): Conditionalize for traditonal mips.
209 (STUB_LI16): Likewise.
210 (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making
211 room for RTPROC header.
212 (_bfd_mips_elf_modify_segment_map): For a normal mips executable set
213 the permission for the PT_DYNAMIC as read, write and execute.
214 (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING
215 for traditonal mips.
216 (_bfd_mips_elf_create_dynamic_sections): Add the symbol
217 _DYNAMIC_LINKING for traditonal mips.
218 (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP
219 in case of traditonal mips.
220 (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT
221 entry is required. For a function if PLT is not required then set the
222 corresponding hash table entry to 0.
223 (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for
224 traditonal mips.
225 (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a
226 shared object set the value to 0.
227 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol
228 _DYNAMIC_LINKING for traditonal mips.
229 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP
230 for traditonal mips.
231
930d924d
L
2322000-07-15 H.J. Lu <hjl@gnu.org>
233
234 * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL.
235
e67f03db
DD
2362000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
237
238 * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing
239 out a structure that is BFD_IN_MEMORY.
240
0ba2a60e
AM
2412000-07-11 Alan Modra <alan@linuxcare.com.au>
242
243 * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of
244 bfd pointer. Print section id instead of bfd pointer for local
245 syms. Prefix addend with `+' for global syms as well as local.
246 Correct calculation of name component lengths.
247 (elf64_hppa_check_relocs): Update call to get_dyn_name.
248
249 From David Huggins-Daines <dhd@linuxcare.com>
250 * elf-hppa.h (elf_hppa_relocate_section): Update calls here too.
251 * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings.
252 (elf64_hppa_modify_segment_map): Likewise.
253
6d9019e4
AC
254Tue Jul 11 17:21:52 2000 Andrew Cagney <cagney@b1.cygnus.com>
255
256 * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA
257 addresses to be "naturally" sign extended. Return -1 if unknown.
0ba2a60e 258 * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration.
6d9019e4
AC
259 * bfd-in2.h: Regenerate.
260
23e2c83b
AC
261Tue Jul 11 16:25:52 2000 Andrew Cagney <cagney@b1.cygnus.com>
262
263 * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32
264 and ECOF_SIGNED_64 to list ways to extract an offset.
265 (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in,
266 ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out):
267 Update.
268 * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64.
269 * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32.
270
448cafa4
AC
271Tue Jul 11 16:03:04 2000 Andrew Cagney <cagney@b1.cygnus.com>
272
273 * elfcode.h (elf_object_p): Use bfd_set_start_address and not
274 bfd_get_start_address.
275 (elf_swap_ehdr_in): Sign extend e_entry when applicable.
276 (elf_swap_ehdr_out): Ditto.
277
83ea41ad
NC
2782000-07-10 Alexander Aganichev <AAganichev@hypercom.com>
279
280 * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for
281 compatibility with older binutils.
282
3df7b4e2
AM
2832000-07-10 Alan Modra <alan@linuxcare.com.au>
284
285 * section.c (bfd_make_section_anyway): Start section_id at 0x10.
286 (STD_SECTION): Avoid negative ids, instead use 0 to 3.
287
b7af50e3
AM
288 From Ryan Bradetich <rbradetich@uswest.net>
289 * dwarf1.c (parse_die): Cure signed/unsigned char warnings.
290 (parse_line_table): Ditto.
291 (_bfd_dwarf1_find_nearest_line): Ditto.
292 * syms.c (cmpindexentry): Remove extra `*' from params.
293
adb76a3e
UC
2942000-07-09 Koundinya K <kk@ddeorg.soft.net>
295
296 * elf32-mips.c (sort_dynamic_relocs): New Function.
297 (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs
298 via qsort to sort the dynamic relocations in increasing r_symndx
299 value.
300
edd21aca
AM
3012000-07-09 Alan Modra <alan@linuxcare.com.au>
302
303 * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add
304 ATTRIBUTE_UNUSED to unused args.
305 (get_opd): Likewise.
306 (get_plt): Likewise.
307 (get_dlt): Likewise.
308 (get_stub): Likewise.
309 (elf64_hppa_adjust_dynamic_symbol): Likewise.
310 (elf64_hppa_link_output_symbol_hook): Likewise.
311 (elf64_hppa_check_relocs): Delete unused var.
312 (elf64_hppa_size_dynamic_sections): Likewise.
313 (elf64_hppa_finalize_opd): Likewise.
314 (elf64_hppa_finalize_dynreloc): Likewise.
315 (elf64_hppa_modify_segment_map): Likewise.
316 (elf64_hppa_finish_dynamic_sections): Likewise.
317
318 * elf-hppa.h (elf_hppa_final_write_processing): Add
319 ATTRIBUTE_UNUSED to unused args.
320 (elf_hppa_final_link_relocate): Likewise.
321 (elf_hppa_record_segment_addrs): Add paretheses.
322 (elf_hppa_relocate_section): Constify dyn_name.
323
324 From David Huggins-Daines <dhd@linuxcare.com>
325 * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and
326 rearrange case statement so that it gets preferred to 32-bit ones.
327
328 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use
329 asection->id instead of address of asection structure.
330 (elf32_hppa_size_stubs): Likewise.
331
332 * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section
333 for .init* and .fini*.
334
335 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers
336 and addends used in stub names to 32 bits.
337 (elf32_hppa_size_stubs): Likewise.
338
339 * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend
340 twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32,
341 not bfd_put_64. Fix minor comment typo and formatting.
342
343 Changes to create multiple linker stubs, positioned immediately
344 before the section where they are required.
345 * elf32-hppa.c: Don't include hppa_stubs.h.
346 (elf32_hppa_stub_hash_entry): Add a pointer to the stub section.
347 (elf32_hppa_stub_hash_table): Delete.
348 (elf32_hppa_link_hash_entry): Delete.
349 (elf32_hppa_link_hash_table): Use plain bfd_hash_table for
350 stub_hash_table, and store the struct here rather than a pointer.
351 Delete output_symbol_count. Add offset array. Change
352 global_value to a bfd_vma.
353 (elf32_hppa_stub_hash_lookup): Use table instead of table->root.
354 (elf32_hppa_stub_hash_traverse): Delete.
355 (elf32_hppa_name_of_stub): Delete.
356 (elf32_hppa_link_hash_lookup): Delete.
357 (elf32_hppa_link_hash_traverse): Delete.
358 (elf32_hppa_stub_hash_table_init): Delete.
359 (elf32_hppa_size_of_stub): Pass input section and offset rather
360 than location and calculate location here. Don't pass name as all
361 stubs are now the same size.
362 (elf32_hppa_stub_hash_newfunc): Init new fields.
363 (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table
364 too.
365 (elf32_hppa_bfd_final_link_relocate): Cast enums to int before
366 comparing against ints. Rewrite stub handling code.
367 (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned.
368 Case enums to int before comparing against ints. Remove
369 bfd_reloc_dangerous case.
370 (elf32_hppa_build_one_stub): Rewrite.
371 (elf32_hppa_size_one_stub): New function.
372 (elf32_hppa_build_stubs): Rewrite.
373 (elf32_hppa_size_stubs): Pass in linker call-back functions.
374 Rewrite stub-handling specific code.
375
376 * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype.
377
378 * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo.
379
380 * hppa_stubs.h: Delete.
381 * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h
382 (elf32-hppa.lo): Remove hppa_stubs.h from dependencies.
383 * Makefile.in: Regenerate.
384
385 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and
386 e_nlrsel.
387
388 * libhppa.h (hppa_field_adjust): Correct e_nsel case.
389
390 * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset
391 and section name for bfd_reloc_notsupported error message.
392 (elf32_hppa_bfd_final_link_relocate): Print reasons for returning
393 bfd_reloc_notsupported.
394 (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd.
395
396 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle
397 undefined weak symbols for all relocs.
398 (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch
399 offsets are relative to one past the delay slot.
400 (elf32_hppa_size_stubs): Account for reloc addend when calculating
401 branch destination. Put addend into stub name too.
402 (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and
403 adjust by 8 when deciding whether a linker stub is needed. Put
404 addend into stub name as for above.
405
406 * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on
407 various args and vars.
408 (elf32_hppa_bfd_final_link_relocate): Here too.
409 (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for
410 inner block var to avoid shadowing.
411
412 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg
413 unsigned.
414 * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto.
415 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto.
416 (elf_hppa_fake_sections): Rename local var to avoid shadowing.
417
418 * libhppa.h: Change practically all unsigned ints to plain ints.
419 Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for
420 prototypes.
421
422 From Ryan Bradetich <rbradetich@uswest.net>
423 * libhppa.h (hppa_opcode_type): New enum to replace #define's.
424 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to
425 suit above.
426 From David Huggins-Daines <dhd@linuxcare.com>
427 * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants
428 to the new OP_* ones.
429
430 * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on
431 error exit. Bail out earlier on plabel relocs that we aren't
432 interested in. Don't tell elf32_hppa_stub_hash_lookup to copy
433 string, and then don't free our copy.
434 (elf32_hppa_build_one_stub): Make insn unsigned int.
435
436 * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only
437 available with BL, not BE and BLE.
438
439 * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example
440 code for elf arg relocs.
441 (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local
442 argument with elf_link_hash_entry h. Handle undefined weak
443 symbols. Move $global$ lookup from here...
444 (elf32_hppa_relocate_section): ...to here. Return correct error
445 message for non-handled relocs.
446 (elf32_hppa_size_of_stub): Correctly test branch range. Previous
447 wrong test was -0x3ffff to +0x40000.
448
449 * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R,
450 R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches;
451 Handle them as such.
452 (elf_hppa_relocate_insn): Fix a typo.
453
454 * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete.
455 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
456 assemble_17, assemble_21): Delete.
457 Supply defines for all 64 possible opcodes.
458 (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode
459 formats. Handle COMICLR.
460 (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11,
461 -10, -16, 16, 22.
462
463 * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite.
464 (elf32_hppa_bfd_final_link_relocate): Major rewrite.
465 (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls
466 to suit.
467 (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all
468 the local syms - did this code get deleted accidentally? Ignore
469 undefined and undefweak syms.
470
471 * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost
472 block. Use it instead of elf64_hppa_hash_table (info).
473 (elf_hppa_final_link_relocate): Use hppa_info instead of
474 elf64_hppa_hash_table (info).
475
476 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
477 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
478 (hppa_rebuild_insn): Mask immediate bits here instead.
479 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
480
52b219b5
AM
4812000-07-08 Alan Modra <alan@linuxcare.com.au>
482
483 * section.c (struct sec): Add id field. Tidy comment formatting.
484 (bfd_make_section_anyway): Set id.
485 (STD_SECTION): Init id too.
486 Change CONST to const throughout.
487 * archures.c (bfd_arch_info): Tidy comment.
488 (bfd_arch_list): Change a CONST to const.
489 * libbfd-in.h: Tidy comments and replace CONST with const.
490 * elf-bfd.h: Likewise.
491 * libbfd.h: Regenerate.
492 * bfd-in2.h: Regenerate.
493 * libcoff.h: Regenerate.
494
8000a618
DD
4952000-07-07 DJ Delorie <dj@redhat.com>
496
497 * archive.c (_bfd_write_archive_contents): Add an informative
498 comment.
499
c3b7c767
NC
5002000-07-06 Kazu Hirata <kazu@hxi.com>
501
502 * srec.c: Fix formatting.
503
302ab118
DD
5042000-06-05 DJ Delorie <dj@redhat.com>
505
506 * MAINTAINERS: new
507
ed1de528
AO
5082000-07-04 Alexandre Oliva <aoliva@redhat.com>
509
510 * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol
511 value of PC-relative offsets.
512
70bcb145
JW
5132000-07-03 Jim Wilson <wilson@cygnus.com>
514
515 * elf64-alpha.c (alpha_elf_size_info): New.
516 (elf_backend_size_info): Define to alpha_elf_size_info.
517 * elfcode.h (elf_size_info): Change hash bucket size to 4.
518
b8ee63fa
UC
5192000-07-03 Ulf Carlsson <ulfc@engr.sgi.com>
520
521 * elf32-mips.c: Include elf32-target.h again for the traditional
522 MIPS targets.
523
00d2865b
NC
5242000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
525
526 * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup):
527 Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings.
528 (avr_info_to_howto_rela): Likewise.
529 (elf32_avr_gc_mark_hook): Likewise.
530 (elf32_avr_gc_sweep_hook): Likewise.
531 (elf32_avr_relocate_section): Likewise.
532
e4202681
NC
5332000-07-03 Mark Elbrecht <snowball3@bigfoot.com>
534
535 * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into
536 an external symbol for a non-shared, non-relocatable link.
537
5382000-07-03 Nick Clifton <nickc@redhat.com>
539
99d6ac2f
NC
540 * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol
541 is an external symbol.
e4202681
NC
542 (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak
543 external symbol.
544
289c596c
NC
5452000-07-03 Kazu Hirata <kazu@hxi.com>
546
547 * reloc16.c: Fix formatting.
548
dd745cfa
UC
5492000-07-01 Koundinya K <kk@ddeorg.soft.net>
550
551 * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4*
552 to add a new target for traditional mips i.e
553 bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec.
554 * configure.in: Likewise.
555 * configure: Rebuild.
556 * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in
557 bfd_target_vector.
558 (bfd_elf32_tradlittlemips_vec): Likewise.
559 * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test
560 to see that elfNN_bed does not get redefined even if the target file
561 is included twice for a chip. See elf32-mips.c.
562
0bdaf48b
AM
5632000-07-01 Alan Modra <alan@linuxcare.com.au>
564
565 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
566 (CLEANFILES): Add DEPA.
567 * Makefile.in: Regenerate.
568
c75df619
DD
5692000-06-30 DJ Delorie <dj@cygnus.com>
570
571 * peicode.h (coff_swap_filehdr_in): can't use e_magic because we
572 can't assume the PE header is at 0x80.
573
b4b415e5
DD
5742000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
575
cda43a1d 576 * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH.
b4b415e5 577
addd3117
DD
5782000-06-28 Mark Elbrecht <snowball3@bigfoot.com>
579
580 * go32stub.h: Update stub.
581
65aa24b6
NC
5822000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
583
584 * archures.c (bfd_mach_avr5): Define.
585 * bfd-in2.h (bfd_mach_avr5): Define.
586 * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to
587 bfd_mach_avr5, add bfd_mach_avr4. Update comments.
588 (compatible): Update comment. Add missing test.
589 * elf32-avr.c (avr_final_link_relocate): Support 8K wrap
590 for avr2 and avr4. Simplify 8K wrap code.
591 (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5.
592 (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5.
593
cc040812
NC
5942000-06-26 Kazu Hirata <kazu@hxi.com>
595
596 * coff-h8300.c: Fix formatting.
597 * cpu-h8300.c: Likewise.
598
b1bcb49f
AO
5992000-06-24 Alexandre Oliva <aoliva@redhat.com>
600
601 * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)'
602 for local symbols whose names are unknown.
603
1581f8c9
AM
6042000-06-22 Alan Modra <alan@linuxcare.com.au>
605
606 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
607 find one.
608 * Makefile.in: Regenerate.
609 * doc/Makefile.in: Regenerate.
610
bbeb2e03
L
6112000-06-20 H.J. Lu <hjl@gnu.org>
612
613 * Makefile.am: Rebuild dependency.
614 * Makefile.in: Rebuild.
615
8a20f077
UC
6162000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
617
618 * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function.
619 (elf_backend_copy_indirect_symbol): Map to the new function.
620
2ab47eed
AM
6212000-06-20 Alan Modra <alan@linuxcare.com.au>
622
623 * archive.c (normalize): Correct pointer comparison when checking
624 for backslashes.
625 (bfd_bsd_truncate_arname): Likewise.
626 (bfd_gnu_truncate_arname): Likewise.
627
b305ef96
UC
6282000-06-20 Ulf Carlsson <ulfc@engr.sgi.com>
629
630 * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual
631 sections elf_{text,data}_{section,symbol}.
632 * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove.
633 (_bfd_mips_elf_hide_symbol): New function.
634 (elf_backend_hide_symbol): Map to the new function.
635 (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD
636 definitions of mips_elf_{text,data}_{section,symbol}.
637 (mips_elf_local_relocation_p): Try to find the direct symbol
638 based on new check_forced argument.
639 (mips_elf_calculate_relocation): Use new version of
640 mips_elf_local_relocation_p.
641 (mips_elf_relocate_section): Likewise.
642 (_bfd_mips_elf_relocate_section): Likewise.
643 (mips_elf_sort_hash_table): Only assert that have enough GOT
644 space.
645 (mips_elf_got16_entry): Match all 32 bits to the existing GOT
646 entry if the relocation based on the new external argument.
647 (mips_elf_create_dynamic_relocation): Assert that we have a
648 section contents allocated where we can swap out the dynamic
649 relocations.
650 (mips_elf_calculate_relocation): Find the real hash-table entry
651 correctly by using h->root.root.type. Only create a dynamic
652 relocation entry if the symbol is defined in a shared library.
653 Create an external GOT entry for the GOT16 relocation if the
654 symbol was forced local.
655 (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a
656 dynamic index if the symbol was forced local.
657
6582000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
659
660 * elf32-mips.c: Fix typos in comments.
661
1605fc4f
MK
6622000-06-19 Mark Kettenis <kettenis@gnu.org>
663
664 * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef
665 CORE_VERSION_1.
666
60bcf0fa
NC
6672000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
668
669 * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild.
670 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS,
671 BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files.
672 * configure.in (bfd_elf32_m68hc12_vec): Recognize.
673 (bfd_elf32_m68hc11_vec): Likewise.
674 * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11.
675 Supports 68hc11 & 68hc12 at the same time.
676 * targets.c (bfd_elf32_m68hc12_vec): Declare and put in
677 bfd_target_vector.
678 (bfd_elf32_m68hc11_vec): Likewise.
679 * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11.
680 * archures.c (bfd_m68hc12_arch): Define and register in global list
681 (bfd_m68hc11_arch): Likewise.
682 * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8,
683 BFD_RELOC_M68HC11_3B): Define.
684 * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support.
685 * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support.
686
f41cbf03
UC
6872000-06-18 Ulf Carlsson <ulfc@engr.sgi.com>
688
689 * elf_bfd.h (struct elf_backend_data): Add info argument to
690 elf_backend_hide_symbol.
691 (_bfd_elf_link_hash_hide_symbol): Likewise.
692 * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise.
693 * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise.
694 * elflink.h (elf_link_add_object_symbols): Likewise.
695 (elf_link_assign_sym_version): Likewise.
696
689be717
L
6972000-06-18 H.J. Lu <hjl@gnu.org>
698
699 * coff-i386.c (coff_i386_reloc): Don't return in case of
700 output_bfd == (bfd *) NULL if COFF_WITH_PE is defined.
701 Compensate PE relocations when linking with non-PE object
702 files to generate a non-PE executable.
703
9a8f3bb7
UC
7042000-06-17 Ulf Carlsson <ulfc@engr.sgi.com>
705
706 * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write
707 GOT entries if we're doing a static link or -Bsymbolic link.
708
32f0787a
UC
7092000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
710
711 * elflink.h (elf_link_adjust_relocs): Check for and call backend
712 specifific swap_reloc_{in,out} and swap_reloca_{in,out} if
713 available.
714 (elf_link_output_relocs): Likewise.
715 (elf_reloc_link_order): Likewise.
716
87f33987
ND
7172000-06-16 Nicholas Duffek <nsd@redhat.com>
718
719 * archures.c (enum bfd_architecture): #define constants for
720 PowerPc and RS6000 machine numbers.
721 * bfd-in2.h: Regenerate.
722 * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch
723 to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc
724 and RS6000 machine numbers using #defined constants from
725 archures.c.
726 * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000
727 machine numbers using #defined constants from archures.c. Add
728 entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify
729 64-bit words in 620 entry.
730 * cpu-rs6000.c (arch_info_struct): Create with entries for RS1,
731 RSC, and RS2.
732 (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k).
733
a2fdf270
ND
7342000-06-16 Nicholas Duffek <nsd@cygnus.com>
735
736 * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64.
737 * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field.
738 * libcoff.h (struct xcoff_tdata): Define xcoff64 field.
739
9bd09e22
ND
7402000-06-16 Nicholas Duffek <nsd@redhat.com>
741
742 * bfd-in.h (bfd_family_coff): Define.
743 * bfd-in2.h: Regenerate.
744 * coffgen.c (coff_count_linenumbers, coff_symbol_from,
745 coff_find_nearest_line): Check COFFness using bfd_family_coff()
746 instead of bfd_target_coff_flavour.
747 * cofflink.c (_bfd_coff_final_link): Likewise.
748 * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to
749 exclude XCOFF files.
750 * reloc.c (bfd_perform_relocation, bfd_install_relocation):
751 Likewise.
752 * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour.
753 * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour.
754 * xcofflink.c (XCOFF_XVECP): Delete.
755 (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol,
756 bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc,
757 bfd_xcoff_record_link_assignment,
758 bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with
759 check for bfd_target_xcoff_flavour.
760
59d9f049
ND
7612000-06-16 Nicholas Duffek <nsd@redhat.com>
762
763 * rs6000-core.c: Support 64-bit core files, support pre-4.3 core
764 files on AIX 4.3.
765 (read_hdr): New function.
766 (rs6000coff_core_p): Store mstsave or __context64 struct instead
767 of trying to extract individual registers. Set abfd->arch_info
768 to match the architecture that created the core file.
769 (rs6000coff_get_section_contents): Delete.
770 * xcoff-target.h (rs6000coff_get_section_contents): Delete.
771
63e39178
L
7722000-06-14 H.J. Lu <hjl@gnu.org>
773
774 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec)
775 is NULL.
776
bcef29e6
L
7772000-06-13 H.J. Lu <hjl@gnu.org>
778
779 * configure: Regenerate.
780
26bfd1c0
JR
781Tue Jun 13 01:28:57 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
782
783 * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of
784 armpei_little_vec.
785
946efd95
DB
7862000-06-08 David O'Brien <obrien@FreeBSD.org>
787
788 * configure.in (VERSION): Update to show this is the CVS mainline.
789
1b452ec6
AM
7902000-06-07 Alan Modra <alan@linuxcare.com.au>
791
792 * elf32-d10v.c: Include elf/d10v.h
793 (enum reloc_type): Delete.
794 * elf32-d30v.c: Include elf/d30v.h
795 (enum reloc_type): Delete.
796
797 * Makefile.am: Run "make dep-am" to regenerate dependencies.
798 * Makefile.in: Regenerate.
799
800 * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs.
dc47f327
AM
801 (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and
802 move HOWTOs into elf_howto_table.
1b452ec6 803 (R_386_standard, R_386_ext_offset): Define.
dc47f327 804 (R_386_ext, R_386_vt_offset, R_386_vt): Define.
1b452ec6 805 (elf_i386_reloc_type_lookup): Modify calculation of index into
dc47f327 806 elf_howto_table since we've removed the padding.
1b452ec6
AM
807 (elf_i386_info_to_howto_rel): Likewise.
808 (elf_i386_relocate_section): Likewise.
809
e0ebfc61
MS
8102000-06-06 Michael Snyder <msnyder@seadog.cygnus.com>
811
812 * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t.
813
9d6eee78
L
8142000-06-05 H.J. Lu <hjl@gnu.org>
815
816 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
817 an error when seeing an undefined symbol with hidden/internal
818 attribute. It is handled in *_relocate_section ().
819
94b6c40a
L
8202000-06-05 H.J. Lu <hjl@gnu.org>
821
822 * elflink.h (elf_fix_symbol_flags): Follow the link for the
823 indirect symbol for the ELF_LINK_NON_ELF bit.
824 (elf_link_output_extsym): Don't output the indirect symbol even
825 if the ELF_LINK_NON_ELF bit is set.
826
0af288f3
C
8272000-06-01 J.T. Conklin <jtc@redback.com>
828
829 * config.bfd (i[3456]86-*-netbsdelf*): New target.
830 (i[3456]86-*-netbsdaout*): New target.
831 (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs.
832 (i[3456]86-*-openbsd*): Likewise.
833
12df4d3c
AC
834Tue May 30 15:39:04 2000 Andrew Cagney <cagney@b1.cygnus.com>
835
836 * trad-core.c: From hpux-core.c, include <dirent.h> or
837 <sys/ndir.h> when possible.
838
c0ae4ccc
NC
8392000-05-31 Nick Clifton <nickc@cygnus.com>
840
841 * opintl.h (_(String)): Explain why dgettext is used instead
842 of gettext.
843
321fa097
UD
8442000-05-31 Ulrich Drepper <drepper@redhat.com>
845
846 * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version
847 definitions. We must not assume they are sorted in the file
848 according to their index numbers.
849
70d72e0e
AM
8502000-05-31 Alan Modra <alan@linuxcare.com.au>
851
852 * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field
853 selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and
854 R_PARISC_DIR17F are for absolute branches; Handle them as such.
855
96f6d4c4
NC
8562000-05-30 Nick Clifton <nickc@cygnus.com>
857
858 * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB,
859 80960CA, 80960MC as valid machine names.
860
38048eb9
L
8612000-05-30 H.J. Lu <hjl@gnu.org>
862
863 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the
864 visibility bits if the symbol is undefined. Correctly handle
865 weak undefined symbols with hidden and internal attributes.
866
867 * elflink.h (elf_link_add_object_symbols): Always turn the
868 symbol into local if it has the hidden or internal attribute.
869
8c763017
PB
8702000-05-29 Philip Blundell <philb@gnu.org>
871
872 * ppcboot.c: Add packed attribute if compiling with GCC.
873
1ae00f9d
AM
8742000-05-29 Anatoly Vorobey <mellon@pobox.com>
875
876 * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal.
877
4a938328
MS
8782000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
879
880 * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus,
881 elfcore_grok_psinfo): Add code to allow debugging a 32-bit
882 corefile on a 64-bit (Sparc Solaris) host. Also clean up
883 a few old comments.
884
5af11cab
AM
8852000-05-26 Alan Modra <alan@linuxcare.com.au>
886
2114f57b
AM
887 * Makefile.am: Update dependencies with "make dep-am"
888 * Makefile.in: Regenerate.
889
5af11cab
AM
890 * sysdep.h (gettext, dgettext, dcgettext, textdomain,
891 bindtextdomain): Replace defines with those from intl/libgettext.h
892 to quieten gcc warnings.
893
8942000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
895
896 * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH.
897
898 * archive.c (normalize, bfd_bsd_truncate_arname,
899 bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support
900 file names with backslashes.
901
902 * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file
903 before opening it.
904
905 * sysdep.h: Include filenames.h.
906
b6cdd0fd
AM
9072000-05-26 Alan Modra <alan@linuxcare.com.au>
908
909 * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777.
910
f7775d95
JJ
9112000-05-26 Jakub Jelinek <jakub@redhat.com>
912
913 * elf64-sparc.c (sparc64_elf_relax_section): New.
914 (sparc64_elf_relocate_section): Optimize tail call into branch always
915 if possible.
916 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
917 (elf32_sparc_relax_section): New.
918
6c08d697
JJ
9192000-05-26 Jakub Jelinek <jakub@redhat.com>
920
921 * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters.
922 Remove unusued variables.
923 (sparc64_elf_relocate_section): Change r_symndx type to unsigned long.
924 (sparc64_elf_merge_private_bfd_data): Fix shared library case from
925 previous fix, so that shared libs really don't influence targets
926 extension mask and memory model.
927
edb72b3b
L
9282000-05-23 H.J. Lu <hjl@gnu.org>
929
930 * elf64-alpha.c (elf64_alpha_relocate_section): Check
931 h->root.other not h->other.
ba09750c
L
932 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
933
934 * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo.
edb72b3b 935
3a27a730
L
9362000-05-23 H.J. Lu <hjl@gnu.org>
937
938 * elf32-i386.c (elf_i386_relocate_section): Don't allow the
939 undefined symbol with the non-default visibility attributes.
940 * elf-hppa.h (elf_hppa_relocate_section): Likewise.
941 * elf32-arm.h (elf32_arm_relocate_section): Likewise.
942 * elf32-i370.c (i370_elf_relocate_section): Likewise.
943 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
944 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
945 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
946 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
947 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
948 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
949 * elf64-ia64.c (elf64_ia64_relocate_section): Likewise.
950 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
951
748abff6
RH
9522000-05-22 Richard Henderson <rth@cygnus.com>
953
954 * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI,
955 PCREL22, PCREL64I. Zero size of special relocs.
956 (elf64_ia64_reloc_type_lookup): Likewise.
957 (USE_BRL, oor_brl, oor_ip): New.
958 (elf64_ia64_relax_section): New.
959 (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I.
960 (elf64_ia64_install_value): Likewise, plus PCREL21BI.
961 (elf64_ia64_relocate_section): Likewise.
962 (bfd_elf64_bfd_relax_section): New.
963 * reloc.c (BFD_RELOC_IA64_PCREL21BI): New.
964 (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New.
965 * bfd-in2.h, libbfd.h: Regenerate.
966
fb67355a
NC
9672000-05-22 Nick Clifton <nickc@cygnus.com>
968
969 * configure.in : Add peigen.lo to MIPS PE targets.
970 * configure: Regenerate.
971
1fe494a5
NC
9722000-05-22 Momchil Velikov <velco@fadata.bg>
973
974 * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess
748abff6 975 only if it is known for both input and output bfds. Separate
1fe494a5
NC
976 error message strings as in some languages, it may be necessary
977 to change more than one place in the string to change between
978 'big' and 'little'.
979
980 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline
981 endianess checks, call _bfd_generic_verify_endian_match() instead.
982
983 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise.
984
985 * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise.
986
987 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify
988 endianess before checking bfd flavours.
989
32c092c3
L
9902000-05-22 H.J. Lu <hjl@gnu.org>
991
992 * elflink.h (elf_link_output_extsym): Clear the visibility
993 field for symbols not defined locally.
994
df6d9773
JL
9952000-05-18 Alan Modra <alan@linuxcare.com.au>
996
997 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
998 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
999 (hppa_rebuild_insn): Mask immediate bits here instead.
1000 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
1001
7ad34365
NC
10022000-05-18 Momchil Velikov <velco@fadata.bg>
1003
1004 * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting
1005 relocs for an executable, ensure that they are virtual addresses.
1006
d1dab720
JL
1007Thu May 18 10:55:47 2000 Jeffrey A Law (law@cygnus.com)
1008
1009 * config.bfd (hppa*64*-*-hpux11*): New target triplet.
1010
a712da20
NC
10112000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
1012 Rick Gorton <gorton@scrugs.lkg.dec.com>
1013
1014 * elflink.h: Add emitrelocations support: when enabled, relocation
1015 information and relocation sections are put into final output
1016 executables. If the emitrelocations flag is set, do the following:
1017 (elf_bfd_final_link): Emit relocation sections.
1018 (elf_link_input_bfd): Compute relocation section contents.
1019 (elf_gc_sections): Don't clean relocation sections.
1020
10febd84
CM
10212000-05-16 Catherine Moore <clm@cygnux.com>
1022
1023 * som.c (som_decode_symclass): Recognize weak symbols.
1024
db8503c4
AM
10252000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com>
1026
1027 * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that
1028 read idata section only from dataoff.
1029 (pe_print_edata): Correctly check for valid eat_member.
1030
851cde10
JR
1031Tue May 16 00:04:11 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1032
1033 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
1034
1bde2d57
PB
10352000-05-14 Philip Blundell <philb@gnu.org>
1036
1037 * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets.
1038
a76b448c
AM
10392000-05-12 Alan Modra <alan@linuxcare.com.au>
1040
9ee25201
AM
1041 * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec
1042
a76b448c
AM
1043 * peigen.c (pe_print_idata): Look for .idata section and print
1044 info even if data directory has zero entries. Read idata section
1045 starting from dataoff, and adjust all data offsets to suit. Cast
1046 all bfd_vma vars to unsigned long before passing to fprintf.
1047 * peigen.c (pe_print_edata): Similarly, look for .edata section
1048 and print info even if data directory has zero entries. Cast
1049 all bfd_vma vars to unsigned long before passing to fprintf.
1050
1051 From Szabolcs Szakacsits <szaka@F-Secure.com>
1052 * peigen.c (pe_print_idata): Use bfd_section_size rather than data
1053 directory size which may be bogus.
1054 * peigen.c (pe_print_edata): Similarly.
1055
72730e0c
AM
10562000-05-09 Alan Modra <alan@linuxcare.com.au>
1057
1058 * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela
1059 section is empty.
1060 (copy_private_bfd_data): Allow for space possibly taken up by elf
1061 headers when calculating segment physical address from lma.
1062
8181c403
AM
10632000-05-08 Alan Modra <alan@linuxcare.com.au>
1064
bfde9f99
AM
1065 * versados.c (versados_scan): Init stringlen and pass_2_done.
1066
b35efbcd
AM
1067 * trad-core.c (trad_unix_core_file_p): Return
1068 bfd_error_wrong_format rather than bfd_error_file_truncated.
1069
8181c403
AM
1070 * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to
1071 add_data_entry. DataDirectory virtual address is relative.
1072 (pe_print_idata): Account for relative DataDirectory virtual
1073 addresses. Don't trash datasize inside POWERPC_LE_PE code.
1074 (pe_print_edata): Similarly.
1075
1076 From Szabolcs Szakacsits <szaka@F-Secure.com>
1077 * peigen.c (dir_names): Add Delay Import Directory.
1078 (pe_print_idata): Always search for bfd section containing
1079 idata address rather than looking up section name. Print this
1080 section name rather than .idata.
1081 (pe_print_edata): Similarly. Also print some fields as %08lx.
1082 (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as
1083 Win32Version.
1084
2c38bc20
CP
1085Fri May 5 20:44:40 2000 Clinton Popetz <cpopetz@cygnus.com>
1086
1087 * xcoff.h: Rename to xcoff-target.h
1088 * Makefile.am: Change all instances of xcoff.h to xcoff-target.h
1089 * coff-rs6000.c: Ditto.
1090 * coff64-rs6000.c: Ditto.
1091 * coff-pmac.c: Ditto.
1092 * Makefile.in: Regenerate.
1093
c6664dfb
CP
1094Fri May 5 16:51:03 2000 Clinton Popetz <cpopetz@cygnus.com>
1095
1096 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags):
1097 Change U802TOC64MAGIC to U803XTOCMAGIC.
1098
3425c182
MS
10992000-05-04 Michael Snyder <msnyder@seadog.cygnus.com>
1100
1101 * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1.
1102 * bfd-in.h: Prototype bfd_elf_get_arch_size.
1103 * bfd-in2.h: Prototype bfd_elf_get_arch_size.
1104
7c30ac37
AM
11052000-05-04 Alan Modra <alan@linuxcare.com.au>
1106
1107 * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma.
1108