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