2000-08-22 H.J. Lu <hjl@gnu.org>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
a963dc6a
L
12000-08-22 H.J. Lu <hjl@gnu.org>
2
3 * elf-bfd.h (elf_link_hash_table): Add runpath.
4
5 * bfd-in.h (bfd_elf_get_runpath_list): New prototype.
6 * bfd-in2.h: Rebuilt.
7
8 * elf.c (_bfd_elf_link_hash_table_init): Initialize the
9 "runpath" field to NULL.
10 (bfd_elf_get_runpath_list): New function.
11
12 * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and
13 DT_RUNPATH entries.
14
9bdafcce
AO
152000-08-22 Alexandre Oliva <aoliva@redhat.com>
16
17 * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W,
18 R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them
19 explicitly. Improve validation of r_type.
20
7a9af8c4
NC
212000-08-21 H.J. Lu <hjl@gnu.org>
22
23 * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the
24 dynamic allocated content space. Add a comment to remind us that
25 one day this ought to be fixed.
26 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
27 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
28 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
29
ded0649c
JE
302000-08-21 Jason Eckhardt <jle@cygnus.com>
31
32 * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate
33 field with the newly relocated value instead of adding it to the
34 existing immediate field.
35 (elf32_i860_relocate_splitn): Likewise.
36 (elf32_i860_relocate_highadj): Likewise.
37
d670a150
JE
382000-08-16 Jason Eckhardt <jle@cygnus.com>
39
40 * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it
41 was previously just a stub).
42
bb0deeff
AO
432000-08-16 Alexandre Oliva <aoliva@redhat.com>
44
45 * elflink.c (_bfd_elf_create_got_section): Don't abort().
46 Formatting fixes.
47 (_bfd_elf_create_dynamic_sections): Likewise.
48
be040dbb
JJ
492000-08-16 Andrew Macleod <amacleod@cygnus.com>
50
51 * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address
52 for undefined symbols to be the beginning of the section.
53
54 * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate
55 four extra entries at the beginning of the .rela.plt section.
56 (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt
57 section to account for the four reserved entries in the .plt section.
58
31612ca6
GK
592000-08-15 Geoffrey Keating <geoffk@cygnus.com>
60
61 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0
62 to the list of NOPs we recognize after a branch-and-link.
63 Use the ori NOP when one is needed.
64
65 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation
66 for large archives.
67
c43c2cc5
JW
682000-08-14 Jim Wilson <wilson@cygnus.com>
69
70 * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle
71 EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP.
72 (elf64_ia64_print_private_bfd_data): Likewise. Also handle
73 EF_IA_64_ABSOLUTE.
74
1630fd2b
AO
752000-08-11 Alexandre Oliva <aoliva@redhat.com>
76
77 * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static.
78
fdeafce7
JE
792000-08-10 Jason Eckhardt <jle@cygnus.com>
80
81 * elf32-i860.c (elf32_i860_relocate_section): New function.
82 (i860_final_link_relocate): New function.
83 (elf32_i860_relocate_splitn): New function.
84 (elf32_i860_relocate_pc16): New function.
85 (elf32_i860_relocate_highadj): New function.
86 (elf32_i860_howto): Minor adjustments to some relocations.
87 (elf_info_to_howto_rel): Define.
88 (elf_backend_relocate_section): Define.
89
9b485d32
NC
902000-08-10 Nick Clifton <nickc@cygnus.com>
91
92 * elf32-arm.h: Fix formatting.
93
00fdaf47
BS
942000-08-10 Bernd Schmidt <bernds@cygnus.co.uk>
95
96 * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static.
97
305d537e
JE
982000-08-08 Jason Eckhardt <jle@cygnus.com>
99
100 * elf32-i860.c (elf32_i860_howto_table): Updated some fields.
101
46f5aac8
KH
1022000-08-07 Kazu Hirata <kazu@hxi.com>
103
dce61835
KH
104 * ieee.c (ieee_write_debug_part): Rewrite a comment.
105 * elf64-ia64.c: Fix a typo.
46f5aac8 106
0e5136c6
JE
1072000-08-05 Jason Eckhardt <jle@cygnus.com>
108
109 * elf32-i860 (elf32_i860_howto_table): New structure.
110 (lookup_howto): New function.
111 (elf32_i860_reloc_type_lookup): New function.
112 (elf32_i860_info_to_howto_rela): New function.
113 (elf_code_to_howto_index): New structure.
114 (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela.
115 (bfd_elf32_bfd_reloc_type_lookup): Re-define as
116 elf32_i860_reloc_type_lookup.
117
7dca057b
JL
1182000-08-04 Rodney Brown <RodneyBrown@pmsc.com>
119
120 * som.c (struct fixup_format): Constify `format'.
121 (som_hppa_howto_table): Use SOM_HOWTO macro.
122 (try_prev_fixup, hppa_som_reloc): Decorate unused parameter.
123 (som_bfd_reloc_type_lookup): Likewise.
124 (compare_subspaces): Remove unused `count1', `count2'.
125 (som_begin_writing): Remove unused `total_reloc_size'.
126 (som_bfd_derive_misc_symbol_info): Decorate unused parameter.
127 (som_print_symbol, som_bfd_is_local_label_name): Likewise.
128 (som_set_reloc_info): Constify `cp'. Remove unused `addend'.
129 (som_find_nearest_line): Decorate unused parameter(s).
130 (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise.
131 (som_bfd_link_split_section): Likewise.
132
bc67d8a6
NC
1332000-08-03 Nick Clifton <nickc@cygnus.com>
134
135 * section.c: Restore backed out code.
136 * elf.c: Restore backed out code.
137 (copy_private_bfd_data): Fix bug preventing stipped dynamic
138 binaries from working.
139 * bfd-in2.h: Regenerate.
140
c0f7859b
L
1412000-08-03 H.J. Lu <hjl@gnu.org>
142
143 * section.c: Back out the change made by Nick Clifton
144 <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic
145 binaries.
146 * bfd-in2.h: Likewise.
147 * elf.c: Likewise.
148
61ff1804
AO
1492000-08-03 Alexandre Oliva <aoliva@redhat.com>
150
151 * elf32-sh.c (sh_elf_reloc_loop): Warning removal.
152
a87fdb8d
JE
1532000-07-31 Jason Eckhardt <jle@cygnus.com>
154
155 * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860.
156 * bfd-in2.h, libbfd.h: Regenerate.
157
5c440b1e
NC
1582000-07-31 Nick Clifton <nickc@cygnus.com>
159
160 * section.c (struct sec): Add new boolean field 'segment_mark'.
161 (STD_SECTION): Initialise new field to zero.
162
163 * bfd-in2.h: Regenerate.
164
165 * elf.c (copy_private_bfd_data): Reorganise section to segment
166 mapping to cope with moved sections requiring new segments,
167 and overlapping segments.
168 (SEGMENT_END): New macro: Return the end address of a segment.
169 (IS_CONTAINED_BY_VMA): New macro: Determine if a segment
170 contains a section by comparing their VMA addresses.
171 (IS_CONTAINED_BY_LMA): New macro: Determine if a segment
172 contains a section by comparing their LMA addresses.
173 (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a
174 section should be included in a segment.
175 (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment
176 follows another in memory.
177 (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two
178 segments overlap.
179
24208c5c
JE
180200007-22 Jason Eckhardt <jle@cygnus.com>
181
182 * cpu-i860.c: Added comments.
183
184 * elf32-i860.c (TARGET_LITTLE_SYM): Defined to
185 bfd_elf32_i860_little_vec.
186 (TARGET_LITTLE_NAME): Defined to "elf32-i860-little".
187 (ELF_MAXPAGESIZE): Changed to 4096.
188
189 * targets.c (bfd_elf32_i860_little_vec): Declaration of
190 new target.
191 (bfd_target_vector): Added bfd_elf32_i860_little_vec.
192
193 * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added
194 config for little endian elf32 i860.
195 (targ_defvec): Define for the new config above
196 as "bfd_elf32_i860_little_vec".
197 (targ_selvecs): Define for the new config above
198 as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
199
200 * configure.in (bfd_elf32_i860_little_vec): Added recognition
201 of new target vec.
202
203 * configure: Regenerated.
204
456981d7
L
2052000-07-27 H.J. Lu <hjl@gnu.org>
206
207 * elflink.h (elf_merge_symbol): Take one more argument,
208 dt_needed, to indicate if the symbol comes from a DT_NEEDED
209 entry. Don't overide the existing weak definition if dt_needed
210 is true.
211 (elf_link_add_object_symbols): Pass dt_needed to
212 elf_merge_symbol ().
213
755cfd29
NC
2142000-07-27 Nick Clifton <nickc@cygnus.com>
215
216 * elflink.h (elf_link_size_reloc_section): Zeroes the section's
217 allocated contents.
218
1a6df346
GK
2192000-07-25 Geoffrey Keating <geoffk@cygnus.com>
220
adfdf838
GK
221 * configure.host (*-*-aix*): AIX has 'long long' always.
222
1a6df346
GK
223 * coff-rs6000.c (xcoff_write_one_armap_big): New procedure.
224 (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps.
225 (xcoff_write_archive_contents_big): Don't update the offset
226 of the symbol table, xcoff_write_armap will do it.
227
313ba8d6
UC
2282000-07-23 Ulf Carlsson <ulfc@engr.sgi.com>
229
230 * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead
231 of dynobj for SGI_COMPAT checks.
232
3eb6f68f 2332000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
20bccb34
NC
234
235 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function.
236 * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration.
237 * bfd-in2.h: Regenerate.
238
7a3120d9
NC
2392000-07-21 Nick Clifton <nickc@cygnus.com>
240
241 * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of
242 range symbol indices in relocs and issue an error message.
243
4d538889
L
2442000-07-20 H.J. Lu <hjl@gnu.org>
245
246 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check
247 info->new_dtags when setting DT_FLAGS_1. It will only be set
248 by the new linker options. It shouldn't break anything.
249
b586af58
L
2502000-07-20 H.J. Lu <hjl@gnu.org>
251
252 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1
253 only if info->new_dtags is true.
254
c25373b7
L
2552000-07-20 H.J. Lu <hjl@gnu.org>
256
257 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set
258 DT_RUNPATH and DT_FLAGS only if info->new_dtags is true.
259
06c15ad7
HPN
2602000-07-20 Hans-Peter Nilsson <hp@axis.com>
261
262 * Makefile.am (ALL_MACHINES): Add cpu-cris.lo.
263 (ALL_MACHINES_CFILES): Add cpu-cris.c.
264 (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo.
265 (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c.
266 (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules.
267 * Makefile.in: Rebuild.
268 * aclocal.m4: Rebuild.
269 * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris.
270 * archures.c (enum bfd_architecture): Add bfd_arch_cris.
271 (bfd_cris_arch): Declare.
272 (bfd_archures_list): Add bfd_cris_arch.
273 * bfd-in2.h: Rebuild.
274 * config.bfd: (cris-*-*): New target.
275 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors.
276 * configure: Rebuild.
277 * elf.c (prep_headers): Add bfd_arch_cris.
278 * libbfd.h: Rebuild.
279 * libaout.h (enum machine_type): Add M_CRIS.
280 * reloc.c: Add CRIS relocations.
3bd336f7 281 * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare.
06c15ad7
HPN
282 (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec.
283 * cpu-cris.c, aout-cris.c, elf32-cris.c: New files.
284 * po/POTFILES.in, po/bfd.pot: Regenerate.
285
d6cf2879
L
2862000-07-19 H.J. Lu <hjl@gnu.org>
287
288 * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set
289 DF_TEXTREL if DT_TEXTREL is set.
290 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
291 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
292 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
293 * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise.
294 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
295 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
296 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
297 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
298 * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise.
299 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
300
c25373b7 301 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also
d6cf2879
L
302 set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if
303 DT_RPATH is set.
304 Set the DT_FLAGS and DT_FLAGS_1 entries if necessary.
305
74816898
L
3062000-07-19 H.J. Lu <hjl@gnu.org>
307
308 * bfd-in.h (bfd_elf_set_dt_needed_soname): New.
309 * bfd-in2.h: Rebuild.
310
311 * elf-bfd.h (elf_obj_tdata): Add dt_soname.
312 (elf_dt_soname): New.
313
314 * elf.c (bfd_elf_set_dt_needed_soname): New.
315
316 * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED
317 entry if the shared object loaded by DT_NEEDED is used to
318 resolve the reference in a regular object.
319
36a30e65
L
3202000-07-19 H.J. Lu <hjl@gnu.org>
321
322 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG,
323 DT_DEPAUDIT and DT_AUDIT as strings.
324
1d713d9e
NC
3252000-07-19 Nick Clifton <nickc@cygnus.com>
326
327 * format.c: Fix formatting.
328
d48188b9
L
3292000-07-19 H.J. Lu <hjl@gnu.org>
330
331 * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM.
332
94558834
L
3332000-07-19 H.J. Lu <hjl@gnu.org>
334
335 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW,
336 DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ,
337 DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ,
338 DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1,
339 DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT,
340 DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT,
341 DT_FLAGS_1, DT_USED and DT_CHECKSUM.
342
125c4a69
NC
343Tue Jul 18 13:11:54 2000 Andrew Cagney <cagney@b1.cygnus.com>
344
345 * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move
346 renamed functions from here...
347 (assign_section_numbers): Use renamed functions.
348 (prep_headers): Use renamed functions.
349
350 * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here.
351 * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update.
352 * bfd-in2.h: Regenerate.
353
31a9bdd9
UC
3542000-07-18 Ulf Carlsson <ulfc@engr.sgi.com>
355
356 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add
313ba8d6 357 parenthesis in if statement.
31a9bdd9 358
f7cb7d68
UC
3592000-07-17 Koundinya K <kk@ddeorg.soft.net>
360
361 Enable the support for Traditional MIPS.
362 * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand
363 return ict_none appropriately for traditional mips targets.
364 (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips.
365 (STUB_MOVE): Conditionalize for traditonal mips.
366 (STUB_LI16): Likewise.
367 (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making
368 room for RTPROC header.
369 (_bfd_mips_elf_modify_segment_map): For a normal mips executable set
370 the permission for the PT_DYNAMIC as read, write and execute.
371 (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING
372 for traditonal mips.
373 (_bfd_mips_elf_create_dynamic_sections): Add the symbol
374 _DYNAMIC_LINKING for traditonal mips.
375 (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP
376 in case of traditonal mips.
377 (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT
378 entry is required. For a function if PLT is not required then set the
379 corresponding hash table entry to 0.
380 (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for
381 traditonal mips.
382 (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a
383 shared object set the value to 0.
384 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol
385 _DYNAMIC_LINKING for traditonal mips.
386 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP
387 for traditonal mips.
388
930d924d
L
3892000-07-15 H.J. Lu <hjl@gnu.org>
390
391 * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL.
392
e67f03db
DD
3932000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
394
395 * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing
396 out a structure that is BFD_IN_MEMORY.
397
0ba2a60e
AM
3982000-07-11 Alan Modra <alan@linuxcare.com.au>
399
400 * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of
401 bfd pointer. Print section id instead of bfd pointer for local
402 syms. Prefix addend with `+' for global syms as well as local.
403 Correct calculation of name component lengths.
404 (elf64_hppa_check_relocs): Update call to get_dyn_name.
405
406 From David Huggins-Daines <dhd@linuxcare.com>
407 * elf-hppa.h (elf_hppa_relocate_section): Update calls here too.
408 * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings.
409 (elf64_hppa_modify_segment_map): Likewise.
410
6d9019e4
AC
411Tue Jul 11 17:21:52 2000 Andrew Cagney <cagney@b1.cygnus.com>
412
413 * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA
414 addresses to be "naturally" sign extended. Return -1 if unknown.
0ba2a60e 415 * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration.
6d9019e4
AC
416 * bfd-in2.h: Regenerate.
417
23e2c83b
AC
418Tue Jul 11 16:25:52 2000 Andrew Cagney <cagney@b1.cygnus.com>
419
420 * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32
421 and ECOF_SIGNED_64 to list ways to extract an offset.
422 (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in,
423 ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out):
424 Update.
425 * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64.
426 * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32.
427
448cafa4
AC
428Tue Jul 11 16:03:04 2000 Andrew Cagney <cagney@b1.cygnus.com>
429
430 * elfcode.h (elf_object_p): Use bfd_set_start_address and not
431 bfd_get_start_address.
432 (elf_swap_ehdr_in): Sign extend e_entry when applicable.
433 (elf_swap_ehdr_out): Ditto.
434
83ea41ad
NC
4352000-07-10 Alexander Aganichev <AAganichev@hypercom.com>
436
437 * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for
438 compatibility with older binutils.
439
3df7b4e2
AM
4402000-07-10 Alan Modra <alan@linuxcare.com.au>
441
442 * section.c (bfd_make_section_anyway): Start section_id at 0x10.
443 (STD_SECTION): Avoid negative ids, instead use 0 to 3.
444
b7af50e3
AM
445 From Ryan Bradetich <rbradetich@uswest.net>
446 * dwarf1.c (parse_die): Cure signed/unsigned char warnings.
447 (parse_line_table): Ditto.
448 (_bfd_dwarf1_find_nearest_line): Ditto.
449 * syms.c (cmpindexentry): Remove extra `*' from params.
450
adb76a3e
UC
4512000-07-09 Koundinya K <kk@ddeorg.soft.net>
452
453 * elf32-mips.c (sort_dynamic_relocs): New Function.
454 (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs
455 via qsort to sort the dynamic relocations in increasing r_symndx
456 value.
457
edd21aca
AM
4582000-07-09 Alan Modra <alan@linuxcare.com.au>
459
460 * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add
461 ATTRIBUTE_UNUSED to unused args.
462 (get_opd): Likewise.
463 (get_plt): Likewise.
464 (get_dlt): Likewise.
465 (get_stub): Likewise.
466 (elf64_hppa_adjust_dynamic_symbol): Likewise.
467 (elf64_hppa_link_output_symbol_hook): Likewise.
468 (elf64_hppa_check_relocs): Delete unused var.
469 (elf64_hppa_size_dynamic_sections): Likewise.
470 (elf64_hppa_finalize_opd): Likewise.
471 (elf64_hppa_finalize_dynreloc): Likewise.
472 (elf64_hppa_modify_segment_map): Likewise.
473 (elf64_hppa_finish_dynamic_sections): Likewise.
474
475 * elf-hppa.h (elf_hppa_final_write_processing): Add
476 ATTRIBUTE_UNUSED to unused args.
477 (elf_hppa_final_link_relocate): Likewise.
478 (elf_hppa_record_segment_addrs): Add paretheses.
479 (elf_hppa_relocate_section): Constify dyn_name.
480
481 From David Huggins-Daines <dhd@linuxcare.com>
482 * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and
483 rearrange case statement so that it gets preferred to 32-bit ones.
484
485 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use
486 asection->id instead of address of asection structure.
487 (elf32_hppa_size_stubs): Likewise.
488
489 * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section
490 for .init* and .fini*.
491
492 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers
493 and addends used in stub names to 32 bits.
494 (elf32_hppa_size_stubs): Likewise.
495
496 * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend
497 twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32,
498 not bfd_put_64. Fix minor comment typo and formatting.
499
500 Changes to create multiple linker stubs, positioned immediately
501 before the section where they are required.
502 * elf32-hppa.c: Don't include hppa_stubs.h.
503 (elf32_hppa_stub_hash_entry): Add a pointer to the stub section.
504 (elf32_hppa_stub_hash_table): Delete.
505 (elf32_hppa_link_hash_entry): Delete.
506 (elf32_hppa_link_hash_table): Use plain bfd_hash_table for
507 stub_hash_table, and store the struct here rather than a pointer.
508 Delete output_symbol_count. Add offset array. Change
509 global_value to a bfd_vma.
510 (elf32_hppa_stub_hash_lookup): Use table instead of table->root.
511 (elf32_hppa_stub_hash_traverse): Delete.
512 (elf32_hppa_name_of_stub): Delete.
513 (elf32_hppa_link_hash_lookup): Delete.
514 (elf32_hppa_link_hash_traverse): Delete.
515 (elf32_hppa_stub_hash_table_init): Delete.
516 (elf32_hppa_size_of_stub): Pass input section and offset rather
517 than location and calculate location here. Don't pass name as all
518 stubs are now the same size.
519 (elf32_hppa_stub_hash_newfunc): Init new fields.
520 (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table
521 too.
522 (elf32_hppa_bfd_final_link_relocate): Cast enums to int before
523 comparing against ints. Rewrite stub handling code.
524 (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned.
525 Case enums to int before comparing against ints. Remove
526 bfd_reloc_dangerous case.
527 (elf32_hppa_build_one_stub): Rewrite.
528 (elf32_hppa_size_one_stub): New function.
529 (elf32_hppa_build_stubs): Rewrite.
530 (elf32_hppa_size_stubs): Pass in linker call-back functions.
531 Rewrite stub-handling specific code.
532
533 * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype.
534
535 * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo.
536
537 * hppa_stubs.h: Delete.
538 * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h
539 (elf32-hppa.lo): Remove hppa_stubs.h from dependencies.
540 * Makefile.in: Regenerate.
541
542 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and
543 e_nlrsel.
544
545 * libhppa.h (hppa_field_adjust): Correct e_nsel case.
546
547 * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset
548 and section name for bfd_reloc_notsupported error message.
549 (elf32_hppa_bfd_final_link_relocate): Print reasons for returning
550 bfd_reloc_notsupported.
551 (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd.
552
553 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle
554 undefined weak symbols for all relocs.
555 (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch
556 offsets are relative to one past the delay slot.
557 (elf32_hppa_size_stubs): Account for reloc addend when calculating
558 branch destination. Put addend into stub name too.
559 (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and
560 adjust by 8 when deciding whether a linker stub is needed. Put
561 addend into stub name as for above.
562
563 * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on
564 various args and vars.
565 (elf32_hppa_bfd_final_link_relocate): Here too.
566 (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for
567 inner block var to avoid shadowing.
568
569 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg
570 unsigned.
571 * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto.
572 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto.
573 (elf_hppa_fake_sections): Rename local var to avoid shadowing.
574
575 * libhppa.h: Change practically all unsigned ints to plain ints.
576 Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for
577 prototypes.
578
579 From Ryan Bradetich <rbradetich@uswest.net>
580 * libhppa.h (hppa_opcode_type): New enum to replace #define's.
581 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to
582 suit above.
583 From David Huggins-Daines <dhd@linuxcare.com>
584 * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants
585 to the new OP_* ones.
586
587 * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on
588 error exit. Bail out earlier on plabel relocs that we aren't
589 interested in. Don't tell elf32_hppa_stub_hash_lookup to copy
590 string, and then don't free our copy.
591 (elf32_hppa_build_one_stub): Make insn unsigned int.
592
593 * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only
594 available with BL, not BE and BLE.
595
596 * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example
597 code for elf arg relocs.
598 (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local
599 argument with elf_link_hash_entry h. Handle undefined weak
600 symbols. Move $global$ lookup from here...
601 (elf32_hppa_relocate_section): ...to here. Return correct error
602 message for non-handled relocs.
603 (elf32_hppa_size_of_stub): Correctly test branch range. Previous
604 wrong test was -0x3ffff to +0x40000.
605
606 * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R,
607 R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches;
608 Handle them as such.
609 (elf_hppa_relocate_insn): Fix a typo.
610
611 * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete.
612 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
613 assemble_17, assemble_21): Delete.
614 Supply defines for all 64 possible opcodes.
615 (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode
616 formats. Handle COMICLR.
617 (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11,
618 -10, -16, 16, 22.
619
620 * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite.
621 (elf32_hppa_bfd_final_link_relocate): Major rewrite.
622 (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls
623 to suit.
624 (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all
625 the local syms - did this code get deleted accidentally? Ignore
626 undefined and undefweak syms.
627
628 * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost
629 block. Use it instead of elf64_hppa_hash_table (info).
630 (elf_hppa_final_link_relocate): Use hppa_info instead of
631 elf64_hppa_hash_table (info).
632
633 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
634 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
635 (hppa_rebuild_insn): Mask immediate bits here instead.
636 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
637
52b219b5
AM
6382000-07-08 Alan Modra <alan@linuxcare.com.au>
639
640 * section.c (struct sec): Add id field. Tidy comment formatting.
641 (bfd_make_section_anyway): Set id.
642 (STD_SECTION): Init id too.
643 Change CONST to const throughout.
644 * archures.c (bfd_arch_info): Tidy comment.
645 (bfd_arch_list): Change a CONST to const.
646 * libbfd-in.h: Tidy comments and replace CONST with const.
647 * elf-bfd.h: Likewise.
648 * libbfd.h: Regenerate.
649 * bfd-in2.h: Regenerate.
650 * libcoff.h: Regenerate.
651
8000a618
DD
6522000-07-07 DJ Delorie <dj@redhat.com>
653
654 * archive.c (_bfd_write_archive_contents): Add an informative
655 comment.
656
c3b7c767
NC
6572000-07-06 Kazu Hirata <kazu@hxi.com>
658
659 * srec.c: Fix formatting.
660
302ab118
DD
6612000-06-05 DJ Delorie <dj@redhat.com>
662
663 * MAINTAINERS: new
664
ed1de528
AO
6652000-07-04 Alexandre Oliva <aoliva@redhat.com>
666
667 * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol
668 value of PC-relative offsets.
669
70bcb145
JW
6702000-07-03 Jim Wilson <wilson@cygnus.com>
671
672 * elf64-alpha.c (alpha_elf_size_info): New.
673 (elf_backend_size_info): Define to alpha_elf_size_info.
674 * elfcode.h (elf_size_info): Change hash bucket size to 4.
675
b8ee63fa
UC
6762000-07-03 Ulf Carlsson <ulfc@engr.sgi.com>
677
678 * elf32-mips.c: Include elf32-target.h again for the traditional
679 MIPS targets.
680
00d2865b
NC
6812000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
682
683 * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup):
684 Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings.
685 (avr_info_to_howto_rela): Likewise.
686 (elf32_avr_gc_mark_hook): Likewise.
687 (elf32_avr_gc_sweep_hook): Likewise.
688 (elf32_avr_relocate_section): Likewise.
689
e4202681
NC
6902000-07-03 Mark Elbrecht <snowball3@bigfoot.com>
691
692 * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into
693 an external symbol for a non-shared, non-relocatable link.
694
6952000-07-03 Nick Clifton <nickc@redhat.com>
696
99d6ac2f
NC
697 * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol
698 is an external symbol.
e4202681
NC
699 (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak
700 external symbol.
701
289c596c
NC
7022000-07-03 Kazu Hirata <kazu@hxi.com>
703
704 * reloc16.c: Fix formatting.
705
dd745cfa
UC
7062000-07-01 Koundinya K <kk@ddeorg.soft.net>
707
708 * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4*
709 to add a new target for traditional mips i.e
710 bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec.
711 * configure.in: Likewise.
712 * configure: Rebuild.
713 * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in
714 bfd_target_vector.
715 (bfd_elf32_tradlittlemips_vec): Likewise.
716 * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test
717 to see that elfNN_bed does not get redefined even if the target file
718 is included twice for a chip. See elf32-mips.c.
719
0bdaf48b
AM
7202000-07-01 Alan Modra <alan@linuxcare.com.au>
721
722 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
723 (CLEANFILES): Add DEPA.
724 * Makefile.in: Regenerate.
725
c75df619
DD
7262000-06-30 DJ Delorie <dj@cygnus.com>
727
728 * peicode.h (coff_swap_filehdr_in): can't use e_magic because we
729 can't assume the PE header is at 0x80.
730
b4b415e5
DD
7312000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
732
cda43a1d 733 * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH.
b4b415e5 734
addd3117
DD
7352000-06-28 Mark Elbrecht <snowball3@bigfoot.com>
736
737 * go32stub.h: Update stub.
738
65aa24b6
NC
7392000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
740
741 * archures.c (bfd_mach_avr5): Define.
742 * bfd-in2.h (bfd_mach_avr5): Define.
743 * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to
744 bfd_mach_avr5, add bfd_mach_avr4. Update comments.
745 (compatible): Update comment. Add missing test.
746 * elf32-avr.c (avr_final_link_relocate): Support 8K wrap
747 for avr2 and avr4. Simplify 8K wrap code.
748 (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5.
749 (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5.
750
cc040812
NC
7512000-06-26 Kazu Hirata <kazu@hxi.com>
752
753 * coff-h8300.c: Fix formatting.
754 * cpu-h8300.c: Likewise.
755
b1bcb49f
AO
7562000-06-24 Alexandre Oliva <aoliva@redhat.com>
757
758 * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)'
759 for local symbols whose names are unknown.
760
1581f8c9
AM
7612000-06-22 Alan Modra <alan@linuxcare.com.au>
762
763 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
764 find one.
765 * Makefile.in: Regenerate.
766 * doc/Makefile.in: Regenerate.
767
bbeb2e03
L
7682000-06-20 H.J. Lu <hjl@gnu.org>
769
770 * Makefile.am: Rebuild dependency.
771 * Makefile.in: Rebuild.
772
8a20f077
UC
7732000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
774
775 * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function.
776 (elf_backend_copy_indirect_symbol): Map to the new function.
777
2ab47eed
AM
7782000-06-20 Alan Modra <alan@linuxcare.com.au>
779
780 * archive.c (normalize): Correct pointer comparison when checking
781 for backslashes.
782 (bfd_bsd_truncate_arname): Likewise.
783 (bfd_gnu_truncate_arname): Likewise.
784
b305ef96
UC
7852000-06-20 Ulf Carlsson <ulfc@engr.sgi.com>
786
787 * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual
788 sections elf_{text,data}_{section,symbol}.
789 * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove.
790 (_bfd_mips_elf_hide_symbol): New function.
791 (elf_backend_hide_symbol): Map to the new function.
792 (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD
793 definitions of mips_elf_{text,data}_{section,symbol}.
794 (mips_elf_local_relocation_p): Try to find the direct symbol
795 based on new check_forced argument.
796 (mips_elf_calculate_relocation): Use new version of
797 mips_elf_local_relocation_p.
798 (mips_elf_relocate_section): Likewise.
799 (_bfd_mips_elf_relocate_section): Likewise.
800 (mips_elf_sort_hash_table): Only assert that have enough GOT
801 space.
802 (mips_elf_got16_entry): Match all 32 bits to the existing GOT
803 entry if the relocation based on the new external argument.
804 (mips_elf_create_dynamic_relocation): Assert that we have a
805 section contents allocated where we can swap out the dynamic
806 relocations.
807 (mips_elf_calculate_relocation): Find the real hash-table entry
808 correctly by using h->root.root.type. Only create a dynamic
809 relocation entry if the symbol is defined in a shared library.
810 Create an external GOT entry for the GOT16 relocation if the
811 symbol was forced local.
812 (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a
813 dynamic index if the symbol was forced local.
814
8152000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
816
817 * elf32-mips.c: Fix typos in comments.
818
1605fc4f
MK
8192000-06-19 Mark Kettenis <kettenis@gnu.org>
820
821 * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef
822 CORE_VERSION_1.
823
60bcf0fa
NC
8242000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
825
826 * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild.
827 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS,
828 BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files.
829 * configure.in (bfd_elf32_m68hc12_vec): Recognize.
830 (bfd_elf32_m68hc11_vec): Likewise.
831 * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11.
832 Supports 68hc11 & 68hc12 at the same time.
833 * targets.c (bfd_elf32_m68hc12_vec): Declare and put in
834 bfd_target_vector.
835 (bfd_elf32_m68hc11_vec): Likewise.
836 * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11.
837 * archures.c (bfd_m68hc12_arch): Define and register in global list
838 (bfd_m68hc11_arch): Likewise.
839 * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8,
840 BFD_RELOC_M68HC11_3B): Define.
841 * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support.
842 * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support.
843
f41cbf03
UC
8442000-06-18 Ulf Carlsson <ulfc@engr.sgi.com>
845
846 * elf_bfd.h (struct elf_backend_data): Add info argument to
847 elf_backend_hide_symbol.
848 (_bfd_elf_link_hash_hide_symbol): Likewise.
849 * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise.
850 * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise.
851 * elflink.h (elf_link_add_object_symbols): Likewise.
852 (elf_link_assign_sym_version): Likewise.
853
689be717
L
8542000-06-18 H.J. Lu <hjl@gnu.org>
855
856 * coff-i386.c (coff_i386_reloc): Don't return in case of
857 output_bfd == (bfd *) NULL if COFF_WITH_PE is defined.
858 Compensate PE relocations when linking with non-PE object
859 files to generate a non-PE executable.
860
9a8f3bb7
UC
8612000-06-17 Ulf Carlsson <ulfc@engr.sgi.com>
862
863 * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write
864 GOT entries if we're doing a static link or -Bsymbolic link.
865
32f0787a
UC
8662000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
867
868 * elflink.h (elf_link_adjust_relocs): Check for and call backend
869 specifific swap_reloc_{in,out} and swap_reloca_{in,out} if
870 available.
871 (elf_link_output_relocs): Likewise.
872 (elf_reloc_link_order): Likewise.
873
87f33987
ND
8742000-06-16 Nicholas Duffek <nsd@redhat.com>
875
876 * archures.c (enum bfd_architecture): #define constants for
877 PowerPc and RS6000 machine numbers.
878 * bfd-in2.h: Regenerate.
879 * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch
880 to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc
881 and RS6000 machine numbers using #defined constants from
882 archures.c.
883 * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000
884 machine numbers using #defined constants from archures.c. Add
885 entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify
886 64-bit words in 620 entry.
887 * cpu-rs6000.c (arch_info_struct): Create with entries for RS1,
888 RSC, and RS2.
889 (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k).
890
a2fdf270
ND
8912000-06-16 Nicholas Duffek <nsd@cygnus.com>
892
893 * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64.
894 * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field.
895 * libcoff.h (struct xcoff_tdata): Define xcoff64 field.
896
9bd09e22
ND
8972000-06-16 Nicholas Duffek <nsd@redhat.com>
898
899 * bfd-in.h (bfd_family_coff): Define.
900 * bfd-in2.h: Regenerate.
901 * coffgen.c (coff_count_linenumbers, coff_symbol_from,
902 coff_find_nearest_line): Check COFFness using bfd_family_coff()
903 instead of bfd_target_coff_flavour.
904 * cofflink.c (_bfd_coff_final_link): Likewise.
905 * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to
906 exclude XCOFF files.
907 * reloc.c (bfd_perform_relocation, bfd_install_relocation):
908 Likewise.
909 * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour.
910 * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour.
911 * xcofflink.c (XCOFF_XVECP): Delete.
912 (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol,
913 bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc,
914 bfd_xcoff_record_link_assignment,
915 bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with
916 check for bfd_target_xcoff_flavour.
917
59d9f049
ND
9182000-06-16 Nicholas Duffek <nsd@redhat.com>
919
920 * rs6000-core.c: Support 64-bit core files, support pre-4.3 core
921 files on AIX 4.3.
922 (read_hdr): New function.
923 (rs6000coff_core_p): Store mstsave or __context64 struct instead
924 of trying to extract individual registers. Set abfd->arch_info
925 to match the architecture that created the core file.
926 (rs6000coff_get_section_contents): Delete.
927 * xcoff-target.h (rs6000coff_get_section_contents): Delete.
928
63e39178
L
9292000-06-14 H.J. Lu <hjl@gnu.org>
930
931 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec)
932 is NULL.
933
bcef29e6
L
9342000-06-13 H.J. Lu <hjl@gnu.org>
935
936 * configure: Regenerate.
937
26bfd1c0
JR
938Tue Jun 13 01:28:57 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
939
940 * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of
941 armpei_little_vec.
942
946efd95
DB
9432000-06-08 David O'Brien <obrien@FreeBSD.org>
944
945 * configure.in (VERSION): Update to show this is the CVS mainline.
946
1b452ec6
AM
9472000-06-07 Alan Modra <alan@linuxcare.com.au>
948
949 * elf32-d10v.c: Include elf/d10v.h
950 (enum reloc_type): Delete.
951 * elf32-d30v.c: Include elf/d30v.h
952 (enum reloc_type): Delete.
953
954 * Makefile.am: Run "make dep-am" to regenerate dependencies.
955 * Makefile.in: Regenerate.
956
957 * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs.
dc47f327
AM
958 (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and
959 move HOWTOs into elf_howto_table.
1b452ec6 960 (R_386_standard, R_386_ext_offset): Define.
dc47f327 961 (R_386_ext, R_386_vt_offset, R_386_vt): Define.
1b452ec6 962 (elf_i386_reloc_type_lookup): Modify calculation of index into
dc47f327 963 elf_howto_table since we've removed the padding.
1b452ec6
AM
964 (elf_i386_info_to_howto_rel): Likewise.
965 (elf_i386_relocate_section): Likewise.
966
e0ebfc61
MS
9672000-06-06 Michael Snyder <msnyder@seadog.cygnus.com>
968
969 * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t.
970
9d6eee78
L
9712000-06-05 H.J. Lu <hjl@gnu.org>
972
973 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
974 an error when seeing an undefined symbol with hidden/internal
975 attribute. It is handled in *_relocate_section ().
976
94b6c40a
L
9772000-06-05 H.J. Lu <hjl@gnu.org>
978
979 * elflink.h (elf_fix_symbol_flags): Follow the link for the
980 indirect symbol for the ELF_LINK_NON_ELF bit.
981 (elf_link_output_extsym): Don't output the indirect symbol even
982 if the ELF_LINK_NON_ELF bit is set.
983
0af288f3
C
9842000-06-01 J.T. Conklin <jtc@redback.com>
985
986 * config.bfd (i[3456]86-*-netbsdelf*): New target.
987 (i[3456]86-*-netbsdaout*): New target.
988 (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs.
989 (i[3456]86-*-openbsd*): Likewise.
990
12df4d3c
AC
991Tue May 30 15:39:04 2000 Andrew Cagney <cagney@b1.cygnus.com>
992
993 * trad-core.c: From hpux-core.c, include <dirent.h> or
994 <sys/ndir.h> when possible.
995
c0ae4ccc
NC
9962000-05-31 Nick Clifton <nickc@cygnus.com>
997
998 * opintl.h (_(String)): Explain why dgettext is used instead
999 of gettext.
1000
321fa097
UD
10012000-05-31 Ulrich Drepper <drepper@redhat.com>
1002
1003 * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version
1004 definitions. We must not assume they are sorted in the file
1005 according to their index numbers.
1006
70d72e0e
AM
10072000-05-31 Alan Modra <alan@linuxcare.com.au>
1008
1009 * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field
1010 selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and
1011 R_PARISC_DIR17F are for absolute branches; Handle them as such.
1012
96f6d4c4
NC
10132000-05-30 Nick Clifton <nickc@cygnus.com>
1014
1015 * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB,
1016 80960CA, 80960MC as valid machine names.
1017
38048eb9
L
10182000-05-30 H.J. Lu <hjl@gnu.org>
1019
1020 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the
1021 visibility bits if the symbol is undefined. Correctly handle
1022 weak undefined symbols with hidden and internal attributes.
1023
1024 * elflink.h (elf_link_add_object_symbols): Always turn the
1025 symbol into local if it has the hidden or internal attribute.
1026
8c763017
PB
10272000-05-29 Philip Blundell <philb@gnu.org>
1028
1029 * ppcboot.c: Add packed attribute if compiling with GCC.
1030
1ae00f9d
AM
10312000-05-29 Anatoly Vorobey <mellon@pobox.com>
1032
1033 * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal.
1034
4a938328
MS
10352000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
1036
1037 * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus,
1038 elfcore_grok_psinfo): Add code to allow debugging a 32-bit
1039 corefile on a 64-bit (Sparc Solaris) host. Also clean up
1040 a few old comments.
1041
5af11cab
AM
10422000-05-26 Alan Modra <alan@linuxcare.com.au>
1043
2114f57b
AM
1044 * Makefile.am: Update dependencies with "make dep-am"
1045 * Makefile.in: Regenerate.
1046
5af11cab
AM
1047 * sysdep.h (gettext, dgettext, dcgettext, textdomain,
1048 bindtextdomain): Replace defines with those from intl/libgettext.h
1049 to quieten gcc warnings.
1050
10512000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
1052
1053 * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH.
1054
1055 * archive.c (normalize, bfd_bsd_truncate_arname,
1056 bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support
1057 file names with backslashes.
1058
1059 * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file
1060 before opening it.
1061
1062 * sysdep.h: Include filenames.h.
1063
b6cdd0fd
AM
10642000-05-26 Alan Modra <alan@linuxcare.com.au>
1065
1066 * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777.
1067
f7775d95
JJ
10682000-05-26 Jakub Jelinek <jakub@redhat.com>
1069
1070 * elf64-sparc.c (sparc64_elf_relax_section): New.
1071 (sparc64_elf_relocate_section): Optimize tail call into branch always
1072 if possible.
1073 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1074 (elf32_sparc_relax_section): New.
1075
6c08d697
JJ
10762000-05-26 Jakub Jelinek <jakub@redhat.com>
1077
1078 * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters.
1079 Remove unusued variables.
1080 (sparc64_elf_relocate_section): Change r_symndx type to unsigned long.
1081 (sparc64_elf_merge_private_bfd_data): Fix shared library case from
1082 previous fix, so that shared libs really don't influence targets
1083 extension mask and memory model.
1084
edb72b3b
L
10852000-05-23 H.J. Lu <hjl@gnu.org>
1086
1087 * elf64-alpha.c (elf64_alpha_relocate_section): Check
1088 h->root.other not h->other.
ba09750c
L
1089 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
1090
1091 * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo.
edb72b3b 1092
3a27a730
L
10932000-05-23 H.J. Lu <hjl@gnu.org>
1094
1095 * elf32-i386.c (elf_i386_relocate_section): Don't allow the
1096 undefined symbol with the non-default visibility attributes.
1097 * elf-hppa.h (elf_hppa_relocate_section): Likewise.
1098 * elf32-arm.h (elf32_arm_relocate_section): Likewise.
1099 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1100 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1101 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1102 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
1103 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1104 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1105 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1106 * elf64-ia64.c (elf64_ia64_relocate_section): Likewise.
1107 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1108
748abff6
RH
11092000-05-22 Richard Henderson <rth@cygnus.com>
1110
1111 * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI,
1112 PCREL22, PCREL64I. Zero size of special relocs.
1113 (elf64_ia64_reloc_type_lookup): Likewise.
1114 (USE_BRL, oor_brl, oor_ip): New.
1115 (elf64_ia64_relax_section): New.
1116 (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I.
1117 (elf64_ia64_install_value): Likewise, plus PCREL21BI.
1118 (elf64_ia64_relocate_section): Likewise.
1119 (bfd_elf64_bfd_relax_section): New.
1120 * reloc.c (BFD_RELOC_IA64_PCREL21BI): New.
1121 (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New.
1122 * bfd-in2.h, libbfd.h: Regenerate.
1123
fb67355a
NC
11242000-05-22 Nick Clifton <nickc@cygnus.com>
1125
1126 * configure.in : Add peigen.lo to MIPS PE targets.
1127 * configure: Regenerate.
1128
1fe494a5
NC
11292000-05-22 Momchil Velikov <velco@fadata.bg>
1130
1131 * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess
748abff6 1132 only if it is known for both input and output bfds. Separate
1fe494a5
NC
1133 error message strings as in some languages, it may be necessary
1134 to change more than one place in the string to change between
1135 'big' and 'little'.
1136
1137 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline
1138 endianess checks, call _bfd_generic_verify_endian_match() instead.
1139
1140 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise.
1141
1142 * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise.
1143
1144 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify
1145 endianess before checking bfd flavours.
1146
32c092c3
L
11472000-05-22 H.J. Lu <hjl@gnu.org>
1148
1149 * elflink.h (elf_link_output_extsym): Clear the visibility
1150 field for symbols not defined locally.
1151
df6d9773
JL
11522000-05-18 Alan Modra <alan@linuxcare.com.au>
1153
1154 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
1155 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
1156 (hppa_rebuild_insn): Mask immediate bits here instead.
1157 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
1158
7ad34365
NC
11592000-05-18 Momchil Velikov <velco@fadata.bg>
1160
1161 * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting
1162 relocs for an executable, ensure that they are virtual addresses.
1163
d1dab720
JL
1164Thu May 18 10:55:47 2000 Jeffrey A Law (law@cygnus.com)
1165
1166 * config.bfd (hppa*64*-*-hpux11*): New target triplet.
1167
a712da20
NC
11682000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
1169 Rick Gorton <gorton@scrugs.lkg.dec.com>
1170
1171 * elflink.h: Add emitrelocations support: when enabled, relocation
1172 information and relocation sections are put into final output
1173 executables. If the emitrelocations flag is set, do the following:
1174 (elf_bfd_final_link): Emit relocation sections.
1175 (elf_link_input_bfd): Compute relocation section contents.
1176 (elf_gc_sections): Don't clean relocation sections.
1177
10febd84
CM
11782000-05-16 Catherine Moore <clm@cygnux.com>
1179
1180 * som.c (som_decode_symclass): Recognize weak symbols.
1181
db8503c4
AM
11822000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com>
1183
1184 * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that
1185 read idata section only from dataoff.
1186 (pe_print_edata): Correctly check for valid eat_member.
1187
851cde10
JR
1188Tue May 16 00:04:11 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1189
1190 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
1191
1bde2d57
PB
11922000-05-14 Philip Blundell <philb@gnu.org>
1193
1194 * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets.
1195
a76b448c
AM
11962000-05-12 Alan Modra <alan@linuxcare.com.au>
1197
9ee25201
AM
1198 * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec
1199
a76b448c
AM
1200 * peigen.c (pe_print_idata): Look for .idata section and print
1201 info even if data directory has zero entries. Read idata section
1202 starting from dataoff, and adjust all data offsets to suit. Cast
1203 all bfd_vma vars to unsigned long before passing to fprintf.
1204 * peigen.c (pe_print_edata): Similarly, look for .edata section
1205 and print info even if data directory has zero entries. Cast
1206 all bfd_vma vars to unsigned long before passing to fprintf.
1207
1208 From Szabolcs Szakacsits <szaka@F-Secure.com>
1209 * peigen.c (pe_print_idata): Use bfd_section_size rather than data
1210 directory size which may be bogus.
1211 * peigen.c (pe_print_edata): Similarly.
1212
72730e0c
AM
12132000-05-09 Alan Modra <alan@linuxcare.com.au>
1214
1215 * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela
1216 section is empty.
1217 (copy_private_bfd_data): Allow for space possibly taken up by elf
1218 headers when calculating segment physical address from lma.
1219
8181c403
AM
12202000-05-08 Alan Modra <alan@linuxcare.com.au>
1221
bfde9f99
AM
1222 * versados.c (versados_scan): Init stringlen and pass_2_done.
1223
b35efbcd
AM
1224 * trad-core.c (trad_unix_core_file_p): Return
1225 bfd_error_wrong_format rather than bfd_error_file_truncated.
1226
8181c403
AM
1227 * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to
1228 add_data_entry. DataDirectory virtual address is relative.
1229 (pe_print_idata): Account for relative DataDirectory virtual
1230 addresses. Don't trash datasize inside POWERPC_LE_PE code.
1231 (pe_print_edata): Similarly.
1232
1233 From Szabolcs Szakacsits <szaka@F-Secure.com>
1234 * peigen.c (dir_names): Add Delay Import Directory.
1235 (pe_print_idata): Always search for bfd section containing
1236 idata address rather than looking up section name. Print this
1237 section name rather than .idata.
1238 (pe_print_edata): Similarly. Also print some fields as %08lx.
1239 (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as
1240 Win32Version.
1241
2c38bc20
CP
1242Fri May 5 20:44:40 2000 Clinton Popetz <cpopetz@cygnus.com>
1243
1244 * xcoff.h: Rename to xcoff-target.h
1245 * Makefile.am: Change all instances of xcoff.h to xcoff-target.h
1246 * coff-rs6000.c: Ditto.
1247 * coff64-rs6000.c: Ditto.
1248 * coff-pmac.c: Ditto.
1249 * Makefile.in: Regenerate.
1250
c6664dfb
CP
1251Fri May 5 16:51:03 2000 Clinton Popetz <cpopetz@cygnus.com>
1252
1253 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags):
1254 Change U802TOC64MAGIC to U803XTOCMAGIC.
1255
3425c182
MS
12562000-05-04 Michael Snyder <msnyder@seadog.cygnus.com>
1257
1258 * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1.
1259 * bfd-in.h: Prototype bfd_elf_get_arch_size.
1260 * bfd-in2.h: Prototype bfd_elf_get_arch_size.
1261
7c30ac37
AM
12622000-05-04 Alan Modra <alan@linuxcare.com.au>
1263
1264 * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma.
1265