Restore hppa-elf32 to working order.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
edd21aca
AM
12000-07-09 Alan Modra <alan@linuxcare.com.au>
2
3 * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add
4 ATTRIBUTE_UNUSED to unused args.
5 (get_opd): Likewise.
6 (get_plt): Likewise.
7 (get_dlt): Likewise.
8 (get_stub): Likewise.
9 (elf64_hppa_adjust_dynamic_symbol): Likewise.
10 (elf64_hppa_link_output_symbol_hook): Likewise.
11 (elf64_hppa_check_relocs): Delete unused var.
12 (elf64_hppa_size_dynamic_sections): Likewise.
13 (elf64_hppa_finalize_opd): Likewise.
14 (elf64_hppa_finalize_dynreloc): Likewise.
15 (elf64_hppa_modify_segment_map): Likewise.
16 (elf64_hppa_finish_dynamic_sections): Likewise.
17
18 * elf-hppa.h (elf_hppa_final_write_processing): Add
19 ATTRIBUTE_UNUSED to unused args.
20 (elf_hppa_final_link_relocate): Likewise.
21 (elf_hppa_record_segment_addrs): Add paretheses.
22 (elf_hppa_relocate_section): Constify dyn_name.
23
24 From David Huggins-Daines <dhd@linuxcare.com>
25 * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and
26 rearrange case statement so that it gets preferred to 32-bit ones.
27
28 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use
29 asection->id instead of address of asection structure.
30 (elf32_hppa_size_stubs): Likewise.
31
32 * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section
33 for .init* and .fini*.
34
35 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers
36 and addends used in stub names to 32 bits.
37 (elf32_hppa_size_stubs): Likewise.
38
39 * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend
40 twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32,
41 not bfd_put_64. Fix minor comment typo and formatting.
42
43 Changes to create multiple linker stubs, positioned immediately
44 before the section where they are required.
45 * elf32-hppa.c: Don't include hppa_stubs.h.
46 (elf32_hppa_stub_hash_entry): Add a pointer to the stub section.
47 (elf32_hppa_stub_hash_table): Delete.
48 (elf32_hppa_link_hash_entry): Delete.
49 (elf32_hppa_link_hash_table): Use plain bfd_hash_table for
50 stub_hash_table, and store the struct here rather than a pointer.
51 Delete output_symbol_count. Add offset array. Change
52 global_value to a bfd_vma.
53 (elf32_hppa_stub_hash_lookup): Use table instead of table->root.
54 (elf32_hppa_stub_hash_traverse): Delete.
55 (elf32_hppa_name_of_stub): Delete.
56 (elf32_hppa_link_hash_lookup): Delete.
57 (elf32_hppa_link_hash_traverse): Delete.
58 (elf32_hppa_stub_hash_table_init): Delete.
59 (elf32_hppa_size_of_stub): Pass input section and offset rather
60 than location and calculate location here. Don't pass name as all
61 stubs are now the same size.
62 (elf32_hppa_stub_hash_newfunc): Init new fields.
63 (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table
64 too.
65 (elf32_hppa_bfd_final_link_relocate): Cast enums to int before
66 comparing against ints. Rewrite stub handling code.
67 (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned.
68 Case enums to int before comparing against ints. Remove
69 bfd_reloc_dangerous case.
70 (elf32_hppa_build_one_stub): Rewrite.
71 (elf32_hppa_size_one_stub): New function.
72 (elf32_hppa_build_stubs): Rewrite.
73 (elf32_hppa_size_stubs): Pass in linker call-back functions.
74 Rewrite stub-handling specific code.
75
76 * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype.
77
78 * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo.
79
80 * hppa_stubs.h: Delete.
81 * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h
82 (elf32-hppa.lo): Remove hppa_stubs.h from dependencies.
83 * Makefile.in: Regenerate.
84
85 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and
86 e_nlrsel.
87
88 * libhppa.h (hppa_field_adjust): Correct e_nsel case.
89
90 * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset
91 and section name for bfd_reloc_notsupported error message.
92 (elf32_hppa_bfd_final_link_relocate): Print reasons for returning
93 bfd_reloc_notsupported.
94 (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd.
95
96 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle
97 undefined weak symbols for all relocs.
98 (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch
99 offsets are relative to one past the delay slot.
100 (elf32_hppa_size_stubs): Account for reloc addend when calculating
101 branch destination. Put addend into stub name too.
102 (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and
103 adjust by 8 when deciding whether a linker stub is needed. Put
104 addend into stub name as for above.
105
106 * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on
107 various args and vars.
108 (elf32_hppa_bfd_final_link_relocate): Here too.
109 (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for
110 inner block var to avoid shadowing.
111
112 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg
113 unsigned.
114 * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto.
115 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto.
116 (elf_hppa_fake_sections): Rename local var to avoid shadowing.
117
118 * libhppa.h: Change practically all unsigned ints to plain ints.
119 Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for
120 prototypes.
121
122 From Ryan Bradetich <rbradetich@uswest.net>
123 * libhppa.h (hppa_opcode_type): New enum to replace #define's.
124 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to
125 suit above.
126 From David Huggins-Daines <dhd@linuxcare.com>
127 * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants
128 to the new OP_* ones.
129
130 * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on
131 error exit. Bail out earlier on plabel relocs that we aren't
132 interested in. Don't tell elf32_hppa_stub_hash_lookup to copy
133 string, and then don't free our copy.
134 (elf32_hppa_build_one_stub): Make insn unsigned int.
135
136 * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only
137 available with BL, not BE and BLE.
138
139 * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example
140 code for elf arg relocs.
141 (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local
142 argument with elf_link_hash_entry h. Handle undefined weak
143 symbols. Move $global$ lookup from here...
144 (elf32_hppa_relocate_section): ...to here. Return correct error
145 message for non-handled relocs.
146 (elf32_hppa_size_of_stub): Correctly test branch range. Previous
147 wrong test was -0x3ffff to +0x40000.
148
149 * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R,
150 R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches;
151 Handle them as such.
152 (elf_hppa_relocate_insn): Fix a typo.
153
154 * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete.
155 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
156 assemble_17, assemble_21): Delete.
157 Supply defines for all 64 possible opcodes.
158 (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode
159 formats. Handle COMICLR.
160 (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11,
161 -10, -16, 16, 22.
162
163 * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite.
164 (elf32_hppa_bfd_final_link_relocate): Major rewrite.
165 (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls
166 to suit.
167 (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all
168 the local syms - did this code get deleted accidentally? Ignore
169 undefined and undefweak syms.
170
171 * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost
172 block. Use it instead of elf64_hppa_hash_table (info).
173 (elf_hppa_final_link_relocate): Use hppa_info instead of
174 elf64_hppa_hash_table (info).
175
176 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
177 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
178 (hppa_rebuild_insn): Mask immediate bits here instead.
179 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
180
52b219b5
AM
1812000-07-08 Alan Modra <alan@linuxcare.com.au>
182
183 * section.c (struct sec): Add id field. Tidy comment formatting.
184 (bfd_make_section_anyway): Set id.
185 (STD_SECTION): Init id too.
186 Change CONST to const throughout.
187 * archures.c (bfd_arch_info): Tidy comment.
188 (bfd_arch_list): Change a CONST to const.
189 * libbfd-in.h: Tidy comments and replace CONST with const.
190 * elf-bfd.h: Likewise.
191 * libbfd.h: Regenerate.
192 * bfd-in2.h: Regenerate.
193 * libcoff.h: Regenerate.
194
8000a618
DD
1952000-07-07 DJ Delorie <dj@redhat.com>
196
197 * archive.c (_bfd_write_archive_contents): Add an informative
198 comment.
199
c3b7c767
NC
2002000-07-06 Kazu Hirata <kazu@hxi.com>
201
202 * srec.c: Fix formatting.
203
302ab118
DD
2042000-06-05 DJ Delorie <dj@redhat.com>
205
206 * MAINTAINERS: new
207
ed1de528
AO
2082000-07-04 Alexandre Oliva <aoliva@redhat.com>
209
210 * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol
211 value of PC-relative offsets.
212
70bcb145
JW
2132000-07-03 Jim Wilson <wilson@cygnus.com>
214
215 * elf64-alpha.c (alpha_elf_size_info): New.
216 (elf_backend_size_info): Define to alpha_elf_size_info.
217 * elfcode.h (elf_size_info): Change hash bucket size to 4.
218
b8ee63fa
UC
2192000-07-03 Ulf Carlsson <ulfc@engr.sgi.com>
220
221 * elf32-mips.c: Include elf32-target.h again for the traditional
222 MIPS targets.
223
00d2865b
NC
2242000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
225
226 * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup):
227 Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings.
228 (avr_info_to_howto_rela): Likewise.
229 (elf32_avr_gc_mark_hook): Likewise.
230 (elf32_avr_gc_sweep_hook): Likewise.
231 (elf32_avr_relocate_section): Likewise.
232
e4202681
NC
2332000-07-03 Mark Elbrecht <snowball3@bigfoot.com>
234
235 * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into
236 an external symbol for a non-shared, non-relocatable link.
237
2382000-07-03 Nick Clifton <nickc@redhat.com>
239
99d6ac2f
NC
240 * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol
241 is an external symbol.
e4202681
NC
242 (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak
243 external symbol.
244
289c596c
NC
2452000-07-03 Kazu Hirata <kazu@hxi.com>
246
247 * reloc16.c: Fix formatting.
248
dd745cfa
UC
2492000-07-01 Koundinya K <kk@ddeorg.soft.net>
250
251 * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4*
252 to add a new target for traditional mips i.e
253 bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec.
254 * configure.in: Likewise.
255 * configure: Rebuild.
256 * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in
257 bfd_target_vector.
258 (bfd_elf32_tradlittlemips_vec): Likewise.
259 * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test
260 to see that elfNN_bed does not get redefined even if the target file
261 is included twice for a chip. See elf32-mips.c.
262
0bdaf48b
AM
2632000-07-01 Alan Modra <alan@linuxcare.com.au>
264
265 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
266 (CLEANFILES): Add DEPA.
267 * Makefile.in: Regenerate.
268
c75df619
DD
2692000-06-30 DJ Delorie <dj@cygnus.com>
270
271 * peicode.h (coff_swap_filehdr_in): can't use e_magic because we
272 can't assume the PE header is at 0x80.
273
b4b415e5
DD
2742000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
275
cda43a1d 276 * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH.
b4b415e5 277
addd3117
DD
2782000-06-28 Mark Elbrecht <snowball3@bigfoot.com>
279
280 * go32stub.h: Update stub.
281
65aa24b6
NC
2822000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
283
284 * archures.c (bfd_mach_avr5): Define.
285 * bfd-in2.h (bfd_mach_avr5): Define.
286 * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to
287 bfd_mach_avr5, add bfd_mach_avr4. Update comments.
288 (compatible): Update comment. Add missing test.
289 * elf32-avr.c (avr_final_link_relocate): Support 8K wrap
290 for avr2 and avr4. Simplify 8K wrap code.
291 (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5.
292 (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5.
293
cc040812
NC
2942000-06-26 Kazu Hirata <kazu@hxi.com>
295
296 * coff-h8300.c: Fix formatting.
297 * cpu-h8300.c: Likewise.
298
b1bcb49f
AO
2992000-06-24 Alexandre Oliva <aoliva@redhat.com>
300
301 * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)'
302 for local symbols whose names are unknown.
303
1581f8c9
AM
3042000-06-22 Alan Modra <alan@linuxcare.com.au>
305
306 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
307 find one.
308 * Makefile.in: Regenerate.
309 * doc/Makefile.in: Regenerate.
310
bbeb2e03
L
3112000-06-20 H.J. Lu <hjl@gnu.org>
312
313 * Makefile.am: Rebuild dependency.
314 * Makefile.in: Rebuild.
315
8a20f077
UC
3162000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
317
318 * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function.
319 (elf_backend_copy_indirect_symbol): Map to the new function.
320
2ab47eed
AM
3212000-06-20 Alan Modra <alan@linuxcare.com.au>
322
323 * archive.c (normalize): Correct pointer comparison when checking
324 for backslashes.
325 (bfd_bsd_truncate_arname): Likewise.
326 (bfd_gnu_truncate_arname): Likewise.
327
b305ef96
UC
3282000-06-20 Ulf Carlsson <ulfc@engr.sgi.com>
329
330 * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual
331 sections elf_{text,data}_{section,symbol}.
332 * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove.
333 (_bfd_mips_elf_hide_symbol): New function.
334 (elf_backend_hide_symbol): Map to the new function.
335 (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD
336 definitions of mips_elf_{text,data}_{section,symbol}.
337 (mips_elf_local_relocation_p): Try to find the direct symbol
338 based on new check_forced argument.
339 (mips_elf_calculate_relocation): Use new version of
340 mips_elf_local_relocation_p.
341 (mips_elf_relocate_section): Likewise.
342 (_bfd_mips_elf_relocate_section): Likewise.
343 (mips_elf_sort_hash_table): Only assert that have enough GOT
344 space.
345 (mips_elf_got16_entry): Match all 32 bits to the existing GOT
346 entry if the relocation based on the new external argument.
347 (mips_elf_create_dynamic_relocation): Assert that we have a
348 section contents allocated where we can swap out the dynamic
349 relocations.
350 (mips_elf_calculate_relocation): Find the real hash-table entry
351 correctly by using h->root.root.type. Only create a dynamic
352 relocation entry if the symbol is defined in a shared library.
353 Create an external GOT entry for the GOT16 relocation if the
354 symbol was forced local.
355 (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a
356 dynamic index if the symbol was forced local.
357
3582000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
359
360 * elf32-mips.c: Fix typos in comments.
361
1605fc4f
MK
3622000-06-19 Mark Kettenis <kettenis@gnu.org>
363
364 * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef
365 CORE_VERSION_1.
366
60bcf0fa
NC
3672000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
368
369 * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild.
370 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS,
371 BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files.
372 * configure.in (bfd_elf32_m68hc12_vec): Recognize.
373 (bfd_elf32_m68hc11_vec): Likewise.
374 * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11.
375 Supports 68hc11 & 68hc12 at the same time.
376 * targets.c (bfd_elf32_m68hc12_vec): Declare and put in
377 bfd_target_vector.
378 (bfd_elf32_m68hc11_vec): Likewise.
379 * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11.
380 * archures.c (bfd_m68hc12_arch): Define and register in global list
381 (bfd_m68hc11_arch): Likewise.
382 * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8,
383 BFD_RELOC_M68HC11_3B): Define.
384 * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support.
385 * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support.
386
f41cbf03
UC
3872000-06-18 Ulf Carlsson <ulfc@engr.sgi.com>
388
389 * elf_bfd.h (struct elf_backend_data): Add info argument to
390 elf_backend_hide_symbol.
391 (_bfd_elf_link_hash_hide_symbol): Likewise.
392 * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise.
393 * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise.
394 * elflink.h (elf_link_add_object_symbols): Likewise.
395 (elf_link_assign_sym_version): Likewise.
396
689be717
L
3972000-06-18 H.J. Lu <hjl@gnu.org>
398
399 * coff-i386.c (coff_i386_reloc): Don't return in case of
400 output_bfd == (bfd *) NULL if COFF_WITH_PE is defined.
401 Compensate PE relocations when linking with non-PE object
402 files to generate a non-PE executable.
403
9a8f3bb7
UC
4042000-06-17 Ulf Carlsson <ulfc@engr.sgi.com>
405
406 * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write
407 GOT entries if we're doing a static link or -Bsymbolic link.
408
32f0787a
UC
4092000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
410
411 * elflink.h (elf_link_adjust_relocs): Check for and call backend
412 specifific swap_reloc_{in,out} and swap_reloca_{in,out} if
413 available.
414 (elf_link_output_relocs): Likewise.
415 (elf_reloc_link_order): Likewise.
416
87f33987
ND
4172000-06-16 Nicholas Duffek <nsd@redhat.com>
418
419 * archures.c (enum bfd_architecture): #define constants for
420 PowerPc and RS6000 machine numbers.
421 * bfd-in2.h: Regenerate.
422 * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch
423 to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc
424 and RS6000 machine numbers using #defined constants from
425 archures.c.
426 * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000
427 machine numbers using #defined constants from archures.c. Add
428 entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify
429 64-bit words in 620 entry.
430 * cpu-rs6000.c (arch_info_struct): Create with entries for RS1,
431 RSC, and RS2.
432 (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k).
433
a2fdf270
ND
4342000-06-16 Nicholas Duffek <nsd@cygnus.com>
435
436 * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64.
437 * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field.
438 * libcoff.h (struct xcoff_tdata): Define xcoff64 field.
439
9bd09e22
ND
4402000-06-16 Nicholas Duffek <nsd@redhat.com>
441
442 * bfd-in.h (bfd_family_coff): Define.
443 * bfd-in2.h: Regenerate.
444 * coffgen.c (coff_count_linenumbers, coff_symbol_from,
445 coff_find_nearest_line): Check COFFness using bfd_family_coff()
446 instead of bfd_target_coff_flavour.
447 * cofflink.c (_bfd_coff_final_link): Likewise.
448 * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to
449 exclude XCOFF files.
450 * reloc.c (bfd_perform_relocation, bfd_install_relocation):
451 Likewise.
452 * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour.
453 * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour.
454 * xcofflink.c (XCOFF_XVECP): Delete.
455 (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol,
456 bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc,
457 bfd_xcoff_record_link_assignment,
458 bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with
459 check for bfd_target_xcoff_flavour.
460
59d9f049
ND
4612000-06-16 Nicholas Duffek <nsd@redhat.com>
462
463 * rs6000-core.c: Support 64-bit core files, support pre-4.3 core
464 files on AIX 4.3.
465 (read_hdr): New function.
466 (rs6000coff_core_p): Store mstsave or __context64 struct instead
467 of trying to extract individual registers. Set abfd->arch_info
468 to match the architecture that created the core file.
469 (rs6000coff_get_section_contents): Delete.
470 * xcoff-target.h (rs6000coff_get_section_contents): Delete.
471
63e39178
L
4722000-06-14 H.J. Lu <hjl@gnu.org>
473
474 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec)
475 is NULL.
476
bcef29e6
L
4772000-06-13 H.J. Lu <hjl@gnu.org>
478
479 * configure: Regenerate.
480
26bfd1c0
JR
481Tue Jun 13 01:28:57 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
482
483 * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of
484 armpei_little_vec.
485
946efd95
DB
4862000-06-08 David O'Brien <obrien@FreeBSD.org>
487
488 * configure.in (VERSION): Update to show this is the CVS mainline.
489
1b452ec6
AM
4902000-06-07 Alan Modra <alan@linuxcare.com.au>
491
492 * elf32-d10v.c: Include elf/d10v.h
493 (enum reloc_type): Delete.
494 * elf32-d30v.c: Include elf/d30v.h
495 (enum reloc_type): Delete.
496
497 * Makefile.am: Run "make dep-am" to regenerate dependencies.
498 * Makefile.in: Regenerate.
499
500 * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs.
dc47f327
AM
501 (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and
502 move HOWTOs into elf_howto_table.
1b452ec6 503 (R_386_standard, R_386_ext_offset): Define.
dc47f327 504 (R_386_ext, R_386_vt_offset, R_386_vt): Define.
1b452ec6 505 (elf_i386_reloc_type_lookup): Modify calculation of index into
dc47f327 506 elf_howto_table since we've removed the padding.
1b452ec6
AM
507 (elf_i386_info_to_howto_rel): Likewise.
508 (elf_i386_relocate_section): Likewise.
509
e0ebfc61
MS
5102000-06-06 Michael Snyder <msnyder@seadog.cygnus.com>
511
512 * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t.
513
9d6eee78
L
5142000-06-05 H.J. Lu <hjl@gnu.org>
515
516 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
517 an error when seeing an undefined symbol with hidden/internal
518 attribute. It is handled in *_relocate_section ().
519
94b6c40a
L
5202000-06-05 H.J. Lu <hjl@gnu.org>
521
522 * elflink.h (elf_fix_symbol_flags): Follow the link for the
523 indirect symbol for the ELF_LINK_NON_ELF bit.
524 (elf_link_output_extsym): Don't output the indirect symbol even
525 if the ELF_LINK_NON_ELF bit is set.
526
0af288f3
C
5272000-06-01 J.T. Conklin <jtc@redback.com>
528
529 * config.bfd (i[3456]86-*-netbsdelf*): New target.
530 (i[3456]86-*-netbsdaout*): New target.
531 (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs.
532 (i[3456]86-*-openbsd*): Likewise.
533
12df4d3c
AC
534Tue May 30 15:39:04 2000 Andrew Cagney <cagney@b1.cygnus.com>
535
536 * trad-core.c: From hpux-core.c, include <dirent.h> or
537 <sys/ndir.h> when possible.
538
c0ae4ccc
NC
5392000-05-31 Nick Clifton <nickc@cygnus.com>
540
541 * opintl.h (_(String)): Explain why dgettext is used instead
542 of gettext.
543
321fa097
UD
5442000-05-31 Ulrich Drepper <drepper@redhat.com>
545
546 * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version
547 definitions. We must not assume they are sorted in the file
548 according to their index numbers.
549
70d72e0e
AM
5502000-05-31 Alan Modra <alan@linuxcare.com.au>
551
552 * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field
553 selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and
554 R_PARISC_DIR17F are for absolute branches; Handle them as such.
555
96f6d4c4
NC
5562000-05-30 Nick Clifton <nickc@cygnus.com>
557
558 * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB,
559 80960CA, 80960MC as valid machine names.
560
38048eb9
L
5612000-05-30 H.J. Lu <hjl@gnu.org>
562
563 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the
564 visibility bits if the symbol is undefined. Correctly handle
565 weak undefined symbols with hidden and internal attributes.
566
567 * elflink.h (elf_link_add_object_symbols): Always turn the
568 symbol into local if it has the hidden or internal attribute.
569
8c763017
PB
5702000-05-29 Philip Blundell <philb@gnu.org>
571
572 * ppcboot.c: Add packed attribute if compiling with GCC.
573
1ae00f9d
AM
5742000-05-29 Anatoly Vorobey <mellon@pobox.com>
575
576 * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal.
577
4a938328
MS
5782000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
579
580 * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus,
581 elfcore_grok_psinfo): Add code to allow debugging a 32-bit
582 corefile on a 64-bit (Sparc Solaris) host. Also clean up
583 a few old comments.
584
5af11cab
AM
5852000-05-26 Alan Modra <alan@linuxcare.com.au>
586
2114f57b
AM
587 * Makefile.am: Update dependencies with "make dep-am"
588 * Makefile.in: Regenerate.
589
5af11cab
AM
590 * sysdep.h (gettext, dgettext, dcgettext, textdomain,
591 bindtextdomain): Replace defines with those from intl/libgettext.h
592 to quieten gcc warnings.
593
5942000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
595
596 * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH.
597
598 * archive.c (normalize, bfd_bsd_truncate_arname,
599 bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support
600 file names with backslashes.
601
602 * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file
603 before opening it.
604
605 * sysdep.h: Include filenames.h.
606
b6cdd0fd
AM
6072000-05-26 Alan Modra <alan@linuxcare.com.au>
608
609 * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777.
610
f7775d95
JJ
6112000-05-26 Jakub Jelinek <jakub@redhat.com>
612
613 * elf64-sparc.c (sparc64_elf_relax_section): New.
614 (sparc64_elf_relocate_section): Optimize tail call into branch always
615 if possible.
616 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
617 (elf32_sparc_relax_section): New.
618
6c08d697
JJ
6192000-05-26 Jakub Jelinek <jakub@redhat.com>
620
621 * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters.
622 Remove unusued variables.
623 (sparc64_elf_relocate_section): Change r_symndx type to unsigned long.
624 (sparc64_elf_merge_private_bfd_data): Fix shared library case from
625 previous fix, so that shared libs really don't influence targets
626 extension mask and memory model.
627
edb72b3b
L
6282000-05-23 H.J. Lu <hjl@gnu.org>
629
630 * elf64-alpha.c (elf64_alpha_relocate_section): Check
631 h->root.other not h->other.
ba09750c
L
632 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
633
634 * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo.
edb72b3b 635
3a27a730
L
6362000-05-23 H.J. Lu <hjl@gnu.org>
637
638 * elf32-i386.c (elf_i386_relocate_section): Don't allow the
639 undefined symbol with the non-default visibility attributes.
640 * elf-hppa.h (elf_hppa_relocate_section): Likewise.
641 * elf32-arm.h (elf32_arm_relocate_section): Likewise.
642 * elf32-i370.c (i370_elf_relocate_section): Likewise.
643 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
644 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
645 * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
646 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
647 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
648 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
649 * elf64-ia64.c (elf64_ia64_relocate_section): Likewise.
650 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
651
748abff6
RH
6522000-05-22 Richard Henderson <rth@cygnus.com>
653
654 * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI,
655 PCREL22, PCREL64I. Zero size of special relocs.
656 (elf64_ia64_reloc_type_lookup): Likewise.
657 (USE_BRL, oor_brl, oor_ip): New.
658 (elf64_ia64_relax_section): New.
659 (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I.
660 (elf64_ia64_install_value): Likewise, plus PCREL21BI.
661 (elf64_ia64_relocate_section): Likewise.
662 (bfd_elf64_bfd_relax_section): New.
663 * reloc.c (BFD_RELOC_IA64_PCREL21BI): New.
664 (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New.
665 * bfd-in2.h, libbfd.h: Regenerate.
666
fb67355a
NC
6672000-05-22 Nick Clifton <nickc@cygnus.com>
668
669 * configure.in : Add peigen.lo to MIPS PE targets.
670 * configure: Regenerate.
671
1fe494a5
NC
6722000-05-22 Momchil Velikov <velco@fadata.bg>
673
674 * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess
748abff6 675 only if it is known for both input and output bfds. Separate
1fe494a5
NC
676 error message strings as in some languages, it may be necessary
677 to change more than one place in the string to change between
678 'big' and 'little'.
679
680 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline
681 endianess checks, call _bfd_generic_verify_endian_match() instead.
682
683 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise.
684
685 * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise.
686
687 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify
688 endianess before checking bfd flavours.
689
32c092c3
L
6902000-05-22 H.J. Lu <hjl@gnu.org>
691
692 * elflink.h (elf_link_output_extsym): Clear the visibility
693 field for symbols not defined locally.
694
df6d9773
JL
6952000-05-18 Alan Modra <alan@linuxcare.com.au>
696
697 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
698 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
699 (hppa_rebuild_insn): Mask immediate bits here instead.
700 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
701
7ad34365
NC
7022000-05-18 Momchil Velikov <velco@fadata.bg>
703
704 * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting
705 relocs for an executable, ensure that they are virtual addresses.
706
d1dab720
JL
707Thu May 18 10:55:47 2000 Jeffrey A Law (law@cygnus.com)
708
709 * config.bfd (hppa*64*-*-hpux11*): New target triplet.
710
a712da20
NC
7112000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
712 Rick Gorton <gorton@scrugs.lkg.dec.com>
713
714 * elflink.h: Add emitrelocations support: when enabled, relocation
715 information and relocation sections are put into final output
716 executables. If the emitrelocations flag is set, do the following:
717 (elf_bfd_final_link): Emit relocation sections.
718 (elf_link_input_bfd): Compute relocation section contents.
719 (elf_gc_sections): Don't clean relocation sections.
720
10febd84
CM
7212000-05-16 Catherine Moore <clm@cygnux.com>
722
723 * som.c (som_decode_symclass): Recognize weak symbols.
724
db8503c4
AM
7252000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com>
726
727 * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that
728 read idata section only from dataoff.
729 (pe_print_edata): Correctly check for valid eat_member.
730
851cde10
JR
731Tue May 16 00:04:11 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
732
733 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
734
1bde2d57
PB
7352000-05-14 Philip Blundell <philb@gnu.org>
736
737 * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets.
738
a76b448c
AM
7392000-05-12 Alan Modra <alan@linuxcare.com.au>
740
9ee25201
AM
741 * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec
742
a76b448c
AM
743 * peigen.c (pe_print_idata): Look for .idata section and print
744 info even if data directory has zero entries. Read idata section
745 starting from dataoff, and adjust all data offsets to suit. Cast
746 all bfd_vma vars to unsigned long before passing to fprintf.
747 * peigen.c (pe_print_edata): Similarly, look for .edata section
748 and print info even if data directory has zero entries. Cast
749 all bfd_vma vars to unsigned long before passing to fprintf.
750
751 From Szabolcs Szakacsits <szaka@F-Secure.com>
752 * peigen.c (pe_print_idata): Use bfd_section_size rather than data
753 directory size which may be bogus.
754 * peigen.c (pe_print_edata): Similarly.
755
72730e0c
AM
7562000-05-09 Alan Modra <alan@linuxcare.com.au>
757
758 * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela
759 section is empty.
760 (copy_private_bfd_data): Allow for space possibly taken up by elf
761 headers when calculating segment physical address from lma.
762
8181c403
AM
7632000-05-08 Alan Modra <alan@linuxcare.com.au>
764
bfde9f99
AM
765 * versados.c (versados_scan): Init stringlen and pass_2_done.
766
b35efbcd
AM
767 * trad-core.c (trad_unix_core_file_p): Return
768 bfd_error_wrong_format rather than bfd_error_file_truncated.
769
8181c403
AM
770 * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to
771 add_data_entry. DataDirectory virtual address is relative.
772 (pe_print_idata): Account for relative DataDirectory virtual
773 addresses. Don't trash datasize inside POWERPC_LE_PE code.
774 (pe_print_edata): Similarly.
775
776 From Szabolcs Szakacsits <szaka@F-Secure.com>
777 * peigen.c (dir_names): Add Delay Import Directory.
778 (pe_print_idata): Always search for bfd section containing
779 idata address rather than looking up section name. Print this
780 section name rather than .idata.
781 (pe_print_edata): Similarly. Also print some fields as %08lx.
782 (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as
783 Win32Version.
784
2c38bc20
CP
785Fri May 5 20:44:40 2000 Clinton Popetz <cpopetz@cygnus.com>
786
787 * xcoff.h: Rename to xcoff-target.h
788 * Makefile.am: Change all instances of xcoff.h to xcoff-target.h
789 * coff-rs6000.c: Ditto.
790 * coff64-rs6000.c: Ditto.
791 * coff-pmac.c: Ditto.
792 * Makefile.in: Regenerate.
793
c6664dfb
CP
794Fri May 5 16:51:03 2000 Clinton Popetz <cpopetz@cygnus.com>
795
796 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags):
797 Change U802TOC64MAGIC to U803XTOCMAGIC.
798
3425c182
MS
7992000-05-04 Michael Snyder <msnyder@seadog.cygnus.com>
800
801 * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1.
802 * bfd-in.h: Prototype bfd_elf_get_arch_size.
803 * bfd-in2.h: Prototype bfd_elf_get_arch_size.
804
7c30ac37
AM
8052000-05-04 Alan Modra <alan@linuxcare.com.au>
806
807 * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma.
808