OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gdb-6.8/] [bfd/] [ChangeLog-0203] - Blame information for rev 178

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 24 jeremybenn
2003-12-19  Kazuhiro Inaoka  
2
 
3
        Adfd m32r-linux and PIC support.  Add new ABI that uses RELA.
4
        * config.bfd (m32r*-*-linux*, m32r*le-*-linux*, m32r*le-*-*): Added.
5
        * configure.in (bfd_elf32_m32rlin_vec, bfd_elf32_m32rlelin_vec,
6
        bfd_elf32_m32rle_vec): Added
7
        * configure: Regenerated.
8
        * elf32-m32r.c (m32r_info_to_howto, m32r_elf_adjust_dynamic_symbol,
9
        m32r_elf_size_dynamic_sections, m32r_elf_create_dynamic_sections,
10
        m32r_elf_finish_dynamic_sections, m32r_elf_finish_dynamic_symbol,
11
        allocate_dynrelocs, readonly_dynrelocs, m32r_elf_reloc_type_class,
12
        m32r_elf_fake_sections): Added.
13
        (m32r_elf_howto_table): Added
14
        R_M32R_16_RELA, R_M32R_32_RELA, R_M32R_24_RELA,
15
        R_M32R_10_PCREL_RELA, R_M32R_18_PCREL_RELA,
16
        R_M32R_26_PCREL_RELA, R_M32R_HI16_ULO_RELA,
17
        R_M32R_HI16_SLO_RELA, R_M32R_LO16_RELA,
18
        R_M32R_SDA16_RELA, R_M32R_RELA_GNU_VTINHERIT,
19
        R_M32R_RELA_GNU_VTENTRY, R_M32R_GOT24,
20
        R_M32R_26_PLTREL, R_M32R_COPY, R_M32R_GLOB_DAT,
21
        R_M32R_JMP_SLOT, R_M32R_RELATIVE, R_M32R_GOTOFF,
22
        R_M32R_GOTPC24, R_M32R_GOT16_HI_ULO,
23
        R_M32R_GOT16_HI_SLO, R_M32R_GOT16_LO,
24
        R_M32R_GOTPC_HI_ULO, R_M32R_GOTPC_HI_SLO,
25
        R_M32R_GOTPC_LO.
26
        (m32r_elf_relocate_section, m32r_elf_check_relocs): Changed for
27
        New ABI.
28
        * reloc.c: Add BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL,
29
        BFD_RELOC_M32R_COPY, BFD_RELOC_M32R_GLOB_DAT,
30
        BFD_RELOC_M32R_JMP_SLOT, BFD_RELOC_M32R_RELATIVE,
31
        BFD_RELOC_M32R_GOTOFF, BFD_RELOC_M32R_GOTPC24,
32
        BFD_RELOC_M32R_GOT16_HI_ULO, BFD_RELOC_M32R_GOT16_HI_SLO,
33
        BFD_RELOC_M32R_GOT16_LO, BFD_RELOC_M32R_GOTPC_HI_ULO,
34
        BFD_RELOC_M32R_GOTPC_HI_SLO, BFD_RELOC_M32R_GOTPC_LO.
35
        * targets.c (bfd_elf32_m32rlin_vec, bfd_elf32_m32rlelin_vec,
36
        bfd_elf32_m32rle_vec): Added.
37
        * bfd-in2.h: Regenerated.
38
        * libbfd.h: Regenerated.
39
 
40
2003-12-19  Danny Smith  
41
 
42
        * coffcode.h (styp_to_sec_flags): Don't treat .reloc section
43
        as SEC_DEBUGGING.
44
 
45
2003-12-18  Richard Sandiford  
46
 
47
        * elf32-mips.c (elf_mips_howto_table_rel): Replace all uses of
48
        mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.  Use
49
        _bfd_mips_elf_hi16_reloc for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16,
50
        _bfd_mips_elf_lo16_reloc for R_MIPS_LO16 and R_MIPS_GNU_REL_LO16,
51
        and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16.  Change rightshift
52
        to 16 for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16.
53
        (mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc)
54
        (mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete.
55
        (_bfd_mips_elf32_gprel16_reloc): Remove special case.
56
        (mips_elf_gprel32_reloc, mips32_64bit_reloc): Likewise.
57
 
58
        * elf64-mips.c (mips_elf64_howto_table_rel): Replace all uses of
59
        mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.  Use
60
        _bfd_mips_elf_hi16_reloc for R_MIPS_HI16, _bfd_mips_elf_lo16_reloc
61
        for R_MIPS_LO16 and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16.
62
        Change R_MIPS_HI16's rightshift to 16.
63
        (mips_elf64_howto_table_rela): Replace all uses of
64
        mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.
65
        Use _bfd_mips_elf_generic_reloc for R_MIPS_GOT16 as well.
66
        (mips_elf64_hi16_reloc, mips_elf64_got16_reloc): Delete.
67
        (mips_elf64_shift6_reloc): Remove special case.  Use
68
        _bfd_mips_elf_generic_reloc instead of returning bfd_reloc_continue.
69
 
70
        * elfn32-mips.c (prev_reloc_section): Delete.
71
        (prev_reloc_address, prev_reloc_addend): Delete.
72
        (elf_mips_howto_table_rel, elf_mips_howto_table_rela): As for
73
        elf64-mips.c
74
        (GET_RELOC_ADDEND, SET_RELOC_ADDEND): Delete.
75
        (mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc)
76
        (mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete.
77
        (mips_elf_gprel16_reloc): Delete use of GET_RELOC_ADDEND.
78
        (mips_elf_literal_reloc, mips_elf_gprel32_reloc): Likewise.
79
        (mips16_jump_reloc, mips16_gprel_reloc): Likewise.
80
        (mips_elf_shift6_reloc): Likewise.  Delete use of SET_RELOC_ADDEND.
81
 
82
        * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Use
83
        _bfd_relocate_contents to install an in-place addend.
84
        (mips_hi16): New structure.
85
        (mips_hi16_list): Moved from elf32-mips.c.
86
        (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_got16_reloc): New functions.
87
        (_bfd_mips_elf_lo16_reloc, _bfd_mips_elf_generic_reloc): New functions.
88
        (mips_elf_calculate_relocation): Assume addend is unshifted.
89
        (_bfd_mips_elf_relocate_section): Don't apply the howto rightshift
90
        on top of the usual high-part shift.  Don't shift the addend right
91
        before calling mips_elf_calculate_relocation.
92
 
93
        * elfxx-mips.h (_bfd_mips_elf_hi16_reloc): Declare.
94
        (_bfd_mips_elf_got16_reloc, _bfd_mips_elf_lo16_reloc): Declare.
95
        (_bfd_mips_elf_generic_reloc): Declare.
96
 
97
2003-12-16  Eric Youngdale  
98
            Nick Clifton  
99
 
100
        * peicode.h (pe_ILF_build_a_bfd): Only skip one instance of each
101
        prefix character, if they are present.
102
 
103
2003-12-15  Dmitry Semyonov  
104
            Nick Clifton  
105
 
106
        * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Ensure that correct flags
107
        are set on known section types.
108
 
109
2003-12-12  Nick Clifton  
110
 
111
        * po/ro.po: Updated translation.
112
 
113
2003-12-12  Alan Modra  
114
 
115
        * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Check for
116
        NULL dyn_h.
117
 
118
2003-12-11  Nick Clifton  
119
 
120
        * elf.c (INCLUDE_SECTION_IN_SEGMENT): Skip PT_GNU_STACK segments.
121
 
122
2003-12-08  Richard Sandiford  
123
 
124
        * elfxx-mips.h, elfxx-mips.c, cpu-mips.c: Convert prototypes.
125
        Remove casts that were only needed for K&R compatibility.
126
 
127
2003-12-08  Alan Modra  
128
 
129
        * elf-bfd.h (struct elf_backend_data): Remove "bfd *" and add
130
        "elflink_hash_entry *" param to elf_backend_link_output_symbol_hook.
131
        Add "elflink_hash_entry *" param to elf_backend_output_arch_syms.
132
        * elflink.h (elf_link_output_sym): Add "elflink_hash_entry *" param,
133
        and pass to output_symbol_hook.
134
        (elf_bfd_final_link): Adjust elf_link_output_sym calls.
135
        (elf_link_output_extsym): Likewise.
136
        (elf_link_input_bfd): Likewise.
137
        * elf32-sh64.c (sh64_elf_link_output_symbol_hook): Adjust.
138
        * elf32-v850.c (v850_elf_link_output_symbol_hook): Likewise.
139
        * elf64-mmix.c (mmix_elf_link_output_symbol_hook): Likewise.
140
        * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Likewise.
141
        * elfxx-mips.c (_bfd_mips_elf_link_output_symbol_hook): Likewise.
142
        * elfxx-mips.h (_bfd_mips_elf_link_output_symbol_hook): Likewise.
143
        * elf64-sparc.c (sparc64_elf_output_arch_syms): Likewise.
144
        * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Likewise.
145
        Validate dynh->h against h.
146
        * elf64-ppc.c (struct ppc_link_hash_entry): Add adjust_done bitfield.
147
        (link_hash_newfunc): Init it.
148
        (adjust_opd_syms): New function.
149
        (ppc64_elf_edit_opd): Set adjust_done when global .opd sym adjusted.
150
        Set opd.adjust for all .opd relocs.  Call adjust_opd_syms.
151
        (ppc64_elf_tls_optimize): Adjust possible .opd sym values here.
152
        (ppc64_elf_relocate_section): Also adjust syms not a multiple of 24.
153
        (ppc64_elf_output_symbol_hook): New function.
154
        (elf_backend_link_output_symbol_hook): Define.
155
 
156
2003-12-07  Richard Sandiford  
157
 
158
        * elf32-mips.c, elfn32-mips.c, elf64-mips.c: Convert prototypes.
159
        Remove casts that were only needed for K&R compatibility.
160
 
161
2003-12-05  Dmitry Semyonov  
162
 
163
        * coff-arm.c (aoutarm_std_reloc_howto [ARM_WINCE]): Set
164
        partial_inplace for these relocs to FALSE for comptability with
165
        the MS linker.
166
        Remap ARM_26D relocation from 5 to 0. This fixes "bad fixup" error
167
        generated by MS linker, and brings the relocation in line the MS
168
        PE documentation.
169
 
170
2003-12-04  H.J. Lu  
171
 
172
        * elf32-ppc.c (ppc_elf_relax_section): Don't check relax_finalizing.
173
 
174
2003-12-04  H.J. Lu  
175
 
176
        * elfxx-ia64.c (elfNN_ia64_relax_section): Use the
177
        need_relax_finalize field in link_info instead of
178
        relax_finalizing to check if the relax finalize pass is being
179
        done.
180
 
181
2003-12-04  Dmitry Semyonov  
182
 
183
        * coff-arm.c (coff_arm_relocate_section, bfd_arm_process_before_allocation):
184
        Change ARM26* to ARM_26* in comments to match definitions.
185
        (coff_arm_adjust_symndx): Replace hard-coded constants with
186
        appropriate definitions (ARM_26*).
187
 
188
2003-12-04  Alan Modra  
189
 
190
        * coff-i860.c (coff_i860_reloc_nyi): Return bfd_reloc_not_supported.
191
        * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Warning fixes.
192
        (mn10300_elf_relax_section): Likewise.
193
        * nlm32-alpha.c (ONES): Define.
194
        (nlm32_alpha_howto_table): Use it to avoid warnings.
195
 
196
2003-12-04  Alan Modra  
197
 
198
        * elf32-i386.c (elf_i386_object_p): Delete.
199
        (elf_backend_object_p): Don't define.
200
        * elf32-s390.c (elf_s390_object_p): No need to alloc tdata here.
201
        * elf32-sh.c (sh_elf_object_p): Likewise.
202
        * elf32-sparc.c (elf32_sparc_object_p): Likewise.
203
        * elf64-alpha.c (elf64_alpha_object_p): Likewise.
204
        * elf64-s390.c (elf_s390_object_p): Likewise.
205
        * elf64-x86-64.c (elf64_x86_64_elf_object_p): Likewise.
206
 
207
2003-12-03  Kazuhiro Inaoka  
208
 
209
        * archures.c (bfd_mach_m32r2): Add new machine type.
210
        * bfd-in2.h: Regenerate.
211
        * cpu-m32r.c : Add new machine type.
212
        * elf32-m32r.c (m32r_elf_object_p, m32r_elf_final_write_processing,
213
        m32r_elf_merge_private_bfd_data): Add support for new machine
214
        type.
215
 
216
2003-12-03  Dave Airlie  
217
 
218
        * config.bfd: Add vax-linux-gnu target.
219
        * configure.in: Likewise.
220
        * configure: Regenerate.
221
 
222
2003-12-03  Alan Modra  
223
 
224
        * ecoff.c (ecoff_link_add_archive_symbols): Update for renamed
225
        bfd_link_hash_entry field "next" -> "und_next".
226
        * linker.c (_bfd_link_hash_newfunc): Likewise.
227
        (bfd_link_add_undef): Likewise.
228
        (_bfd_generic_link_add_archive_symbols): Likewise.
229
        (_bfd_generic_link_add_one_symbol): Likewise.
230
        * xcofflink.c (xcoff_link_add_symbols): Likewise.
231
 
232
2003-12-02  Nick Clifton  
233
 
234
        * configure.in (ALL_LINGUAS): Add ro.
235
        * po/ro.po: New Romanian translation.
236
 
237
2003-12-02  Alan Modra  
238
 
239
        * Makefile.am: Run "make dep-am".
240
        * Makefile.in: Regenerate.
241
 
242
2003-12-01  Dmitry Semyonov  
243
 
244
        * coffcode.h (coff_compute_section_file_positions): Set page_size
245
        to 1 instead of 0 in the case file alignment value is zero.
246
 
247
2003-12-01  Kazu Hirata  
248
 
249
        * coff-rs6000.c: Remove ARGSUSED and VARARGS.
250
        * coff64-rs6000.c: Likewise.
251
        * coffcode.h: Likewise.
252
        * elf32-vax.c: Likewise.
253
        * hash.c: Likewise.
254
        * hppabsd-core.c: Likewise.
255
        * hpux-core.c: Likewise.
256
        * ihex.c: Likewise.
257
        * netbsd-core.c: Likewise.
258
        * osf-core.c: Likewise.
259
        * pdp11.c: Likewise.
260
        * ptrace-core.c: Likewise.
261
        * sco5-core.c: Likewise.
262
        * section.c: Likewise.
263
        * sunos.c: Likewise.
264
        * trad-core.c: Likewise.
265
 
266
2003-12-01  Alan Modra  
267
 
268
        * elf-bfd.h (is_elf_hash_table): Take hash tab rather than info arg.
269
        * elf.c (_bfd_elf_merge_sections): Adjust to suit.
270
        (_bfd_elf_link_just_syms): Likewise.
271
        (bfd_elf_get_needed_list): Likewise.
272
        (bfd_elf_get_runpath_list): Likewise.
273
        (_bfd_elf_link_hash_copy_indirect): Remove unneeded parens.
274
        * elf32-hppa.c (elf32_hppa_setup_section_lists): Don't check hash tab
275
        creator flavour.
276
        (elf32_hppa_set_gp): Look up output sections rather than using htab.
277
        * elf32-i960.c: Comment fix.  Formatting.
278
        * elf32-m32r.c (m32r_elf_add_symbol_hook): Use is_elf_hash_table
279
        rather than testing creator flavour.
280
        * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
281
        * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
282
        * elflink.c (_bfd_elf_link_create_dynamic_sections): Adjust for
283
        is_elf_hash_table change.  Remove redundant test.
284
        (bfd_elf_record_link_assignment): Use is_elf_hash_table rather than
285
        testing creator flavour.
286
        (elf_link_record_local_dynamic_symbol): Adjust for is_elf_hash_table.
287
        (_bfd_elf_fix_symbol_flags): Likewise.
288
        (_bfd_elf_adjust_dynamic_symbol): Likewise.
289
        * elflink.h (elf_link_add_object_symbols): Likewise.  Remove redundant
290
        checks.  Use is_elf_hash_table rather than testing creator flavour.
291
        Use hash_table throughout in place of info->hash.
292
        (elf_add_dynamic_entry): Adjust for is_elf_hash_table change.
293
        (NAME(bfd_elf,size_dynamic_sections)): Likewise.  Remove redundant
294
        check.
295
        (elf_bfd_final_link): Adjust for is_elf_hash_table change.
296
        (elf_link_check_versioned_symbol): Use is_elf_hash_table rather than
297
        testing creator flavour.
298
        (elf_gc_sections): Add is_elf_hash_table check.
299
        (elf_gc_common_finalize_got_offsets): Likewise.
300
        (elf_bfd_discard_info): Adjust for is_elf_hash_table change.  Remove
301
        redundant check.
302
        * elfxx-ia64.c (elfNN_ia64_relax_section): Use is_elf_hash_table
303
        rather than testing creator flavour.
304
 
305
2003-11-28  Christian Groessler  
306
 
307
        * cpu-z8k.c: Convert to ISO C90.
308
        * coff-z8k.c: Likewise.
309
 
310
2003-11-27  Alexandre Oliva  
311
 
312
        * elf-bfd.h (elf_backend_data::elf_backend_modify_segment_map):
313
        Add link info argument.
314
        * elf32-i370.c (elf_backend_modify_segment_map): Likewise.
315
        * elf32-ppc.c (ppc_elf_modify_segment_map): Likewise.
316
        * elf32-xtensa.c (elf_xtensa_modify_segment_map): Likewise.
317
        * elf64-hppa.c (elf64_hppa_modify_segment_map): Likewise.
318
        * elfxx-ia64.c (elfNN_ia64_modify_segment_map): Likewise.
319
        * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Likewise.
320
        * elfxx-mips.h (_bfd_mips_elf_modify_segment_map): Likewise.
321
        * elf.c (assign_file_positions_except_relocs,
322
        assign_file_positions_for_segments): Likewise.  Adjust calls.
323
 
324
2003-11-27  Mark Kettenis  
325
 
326
        * elf.c (elfcore_grok_netbsd_procinfo): Make a pseudosection out
327
        of the note.
328
 
329
2003-11-26  Daniel Jacobowitz  
330
            Richard Sandiford  
331
 
332
        * elfxx-mips.c (mips_elf_set_global_got_offset): Don't set no_fn_stub.
333
        (mips_elf_set_no_stub): New function.
334
        (mips_elf_multi_got): Call it.
335
        (_bfd_mips_elf_finish_dynamic_symbol): If a relocation is needed for
336
        a secondary GOT entry, create an R_MIPS_32 or R_MIPS_64 relocation and
337
        use mips_elf_create_dynamic_relocation to deal with any compatibility
338
        issues.  Store the adjusted addend in the GOT slot.
339
 
340
2003-11-25  Mattias Engdegård  
341
 
342
        * stabs.c (_bfd_link_section_stabs): Skip N_EXCL stabs when
343
        procesing N_BINCL stabs.
344
 
345
2003-11-25  Alan Modra  
346
 
347
        * elf64-ppc.c (ppc_type_of_stub): Disallow stubs other than
348
        ppc_stub_plt_call to symbols defined in shared libs.
349
 
350
2003-11-22  Jakub Jelinek  
351
 
352
        * elf-bfd.h (ELF_LINK_POINTER_EQUALITY_NEEDED): Define new flag.
353
        * elf.c (_bfd_elf_link_hash_copy_indirect): Copy it.
354
        * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
355
        (elf_i386_check_relocs): Set it.
356
        (elf_i386_finish_dynamic_symbol): If it is not set,
357
        clear st_value of SHN_UNDEF symbol.
358
 
359
2003-11-20  Jim Blandy  
360
 
361
        * cpu-powerpc.c (powerpc_compatible): Any ISA in the PowerPC
362
        family is a superset of .
363
 
364
2003-11-20  Martin Schwidefsky  
365
 
366
        * elf32-s390.c (elf_s390_relocate_section): Don't recalculate symbol
367
        section for reloc output and subtract the output section's address
368
        from the addend when converting a relocation into one against a
369
        section symbol.
370
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
371
 
372
2003-11-18  James E Wilson  
373
 
374
        * elfxx-ia64.c (get_fptr): For fptr_rel, use dynobj not abfd.
375
        (elfNN_ia64_size_dynamic_sections): When stripping sections, check
376
        for ia64_info->rel_fptr_sec.
377
 
378
2003-11-18  Alan Modra  
379
 
380
        * elf64-ppc.c (toc_adjusting_stub_needed): Exit early if section
381
        size is zero.
382
 
383
2003-11-17  Daniel Jacobowitz  
384
 
385
        * elf.c (_bfd_elf_link_hash_copy_indirect): Copy
386
        ELF_LINK_HASH_NEEDS_PLT.  Fix formatting.
387
        * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
388
        * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
389
        * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Likewise.
390
        * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise.
391
        * elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise.
392
        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
393
        * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise.
394
        * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise.
395
        * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
396
        * elf32-xtensa.c (elf_xtensa_copy_indirect_symbol): Remove.
397
        (elf_backend_copy_indirect_symbol): Don't define.
398
 
399
2003-11-14  Daniel Jacobowitz  
400
 
401
        * elfxx-mips.c (mips_elf_merge_gots): Weaken assert for local
402
        GOT entries.
403
 
404
2003-11-13  Martin Schwidefsky  
405
 
406
        * elf32-s390.c (elf_s390_relocate_section): Only convert R_390_32
407
        to R_390_RELATIVE. Convert the other relocations against local
408
        symbols to relocations against the start of the section.
409
        * elf64-s390.c (elf_s390_relocate_section): Only convert R_390_64
410
        to R_390_RELATIVE. Convert the other relocations against local
411
        symbols to relocations against the start of the section.
412
 
413
2003-11-11  Nick Clifton  
414
 
415
        * elf-m10300.c (bfd_mn10300_elf_size_dynamic_sections): Use
416
        info->executable not info->shared to decide if a .interp section
417
        should be present.
418
        * elf32-arm.h (elf32_arm_size_dynamic_sections): Likewise.
419
        * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
420
        * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
421
        * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
422
        * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
423
        * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
424
        * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
425
        * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
426
        * elfxx-mips.c (_bfd_mips_size_dynamic_sections): Likewise.
427
        * elflink.h (size_dynamic_sections): Likewise.
428
 
429
2003-11-10  Jonathan Wilson 
430
 
431
        * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Swap out tls pointer.
432
        (_bfd_XXi_final_link_postscript): Look for __tks_used symbol.  If
433
        found initialise the tls data directory entry.
434
 
435
2003-11-07  Alan Modra  
436
 
437
        * elf32-ppc.c (ppc_elf_install_value): Delete.
438
        (shared_stub_entry, stub_entry): Make them arrays of ints.
439
        Remove initial branch.
440
        (ppc_elf_relax_section): Write one branch around all trampolines
441
        instead.  Correct bogus R_PPC_PLTREL24 handling.  Correct
442
        branch range check.  Only use shared_stub_entry when shared.
443
        Test that branches can reach stubs.  Write trampolines out at
444
        end so that just one realloc is used.  Handle little-endian
445
        mode.  Move relevant code from ppc_elf_install_value to here.
446
        (ppc_elf_relocate_section): Move code handling RELAX32 from
447
        ppc_elf_install_value to here.
448
 
449
2003-11-06  Alan Modra  
450
 
451
        * elf32-ppc.c (ppc_elf_howto_raw); Add entry for R_PPC_RELAX32PC.
452
        (ppc_elf_install_value): Handle R_PPC_RELAX32PC.  Merge duplicate
453
        cases.
454
        (shared_stub_entry): Correct opcode.
455
        (ppc_elf_relax_section): Generate R_PPC_RELAX32PC relocs.
456
        (ppc_elf_relocate_section): Handle them.
457
 
458
2003-11-05  Alan Modra  
459
 
460
        * elf.c (_bfd_elf_rela_local_sym): Accept asection **, and return
461
        updated section in case of merged section.
462
        * elf-bfd.h (_bfd_elf_rela_local_sym): Update declaration.
463
        * elf-hppa.h (elf_hppa_relocate_section): Adjust call.
464
        * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
465
        * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
466
        * elf32-arm.h (elf32_arm_relocate_section): Likewise.
467
        * elf32-avr.c (elf32_avr_relocate_section): Likewise.
468
        * elf32-cris.c (cris_elf_relocate_section): Likewise.
469
        * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
470
        * elf32-frv.c (elf32_frv_relocate_section): Likewise.
471
        * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
472
        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
473
        * elf32-i370.c (i370_elf_relocate_section): Likewise.
474
        * elf32-i860.c (elf32_i860_relocate_section): Likewise.
475
        * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
476
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
477
        * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
478
        * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
479
        * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
480
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
481
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
482
        * elf32-sh.c (sh_elf_relocate_section): Likewise.
483
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
484
        * elf32-v850.c (v850_elf_relocate_section) Likewise.
485
        * elf32-vax.c (elf_vax_relocate_section): Likewise.
486
        * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
487
        * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
488
        * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
489
        * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
490
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
491
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
492
        * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
493
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
494
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
495
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
496
 
497
        * elf32-cris.c (cris_elf_relocate_section): Don't recalculate symbol
498
        section for reloc output.
499
        * elf32-i370.c (i370_elf_relocate_section): Likewise.
500
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
501
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
502
        * elf32-vax.c (elf_vax_relocate_section): Likewise.
503
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
504
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
505
 
506
        * elf32-ppc.c (ppc_elf_relocate_section): Don't recalculate everything
507
        for R_PPC_RELAX32 reloc.  Don't bother checking ppc_elf_install_value
508
        return value.
509
        * elf64-ppc.c (ppc64_elf_relocate_section ): Sanity check
510
        sec->id.
511
 
512
2003-11-05  Alan Modra  
513
 
514
        * elf32-d10v.c (extract_rel_addend, insert_rel_addend): New functions.
515
        (elf32_d10v_relocate_section): Use them to handle -r reloc
516
        adjustments, and in place of _bfd_elf_rela_local_sym.
517
 
518
        * cpu-iq2000.c (arch_info_struct): Warning fix.
519
 
520
2003-11-05  Alan Modra  
521
 
522
        * elf32-hppa.c (ELIMINATE_COPY_RELOCS): Define.
523
        (elf32_hppa_copy_indirect_symbol): Don't copy NON_GOT_REF on
524
        weakdefs.
525
        (elf32_hppa_check_relocs): Use ELIMINATE_COPY_RELOCS.
526
        (elf32_hppa_adjust_dynamic_symbol): Likewise.  Copy weakdef
527
        NON_GOT_REF.
528
        (allocate_dynrelocs): Use ELIMINATE_COPY_RELOCS and
529
        SYMBOL_CALLS_LOCAL.  Discard relocs for undef weak syms with
530
        non-default visibility.
531
        (elf32_hppa_relocate_section): Use ELIMINATE_COPY_RELOCS and
532
        SYMBOL_CALLS_LOCAL.
533
 
534
2003-11-04  Alan Modra  
535
 
536
        * aout-target.h, aoutf1.h, bfdio.c, bfdwin.c: Update copyright date.
537
        * coff-apollo.c, coff-sparc.c, coff-w65.c, coff-we32k.c: Ditto.
538
        * coff-z8k.c, coffgen.c, cpu-frv.c, cpu-h8500.c, cpu-hppa.c: Ditto.
539
        * cpu-ia64-opc.c, cpu-m10300.c, cpu-mips.c, cpu-msp430.c: Ditto.
540
        * cpu-rs6000.c, cpu-z8k.c, efi-app-ia32.c, elf32-am33lin.c: Ditto.
541
        * gen-aout.c, hash.c, hp300hpux.c, init.c, mach-o.c: Ditto.
542
        * nlm-target.h, nlm.c, som.h, stabs.c, sysdep.h, xsym.h: Ditto.
543
 
544
        * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Fix
545
        "dereferencing type-punned pointer" warnings.
546
 
547
        * aout-adobe.c (aout_adobe_set_section_contents): Constify location.
548
        * aoutx.h (NAME(aout,set_section_contents)): Ditto.
549
        * bfd-in2.h: Regenerate.
550
        * binary.c (binary_set_section_contents): Ditto.
551
        * bout.c (b_out_set_section_contents): Ditto.
552
        * coff-tic54x.c (tic54x_set_section_contents): Ditto.
553
        * coffcode.h (coff_set_section_contents): Ditto.
554
        * ecoff.c (_bfd_ecoff_set_section_contents): Ditto.
555
        * elf-bfd.h (_bfd_elf_set_section_contents): Ditto.
556
        * elf.c (_bfd_elf_set_section_contents): Ditto.
557
        * elfxx-mips.c (_bfd_mips_elf_set_section_contents): Ditto.
558
        * elfxx-mips.h (_bfd_mips_elf_set_section_contents): Ditto.
559
        * i386msdos.c (msdos_set_section_contents): Ditto.
560
        * ieee.c (ieee_set_section_contents): Ditto.
561
        * ihex.c (ihex_set_section_contents): Ditto.
562
        * libaout.h (NAME(aout,set_section_contents)): Ditto.
563
        * libbfd-in.h (_bfd_nowrite_set_section_contents): Ditto.
564
        (_bfd_generic_set_section_contents): Ditto.
565
        * libbfd.h: Regenerate.
566
        * libbfd.c (_bfd_generic_set_section_contents): Ditto.
567
        * libecoff.h (_bfd_ecoff_set_section_contents): Ditto.
568
        * libnlm.h (nlmNAME(set_section_contents)): Ditto.
569
        (struct nlm_backend_data ): Ditto.
570
        * mmo.c (mmo_set_section_contents): Ditto.
571
        * nlm32-alpha.c (nlm_alpha_mangle_relocs): Ditto.
572
        * nlm32-i386.c (nlm_i386_mangle_relocs): Ditto.
573
        * nlm32-ppc.c (nlm_powerpc_mangle_relocs): Ditto.
574
        * nlm32-sparc.c (nlm_sparc_mangle_relocs): Ditto.
575
        * nlmcode.h (nlm_set_section_contents): Ditto.
576
        * oasys.c (oasys_set_section_contents): Ditto.
577
        * pdp11.c (NAME(aout,set_section_contents)): Ditto.
578
        * ppcboot.c (ppcboot_set_section_contents): Ditto.
579
        * srec.c (srec_set_section_contents): Ditto.
580
        * targets.c (BFD_JUMP_TABLE_WRITE <_bfd_set_section_contents>): Ditto.
581
        * tekhex.c (tekhex_set_section_contents): Ditto.
582
        (move_section_contents): Ditto.
583
        * versados.c (versados_set_section_contents): Ditto.
584
        * vms-misc.c (_bfd_save_vms_section): Ditto.
585
        * vms.c (vms_set_section_contents): Ditto.
586
        * vms.h (_bfd_save_vms_section): Ditto.
587
 
588
2003-11-04  Alan Modra  
589
 
590
        * elf64-ppc.c (ppc_size_one_stub): Size relbrlt.  Accept info arg
591
        rather than htab.
592
        (ppc64_elf_size_stubs): Adjust ppc_size_one_stub traversal.  Zero
593
        relbrlt size.
594
        (ppc64_elf_build_stubs): Allocate space for relbrlt.
595
 
596
2003-11-04  Alan Modra  
597
 
598
        * bfd-in.h (_bfd_elf_tls_setup): Declare.
599
        * bfd-in2.h: Regenerate.
600
        * elf-bfd.h (struct elf_link_tls_segment): Delete.
601
        (struct elf_link_hash_table): Add tls_sec and tls_size.
602
        * elf.c (_bfd_elf_link_hash_table_init): Init tls_sec and tls_size.
603
        * elflink.c (_bfd_elf_tls_setup): New function.
604
        * elflink.h (struct elf_final_link_info): Remove first_tls_sec.
605
        (elf_bfd_final_link): Don't set first_tls_sec here.  Update code
606
        saving tls segment info, round segment size up.
607
        (elf_link_output_extsym): Adjust code using tls segment info.
608
        (elf_link_input_bfd): Likewise.
609
        * elf32-i386.c (dtpoff_base, tpoff): Likewise.
610
        * elf32-s390.c (dtpoff_base, tpoff): Likewise.
611
        * elf32-sh.c (dtpoff_base, tpoff): Likewise.
612
        * elf32-sparc.c (dtpoff_base, tpoff): Likewise.
613
        * elf64-s390.c (dtpoff_base, tpoff): Likewise.
614
        * elf64-x86-64.c (dtpoff_base, tpoff): Likewise.
615
        * elfxx-ia64.c (elfNN_ia64_tprel_base): Likewise.
616
        (elfNN_ia64_dtprel_base): Likewise.
617
        * elf64-alpha.c (alpha_get_dtprel_base): Likewise.
618
        (alpha_get_tprel_base): Likewise.
619
        (struct alpha_relax_info): Remove tls_segment.
620
        (elf64_alpha_relax_got_load): Adjust invocation of
621
        alpha_get_dtprel_base and alpha_get_tprel_base.
622
        (elf64_alpha_relax_tls_get_addr): Likewise.
623
        (elf64_alpha_relax_section): Likewise.
624
        (elf64_alpha_relocate_section): Likewise.
625
        (elf64_alpha_relax_find_tls_segment): Delete.
626
        * elf32-ppc.c (struct ppc_elf_link_hash_table): Remove tls_sec.
627
        (ppc_elf_tls_setup): Call _bfd_elf_tls_setup.  Return section.
628
        (ppc_elf_relocate_section): Adjust to use elf.tls_sec.
629
        * elf32-ppc.h (ppc_elf_tls_setup): Update.
630
        * elf64-ppc.c (struct ppc_link_hash_table): Remove tls_sec.
631
        (ppc64_elf_tls_setup): Call _bfd_elf_tls_setup.  Return section.
632
        (ppc64_elf_tls_optimize): Adjust to use elf.tls_sec.
633
        (ppc64_elf_relocate_section): Likewise.
634
        * elf64-ppc.h (ppc64_elf_tls_setup): Update.
635
 
636
2003-11-03  Daniel Jacobowitz  
637
 
638
        * elf-bfd.h (struct elf_backend_data): Remove plt_header_size.
639
        * elf-m10300.c (elf_backend_plt_header_size): Don't define.
640
        * elf32-arm.h (elf_backend_plt_header_size): Don't define.
641
        * elf32-cris.c (elf_backend_plt_header_size): Don't define.
642
        * elf32-i386.c (elf_backend_plt_header_size): Don't define.
643
        * elf32-mips.c (elf_backend_plt_header_size): Don't define.
644
        * elf32-ppc.c (elf_backend_plt_header_size): Don't define.
645
        * elf32-s390.c (elf_backend_plt_header_size): Don't define.
646
        * elf32-sh.c (elf_backend_plt_header_size): Don't define.
647
        * elf32-sparc.c (elf_backend_plt_header_size): Don't define.
648
        * elf64-alpha.c (elf_backend_plt_header_size): Don't define.
649
        * elf64-hppa.c (elf_backend_plt_header_size): Don't define.
650
        * elf64-mips.c (elf_backend_plt_header_size): Don't define.
651
        * elf64-ppc.c (elf_backend_plt_header_size): Don't define.
652
        * elf64-s390.c (elf_backend_plt_header_size): Don't define.
653
        * elf64-sh64.c (elf_backend_plt_header_size): Don't define.
654
        * elf64-sparc.c (elf_backend_plt_header_size): Don't define.
655
        * elf64-x86-64.c (elf_backend_plt_header_size): Don't define.
656
        * elfn32-mips.c (elf_backend_plt_header_size): Don't define.
657
        * elfxx-ia64.c (elf_backend_plt_header_size): Don't define.
658
        * elfxx-target.h (elf_backend_plt_header_size): Don't define
659
        or include in target initializer.
660
 
661
2003-11-03  Andrew Cagney  
662
 
663
        * section.c (bfd_set_section_contents): Make the "location" buffer
664
        constant.
665
        * bfd-in2.h: Re-generate.
666
 
667
2003-10-30  Andrew Cagney  
668
 
669
        * syms.c: Replace "struct symbol_cache_entry" with "struct
670
        bfd_symbol".
671
        * vms.h, targets.c, section.c, reloc.c, peicode.h: Ditto.
672
        * mipsbsd.c, elf.c, linker.c, elf-bfd.h, ecoff.c: Ditto.
673
        * cpu-z8k.c, cpu-ns32k.c, cpu-h8500.c, bfd.c, bfd-in.h: Ditto.
674
        * bfd-in2.h: Re-generate.
675
 
676
2003-10-30  Jakub Jelinek  
677
 
678
        * elfxx-ia64.c: Include objalloc.h, hashtab.h.
679
        (struct elfNN_ia64_local_hash_entry): Remove root. Add id and r_sym
680
        fields.
681
        (struct elfNN_ia64_local_hash_table): Remove.
682
        (struct elfNN_ia64_link_hash_table): Change loc_hash_table's type
683
        to htab_t.  Add loc_hash_memory field.
684
        (elfNN_ia64_local_hash_table_init, elfNN_ia64_new_loc_hash_entry):
685
        Removed.
686
        (elfNN_ia64_local_htab_hash, elfNN_ia64_local_htab_eq): New
687
        functions.
688
        (elfNN_ia64_hash_table_create): Use hashtab.h hashtable for
689
        loc_hash_table.  Initialize loc_hash_memory.
690
        (elfNN_ia64_hash_table_free): New function.
691
        (elfNN_ia64_local_hash_lookup): Remove.
692
        (elfNN_ia64_local_dyn_sym_thunk): Change into htab_traverse
693
        callback.
694
        (elfNN_ia64_dyn_sym_traverse): Use htab_traverse.
695
        (get_local_sym_hash): Use hashtab.h hashtable for loc_hash_table.
696
        (bfd_elfNN_bfd_link_hash_table_free): Define.
697
 
698
2003-10-30  Alan Modra  
699
 
700
        * elflink.c (_bfd_elf_link_record_dynamic_symbol): Modify versioned
701
        symbol string in place.
702
 
703
2003-10-30  Jim Blandy  
704
 
705
        * cpu-rs6000.c (rs6000_compatible): Check the correct arch_info
706
        object's mach field: all PowerPC machines are supersets of the
707
        original rs6000, but not later rs6000 machines.
708
 
709
2003-10-30  Alan Modra  
710
 
711
        * dwarf2.c (struct attribute): Delete "unsnd", "snd" and "addr".
712
        Add "val" and "sval" fields.
713
        (DW_STRING, DW_UNSND, DW_BLOCK, DW_SND, DW_ADDR): Delete.
714
        (read_attribute_value): Expand and adjust DW_* occurrences.
715
        (scan_unit_for_functions, parse_comp_unit): Likewise.
716
 
717
2003-10-30  Phil Edwards  
718
 
719
        * config.bfd (arm-*-vxworks):  Remove separate stanza; merge with
720
        other common ELF triples.
721
        (i[3-7]86-*-vxworks):  Change to ELF format.
722
        (mips*-*-windiss):  New triple, add to common MIPS/ELF stanza.
723
        (sh-*-vxworks):  New stanza.
724
 
725
2003-10-30  Lars Knoll  
726
            Michael Matz  
727
            Jakub Jelinek  
728
            Alan Modra  
729
 
730
        * merge.c (struct sec_merge_sec_info): Update comment.
731
        (struct sec_merge_hash_entry): Remove entsize.
732
        (sec_merge_hash_lookup): Only adjust alignment when creating.
733
        (sec_merge_emit): Remove register keyword.
734
        (cmplengthentry, last4_eq, last_eq): Delete.
735
        (strrevcmp, strrevcmp_align, is_suffix): New.
736
        (merge_strings): Use them to implement fast suffix merging.
737
        * elf-strtab.c (struct elf_strtab_hash_entry): Update comments.
738
        Make "len" signed.
739
        (_bfd_elf_strtab_add): Lose on >2G strings.
740
        (_bfd_elf_strtab_emit): Don't emit strings with len < 0.
741
        (cmplengthentry, last4_eq): Delete.
742
        (strrevcmp, is_suffix): New.
743
        (_bfd_elf_strtab_finalize): Rework to implement fast suffix merging.
744
 
745
2003-10-29  Daniel Jacobowitz  
746
 
747
        * elf32-arm.h (elf32_arm_final_link_relocate): Move check for
748
        SEC_ALLOC.
749
 
750
2003-10-29  Philip Blundell  
751
 
752
        * elf32-arm.h (elf32_arm_plt0_entry, elf32_arm_plt_entry): New
753
        code sequence.
754
        (PLT_HEADER_SIZE): New.
755
        (struct elf32_arm_pcrel_relocs_copied): Rename to ...
756
        (struct elf32_arm_relocs_copied): ... this.  Count both
757
        pcrel and non-pcrel relocs.  All uses updated.
758
        (struct elf32_arm_link_hash_table): Add pointers to dynamic linker
759
        sections and symbol/section mapping cache.
760
        (create_got_section): New.
761
        (elf32_arm_create_dynamic_sections): New.
762
        (elf_backend_create_dynamic_sections): Use it.
763
        (elf32_arm_final_link_relocate): Support garbage collection of relocs.
764
        (elf32_arm_check_relocs): Likewise.
765
        (elf32_arm_adjust_dynamic_symbol): Likewise.
766
        (elf32_arm_copy_indirect_symbol): New.
767
        (elf32_arm_link_hash_table_create): Initialise new fields.
768
        (elf32_arm_gc_sweep_hook): Implement.
769
        (elf32_arm_discard_copies): Delete.
770
        (elf32_arm_finish_dynamic_symbol): Use new PLT code.
771
        (elf32_arm_finish_dynamic_sections): Likewise.
772
        (elf_backend_can_refcount): Define.
773
        (elf_backend_copy_indirect_symbol): Likewise.
774
        (elf_backend_plt_header_size): Set to PLT_HEADER_SIZE.
775
 
776
2003-10-29  Alan Modra  
777
 
778
        * elf64-ppc.c (elf_backend_grok_prstatus): Define.
779
        (elf_backend_grok_psinfo): Define.
780
        (ppc64_elf_grok_prstatus, ppc64_elf_grok_psinfo): New functions.
781
 
782
        * elf.c (_bfd_elfcore_make_pseudosection): Allow multiple
783
        sections with the same name.
784
        (elfcore_grok_lwpstatus): Likewise.
785
        (elfcore_grok_win32pstatus): Likewise.
786
        (elfcore_grok_note): Likewise.
787
        (elfcore_grok_nto_status): Likewise.
788
        (elfcore_grok_nto_gregs): Likewise.
789
 
790
2003-10-27  Daniel Jacobowitz  
791
 
792
        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Never skip dynamic
793
        objects.
794
 
795
2003-10-14  Richard Sandiford  
796
 
797
        * elfxx-mips.c (mips_elf_create_got_section): Initialize global_gotno.
798
 
799
2003-10-24  H.J. Lu  
800
 
801
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Look up
802
        hash table for real symbols.
803
 
804
2003-10-23  Michael Snyder  
805
 
806
        * section.c (asection): Fix typo in comment.
807
 
808
2003-10-23  Alan Modra  
809
 
810
        * elf64-ppc.c (get_tls_mask): Add toc_symndx param, save toc
811
        reloc symbol index to it.  Don't allow gd syms in shared libs
812
        to be optimized.
813
        (ppc64_elf_tls_optimize): Adjust get_tls_mask call.
814
        (ppc64_elf_size_stubs): Likewise.
815
        (ppc64_elf_relocate_section): Check that tls relocs are only used
816
        with tls syms, and similarly for non-tls.  Correct symbol used
817
        when optimizing toc tls code.
818
 
819
2003-10-22  Nick Clifton  
820
 
821
        * peicode.h (coff_swap_scnhdr_in): Only remove padding when
822
        processing an executable.
823
 
824
2003-10-22  Jakub Jelinek  
825
 
826
        * elflink.c (_bfd_elf_export_symbol): Adjust for globals and locals
827
        field changes.
828
        (_bfd_elf_link_assign_sym_version): Likewise.
829
        * elflink.h (size_dynamic_sections): Likewise.
830
 
831
2003-10-21  Alexandre Oliva  ,
832
            Michael Snyder  
833
 
834
        * archures.c (bfd_mach_sh4a, bfd_mach_sh4al_dsp, bfd_mach_sh4_nofpu,
835
        bfd_mach_sh4a_nofpu): New machine types.
836
        * bfd-in2.h: Rebuilt.
837
        * cpu-sh.c (compatible): Remove unused function.
838
        (SH4A_NEXT, SH4AL_DSP_NEXT, SH4_NOFPU_NEXT, SH4A_NOFPU_NEXT): New.
839
        (arch_info_struct): Add sh4a, sh4al_dsp, sh4-nofpu and sh4a-nofpu.
840
        * elf32-sh.c (sh_elf_set_mach_from_flags): Handle them.
841
 
842
2003-10-21  Wouter van Heyst 
843
 
844
        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Correct text
845
        describing mismatched formats involving the Maverick FP type.
846
 
847
2003-10-21  Anil Paranjpe  
848
 
849
        * binary.c (binary_object_p): Pass machine flag along with
850
        architecture.
851
 
852
2003-10-21  Thorsten Brehm  
853
 
854
        * archures.c (bfd_default_scan): Add support for mcf528x.
855
        * ieee.c (ieee_write_processor): Likewise.
856
 
857
2003-10-21  Peter Barada  
858
            Bernardo Innocenti  
859
 
860
        * archures.c: Add MCF528x (MCFv4) support.
861
        * cpu-m68k.c (arch_info_struct): Likewise.
862
        * bfd-in2.h: Regenerate.
863
 
864
2003-10-20  Andrew Cagney  
865
 
866
        * targets.c: Replace "struct sec" with "struct bfd_section"
867
        * syms.c, sparclynx.c, section.c, opncls.c: Ditto.
868
        * libcoff-in.h, libbfd-in.h, elfxx-target.h: Ditto.
869
        * elf.c, coffgen.c, bfd.c, bfd-in.h, aoutf1.h: Ditto.
870
        * aout-tic30.c, aout-target.h:
871
        * bfd-in2.h, libcoff.h, libbfd.h: Regenerate.
872
 
873
2003-10-18  Hans-Peter Nilsson  
874
 
875
        Support linker relaxation of new R_MMIX_PUSHJ_STUBBABLE relocs.
876
        * elf64-mmix.c (MAX_PUSHJ_STUB_SIZE): New macro.
877
        (struct _mmix_elf_section_data): New member pjs.
878
        (mmix_set_relaxable_size, mmix_elf_get_section_contents): New
879
        functions.
880
        (elf_mmix_howto_table): New entry for R_MMIX_PUSHJ_STUBBABLE.
881
        (mmix_reloc_map): Ditto.
882
        (mmix_elf_relocate_section): Handle R_MMIX_PUSHJ_STUBBABLE.
883
        (mmix_final_link_relocate, mmix_elf_check_common_relocs): Ditto.
884
        (mmix_elf_perform_relocation): Ditto.  Don't mark parameter addr
885
        unused.
886
        (mmix_elf_check_relocs): Move early return to after
887
        mmix_elf_check_common_relocs call.
888
        (mmix_elf_symbol_processing): Fix cut-and-pasto in head comment.
889
        (_bfd_mmix_before_linker_allocation): Rename from
890
        _bfd_mmix_prepare_linker_allocated_gregs.  All referers changed.
891
        Arrange to set the initial relaxable size of sections.
892
        (_bfd_mmix_after_linker_allocation): Rename from
893
        _bfd_mmix_finalize_linker_allocated_gregs.
894
        (mmix_elf_relax_section): Relax a R_MMIX_PUSHJ_STUBBABLE reloc.
895
        (bfd_elf64_get_section_contents): Define.
896
        * reloc.c: Add ENUMX for BFD_RELOC_MMIX_PUSHJ_STUBBABLE.
897
        * libbfd.h, bfd-in2.h: Regenerate.
898
 
899
        * reloc.c (bfd_generic_relax_section): Default-set
900
        section->_cooked_size here.
901
        (bfd_generic_get_relocated_section_contents): Don't set it here.
902
        Explain why.
903
 
904
2003-10-17  John David Anglin  
905
 
906
        * elf32-hppa.c (elf32_hppa_relocate_section): Skip relocation if
907
        output section has been discarded.
908
 
909
2003-10-17  Shrinivas Atre  
910
 
911
        * coff-h8300.c (funcvec_hash_newfunc): Handle normal mode.
912
        (h8300_reloc16_extra_cases): Likewise.
913
        (h8300_bfd_link_add_symbols): Likewise.
914
 
915
2003-10-17 Dhananjay Deshpande 
916
 
917
        * cpu-h8300.c (h8300sxn_info_struct): Correct address size.
918
        (h8300sn_info_struct): Likewise.
919
        (h8300hn_info_struct): Likewise.
920
 
921
2003-10-16  Pavel Roskin  
922
 
923
        * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't calculate image size
924
        for sections which lack size info.
925
 
926
2003-10-17  Danny Smith  
927
 
928
        * configure.host: Add __USE_MINGW_FSEEK to HDEFINES for
929
         mingw32.
930
 
931
2003-10-16  H.J. Lu  
932
 
933
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also warn
934
        undefined patterns with '*'.
935
 
936
2003-10-16  H.J. Lu  
937
 
938
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't
939
        use the last CIE from a different section.
940
        (_bfd_elf_write_section_eh_frame): Don't pad beyond the raw
941
        size of the output section.
942
 
943
2003-10-07  Roland McGrath  
944
 
945
        * elf.c (_bfd_elf_make_section_from_phdr): Set alignment_power of
946
        new section from p_align header field.
947
 
948
2003-10-16  H.J. Lu  
949
 
950
        * elf32-xtensa.c (xtensa_read_table_entries): The external size
951
        of entry is 8 bytes.
952
 
953
2003-10-15  Andrew Cagney  
954
 
955
        * targets.c (BFD_JUMP_TABLE_SYMBOLS): Replace NAME##_get_symtab
956
        with NAME##_canonicalize_symtab.
957
        * libcoff-in.h (coff_canonicalize_symtab): Update.
958
        * xsym.h (bfd_sym_canonicalize_symtab): Update.
959
        * elf-bfd.h (_bfd_elf_canonicalize_symtab): Update.
960
        * coffgen.c (coff_canonicalize_symtab): Update.
961
        * libbfd-in.h (_bfd_nosymbols_canonicalize_symtab): Update.
962
        * libnlm.h (nlmNAME(canonicalize_symtab)): Update.
963
        * ieee.c (ieee_vec): Update comment.
964
        * libecoff.h (_bfd_ecoff_canonicalize_symtab): Update.
965
        * mmo.c (mmo_canonicalize_symtab): Update.
966
        * nlm-target.h (nlm_canonicalize_symtab): Update.
967
        * nlmcode.h (nlm_canonicalize_symtab): Update.
968
        * i386msdos.c (msdos_canonicalize_symtab): Update.
969
        * hp300hpux.c (MY (canonicalize_symtab)): Update.
970
        * oasys.c (oasys_canonicalize_symtab): Update.
971
        * som.c (som_canonicalize_symtab): Update.
972
        * pef.c (bfd_pef_canonicalize_symtab): Update.
973
        * nlmcode.h (nlm_canonicalize_symtab): Update.
974
        * xsym.c (bfd_sym_canonicalize_symtab): Update.
975
        * vms.c (vms_canonicalize_symtab): Update.
976
        * versados.c (versados_canonicalize_symtab): Update.
977
        * mach-o.c (bfd_mach_o_canonicalize_symtab): Update.
978
        * ieee.c (ieee_canonicalize_symtab): Update.
979
        * pdp11.c (NAME(aout,canonicalize_symtab)): Update.
980
        * reloc.c: Update comment.
981
        * libaout.h (NAME(aout,canonicalize_symtab)): Update.
982
        * coff64-rs6000.c (aix5coff64_vec): Update.
983
        * coff64-rs6000.c (bfd_xcoff_aix5_backend_data): Update.
984
        * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update.
985
        * aoutx.h (NAME(aout,canonicalize_symtab)): Update.
986
        * elfxx-target.h (bfd_elfNN_canonicalize_symtab): Update.
987
        * hp300hpux.c (MY_canonicalize_symtab): Update.
988
        * ecoff.c (_bfd_ecoff_canonicalize_symtab): Update.
989
        * aout-tic30.c (MY_canonicalize_symtab): Update.
990
        * aout-target.h (MY_canonicalize_symtab): Update.
991
        * ppcboot.c (ppcboot_canonicalize_symtab): Update.
992
        * elf.c (_bfd_elf_canonicalize_symtab): Update.
993
        * elfcode.h (elf_canonicalize_symtab): Update.
994
        * ihex.c (ihex_canonicalize_symtab): Update.
995
        * tekhex.c (tekhex_canonicalize_symtab): Update.
996
        * binary.c (binary_canonicalize_symtab): Update.
997
        * srec.c (srec_canonicalize_symtab): Update.
998
 
999
2003-10-15  Kazu Hirata  
1000
 
1001
        * elf32-h8300.c (elf_reloc_map): Fix a comment typo.
1002
 
1003
2003-10-15  Kaz Kojima  
1004
 
1005
        * elf32-sh.c (sh_elf_relocate_section): Handle R_SH_IMM_*_PCREL
1006
        relocations.
1007
        (sh_elf_check_relocs): Likewise.
1008
 
1009
        * elf32-sh64.c (elf_backend_merge_symbol_attribute): Define.
1010
        (sh64_elf_merge_symbol_attribute): New.
1011
        * elf64-sh64.c (elf_backend_merge_symbol_attribute): Define.
1012
        (sh64_elf64_merge_symbol_attribute): New.
1013
 
1014
2003-10-14  Kaz Kojima  
1015
 
1016
        * elf-bfd.h (struct elf_backend_data): New function pointer member
1017
        elf_backend_merge_symbol_attribute.
1018
        * elflink.h (elf_link_add_object_symbols): Adjust call to
1019
        elf_backend_merge_symbol_attribute if the backend defined it.
1020
        * elfxx-target.h (elf_backend_merge_symbol_attribute): New macro.
1021
        (elfNN_bed): Add that to the initializer.
1022
 
1023
2003-10-14  Bob Wilson  
1024
 
1025
        * elf32-xtensa.c (get_is_linkonce_section): Delete.
1026
        (xtensa_is_property_section, xtensa_is_littable_section): Use
1027
        XTENSA_INSN_SEC_NAME and XTENSA_LIT_SEC_NAME macros.  Do not recognize
1028
        linkonce sections containing ".xt.insn" and ".xt.lit" substrings.
1029
        (xtensa_get_property_section_name): Check section name instead of
1030
        calling get_is_linkonce_section.  Remove unused bfd parameter.  Use
1031
        XTENSA_INSN_SEC_NAME and XTENSA_LIT_SEC_NAME macros.  Never generate
1032
        linkonce section names by appending ".xt.insn" or ".xt.lit".
1033
        (xtensa_read_table_entries): Remove bfd argument in call to
1034
        xtensa_get_property_section_name.  Free section name when done.
1035
        (elf_xtensa_combine_prop_entries): Free leaking table.
1036
 
1037
2003-10-13  Richard Sandiford  
1038
 
1039
        * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
1040
        DT_MIPS_LIBLIST or DT_MIPS_CONFLICT entries.
1041
        (_bfd_mips_elf_finish_dynamic_symbol): Don't handle them.  Don't
1042
        handle DT_MIPS_MSYM.  Set DT_RELSZ based on the number of relocations
1043
        that were needed.
1044
        (_bfd_mips_elf_modify_segment_map): Fix placement of PT_MIPS_OPTIONS.
1045
        (_bfd_mips_elf_merge_private_bfd_data): Ignore EF_MIPS_UCODE.
1046
 
1047
2003-10-13  H.J. Lu  
1048
 
1049
        * bfd-in.h (bfd_elf32_ia64_after_parse): New prototype.
1050
        (bfd_elf64_ia64_after_parse): Likewise.
1051
        * bfd-in2.h: Regenerated.
1052
 
1053
        * elfxx-ia64.c (oor_ip): New.
1054
        (oor_branch_size): Likewise.
1055
        (bfd_elfNN_ia64_after_parse): Likewise.
1056
        (elfNN_ia64_relax_section): Use oor_ip if oor_branch_size
1057
        equals sizeof (oor_ip).
1058
 
1059
2003-10-12  Kaz Kojima  
1060
 
1061
        * elf64-sh64.c (sh_elf64_relocate_section): Tidy up for the
1062
        renumbering of some relocation numbers.
1063
 
1064
2003-10-11  Alan Modra  
1065
 
1066
        * coff-sh.c: Move definition of MAP and guard more code with
1067
        COFF_IMAGE_WITH_PE.
1068
 
1069
        * section.c (bfd_get_section_size_before_reloc): Ignore reloc_done.
1070
        * bfd-in2.h: Regenerate.
1071
 
1072
2003-10-10  H.J. Lu  
1073
 
1074
        * Makefile.am: Run "make dep-am".
1075
        * Makefile.in: Regenerate.
1076
        * doc/Makefile.in: Likewise.
1077
 
1078
2003-10-09  H.J. Lu  
1079
 
1080
        * cofflink.c: Include "safe-ctype.h".
1081
        (coff_link_add_symbols): Use ISDIGIT instead of isdigit.
1082
 
1083
2003-10-08  Dave Brolley  
1084
        On behalf of Michael Snyder  
1085
 
1086
        * archures.c: Add FRV fr550 machine.
1087
        * cpu-frv.c: Ditto.
1088
        * elf32-frv.c: Ditto.
1089
        * bfd-in2.h: Regenerate.
1090
 
1091
2003-10-08  Thiemo Seufer 
1092
 
1093
        * elfxx-mips.c (STUB_MOVE,STUB_LI16): Fix stub code
1094
        for non-SGI N64 ABI. Improve code consitency.
1095
 
1096
2003-10-07  Alexandre Oliva  
1097
 
1098
        * elf32-frv.c (elf32_frv_howto_table): Set R_FRV_LABEL16's
1099
        rightshift to 2.
1100
 
1101
2003-10-07  Nathan Sidwell  
1102
 
1103
        * libbfd-in.h (_bfd_link_section_stabs): Add string offset
1104
        parameter.
1105
        * cofflink.c (coff_link_add_symbols): Deal with split stab
1106
        sections.
1107
        * elflink.h (elf_link_add_object_symbols): Deal with split stab
1108
        sections.
1109
        * stabs.c (_bfd_link_section_stabs): Add string offset parameter.
1110
        * libbfd.h: Regenerated.
1111
 
1112
        * coffcode.h (coff_set_alignment_hook): With PE_COFF reloc
1113
        overflow, set reloc start position to after the count
1114
        reloc. Subtract one from num relocs. Give error on 0xffff relocs
1115
        and no overflow.
1116
        * cofflink.c (_bfd_coff_final_link): Deal with PE_COFF reloc
1117
        overflow.
1118
        * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Do overflow if >=
1119
        0xffff.
1120
 
1121
2003-10-06  H.J. Lu  
1122
 
1123
        * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Pad the
1124
        last CIE/FDE if needed.
1125
 
1126
2003-10-06  Nick Clifton  
1127
 
1128
        * targets.c (_bfd_target_vector): Include bfd_elf64_sparc_vec if
1129
        BFD64 is enabled.
1130
 
1131
2003-10-06  Matt Thomas 
1132
 
1133
        * config.bfd: Move the hppa*-*-netbsd* case to the hppa*-*-linux* case.
1134
 
1135
2003-10-06  Robert Millan  
1136
 
1137
        * configure.in: Match GNU/KNetBSD with new knetbsd*-gnu triplet.
1138
        * config.bfd: Likewise.
1139
        * configure: Regenerate.
1140
 
1141
2003-10-04  Christian Groessler  
1142
 
1143
        * coff-z8k.c (extra_case): Fix displacement length check for R_JR
1144
        and R_CALLR.
1145
 
1146
2003-10-04  Stephane Carrez  
1147
 
1148
        * elf32-m68hc1x.c: Update to ISO C90; replace PTR with void*.
1149
        * elf32-m68hc11.c: Likewise.
1150
        * elf32-m68hc12.c: Likewise.
1151
        * elf32-m68hc1x.h: Likewise.
1152
 
1153
2003-10-04  Stephane Carrez  
1154
 
1155
        * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Fix merge
1156
        of flags between HC12 and HCS12.
1157
 
1158
2003-10-04  Bryce McKinlay  
1159
 
1160
        * merge.c (_bfd_merge_sections): Set SEC_EXCLUDE flag on sections
1161
        which become empty after merging.
1162
 
1163
2003-09-30  Jakub Jelinek  
1164
 
1165
        * elfxx-ia64.c (ia64_howto_table): Fix size of R_IA64_TPREL64[LM]SB,
1166
        R_IA64_DTPREL{32,64}[LM]SB and R_IA64_DTPMOD64[LM]SB.
1167
 
1168
2003-09-30  Chris Demetriou  
1169
 
1170
        * archures.c (bfd_mach_mipsisa64r2): New define.
1171
        * bfd-in2.h: Regenerate.
1172
        * aoutx.h (NAME(aout,machine_type)): Handle bfd_mach_mipsisa64r2.
1173
        * cpu-mips.c (I_mipsisa64r2): New enum value.
1174
        (arch_info_struct): Add entry for I_mipsisa64r2.
1175
        * elfxx-mips.c (_bfd_elf_mips_mach)
1176
        (_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_64R2.
1177
        (mips_set_isa_flags): Add bfd_mach_mipsisa64r2 case.
1178
        (mips_mach_extensions): Add entry for bfd_mach_mipsisa64r2.
1179
 
1180
2003-09-29  H.J. Lu  
1181
 
1182
        * elfxx-ia64.c (elfNN_hpux_backend_symbol_processing): New.
1183
        Handle SHN_IA_64_ANSI_COMMON.
1184
        (elf_backend_section_from_bfd_section): Defined.
1185
 
1186
2003-09-26  H.J. Lu  
1187
 
1188
        * elflink.c (elf_link_read_relocs_from_section): Add an argument
1189
        of a pointer to section. Check bad symbol index.
1190
        (_bfd_elf_link_read_relocs): Modify calls to
1191
        elf_link_read_relocs_from_section.
1192
 
1193
2003-09-23  DJ Delorie  
1194
 
1195
        * elf32-sh.c (sh_elf_howto_table): R_SH_SWITCH8,
1196
        R_SH_GNU_VTINHERIT, R_SH_GNU_VTENTRY,
1197
        R_SH_LOOP_START,R_SH_LOOP_END moved to "reserved" spaces,
1198
        R_SH_DIR16, R_SH_DIR8, R_SH_DIR8UL, R_SH_DIR8UW, R_SH_DIR8U,
1199
        R_SH_DIR8SW, R_SH_DIR8S, R_SH_DIR4UL, R_SH_DIR4UW, R_SH_DIR4U,
1200
        R_SH_PSHA, R_SH_PSHL added.
1201
        (sh_reloc_map): Add R_SH_DIR16 and R_SH_DIR8.
1202
        (sh_elf_relocate_section): Support new relocs.
1203
 
1204
2003-09-23  Bob Wilson  
1205
 
1206
        * elf32-xtensa.c (elf_xtensa_relocate_section): Fix typo that clobbered
1207
        dynamic relocation offsets.
1208
 
1209
2003-09-23  Alan Modra  
1210
 
1211
        * simple.c (bfd_simple_get_relocated_section_contents): Free the
1212
        hash table using _bfd_generic_link_hash_table_free.
1213
 
1214
2003-09-23  Alan Modra  
1215
 
1216
        * elf-bfd.h (struct bfd_elf_special_section): Remove "suffix".  Change
1217
        type of prefix_length and suffix_length to int.  Rename "attributes"
1218
        to "attr".  Comment.
1219
        (_bfd_elf_get_sec_type_attr): Update prototype.
1220
        * elf.c (get_special_section): Rewrite.
1221
        (_bfd_elf_get_sec_type_attr): Return struct rather than passing in
1222
        attr and type pointers.
1223
        (_bfd_elf_new_section_hook): Adjust for above.
1224
        (special_sections): Merge suffix with prefix.  Set
1225
        prefix_length for all entries.  Set suffix_length appropriately.
1226
        * elf32-m32r.c (m32r_elf_special_sections): Likewise.
1227
        * elf32-m68hc11.c (elf32_m68hc11_special_sections): Likewise.
1228
        * elf32-m68hc12.c (elf32_m68hc12_special_sections): Likewise.
1229
        * elf32-mcore.c (mcore_elf_special_sections): Likewise.
1230
        * elf32-sh64.c (sh64_elf_special_sections): Likewise.
1231
        * elf32-v850.c (v850_elf_special_sections): Likewise.
1232
        * elf32-xtensa.c (elf_xtensa_special_sections): Likewise.
1233
        * elf64-alpha.c (elf64_alpha_special_sections): Likewise.
1234
        * elf64-hppa.c (elf64_hppa_special_sections): Likewise.
1235
        * elf64-ppc.c (ppc64_elf_special_sections): Likewise.
1236
        * elf64-sh64.c (sh64_elf64_special_sections): Likewise.
1237
        * elfxx-ia64.c (elfNN_ia64_special_sections): Likewise.
1238
        * elfxx-mips.c (_bfd_mips_elf_special_sections): Likewise.
1239
        * elf32-ppc.c (ppc_elf_special_sections): Likewise.  Fix .plt flags.
1240
 
1241
2003-09-21  Daniel Jacobowitz  
1242
 
1243
        * elf64-alpha.c (elf64_alpha_create_got_section): Initialize
1244
        ->got if the section already exists.
1245
 
1246
2003-09-19  Nathan Sidwell  
1247
 
1248
        * dwarf2.c (decode_line_info): Cope with an initially empty
1249
        filename table.
1250
 
1251
2003-09-18  H.J. Lu  
1252
 
1253
        * acinclude.m4: Include ../config/accross.m4.
1254
        * aclocal.m4: Regenerated.
1255
 
1256
        * configure.host (HOST_64BIT_TYPE): Remove if it is set to long
1257
        or long long.
1258
        (HOST_U_64BIT_TYPE): Remove if it is set to unsigned long long.
1259
        (host64): Remove if HOST_64BIT_TYPE is set to long.
1260
 
1261
        * configure.in (HOST_64BIT_TYPE): Set according to the size of
1262
        long and long long.
1263
        (HOST_U_64BIT_TYPE): Likewise.
1264
        (host64): Likewise.
1265
        * configure: Regenerated.
1266
 
1267
2003-09-19  Alan Modra  
1268
 
1269
        * elf.c (elfcore_write_note): Don't use sizeof(Elf_External_note)
1270
        since some ABIs round up the size of the struct.
1271
 
1272
2003-09-18  H.J. Lu  
1273
 
1274
        * elflink.c (_bfd_elf_merge_symbol): Allow type change if
1275
        the old symbol is undefined and the new symbol is defined.
1276
 
1277
2003-09-18  Andreas Schwab  
1278
 
1279
        * simple.c (bfd_simple_get_relocated_section_contents): Use
1280
        _bfd_generic_link_hash_table_create instead of
1281
        bfd_link_hash_table_create.
1282
 
1283
2003-09-10  H.J. Lu  
1284
 
1285
        * elfxx-ia64.c (elfNN_ia64_special_sections): Mark all sections
1286
        started with ".sbss" or "".sdata" as SHF_IA_64_SHORT.
1287
 
1288
2003-09-10  John David Anglin   
1289
            Randolph Chung      
1290
 
1291
        * elf32-hppa.c (struct elf32_hppa_link_hash_entry,
1292
        hppa_link_hash_newfunc, hppa_build_one_stub,
1293
        elf32_hppa_adjust_dynamic_symbol, mark_PIC_calls, allocate_plt_static,
1294
        allocate_dynrelocs, elf32_hppa_size_dynamic_sections,
1295
        elf32_hppa_finish_dynamic_symbol): Remove pic_call field and all code
1296
        for generating import stubs for calls to statically linked PIC
1297
        functions.
1298
        (hppa_type_of_stub): Don't generate an import stub for calls to
1299
        statically linked pic functions.  Generate import stubs for calls
1300
        in a shared object, to functions not in a regular file, and to
1301
        defined weak functions.  Add new argument INFO.
1302
        (hppa_build_one_stub): Don't undef ADDIL_DP.
1303
        (elf32_hppa_check_relocs): Don't set SEC_HAS_GOT_REF flag.
1304
        (elf32_hppa_size_stubs): Pass info to hppa_type_of_stub.
1305
        (final_link_relocate): Change all DLTIND relocs to DPREL relocs in a
1306
        non-shared link.  Convert instructions that use the the linkage table
1307
        pointer, or a facsimile thereof, to use the global data pointer when
1308
        the reloc has been changed.
1309
 
1310
2003-09-08  Joel Brobecker  
1311
 
1312
        * archures.c: Add new machine names for hppa.
1313
        * bfd-in2.h: Regenerate.
1314
        * cpu-hppa.c: Use the new machine names.
1315
 
1316
2003-09-06  Stephane Carrez  
1317
 
1318
        * elf32-m68hc1x.h (struct m68hc11_elf_link_hash_table): Remove
1319
        all_local_syms member.
1320
        * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Use bfd_elf_get_elf_syms
1321
        to get the local symbols.
1322
 
1323
2003-09-06  Stephane Carrez  
1324
 
1325
        * elf32-m68hc12.c (elf32_m68hc12_special_sections): New for hc11.
1326
        (elf_backend_special_sections): Define.a
1327
 
1328
        PR savannah/4950:
1329
        * elf32-m68hc11.c (elf32_m68hc11_special_sections): The .vectors
1330
        section is read-only.
1331
 
1332
2003-09-04  Nick Clifton  
1333
 
1334
        * archures.c (bfd_mach_v850e1): Define.
1335
        * bfd-in2.h: Regenerate.
1336
        * cpu-v850.h (scan): Accept bfd_mach_v850e1.
1337
        (arch_info_struct): Include an entry for bfd_mach_v850e1.
1338
        * elf32-v850.c (v850_elf_object_p): Accept E_V850E1_ARCH flag.
1339
        (v850_elf_final_write_processing): Accept bfd_mach_v850e1.
1340
        (v850_elf_print_private_bfd_data): Interpret E_V850E1_ARCH flag.
1341
        (v850_elf_merge_private_bfd_data): Allow v850e1 binaries to be
1342
        linked with v850e binaries.  Mark the output as v850e.
1343
 
1344
2003-09-03  Nick Clifton  
1345
 
1346
        * cofflink.c (_bfd_coff_link_input_bfd): Do not skip section
1347
        symbols that are used in relocs.
1348
 
1349
2003-08-30  Robert Millan  
1350
 
1351
        * configure.in: Match GNU/KFreeBSD with new kfreebsd*-gnu triplet.
1352
        * config.bfd: Likewise.
1353
        * configure: Regenerate.
1354
 
1355
2003-08-31  Christian Groessler  
1356
 
1357
        * elf32-i860.c (i860_howto_pc26_reloc): Finish relocation here
1358
        instead of returning bfd_reloc_continue.
1359
 
1360
2003-08-31  Andreas Jaeger  
1361
 
1362
        * merge.c: Update to ISO C90.
1363
 
1364
2003-08-27  Ian Lance Taylor  
1365
 
1366
        * configure.in: Check for strtoull.
1367
        * bfd.c (bfd_scan_vma): Use strtoull when available.
1368
        * configure, config.in: Regenerate.
1369
 
1370
        * configure.in: Define and substitute BFD_HOST_LONG_LONG.
1371
        * bfd-in.h: Define BFD_HOST_LONG_LONG.  Test it rather than
1372
        __GNUC__ when deciding whether to use long long for
1373
        BFD_HOST_64_BIT.
1374
        * configure, Makefile.in, doc/Makefile.in, bfd-in2.h: Regenerate.
1375
 
1376
2003-08-27  Christian Groessler  
1377
 
1378
        * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc,
1379
        i860_howto_splitn_reloc, i860_howto_highadj_reloc): New
1380
        functions.
1381
        (elf32_i860_howto_table): Insert the new functions as
1382
        'special_function's in the proper reloc type entries.
1383
 
1384
2003-08-27  Richard Sandiford  
1385
 
1386
        * elf32-frv.c (elf32_frv_relocate_section): Use
1387
        _bfd_elf_rela_local_sym.
1388
 
1389
2003-08-26  Michael Snyder  
1390
 
1391
        * cpu-frv.c: Remove unused enum.
1392
 
1393
2003-08-25  Maciej W. Rozycki  
1394
 
1395
        * reloc.c: Fix documentation for MIPS ELF relocations.
1396
        libbfd.h: Regenerate.
1397
        bfd-in2.h: Regenerate.
1398
 
1399
2003-08-24  Jason Eckhardt  
1400
 
1401
        * coff-i860.c (CALC_ADDEND): Define to be a no-op.
1402
 
1403
2003-08-24  Jason Eckhardt  
1404
 
1405
        * elf32-i860.c (elf32_i860_relocate_pc16): Subtract 4 and
1406
        shift by 2 before storing the relocated value.
1407
 
1408
2003-08-23  Jason Eckhardt  
1409
 
1410
        * coff-i860.c (coff_i860_reloc_nyi): New function.
1411
        (howto_table): Add entries for relocations PAIR, HIGHADJ, HIGH,
1412
        LOWn, SPLITn, and BRADDR.
1413
        (RTYPE2HOWTO): Check that the r_type is within the howto_table
1414
        before trying to access the entry.
1415
        (coff_i860_rtype_to_howto): Likewise.
1416
        (coff_i860_reloc_type_lookup): New function.
1417
        (i860_reloc_processing): New function.
1418
        (coff_bfd_reloc_type_lookup): Define macro.
1419
        (RELOC_PROCESSING): Define macro.
1420
        Minor formatting adjustments.
1421
 
1422
2003-08-23  Alan Modra  
1423
 
1424
        * elflink.h (elf_link_add_object_symbols): Don't crash on NULL owner.
1425
 
1426
2003-08-22  H.J. Lu  
1427
 
1428
        * elfxx-ia64.c (elfNN_ia64_create_dynamic_sections): Align the
1429
        .got section at 8 bytes.
1430
 
1431
2003-08-21  Nick Clifton  
1432
 
1433
        * cofflink.c: Update to ISO C90 and tidy up formatting.
1434
 
1435
2003-08-21  Randolph Chung  
1436
 
1437
        * elf32-hppa.c (elf32_hppa_object_p): For elf32-hppa-linux, objects
1438
        can have OSABI=Linux or OSABI=SysV.  Check for both.
1439
        * elf64-hppa.c (elf64_hppa_object_p): Likewise.
1440
 
1441
2003-08-21  Nick Clifton  
1442
 
1443
        * po/sv.po: Updated Swedish translation.
1444
 
1445
2003-08-20  Richard Sandiford  
1446
 
1447
        * elf64-mips.c (elf_backend_copy_indirect_symbol): Define.
1448
 
1449
2003-08-20  Nick Clifton  
1450
 
1451
        * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): New macro used to
1452
        replace some duplicated code in most elfxx-xxxx.c files.  This
1453
        version uses the new fields in bfd_link_info.
1454
 
1455
        * elf-m10300.c (mn10300_elf_relocate_section): Use new macro.
1456
        * elf32-arm.h (elf32_arm_relocate_section): Likewise.
1457
        * elf32-cris.c (cris_elf_relocate_section): Likewise.
1458
        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1459
        * elf32-i386.c (elf_i386_relocate_section): Likewise.
1460
        * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1461
        * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1462
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1463
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1464
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
1465
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1466
        * elf32-vax.c (elf_vax_relocate_section): Likewise.
1467
        * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1468
        * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1469
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1470
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
1471
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1472
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1473
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
1474
 
1475
        * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols,
1476
        elf_hppa_remark_useless_dynamic_symbols,
1477
        elf_hppa_relocate_section): Use the new fields in
1478
        bfd_link_info structure.
1479
        * elf32-sh.c (sh_elf_relocate_section): Likewise.
1480
        * elf64-alpha.c (elf64_alpha_check_relocs): Likewise.
1481
        * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
1482
        * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1483
        * elfxx-ia64.c (elfNN_ia64_check_relocs): Likewise.
1484
        * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
1485
 
1486
        * elflink.h (elf_link_output_extsym): Fix test for reporting
1487
        undefined symbols in shared libraries.  Remove redundant test
1488
        of shlib_undefined when reporting references to forced local
1489
        symbols.
1490
 
1491
2003-08-18  Andreas Schwab  
1492
 
1493
        * libpei.h (bfd_pe_executable_p): Also recognize efi-app
1494
        executables.
1495
 
1496
2003-08-17  Hans-Peter Nilsson  
1497
 
1498
        * simple.c (bfd_simple_get_relocated_section_contents): Move
1499
        reloc_done hack to before first bfd_section_size call.  Change all
1500
        returns to use new wrapper macro RETURN, restoring sec->reloc_done.
1501
 
1502
2003-08-16  Alan Modra  
1503
 
1504
        * elf64-ppc.c: Don't include elf/ppc.h.
1505
 
1506
2003-08-14  Richard Sandiford  
1507
 
1508
        * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Fix PT_DYNAMIC
1509
        code to work with 64-bit bfds.
1510
 
1511
2003-08-14  Alan Modra  
1512
 
1513
        * dep-in.sed: Remove libintl.h.
1514
        * Makefile.am (SRC-POTFILES.in, BLD-POTFILES.in): Unset LC_COLLATE.
1515
        (POTFILES.in): Remove target.
1516
        * Makefile.in: Regenerate.
1517
 
1518
2003-08-12  Alan Modra  
1519
 
1520
        * elf64-ppc.c (ppc64_elf_next_input_section): Update comment.
1521
        (ppc64_elf_relocate_section): For zero sym R_PPC64_TOC relocs,
1522
        use the function sym from the previous reloc.
1523
 
1524
2003-08-11  Jakub Jelinek  
1525
 
1526
        * elf32-i386.c (elf_i386_relocate_section): Make undefined symbols
1527
        fatal if -pie.
1528
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
1529
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1530
        * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1531
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1532
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
1533
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1534
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1535
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
1536
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1537
        (ppc_elf_relocate_section) : Issue fatal error
1538
        on undefined symbols if -pie.
1539
        * elf32-sh.c (sh_elf_relocate_section): Likewise.
1540
 
1541
2003-08-11  Alan Modra  
1542
 
1543
        * elf64-ppc.c (ppc64_elf_relocate_section): Add special case for crt1.o
1544
        branch to __libc_start_main.
1545
 
1546
2003-08-08 Dmitry Diky 
1547
 
1548
        * archures.c: Add xW42 and xE42 parts. Sort MPU list according to
1549
        gcc order.
1550
        * cpu-msp430.c: Likewise.
1551
        * elf32-msp430.c: Likewise.
1552
        * bfd-in2.h: Regenerate.
1553
 
1554
2003-08-07  Alan Modra  
1555
 
1556
        * elfxx-target.h: Remove PTR cast.
1557
        * targets.c (bfd_target): Make backend_data const void *.
1558
        * elf-bfd.h: Constify all occurrences of struct elf_backend_data.
1559
        * elf-m10300.c: Likewise.
1560
        * elf.c: Likewise.
1561
        * elf32-hppa.c: Likewise.
1562
        * elf32-i386.c: Likewise.
1563
        * elf32-m68hc1x.c: Likewise.
1564
        * elf32-ppc.c: Likewise.
1565
        * elf32-s390.c: Likewise.
1566
        * elf32-sh.c: Likewise.
1567
        * elf32-sh64.c: Likewise.
1568
        * elf32-sparc.c: Likewise.
1569
        * elf32-xtensa.c: Likewise.
1570
        * elf64-mips.c: Likewise.
1571
        * elf64-ppc.c: Likewise.
1572
        * elf64-s390.c: Likewise.
1573
        * elf64-sh64.c: Likewise.
1574
        * elf64-sparc.c: Likewise.
1575
        * elf64-x86-64.c: Likewise.
1576
        * elfcode.h: Likewise.
1577
        * elfcore.h: Likewise.
1578
        * elflink.c: Likewise.
1579
        * elflink.h: Likewise.
1580
        * elfxx-ia64.c: Likewise.
1581
        * elfxx-mips.c: Likewise.
1582
        * elfxx-mips.h: Likewise.
1583
        * elf.c (prep_headers): Remove useless check for null backend_data.
1584
        * bfd-in2.h: Regenerate.
1585
 
1586
        * elf-bfd.h: Remove PARAMS macro.  Replace PTR with void *.
1587
        (NAME): Use ## rather than CONCAT4 macro.
1588
        * elfcode.h: Remove one remaining PARAMS macro.
1589
        * elf-eh-frame.c: Convert to C90, remove unneeded casts and prototypes.
1590
        * elf-strtab.c: Likewise.
1591
        * elf-hppa.h: Likewise.
1592
        * elf32-hppa.h: Likewise.
1593
        * elf32-hppa.c: Likewise.
1594
        (elf32_hppa_add_symbol_hook): Delete.
1595
        (elf_backend_add_symbol_hook): Don't define.
1596
        * libhppa.h: Convert to C90.  Replace INLINE with inline.
1597
 
1598
2003-08-06  Alan Modra  
1599
 
1600
        * elf64-ppc.c (ppc_stub_name): Tweak names for better readability.
1601
        (ppc64_elf_adjust_dynamic_symbol): Allow copy relocs against
1602
        function descriptors, but warn.
1603
        (ppc_build_one_stub): Remove a couple of vars.  Move code creating
1604
        stub syms so that we can avoid a stub sym if we already have a
1605
        plt sym.  Do not redefine an existing symbol.
1606
        (ppc64_elf_build_stubs): When --emit-stub-syms, print a symbol for
1607
        glink.
1608
 
1609
2003-08-06  Nick Clifton  
1610
 
1611
        * po/fr.po: Updated French translation.
1612
 
1613
2003-08-06  Alan Modra  
1614
 
1615
        * elflink.c (_bfd_elf_create_dynamic_sections): Mark .dynbss with
1616
        SEC_LINKER_CREATED.
1617
 
1618
2003-08-05  Daniel Jacobowitz  
1619
 
1620
        * elf32-arm.h (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
1621
        (elf32_arm_final_link_relocate, elf32_arm_relocate_section): Use it.
1622
 
1623
2003-08-03  Jeff Muizelaar  
1624
 
1625
        * coffcode.h (coff_slurp_line_table): Return with a warning
1626
        message if the line number table could not be read.
1627
 
1628
2003-08-04  Nick Clifton  
1629
 
1630
        * elflink.h (elf_link_add_object_symbols): Prepend "warning: "
1631
        to messages produced for .gnu.warning.SYMBOL sections.
1632
 
1633
2003-08-04  Alan Modra  
1634
 
1635
        * elfcode.h: Convert to C90, remove unneeded casts and prototypes.
1636
        * elfcore.h: Likewise.
1637
        * elflink.c: Likewise.
1638
        * elflink.h: Likewise.
1639
        * elf.c (sym_is_global): Remove INLINE.
1640
        (align_file_position): Replace INLINE with inline.
1641
        * elfcode.h (elf_swap_dyn_in, elf_swap_dyn_out): Remove INLINE.
1642
        (elf_file_p): Replace INLINE with inline.
1643
 
1644
2003-08-02  Kaz Kojima  
1645
 
1646
        * elf32-sh.c (sh_elf_check_relocs): Don't set DF_TEXTREL here.
1647
 
1648
2003-08-01  H.J. Lu  
1649
 
1650
        * elfxx-ia64.c (get_got): Align the .got section at 8 bytes.
1651
 
1652
2003-08-01  H.J. Lu  
1653
 
1654
        * elfxx-ia64.c (elfNN_ia64_finish_dynamic_symbol): Use
1655
        ElfNN_External_Rela instead of Elf64_External_Rela.
1656
 
1657
2003-08-01  Nick Clifton  
1658
 
1659
        * config.bfd: Add code to catch obsolete configurations and warn
1660
        about them unless --enable-obsolete is used.  Use this to mark
1661
        vax-vms port as obsolete.
1662
 
1663
2003-07-30  Alan Modra  
1664
 
1665
        * elf32-ppc.c (ppc_elf_install_value): Tidy.
1666
        (ppc_elf_relax_section): Remove dead code.  Remove unnecessary casts.
1667
        Formatting.
1668
        * elfxx-target.h: Remove PARAMS macro.  Formatting.
1669
 
1670
2003-07-30  Alan Modra  
1671
 
1672
        * elf.c (bfd_section_from_r_symndx): Test for SHN_UNDEF.
1673
        * elf64-ppc.c (get_fdh): New function, split out from
1674
        ppc64_elf_edit_opd.
1675
        (ppc64_elf_check_relocs): Use get_fdh.
1676
        (func_desc_adjust): Likewise.  Tidy.
1677
        (ppc64_elf_edit_opd): Tighten reloc checks.  Free local_syms on error
1678
        exit.  Use get_fdh.  Account for superfluous dynamic relocs.
1679
        (ppc64_elf_relocate_section): Warning fix.
1680
 
1681
2003-07-30  Jason Eckhardt  
1682
 
1683
        * coff-i860.c: Convert to ISO C90.  Remove superflous prototypes.
1684
 
1685
2003-07-30  Jason Eckhardt  
1686
 
1687
        * elf32-i860.c: Convert to ISO C90.  Remove superflous prototypes.
1688
 
1689
2003-07-30  Randolph Chung  
1690
 
1691
        * elf-hppa.h (elf_hppa_relocate_section): Look up dyn_h for undefweak.
1692
        * elf64-hppa.c (elf64_hppa_finalize_dlt): Check h->root.type.
1693
 
1694
2003-07-30  Alan Modra  
1695
 
1696
        * elf.c: Convert to C90, remove unnecessary prototypes and casts.
1697
        Replace PTR with void *.  Formatting.
1698
        (_bfd_elf_assign_file_position_for_section): Remove INLINE.
1699
        (make_mapping): Likewise.
1700
 
1701
2003-07-29  Alan Modra  
1702
 
1703
        * elf64-ppc.c (func_desc_adjust): Give linker created function
1704
        descriptor symbols a size and type.
1705
        (ppc64_elf_relocate_section): Correct lq insn test.
1706
 
1707
2003-07-28  Eric Christopher  
1708
 
1709
        * elf32-ppc.c (R_PPC_RELAX32): New relocation.
1710
        (ppc_elf_install_value): New function.
1711
        (ppc_elf_sort_rela): Remove.
1712
        (ppc_elf_relax_section): Rewrite. Remove old relaxation
1713
        and replace with out of range branch stubs.
1714
        (ppc_elf_relocate_section): Handle R_PPC_RELAX32.
1715
 
1716
2003-07-29  Alexandre Oliva  
1717
 
1718
        * elf-m10300.c (mn10300_elf_relax_section): Take symbol hash table
1719
        from input_bfd.
1720
 
1721
2003-07-28  Alan Modra  
1722
 
1723
        * elf.c (special_sections): Set attributes for .got and .plt.
1724
 
1725
2003-07-27  Alan Modra  
1726
 
1727
        * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Ensure no copy relocs
1728
        on function descriptors.
1729
        (ELIMINATE_COPY_RELOCS): Expand comment.
1730
        (ppc64_elf_special_sections): Move.  Don't include non-ppc64 sections.
1731
        Do include ".toc1".
1732
 
1733
2003-07-25  H.J. Lu  
1734
 
1735
        * elf.c (_bfd_elf_new_section_hook): Set the default section
1736
        type to SHT_NULL.
1737
        (elf_fake_sections): Set the section type based on asect->flags
1738
        if it is SHT_NULL. Don't abort on processor specific section
1739
        types.
1740
 
1741
2003-07-25  H.J. Lu  
1742
 
1743
        * bfd-in2.h: Regenerated.
1744
 
1745
2003-07-25  H.J. Lu  
1746
 
1747
        * elf-bfd.h (bfd_elf_special_section): New.
1748
        (elf_backend_data): Add special_sections, a pointer to
1749
        bfd_elf_special_section.
1750
        (elf_section_type). New.
1751
        (elf_section_flags): New.
1752
        (_bfd_elf_get_sec_type_attr): New.
1753
 
1754
        * elf.c (_bfd_elf_make_section_from_shdr): Always use the
1755
        real section type/flags.
1756
        (special_sections): New.
1757
        (get_special_section): New.
1758
        (_bfd_elf_get_sec_type_attr): New.
1759
        (_bfd_elf_new_section_hook): Check special_section to set
1760
        elf_section_type and elf_section_flags.
1761
        (elf_fake_sections): Don't use section name to set ELF section
1762
        data.
1763
 
1764
        * elf32-m32r.c (m32r_elf_special_sections): New.
1765
        (elf_backend_special_sections): Defined.
1766
 
1767
        * elf32-m68hc11.c (elf32_m68hc11_special_sections): New.
1768
        (elf_backend_special_sections): Defined.
1769
 
1770
        * elf32-mcore.c (mcore_elf_special_sections): New.
1771
        (elf_backend_special_sections): Defined.
1772
 
1773
        * elf32-ppc.c (ppc_elf_special_sections): New.
1774
        (elf_backend_special_sections): Defined.
1775
 
1776
        * elf32-sh64.c (sh64_elf_special_sections): New.
1777
        (elf_backend_special_sections): Defined.
1778
 
1779
        * elf32-v850.c (v850_elf_special_sections): New.
1780
        (elf_backend_special_sections): Defined.
1781
 
1782
        * elf32-xtensa.c (elf_xtensa_special_sections): New.
1783
        (elf_backend_special_sections): Defined.
1784
 
1785
        * elf64-alpha.c (elf64_alpha_special_sections): New.
1786
        (elf_backend_special_sections): Defined.
1787
 
1788
        * elf64-hppa.c (elf64_hppa_special_sections): New.
1789
        (elf_backend_special_sections): Defined.
1790
 
1791
        * elf64-ppc.c (ppc64_elf_special_sections): New.
1792
        (elf_backend_special_sections): Defined.
1793
 
1794
        * elf64-sh64.c (sh64_elf64_special_sections): New.
1795
        (elf_backend_special_sections): Defined.
1796
 
1797
        * elfxx-ia64.c (elfNN_ia64_special_sections): New.
1798
        (elf_backend_special_sections): Defined.
1799
 
1800
        * elfxx-mips.c (_bfd_mips_elf_special_sections): New.
1801
 
1802
        * elfxx-mips.h (_bfd_mips_elf_special_sections): New.
1803
        (elf_backend_special_sections): Defined.
1804
 
1805
        * elfxx-target.h (elf_backend_special_sections): New. Default
1806
        to NULL.
1807
        (elfNN_bed): Initialize special_sections.
1808
 
1809
        * section.c (bfd_abs_section): Remove const.
1810
        (bfd_und_section): Likewise.
1811
        (bfd_com_section): Likewise.
1812
        (bfd_ind_section): Likewise.
1813
 
1814
2003-07-24  Nick Clifton  
1815
 
1816
        * coff-arm.c (EXTRA_S_FLAGS): Include SEC_CODE so that code
1817
        sections are assigned the LOAD attribute.
1818
 
1819
2003-07-25  Kaz Kojima  
1820
 
1821
        * elf32-sh.c: Convert to C90.  Replace PTR with void *.
1822
        * elf32-sh64-com.c: Likewise.
1823
        * elf32-sh64.c: Likewise.
1824
        * elf32-sh64.h: Likewise.
1825
        * elf64-sh64.c: Likewise.
1826
 
1827
2003-07-24  Kaz Kojima  
1828
 
1829
        * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL.
1830
        (allocate_dynrelocs): Likewise.
1831
        (sh_elf_relocate_section): Likewise. Use SYMBOL_REFERENCES_LOCAL.
1832
        (sh_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL.
1833
 
1834
2003-07-24  Nick Clifton  
1835
 
1836
        * po/fr.po: Updated French translation.
1837
 
1838
2003-07-23  Bob Wilson  
1839
 
1840
        * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Make inline and move
1841
        near the beginning of the file.  Swap order of arguments.  Call
1842
        _bfd_elf_dynamic_symbol_p with "ignore_protected" set to 0.
1843
        (elf_xtensa_fix_refcounts): Adjust xtensa_elf_dynamic_symbol_p call.
1844
        (elf_xtensa_relocate_section): Likewise.
1845
        (shrink_dynamic_reloc_sections): Likewise.
1846
 
1847
2003-07-23  Bob Wilson  
1848
 
1849
        * elf32-xtensa.c (plt_reloc_count): Fix typo in comment.
1850
        (elf_xtensa_size_dynamic_sections): Use elf_discarded_section.
1851
        (elf_xtensa_combine_prop_entries): Avoid returning non-zero without
1852
        first printing an error message.
1853
        (elf_xtensa_finish_dynamic_sections): Likewise.
1854
        (elf_xtensa_discard_info_for_section): Adjust size of .got.loc when
1855
        discarding literal table entries.
1856
        (elf_xtensa_merge_private_bfd_data): Remove newline from error message.
1857
        (elf_xtensa_do_asm_simplify): Likewise.
1858
 
1859
2003-07-23  Stephane Carrez  
1860
 
1861
        * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Avoid crash when
1862
        we have a local symbol in common section.
1863
 
1864
2003-07-22  H.J. Lu 
1865
 
1866
        * elflink.c (_bfd_elf_dynamic_symbol_p): Don't return TRUE for
1867
        weak symbols.
1868
 
1869
2003-07-22  Nick Clifton  
1870
 
1871
        * coffcode.h (coff_slurp_symbol_table): Add C_TCSYM and C_ECOML to
1872
        expected RS6000 storage classes.
1873
 
1874
2003-07-21  H.J. Lu 
1875
 
1876
        * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Mark
1877
        output_bfd unused to silence gcc.
1878
 
1879
2003-07-21  Nick Clifton  
1880
 
1881
        * po/sv.po: Updated Swedish translation.
1882
 
1883
2003-07-21  Alan Modra  
1884
 
1885
        * elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Use..
1886
        (_bfd_elf_symbol_refs_local_p): ..this.  Declare.
1887
        * elflink.c (_bfd_elf_symbol_refs_local_p): New function.
1888
        * elf32-i386.c (elf_i386_relocate_section): Remove h NULL test
1889
        now done in _bfd_elf_symbol_refs_local_p.
1890
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1891
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1892
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1893
 
1894
2003-07-18  H.J. Lu 
1895
 
1896
        * elflink.c (_bfd_elf_dynamic_symbol_p): Undo the last change.
1897
 
1898
2003-07-18  H.J. Lu 
1899
 
1900
        * elf-bfd.h (SYMBOL_REFERENCES_LOCAL): Fix a typo.
1901
        (SYMBOL_CALLS_LOCAL): Likewise.
1902
 
1903
        * elflink.c (_bfd_elf_dynamic_symbol_p): Return TRUE
1904
        immediately if symbol isn't defined locally.
1905
 
1906
2003-07-18  Richard Henderson  
1907
 
1908
        * elflink.c (_bfd_elf_dynamic_symbol_p): New.
1909
        * elf-bfd.h (_bfd_elf_dynamic_symbol_p): Declare it.
1910
        (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Use it.
1911
        * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Likewise.
1912
        * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
1913
        * elf64-hppa.c (elf64_hppa_dynamic_symbol_p): Likewise.
1914
        * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Likewise.
1915
        Update all callers to provide the relocation being resolved.
1916
 
1917
2003-07-17  Shaun Jackman 
1918
 
1919
        * config.bfd (arm-wince-pe): Add -DARM_COFF_BUGFIX to
1920
        targ_cflags.
1921
 
1922
2003-07-17  Nick Clifton  
1923
 
1924
        * po/es.po: New Spanish translation.
1925
        * po/sv.po: New Swedish translation.
1926
        * po/opcodes.pot: Regenerate.
1927
 
1928
2003-07-16  Richard Henderson  
1929
 
1930
        * config.bfd, configure.host, configure.in: Remove ia64-aix support.
1931
        * elfxx-ia64.c, targets.c: Likewise.
1932
 
1933
2003-07-16  Richard Henderson  
1934
 
1935
        * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Properly return false
1936
        for symbols defined locally plus -Bsymbolic.  Tidy logic.
1937
 
1938
2003-07-15  Richard Sandiford  
1939
 
1940
        * archures.c (bfd_mach_mips7000): New.
1941
        * bfd-in2.h: Regenerated.
1942
        * cpu-mips.c (arch_info_struct): Add an entry for mips:7000.
1943
        * elfxx-mips.c (mips_set_isa_flags): Handle bfd_mach_mips7000.
1944
        (mips_mach_extensions): Add an entry for it.
1945
 
1946
2003-07-14  Nick Clifton  
1947
 
1948
        * po/tr.po: Update with latest version.
1949
        * po/SRC-POTFILES.in: Regenerate.
1950
        * po/bfd.pot: Regenerate.
1951
        * Makfile.in: Regenerate.
1952
        * configure: Regenerate.
1953
 
1954
2003-07-12  Jeff Baker  
1955
 
1956
        * config.bfd (__QNXTARGET__): Define for Neutrino architectures.
1957
        * elf32-arm.h (ELF_MAXPAGESIZE): Set to 4k for Neutrino.
1958
        * elf32-sh.c (ELF_MAXPAGESIZE): Set to 4k for Neutrino.
1959
        * elf32-ppc.c (ELF_MAXPAGESIZE): Set to 4k for Neutrino.
1960
 
1961
2003-07-12  Jeff Muizelaar  
1962
 
1963
        * coffcode.h (coff_set_section_contents): Set the
1964
        IMAGE_FILE_32BIT_MACHINE flag for PE targets.
1965
 
1966
2003-07-11  Richard Sandiford  
1967
 
1968
        * bfd-in.h (bfd_h8300_pad_address): Declare.
1969
        * bfd-in2.h: Regenerate.
1970
        * cpu-h8300.c (bfd_h8300_pad_address): New function.
1971
        * coff-h8300.c (h8300_reloc16_estimate): Use it to canonicalize
1972
        addresses before checking whether they can be relaxed.
1973
        (h8300_reloc16_extra_cases): Likewise for the R_MOVL2 sanity check.
1974
        Don't complain about overflows in general 8-bit relocations.
1975
        * elf32-h8300.c (elf32_h8_relax_section): Use bfd_h8300_pad_address.
1976
        Fix handling of R_H8_DIR24A8.
1977
 
1978
2003-07-11  Richard Sandiford  
1979
 
1980
        * elf32-h8300.c: Convert function prototypes and definitions
1981
        to C90 syntax.
1982
        * coff-h8300.c: Likewise.
1983
        * cpu-h8300.c: Likewise.
1984
 
1985
2003-07-11  Alan Modra  
1986
 
1987
        * po/SRC-POTFILES.in: Regenerate.
1988
        * po/bfd.pot: Likewise.
1989
 
1990
2003-07-10  Bob Wilson  
1991
 
1992
        * elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Create new
1993
        .got.loc section.  Do not set SEC_ALLOC or SEC_LOAD flags for the
1994
        .xt.lit.plt section.
1995
        (elf_xtensa_size_dynamic_sections): Set size of the .got.loc section
1996
        and allocate memory for it.
1997
        (elf_xtensa_combine_prop_entries): Copy contents of .xt.lit output
1998
        section to the .got.loc section.
1999
        (elf_xtensa_finish_dynamic_sections): Fix up call to
2000
        elf_xtensa_combine_prop_entries and set DT_XTENSA_GOT_LOC_OFF to
2001
        the address of .got.loc.
2002
        (relax_property_section): Shrink .got.loc to match changes in any
2003
        literal table section.
2004
        (xtensa_is_property_section): Change to match
2005
        xtensa_get_property_section_name.
2006
        (xtensa_is_littable_section): New.
2007
 
2008
2003-07-10  H.J. Lu 
2009
 
2010
        * elfxx-ia64.c (IA64_HOWTO): Set dst_mask to -1 instead of
2011
        -1LL.
2012
 
2013
2003-07-10  Alan Modra  
2014
 
2015
        * Makefile.am (BFD32_BACKENDS): Add elf32-am33lin.lo.
2016
        (BFD32_BACKENDS_CFILES): elf32-am33lin.c not elf32-am33lin.lo.
2017
        Run "make dep-am".
2018
        * Makefile.in: Regenerate.
2019
 
2020
2003-07-10  Alexandre Oliva  
2021
 
2022
        2001-09-12  Alexandre Oliva  
2023
        * elf32-am33lin.c (ELF_MACHINE_CODE): Redefine to EM_MN10300.
2024
        (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300.
2025
        2001-06-02  Nick Clifton  
2026
        * elf32-am33lin.c: Rename global functions.
2027
        2001-05-09  Alexandre Oliva  
2028
        * config.bfd (am33_2.0, am33_2.0-*-linux*): Added.
2029
        * configure.in (bfd_elf32_am33lin_vec): Added.
2030
        * Makefile.am (BFD32_BACKENDS): Added elf32-am33lin.lo.
2031
        (elf32-am33lin.lo): List dependencies.
2032
        * aclocal.m4, configure, Makefile.in: Rebuilt.
2033
        * elf-m10300.c (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME,
2034
        ELF_ARCH, ELF_MACHINE_CODE, ELF_MAXPAGESIZE): Define only if
2035
        ELF_ARCH was not defined before.
2036
        (elf_symbol_leading_char): Define if not defined.
2037
        * elf32-am33lin.c: Override the definitions above.
2038
        * targets.c (bfd_elf32_am33lin_vec): New.
2039
 
2040
2003-07-09  Alexandre Oliva  
2041
 
2042
        2002-12-12  Alexandre Oliva  
2043
        * elf-m10300.c (elf32_mn10300_link_hash_newfunc): Initialize
2044
        pcrel_relocs_copied.
2045
        2001-12-13  Alexandre Oliva  
2046
        * elf-m10300.c (ELF_DYNAMIC_INTERPRETER): Renamed from
2047
        ld-linux.so.2 to ld.so.1.
2048
        2001-10-10  Alexandre Oliva  
2049
        * elf-m10300.c (elf_mn10300_sizeof_plt0): New macro.
2050
        (_bfd_mn10300_elf_adjust_dynamic_symbol): Use it.
2051
        (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
2052
        * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Allocate
2053
        .rela.* section contents with bfd_zalloc.
2054
        2001-09-25  Alexandre Oliva  
2055
        * elf-m10300.c: Added declarations for functions missing them.
2056
        Merge some shared-library changes from the i386 back-end.  Use
2057
        R_MN10300_RELATIVE instead of R_MN10300_PCREL32 and
2058
        R_MN10300_GLOB_DAT instead of R_MN10300_32 where appropriate.
2059
        (struct elf32_mn10300_link_hash_entry): Remove duplicates of
2060
        members of elf_link_hash_entry.  Adjusted references.
2061
        (mn10300_elf_final_link_relocate): dynobj was already loaded
2062
        into a local variable, use it.
2063
        2001-09-21  Nick Clifton  
2064
        * elf-m10300.c: Add missing function prototypes.
2065
        2001-08-24  Alexandre Oliva  
2066
        * elf-m10300.c (mn10300_elf_relocate_section): Don't compute
2067
        relocation for dynamic relocations.
2068
        2001-05-16  Alexandre Oliva  
2069
        * reloc.c (BFD_RELOC_MN10300_GOTOFF24): New.
2070
        * elf-m10300.c: Introduce GOTPC16, GOTOFF24, GOTOFF16 and
2071
        PLT16, and rename GOTPC to GOTPC32 and GOTOFF to GOTOFF32.
2072
        (_bfd_mn10300_elf_create_dynamic_sections): Move creation ot PLT...
2073
        (_bfd_mn10300_elf_create_got_section): ... here, so that its
2074
        adress is already known at the time we compute relaxations.
2075
        (mn10300_elf_relax_section): Relax GOTPC32, GOTOFF32, GOT32
2076
        and PLT32 to narrower relocations.
2077
        * libbfd.h, bfd-in2.h: Rebuilt.
2078
        2001-04-12  Alexandre Oliva  
2079
        * reloc.c (BFD_RELOC_MN10300_GOT32, BFD_RELOC_MN10300_GOT24,
2080
        BFD_RELOC_MN10300_GOT16, BFD_RELOC_MN10300_COPY,
2081
        BFD_RELOC_MN10300_GLOB_DAT, BFD_RELOC_MN10300_JMP_SLOT,
2082
        BFD_RELOC_MN10300_RELATIVE): New relocs.
2083
        * libbfd.h, bfd-in2.h: Rebuilt.
2084
        * elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): New.
2085
        (struct elf32_mn10300_link_hash_entry): Added DSO-related
2086
        fields.
2087
        (elf_mn10300_howto): Defined new relocation types.
2088
        (mn10300_reloc_map): Map them.
2089
        (_bfd_mn10300_elf_create_got_section): New fn.
2090
        (mn10300_elf_check_relocs): Handle PIC relocs.
2091
        (mn10300_elf_final_link_relocate): Likewise.
2092
        (mn10300_elf_relocate_section): Handle DSOs.
2093
        (PLT0_ENTRY_SIZE, PLT_ENTRY_SIZE, PIC_PLT_ENTRY_SIZE): New macros.
2094
        (elf_mn10300_plt0_entry, elf_mn10300_plt_entry,
2095
        elf_mn10300_pic_plt_entry): New.
2096
        (elf_mn10300_sizeof_plt, elf_mn10300_plt_plt0_offset,
2097
        elf_mn10300_plt0_linker_offset, elf_mn10300_plt0_gotid_offset,
2098
        elf_mn10300_plt_temp_offset, elf_mn10300_plt_symbol_offset,
2099
        elf_mn10300_plt_reloc_offset: New macros.
2100
        (ELF_DYNAMIC_INTERPRETER): Likewise.
2101
        (_bfd_mn10300_elf_create_dynamic_sections): New function.
2102
        (_bfd_mn10300_elf_adjust_dynamic_symbol): Likewise.
2103
        (_bfd_mn10300_elf_discard_copies): Likewise.
2104
        (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
2105
        (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
2106
        (_bfd_mn10300_elf_finish_dynamic_sections): Likewise.
2107
        (elf_backend_can_gc_sections,
2108
        elf_backend_create_dynamic_sections,
2109
        elf_backend_adjust_dynamic_sections,
2110
        elf_backend_size_dynamic_sections,
2111
        elf_backend_finish_dynamic_symbol,
2112
        elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
2113
        elf_backend_plt_readonly, elf_backend_want_plt_sym,
2114
        elf_backend_got_header_size, elf_backend_plt_header_size): New
2115
        macros.
2116
 
2117
2003-07-09  Alexandre Oliva  
2118
 
2119
        2001-05-06  Alexandre Oliva  
2120
        * elf-m10300.c (compute_function_info): Account for AM33
2121
        registers in `movm' when computing stack space for `call' when
2122
        linking for AM33/2.0 link.
2123
        2000-04-01  Alexandre Oliva  
2124
        * archures.c (bfd_mach_am33_2): Renamed from bfd_mach_am332.
2125
        * bfd-in2.h: Rebuilt.
2126
        * cpu-m10300.c (bfd_am33_2_arch): Renamed from bfd_am332_arch.
2127
        * elf-m10300.c: Updated.
2128
        2000-03-31  Alexandre Oliva  
2129
        * archures.c (bfd_mach_am332): Defined.
2130
        * bfd-in2.h: Rebuilt.
2131
        * cpu-m10300.c (bfd_am332_arch): Defined.
2132
        (bfd_am33_arch): Chained with am33-2.
2133
        * elf-m10300.c (elf_mn10300_mach): Handle am332.
2134
        (_bfd_mn10300_elf_final_write_processing): Likewise.
2135
 
2136
2003-07-09  H.J. Lu 
2137
 
2138
        * elfxx-ia64.c (IA64_HOWTO): Set dst_mask to -1LL.
2139
 
2140
2003-07-10  Alan Modra  
2141
 
2142
        * elf64-ppc.c (bfd_elf64_mkobject): Define.
2143
        (struct ppc64_elf_obj_tdata): New.
2144
        (ppc64_elf_tdata, ppc64_tlsld_got): Define.
2145
        (ppc64_elf_mkobject): New function.
2146
        (struct got_entry): Add "owner".  Move "tls_type".
2147
        (struct ppc_link_hash_table): Delete "relgot", "tlsld_got".
2148
        (ppc64_elf_init_stub_bfd): New function.
2149
        (create_got_section): Create header .got in dynobj.  Create .got
2150
        and .rela.got in each bfd.  Stash pointers in ppc64_elf_obj_tdata.
2151
        (ppc64_elf_create_dynamic_sections): Don't call create_got_section.
2152
        Look for dynobj .got, and test it.
2153
        (ppc64_elf_copy_indirect_symbol): Adjust for changed got.
2154
        (update_local_sym_info): Likewise.
2155
        (ppc64_elf_check_relocs): Likewise.
2156
        (ppc64_elf_gc_sweep_hook): Likewise.
2157
        (ppc64_elf_tls_optimize): Likewise.
2158
        (allocate_dynrelocs): Likewise.
2159
        (ppc64_elf_size_dynamic_sections): Likewise.
2160
        (ppc64_elf_relocate_section): Likewise.
2161
        (ppc64_elf_next_toc_section): Update comment.
2162
        (toc_adjusting_stub_needed): Remove unneeded cast.
2163
        (ppc64_elf_build_stubs): Check for stub sections in stub bfd by
2164
        testing section flags.
2165
        (ppc64_elf_build_stubs): Likewise.
2166
        (ppc64_elf_size_stubs): Likewise.  Remove stub_bfd param.
2167
        (ppc64_elf_finish_dynamic_sections): Write out got sections.
2168
        (func_desc_adjust): Copy over dynamic info for undef weaks.
2169
        * elf64-ppc.h (ppc64_elf_init_stub_bfd): Declare.
2170
        (ppc64_elf_size_stubs): Update prototype.
2171
        * elflink.h (elf_link_sort_relocs): Use link_orders to find reldyn
2172
        input sections rather than scanning dynobj.
2173
 
2174
2003-07-09  Richard Sandiford  
2175
 
2176
        * elfxx-mips.c (mips_elf_link_hash_entry): Remove min_dyn_reloc_index.
2177
        (bfd_mips_elf_swap_msym_in, bfd_mips_elf_swap_msym_out): Delete.
2178
        (mips_elf_create_msym_section): Delete.
2179
        (mips_elf_create_dynamic_relocation): Don't set min_dyn_reloc_index.
2180
        (_bfd_mips_elf_copy_indirect_symbol): Likewise.
2181
        (_bfd_mips_elf_create_dynamic_sections): Don't create .msym.
2182
        (_bfd_mips_elf_size_dynamic_sections): Don't calculate its size.
2183
        (_bfd_mips_elf_size_dynamic_sections): Don't add DT_MIPS_MSYM.
2184
        (_bfd_mips_elf_finish_dynamic_symbol): Don't add symbols to .msym.
2185
        (_bfd_mips_elf_finish_dynamic_sections): Likewise.
2186
 
2187
2003-07-09  Richard Sandiford  
2188
 
2189
        * elfxx-mips.c (mips_elf_irix6_finish_dynamic_symbol): Make the
2190
        symbols protected.
2191
 
2192
2003-07-09  Richard Sandiford  
2193
 
2194
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Fix handling
2195
        of relocations whose offset is -2.
2196
 
2197
2003-07-09  Richard Sandiford  
2198
 
2199
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Treat
2200
        forced-local symbols like other locals.  Don't create relocations
2201
        against STN_UNDEF in irix objects.
2202
 
2203
2003-07-09  Richard Sandiford  
2204
 
2205
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): In SGI-
2206
        compatible objects, add the values of defined external symbols
2207
        to the addend.
2208
 
2209
2003-07-09  Richard Sandiford  
2210
 
2211
        * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Always
2212
        initialize a GOT entry to the symbol's st_value.
2213
 
2214
2003-07-08  Alan Modra  
2215
 
2216
        * elf-bfd.h (struct elf_obj_tdata): Move linker_section_pointers..
2217
        * elf32-ppc.c (struct ppc_elf_obj_tdata): ..to here.  New.
2218
        (ppc_elf_tdata): Define.
2219
        (elf_local_ptr_offsets): Adjust.
2220
        (ppc_elf_mkobject): New function.
2221
        (bfd_elf32_mkobject): Define.
2222
 
2223
        * elfcode.h (elf_object_p): Allocate tdata via _bfd_set_format.
2224
        * elfcore.h (elf_core_file_p): Likewise.
2225
        * section.c (bfd_section_init): Remove prototype.
2226
 
2227
2003-07-08  Alan Modra  
2228
 
2229
        * elf-bfd.h (struct elf_link_hash_entry): Remove linker_section_pointer
2230
        field.
2231
        (enum elf_linker_section_enum): Delete.
2232
        (struct elf_linker_section): Delete.
2233
        (struct elf_linker_section_pointers): Delete.
2234
        (struct elf_obj_tdata): Remove #if 0 chunk.  Remove linker_section.
2235
        Make linker_section_pointers a void**.
2236
        (elf_local_ptr_offsets, elf_linker_section): Don't define.
2237
        * elf32-ppc.c (enum elf_linker_section_enum): New, cut-down version
2238
        of old item in elf-bfd.h.
2239
        (struct elf_linker_section): Likewise.
2240
        (struct elf_linker_section_pointers): Likewise.
2241
        (elf_local_ptr_offsets): Define.
2242
        (struct ppc_elf_link_hash_entry): Add linker_section_pointer.
2243
        (ppc_elf_link_hash_newfunc): Init it.
2244
        (struct ppc_elf_link_hash_table): Add sbss.
2245
        (ppc_elf_link_hash_table_create): zmalloc rather than clearing
2246
        individual fields.
2247
        (elf_create_linker_section): Fold into..
2248
        (ppc_elf_create_linker_section): ..here.  Remove hole_size code.
2249
        Make rela section here if shared.
2250
        (elf_find_pointer_linker_section): Pass lsect rather than enum.
2251
        (elf_create_pointer_linker_section): Adjust.  zalloc rather than
2252
        clearing in a loop.
2253
        (elf_finish_pointer_linker_section): Adjust.  Don't make rela
2254
        section here.
2255
        (ppc_elf_check_relocs): Adjust.
2256
        (ppc_elf_add_symbol_hook): Tighten hash creator test.  Remove code
2257
        creating .sbss by hand.
2258
        * elf.c (_bfd_elf_link_hash_newfunc): Adjust.
2259
 
2260
2003-07-04  Jakub Jelinek  
2261
 
2262
        * elf32-s390.c (elf_howto_table): Change R_390_GOT12 to
2263
        complain_overflow_bitfield.
2264
        * elf64-s390.c (elf_howto_table): Change R_390_GOT12 to
2265
        complain_overflow_bitfield.
2266
 
2267
2003-07-04  Jakub Jelinek  
2268
 
2269
        * elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Return
2270
        true even if -pie.
2271
 
2272
2003-07-04  Jakub Jelinek  
2273
 
2274
        * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add rel_fptr_sec.
2275
        (elfNN_ia64_dynamic_symbol_p): Change info->shared into
2276
        !info->executable.
2277
        (get_fptr): For -pie create .opd as writable section and create
2278
        .rela.opd as well.
2279
        (elfNN_ia64_check_relocs): Change info->shared into
2280
        !info->executable.
2281
        (allocate_fptr): Likewise.
2282
        (allocate_dynrel_entries): Account for a relative reloc for -pie
2283
        @fptr().  Don't account for a relative reloc if -pie want_ltoff_fptr
2284
        for undefweak symbol.  Account for an IPLT reloc in .rela.opd
2285
        section if -pie.
2286
        (set_got_entry): Don't create a relative reloc if -pie
2287
        want_ltoff_fptr for undefweak symbol.
2288
        (set_fptr_entry): Emit an IPLT reloc in .rela.opd for -pie.
2289
        (elfNN_ia64_relocate_section): Emit a relative reloc for -pie
2290
        @fptr().
2291
 
2292
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Issue undefined_symbol
2293
        even if -pie.
2294
        * elf32-i386.c (elf_i386_relocate_section): Likewise.
2295
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2296
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
2297
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
2298
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2299
        * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
2300
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
2301
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
2302
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2303
 
2304
2003-07-04  Paul Clarke 
2305
 
2306
        * elf32-h8300.c (R_H8_DIR32A16): Fix name field.
2307
        (elf32_h8_relax_section) : Adjust position of relocation.
2308
        : Fix type of relocation.
2309
 
2310
2003-07-04  Kaz Kojima  
2311
 
2312
        * elf32-sh.c (sh_elf_create_dynamic_sections): Return if dynamic
2313
        sections were created already.  Remove unnecessary tests of
2314
        the previous change.
2315
 
2316
2003-07-04  Kaz Kojima  
2317
 
2318
        * elf32-sh.c (sh_elf_create_dynamic_sections): Don't call
2319
        bfd_make_section for existing sections.
2320
 
2321
2003-07-04  Alan Modra  
2322
 
2323
        * elf32-sparc.c (elf32_sparc_check_relocs): Don't call
2324
        create_got_section if we already have done so.
2325
        * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise.
2326
        (sh_elf_check_relocs): Likewise.
2327
        (sh_elf_adjust_dynamic_symbol): Delete "dynobj" var.  Use
2328
        htab->root.dynobj instead.
2329
        (sh_elf_check_relocs): Likewise.
2330
        (sh_elf_finish_dynamic_sections): Likewise.
2331
 
2332
        * section.c (bfd_make_section): Return NULL for existing section.
2333
 
2334
2003-07-04  Alan Modra  
2335
 
2336
        * elf32-ppc.c (ppc_elf_create_dynamic_sections): Don't call
2337
        ppc_elf_create_got if we've already done so.
2338
 
2339
        * elf-bfd.h (_bfd_elf_create_linker_section) Don't declare.
2340
        (_bfd_elf_find_pointer_linker_section): Likewise.
2341
        (bfd_elf32_create_pointer_linker_section): Likewise.
2342
        (bfd_elf32_finish_pointer_linker_section): Likewise.
2343
        (bfd_elf64_create_pointer_linker_section): Likewise.
2344
        (bfd_elf64_finish_pointer_linker_section): Likewise.
2345
        (_bfd_elf_make_linker_section_rela): Likewise.
2346
        * elfcode.h (elf_create_pointer_linker_section): Don't define.
2347
        (elf_finish_pointer_linker_section): Likewise.
2348
        * elflink.c (_bfd_elf_make_linker_section_rela): Delete.
2349
        (_bfd_elf_create_linker_section): Move this function..
2350
        (_bfd_elf_find_pointer_linker_section): ..and this..
2351
        * elflink.h (elf_create_pointer_linker_section): ..and this..
2352
        (elf_finish_pointer_linker_section): ..and this..
2353
        * elf32-ppc.c: ..to here, renaming to the following, and adjusting
2354
        calls.
2355
        (elf_create_linker_section): Convert to C90, tidy.
2356
        (elf_find_pointer_linker_section): Likewise.
2357
        (elf_create_pointer_linker_section): Likewise.
2358
        (elf_finish_pointer_linker_section): Likewise.
2359
        * elf32-i370.c: Delete #if 0 code.
2360
 
2361
2003-07-02  Alan Modra  
2362
 
2363
        * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't allow _savef* and
2364
        _restf* to be satisfied by shared libs, and always force them local.
2365
        (toc_adjusting_stub_needed): Avoid scanning linker created sections.
2366
        Correct test for "bl".
2367
        (ppc64_elf_relocate_section ): Correct test for
2368
        primary opcode 31.
2369
 
2370
2003-07-01  Martin Schwidefsky  
2371
 
2372
        * elf32-s390.c (s390_elf_ldisp_reloc): New prototype.
2373
        (s390_tls_reloc): New function.
2374
        (elf_howto_table): Add long displacement relocations R_390_20,
2375
        R_390_GOT20, R_390_GOTPLT20 and R_390_TLS_GOTIE20.
2376
        (elf_s390_reloc_type_lookup): Likewise.
2377
        (elf_s390_check_relocs): Likewise.
2378
        (elf_s390_gc_sweep_hook): Likewise.
2379
        (elf_s390_relocate_section): Likewise.
2380
        * elf64-s390.c: Same changes as for elf32-s390.c.
2381
        * reloc.c: Add long displacement relocations BFD_RELOC_390_20,
2382
        BFD_RELOC_390_GOT20, BFD_RELOC_390_GOTPLT20 and
2383
        BFD_RELOC_390_TLS_GOTIE20.
2384
        * bfd-in2.h: Regenerate.
2385
        * libbfd.h: Likewise.
2386
 
2387
2003-06-30  Alan Modra  
2388
 
2389
        * cpu-ia64-opc.c (ext_imms_scaled): Don't sign extend using shifts.
2390
        (ins_imms, ins_immsm1u4): Likewise.  Warning fix.
2391
 
2392
2003-06-29  Alan Modra  
2393
 
2394
        * archive.c: Convert to C90, remove unnecessary prototypes and casts.
2395
        Replace PTR with void *.  Formatting.
2396
        * archive64.c: Likewise.
2397
        * archures.c: Likewise.
2398
        * bfd-in.h: Likewise.
2399
        * bfd.c: Likewise.
2400
        * bfdio.c: Likewise.
2401
        * bfdwin.c: Likewise.
2402
        * cache.c: Likewise.
2403
        * corefile.c: Likewise.
2404
        * format.c: Likewise.
2405
        * init.c: Likewise.
2406
        * libbfd-in.h: Likewise.
2407
        * libbfd.c: Likewise.
2408
        * linker.c: Likewise.
2409
        * opncls.c: Likewise.
2410
        * reloc.c: Likewise.
2411
        * section.c: Likewise.
2412
        * simple.c: Likewise.
2413
        * syms.c: Likewise.
2414
        * targets.c: Likewise.
2415
        * bfd-in2.h: Regenerate.
2416
        * libbfd.h: Regenerate.
2417
 
2418
        * ecoff.c (bfd_debug_section): Add missing kept_section initialization.
2419
        * libbfd-in.h (_bfd_sh_align_load_span): Don't declare if defined.
2420
        * libbfd.c (COERCE32, EIGHT_GAZILLION): Simplify.
2421
        (bfd_getb64): Rewrite without parens.
2422
        (bfd_getl64, bfd_getb_signed_64, bfd_getl_signed_64): Likewise.
2423
        * cache.c (insert, snip): Remove INLINE.
2424
        * linker.c (bfd_link_add_undef): Likewise.
2425
 
2426
2003-06-29  Andreas Jaeger  
2427
 
2428
        * elf64-x86-64.c: Convert to ISO C90 prototypes, remove
2429
        unnecessary prototypes.  Replace PTR with void *.
2430
        (elf64_x86_64_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL to
2431
        trim plt entries.  Move undefweak non-default visibility test ...
2432
        (allocate_dynrelocs): ... from here.
2433
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
2434
        Change all callers.
2435
        (allocate_dynrelocs): Use SYMBOL_CALLS_LOCAL.  Use
2436
        SYMBOL_REFERENCES_LOCAL for dynreloc check.
2437
        (elf64_x86_64_relocate_section): Use SYMBOL_CALLS_LOCAL for
2438
        dynreloc and .got relocs.
2439
        (elf64_x86_64_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL
2440
        for .got relocs.
2441
 
2442
2003-06-29  Thiemo Seufer 
2443
 
2444
        * elfxx-mips.c: Allow lazy binding for R_MIPS_JALR.
2445
 
2446
2003-06-27  Nick Clifton  
2447
 
2448
        * opncls.c (bfd_add_gnu_debuglink_section): Rename to
2449
        bfd_add_gnu_debuglink_section and only create the section, do not
2450
        fill in its contents.
2451
        (bfd_fill_in_gnu_debuglink_section): New function.  Fill in the
2452
        contents of a .gnu-debuglink section.
2453
        * bfd-in2.h: Regenerate.
2454
 
2455
2003-06-27  Thiemo Seufer 
2456
 
2457
        * elfxx-mips.c: Revert .got alignment to 2**4.
2458
 
2459
2003-06-27  Thiemo Seufer 
2460
 
2461
        * elf32-mips.c: Fix addend for _gp_disp special symbol.
2462
 
2463
2003-06-27  Thiemo Seufer 
2464
 
2465
        * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove non-default
2466
        relocation header setup.
2467
 
2468
2003-06-25  Alan Modra  
2469
 
2470
        * elf32-ppc.c (ppc_elf_howto_table): Remove unnecessary cast.
2471
        (ppc_elf_reloc_type_lookup): Modify comment.
2472
        (ppc_elf_info_to_howto): Ditto.
2473
        (ppc_elf_relocate_section): Ditto.
2474
        (ppc_elf_check_relocs): Call ppc_elf_howto_init.
2475
 
2476
2003-06-25  Alan Modra  
2477
 
2478
        * aout-ns32k.c: Correct spelling of "relocatable".
2479
        * aoutx.h: Likewise.
2480
        * bfd-in.h: Likewise.
2481
        * bfd.c: Likewise.
2482
        * bout.c: Likewise.
2483
        * coff-a29k.c: Likewise.
2484
        * coff-alpha.c: Likewise.
2485
        * coff-arm.c: Likewise.
2486
        * coff-i386.c: Likewise.
2487
        * coff-i860.c: Likewise.
2488
        * coff-i960.c: Likewise.
2489
        * coff-m68k.c: Likewise.
2490
        * coff-m88k.c: Likewise.
2491
        * coff-mcore.c: Likewise.
2492
        * coff-mips.c: Likewise.
2493
        * coff-or32.c: Likewise.
2494
        * coff-ppc.c: Likewise.
2495
        * coff-rs6000.c: Likewise.
2496
        * coff-sh.c: Likewise.
2497
        * coff-tic80.c: Likewise.
2498
        * coff64-rs6000.c: Likewise.
2499
        * cofflink.c: Likewise.
2500
        * cpu-ns32k.c: Likewise.
2501
        * ecoff.c: Likewise.
2502
        * ecofflink.c: Likewise.
2503
        * elf-bfd.h: Likewise.
2504
        * elf-eh-frame.c: Likewise.
2505
        * elf-hppa.h: Likewise.
2506
        * elf-m10200.c: Likewise.
2507
        * elf-m10300.c: Likewise.
2508
        * elf.c: Likewise.
2509
        * elf32-arm.h: Likewise.
2510
        * elf32-avr.c: Likewise.
2511
        * elf32-cris.c: Likewise.
2512
        * elf32-d10v.c: Likewise.
2513
        * elf32-dlx.c: Likewise.
2514
        * elf32-fr30.c: Likewise.
2515
        * elf32-frv.c: Likewise.
2516
        * elf32-h8300.c: Likewise.
2517
        * elf32-hppa.c: Likewise.
2518
        * elf32-i370.c: Likewise.
2519
        * elf32-i386.c: Likewise.
2520
        * elf32-i860.c: Likewise.
2521
        * elf32-i960.c: Likewise.
2522
        * elf32-ip2k.c: Likewise.
2523
        * elf32-iq2000.c: Likewise.
2524
        * elf32-m32r.c: Likewise.
2525
        * elf32-m68hc11.c: Likewise.
2526
        * elf32-m68hc1x.c: Likewise.
2527
        * elf32-m68k.c: Likewise.
2528
        * elf32-mcore.c: Likewise.
2529
        * elf32-mips.c: Likewise.
2530
        * elf32-msp430.c: Likewise.
2531
        * elf32-openrisc.c: Likewise.
2532
        * elf32-ppc.c: Likewise.
2533
        * elf32-s390.c: Likewise.
2534
        * elf32-sh.c: Likewise.
2535
        * elf32-sh64.c: Likewise.
2536
        * elf32-sparc.c: Likewise.
2537
        * elf32-v850.c: Likewise.
2538
        * elf32-vax.c: Likewise.
2539
        * elf32-xstormy16.c: Likewise.
2540
        * elf32-xtensa.c: Likewise.
2541
        * elf64-alpha.c: Likewise.
2542
        * elf64-hppa.c: Likewise.
2543
        * elf64-mips.c: Likewise.
2544
        * elf64-mmix.c: Likewise.
2545
        * elf64-ppc.c: Likewise.
2546
        * elf64-s390.c: Likewise.
2547
        * elf64-sh64.c: Likewise.
2548
        * elf64-sparc.c: Likewise.
2549
        * elf64-x86-64.c: Likewise.
2550
        * elfcode.h: Likewise.
2551
        * elflink.h: Likewise.
2552
        * elfn32-mips.c: Likewise.
2553
        * elfxx-ia64.c: Likewise.
2554
        * elfxx-mips.c: Likewise.
2555
        * i386linux.c: Likewise.
2556
        * ieee.c: Likewise.
2557
        * libcoff-in.h: Likewise.
2558
        * linker.c: Likewise.
2559
        * m68klinux.c: Likewise.
2560
        * pdp11.c: Likewise.
2561
        * pe-mips.c: Likewise.
2562
        * peXXigen.c: Likewise.
2563
        * reloc.c: Likewise.
2564
        * reloc16.c: Likewise.
2565
        * sparclinux.c: Likewise.
2566
        * sunos.c: Likewise.
2567
        * syms.c: Likewise.
2568
        * versados.c: Likewise.
2569
        * vms.c: Likewise.
2570
        * xcofflink.c: Likewise.
2571
        * bfd-in2.h: Regenerate.
2572
        * libcoff.h: Regenerate.
2573
        * libbfd.h: Regenerate.
2574
 
2575
2003-06-24  Alan Modra  
2576
 
2577
        * elf32-ppc.c (ppc_elf_check_relocs): Report plt reloc against
2578
        local sym errors.
2579
 
2580
        * elf32-i386.c: Convert to C90 function definitions, remove unnecessary
2581
        prototypes and casts.  Replace PTR with void *.  Formatting.
2582
        * elf32-ppc.c: Likewise.  Break long strings too.
2583
        (ppc_elf_relax_section): Use enum elf_ppc_reloc_type for r_type.
2584
        (ppc_elf_unhandled_reloc): Internationalize error message.
2585
        * elf32-ppc.h: Remove PARAMS.
2586
 
2587
2003-06-23  Mark Mitchell  
2588
 
2589
        * elf32-ppc.c (ppc_elf_begin_write_processing): Use bytes to count
2590
        APUinfo slots.
2591
        (ppc_elf_final_write_processing): Likewise.
2592
 
2593
2003-06-23  H.J. Lu 
2594
 
2595
        * elflink.h (elf_link_input_bfd): Check raw size when using
2596
        kept_section to preserve debug information discarded by
2597
        linkonce.
2598
 
2599
2003-06-20  Alan Modra  
2600
 
2601
        * elf64-ppc.c (struct ppc_link_hash_table): Add top_id.
2602
        (ppc64_elf_setup_section_lists): Set it.
2603
        (ppc64_elf_relocate_section): Check sym section id against top_id.
2604
        (ppc_build_one_stub): Comment on top_id.
2605
 
2606
2003-06-20  Ralf Corsepius  
2607
 
2608
        * config.bfd: Add tic4x-*-rtems*.
2609
 
2610
2003-06-20  Alan Modra  
2611
 
2612
        * elf64-ppc.c: Convert to C90 function definitions, remove unnecessary
2613
        prototypes and casts.  Replace PTR with void *.  Format copyright.
2614
        Mention ABI links.
2615
        (struct ppc_link_hash_table): Rename sgot, srelgot, splt, srelplt,
2616
        sdynbss, srelbss, sglink, sbrlt and srelbrlt to got, relgot .. relbrlt.
2617
        (ppc_type_of_stub): Make r_type an enum.
2618
        (ppc64_elf_size_stubs): Likewise.
2619
        * elf64-ppc.h: Remove PARAMS macro.
2620
 
2621
2003-06-19  Alan Modra  
2622
 
2623
        * elf64-ppc.c (ppc64_elf_link_hash_table_create): Reinstate init of
2624
        elf hash tab fields.
2625
 
2626
        * elf64-ppc.c (ppc64_elf_reloc_type_lookup): Tidy prototype.
2627
        (ppc64_elf_info_to_howto): Likewise.
2628
        (ppc64_elf_build_stubs): Add "stats" param, and print statistics.
2629
        * elf64-ppc.h (ppc64_elf_build_stubs): Adjust prototype.
2630
 
2631
2003-06-19  Alan Modra  
2632
 
2633
        * elf64-sparc.c (sparc64_elf_relocate_section): Ignore R_SPARC_DISP32
2634
        reloc overflow on discarded eh_frame entries.
2635
 
2636
2003-06-19  Alan Modra  
2637
 
2638
        * elf64-ppc.c (toc_adjusting_stub_needed): New function.
2639
        (ppc64_elf_next_input_section): Use it here to set has_gp_reloc.
2640
        Return error condition.
2641
        (ppc64_elf_size_stubs): Restrict toc adjusting stubs to sections
2642
        that have has_gp_reloc set.
2643
        (struct ppc_link_hash_table): Add stub_count.
2644
        (ppc_build_one_stub): Increment it.
2645
        (ppc64_elf_link_hash_table_create): zmalloc rather than clearing
2646
        individual fields.
2647
        * elf64-ppc.h (ppc64_elf_next_input_section): Update prototype.
2648
 
2649
2003-06-18  Alan Modra  
2650
 
2651
        * elflink.h (elf_gc_record_vtentry): Revert last change.  Correct
2652
        size calculation from addend.  Round size up.
2653
 
2654
2003-06-18  Hans-Peter Nilsson  
2655
 
2656
        * elf32-cris.c (cris_elf_relocate_section) 
2657
        R_CRIS_32_GOTREL>: When linking a program, don't complain about a
2658
        symbol from a normal object or an undefined weak symbol.
2659
 
2660
2003-06-18  Alan Modra  
2661
 
2662
        * elf64-ppc.c (ppc64_elf_relocate_section): Accept a symbol on
2663
        R_PPC64_TOC relocs.
2664
 
2665
2003-06-17  H.J. Lu 
2666
 
2667
        * section.c (struct sec): Put back kept_section.
2668
        (STD_SECTION): Put back kept_section initialization.
2669
        * bfd-in2.h: Regenerate.
2670
 
2671
        * elflink.h (elf_link_input_bfd): Also check discarded linkonce
2672
        sections for relocateable output. Use kept_section to preserve
2673
        debug information discarded by linkonce.
2674
 
2675
2003-06-17  Roland McGrath  
2676
 
2677
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Support
2678
        segment-relative relocation between different segments.
2679
 
2680
2003-06-17  Alan Modra  
2681
 
2682
        * elf64-ppc.c (ppc64_elf_relocate_section): Do unaligned reloc
2683
        optimizations earlier.
2684
 
2685
        * elf64-ppc.c (struct ppc_link_hash_table): Reinstate top_index.
2686
        Restore previous input_list type.
2687
        (ppc64_elf_link_hash_table_create): Undo last change.
2688
        (ppc64_elf_setup_section_lists): Reinstate code setting up input lists
2689
        per output section, but don't bother with bfd_abs_section marker.
2690
        (ppc64_elf_next_input_section): Adjust for multiple input section
2691
        lists.
2692
        (group_sections): Likewise.
2693
 
2694
2003-06-17  Jakub Jelinek  
2695
 
2696
        * elf64-ppc.c (ppc64_elf_relocation_section): Ensure
2697
        *r_offset == r_addend for RELATIVE relocs against .got.
2698
 
2699
2003-06-17  Alan Modra  
2700
 
2701
        * elf64-ppc.c (ppc64_elf_relocate_section): Optimize unaligned relocs.
2702
 
2703
2003-06-17  Nick Clifton  
2704
 
2705
        * elflink.h (elf_gc_record_vtentry): Allocate an extra element
2706
        in the vtable_entries_used array to allow for the accessing
2707
        the largest element.
2708
 
2709
2003-06-17  Alan Modra  
2710
 
2711
        * elf64-ppc.c (struct ppc_link_hash_table): Remove top_index.  Modify
2712
        input_list.
2713
        (ppc64_elf_link_hash_table_create): Init input_list here.
2714
        (ppc64_elf_setup_section_lists): Remove code setting up input lists
2715
        per output section.  Set toc_off for abs and other standard sections.
2716
        (ppc64_elf_reinit_toc): Don't set elf_gp on input bfds lacking a toc.
2717
        (ppc64_elf_next_input_section): Adjust for single input section list.
2718
        Don't set toc_curr from input bfds that haven't set elf_gp.
2719
        (group_sections): Adjust for single input section list.
2720
 
2721
        * elf64-ppc.c (ppc64_elf_relocate_section): Correct pcrel section zero.
2722
 
2723
2003-06-16  Alan Modra  
2724
 
2725
        * elf64-ppc.c (ppc64_elf_relocate_section): When optimizing toctprel
2726
        tls, check that a TOC16_DS or TOC16_LO_DS reloc isn't pointing to a
2727
        dtprel entry.  Ensure TLS_LD DTPMOD reloc has a zero addend.  Write
2728
        got section for RELATIVE relocs.  Fix wrong comment.  Change condition
2729
        under which dynamic relocs update the section contents.
2730
 
2731
2003-06-13  Robert Millan  
2732
 
2733
        * config.bfd: Add i386-netbsd-gnu target.
2734
 
2735
2003-06-12  Nick Clifton  
2736
 
2737
        * opncls.c (calc_crc32): Rename to
2738
        bfd_calc_gnu_debuglink_crc32 and export.
2739
        (GNU_DEBUGLINK): Define and use to replace occurrences of
2740
        hard-coded ".gnu_debuglink" in the code.
2741
        (get_debug_link_info): Prevent aborts by replacing call to
2742
        xmalloc with a call to malloc.
2743
        (find_separate_debug_file): Prevent aborts by replacing calls
2744
        to xmalloc and xstrdup with calls to malloc and strdup.
2745
        (bfd_add_gnu_debuglink): New function.  Add a .gnu_debuglink
2746
        section to a bfd.
2747
        * bfd-in2.h: Regenerate.
2748
 
2749
2003-06-12 Federico G. Schwindt 
2750
 
2751
        * config.bfd (i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3]):
2752
        New target (was i[3-7]86-*-openbsd* before).
2753
        (i[3-7]86-*-openbsd*): Change to use bfd_elf32_i386_vec.
2754
        (vax-*-openbsd*): New target.
2755
 
2756
2003-06-11  Thiemo Seufer 
2757
 
2758
        * elfxx-mips.c (MIPS_ELF_OPTIONS_SECTION_NAME): Use .MIPS.options
2759
        for n32, too.
2760
        (MIPS_ELF_STUB_SECTION_NAME): Use .MIPS.stubs for n32, too.
2761
        (mips_elf_rel_dyn_section): Use appropriate section alignment.
2762
        (mips_elf_create_got_section): Likewise.
2763
        (_bfd_mips_elf_create_dynamic_sections): Likewise.
2764
 
2765
2003-06-11  Thiemo Seufer 
2766
 
2767
        * elf32-mips.c (mips_elf_generic_reloc): New Function.
2768
        (elf_mips_howto_table_rel): Use it.
2769
        (gprel32_with_gp): Move prototype.
2770
        (mips_elf_hi16_reloc): Check for ! BSF_LOCAL instead of zero addend.
2771
        Use mips_elf_generic_reloc.
2772
        (mips_elf_got16_reloc): Check for ! BSF_LOCAL instead of zero addend.
2773
        Code cleanup.
2774
        (_bfd_mips_elf32_gprel16_reloc): Check for ! BSF_LOCAL instead of
2775
        zero addend.
2776
        (mips_elf_gprel32_reloc): Likewise. Use the same GP assignment logic
2777
        as in the other *_gprel*_reloc functions.
2778
        (gprel32_with_gp): Handle partial_inplace properly.
2779
        (mips32_64bit_reloc): Use mips_elf_generic_reloc.
2780
        (mips16_gprel_reloc): Check for ! BSF_LOCAL instead of zero addend.
2781
        Do addend handling directly instead of calling
2782
        _bfd_mips_elf_gprel16_with_gp. Handle partial_inplace properly.
2783
        * elf64-mips.c (mips_elf64_hi16_reloc): Check for ! BSF_LOCAL instead
2784
        of zero addend. Handle partial_inplace properly.
2785
        (mips_elf64_got16_reloc): Check for ! BSF_LOCAL instead of zero
2786
        addend.
2787
        (mips_elf64_gprel16_reloc): Likewise.
2788
        (mips_elf64_literal_reloc): Likewise.
2789
        (mips_elf64_gprel32_reloc): Likewise. Use the same GP assignment
2790
        logic as in the other *_gprel*_reloc functions. Handle
2791
        partial_inplace properly.
2792
        (mips_elf64_shift6_reloc): Check for ! BSF_LOCAL instead of zero
2793
        addend. Handle partial_inplace properly.
2794
        (mips16_gprel_reloc): Likewise. Do addend handling directly instead
2795
        of calling _bfd_mips_elf_gprel16_with_gp.
2796
        * elfn32-mips.c (mips_elf_got16_reloc): Check for BSF_LOCAL.
2797
        (mips_elf_gprel32_reloc): Check for ! BSF_LOCAL instead
2798
        of zero addend.
2799
        (mips_elf_shift6_reloc): Handle partial_inplace properly.
2800
        (mips16_gprel_reloc): Likewise. Do addend handling directly instead
2801
        of calling _bfd_mips_elf_gprel16_with_gp.
2802
        * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Handle
2803
        partial_inplace properly. Fix wrong addend handling. Fix overflow
2804
        check.
2805
        (_bfd_mips_elf_sign_extend): Renamed from mips_elf_sign_extend and
2806
        exported.
2807
        (mips_elf_calculate_relocation): Use _bfd_mips_elf_sign_extend.
2808
        (_bfd_mips_elf_relocate_section): Likewise.
2809
        (mips_elf_create_dynamic_relocation): Update sec_info_type access.
2810
        * elfxx-mips.h (_bfd_mips_relax_section): Fix prototype declaration.
2811
        (_bfd_mips_elf_sign_extend): New prototype.
2812
 
2813
2003-06-11 Federico G. Schwindt 
2814
 
2815
        * config.bfd (sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1]):
2816
        New target (was sparc-*-openbsd* before).
2817
        (sparc-*-openbsd*): Change to use bfd_elf32_sparc_vec.
2818
 
2819
        * configure.in (vax-*-openbsd*): Set COREFILE to netbsd-core.lo.
2820
        * configure: Regenerate.
2821
 
2822
2003-06-11  H.J. Lu 
2823
 
2824
        * po/Make-in (DESTDIR): New.
2825
        (install-data-yes): Support $(DESTDIR).
2826
        (uninstall): Likewise.
2827
 
2828
2003-06-11  Alan Modra  
2829
 
2830
        * Makefile.am (config.status): Depend on version.h.
2831
        Run "make dep-am".
2832
        * Makefile.in: Regenerate.
2833
        * po/SRC-POTFILES.in: Regenerate.
2834
 
2835
2003-06-10  Alan Modra  
2836
            Gary Hade 
2837
 
2838
        * elf64-ppc.c (ppc64_elf_relocate_section <*_DS>): Special case lq.
2839
 
2840
2003-06-10  Richard Sandiford  
2841
 
2842
        * archures.c (bfd_mach_h8300sxn): New architecture.
2843
        * bfd-in2.h: Regenerate.
2844
        * cpu-h8300.c (h8300_scan): Check for 'sxn'.
2845
        (h8300sxn_info_struct): New.
2846
        (h8300sx_info_struct): Link to it.
2847
        * elf32-h8300.c (elf32_h8_mach): Add h8300sxn case.
2848
        (elf32_h8_final_write_processing): Likewise.
2849
 
2850
2003-06-08  Alan Modra  
2851
 
2852
        * elf64-ppc.c: Move TARGET_LITTLE_SYM and other macros used by
2853
        elfxx-target.h so that we can use elf_backend_got_header_size.
2854
        (ELF_MACHINE_ALT1, ELF_MACHINE_ALT2): Delete.
2855
        (GLINK_CALL_STUB_SIZE): Modify.  Define new glink call stub and
2856
        associated macros.
2857
        (ppc64_elf_howto_raw ): Correct
2858
        dst_mask.
2859
        (enum ppc_stub_type): Add ppc_stub_long_branch_r2off and
2860
        ppc_stub_plt_branch_r2off.
2861
        (struct ppc_stub_hash_entry): Reorganize.
2862
        (struct ppc_link_hash_table): Add no_multi_toc, multi_toc_needed,
2863
        toc_curr, toc_off and emit_stub_syms.
2864
        (ppc64_elf_link_hash_table_create): Init them.
2865
        (ppc_stub_name): Correct string size.
2866
        (ppc64_elf_check_relocs): Set has_gp_reloc on GOT and TOC relocs.
2867
        (ppc64_elf_size_dynamic_sections): Set no_multi_toc if GOT entries
2868
        used.
2869
        (ppc_type_of_stub): Tweak root.type test.
2870
        (build_plt_stub): Remove glink code.  Adjust for insn macro changes.
2871
        (ppc_size_one_stub): Handle ppc_stub_long_branch_r2off and
2872
        ppc_stub_plt_branch_r2off.
2873
        (ppc_build_one_stub): Likewise.  Fix var shadowing.  Correct addis,addi
2874
        range test.  Use toc_off to calculte r2 values.  Handle emit_stub_syms.
2875
        (ppc64_elf_setup_section_lists): Remove htab creator flavour test.
2876
        Initialize elf_gp and toc_curr.
2877
        (ppc64_elf_next_toc_section, ppc64_elf_reinit_toc): New functions.
2878
        (ppc64_elf_next_input_section): Set toc_off.
2879
        (group_sections): Ensure groups have the same TOC.
2880
        (ppc64_elf_size_stubs): Check whether we need a TOC adjusting stub.
2881
        (ppc64_elf_build_stubs): Add emit_stub_syms param, and stash in htab.
2882
        Build new glink stub.
2883
        (ppc64_elf_relocate_section): Handle multiple TOCs.  Fix comments.
2884
        (ppc64_elf_finish_dynamic_sections): Adjust DT_PPC64_GLINK.
2885
        * elf64-ppc.h (ppc64_elf_build_stubs): Update prototype.
2886
        (ppc64_elf_next_toc_section, ppc64_elf_reinit_toc): Declare.
2887
        * section.c (struct sec): Rename flag12 to has_gp_reloc.
2888
        (STD_SECTION): Update.
2889
        * ecoff.c (bfd_debug_section): Update comment.
2890
        * bfd-in2.h: Regenerate.
2891
 
2892
2003-06-05  Daniel Jacobowitz  
2893
 
2894
        * elfcode.h (elf_slurp_reloc_table_from_section): Don't dereference
2895
        NULL function pointers.
2896
 
2897
2003-06-05  Daniel Jacobowitz  
2898
 
2899
        * simple.c (bfd_simple_get_relocated_section_contents): Call
2900
        _bfd_generic_link_add_symbols instead of bfd_link_add_symbols.
2901
 
2902
2003-06-04  Svein E. Seldal  
2903
 
2904
        * coff-tic54x.c: Removed the ticoff0_bad_format_hook() and
2905
        ticoff1_bad_format_hook() functions. Removed the coff0 and coff1
2906
        swaptables.
2907
        * coff-tic4x.c: Ditto
2908
        * coffcode.h: Added extra arguments to CREATE_BIG_COFF_TARGET_VEC
2909
        and CREATE_LITTLE_COFF_TARGET_VEC. Created the macro
2910
        CREATE_BIGHDR_COFF_TARGET_VEC. Created the ticoff0_bad_format_hook(),
2911
        ticoff1_bad_format_hook() functions. Created the coff0 and coff1
2912
        swap tables.
2913
        * coff-tic4x.c: Adopted new CREATE_xxx_COFF_TARGET_VEC macros.
2914
        * coff-a29k.c: Append COFF_SWAP_TABLE argument
2915
        * coff-apollo.c: Ditto
2916
        * coff-arm.c: Ditto
2917
        * coff-h8300.c: Ditto
2918
        * coff-h8500.c: Ditto
2919
        * coff-i960.c: Ditto
2920
        * coff-m68k.c: Ditto
2921
        * coff-m88k.c: Ditto
2922
        * coff-mcore.c: Ditto
2923
        * coff-sh.c: Ditto
2924
        * coff-sparc.c: Ditto
2925
        * coff-tic80.c: Ditto
2926
        * coff-we32k.c: Ditto
2927
        * coff-z8k.c: Ditto
2928
        * coff-w65.c: Ditto
2929
 
2930
2003-06-04  Svein E. Seldal  
2931
 
2932
        * coff-tic4x.c (ticoff0_swap_table, ticoff1_swap_table): Fixed
2933
        initialization bug
2934
 
2935
2003-06-03  Jakub Jelinek  
2936
 
2937
        * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_STACK.
2938
        (bfd_section_from_phdr): Likewise.
2939
        (map_sections_to_segments): Create PT_GNU_STACK segment header.
2940
        (get_program_header_size): Count with PT_GNU_STACK.
2941
        * elf-bfd.h (struct elf_obj_tdata): Add stack_flags.
2942
        * elflink.h (bfd_elfNN_size_dynamic_sections): Set stack_flags.
2943
 
2944
2003-06-03  H.J. Lu 
2945
 
2946
        * elflink.h (elf_link_input_bfd): Call linker error_handler
2947
        for discarded definitions.
2948
 
2949
2003-06-03  Elias Athanasopoulos  
2950
 
2951
        * syms.c (decode_section_type): Return 'n' if section flags are
2952
        SEC_HAS_CONTENTS && SEC_READONLY.
2953
 
2954
2003-06-03  Nick Clifton  
2955
 
2956
        * elf32-v850.c (v850_elf_howto_t): Rename R_V850_32to
2957
        R_V850_ABS32.  Add entry for R_V850_REL32.
2958
        (v850_elf_reloc_map): Likewise.
2959
        (v850_elf_check_relocs): Likewise.
2960
        (v850_elf_perform_relocation): Likewise.
2961
        (v850_elf_final_link_relocate): Likewise.  Include computation
2962
        to make R_V850_REl32 pc-relative.
2963
 
2964
2003-06-03  Kaz Kojima  
2965
 
2966
        * elf32-sh.c (sh_elf_size_dynamic_sections): Create .interp section
2967
        and DT_DEBUG dynamic tag even for position independent executables.
2968
        * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewize.
2969
 
2970
2003-06-02  Daniel Jacobowitz  
2971
 
2972
        * config.bfd: Move obsolete entries out of the range of the
2973
        targmatch sed script.
2974
 
2975
2003-06-02  Daniel Jacobowitz  
2976
 
2977
        * config.bfd (mips*-dec-bsd*, mips*-*-pe*): Mark as obsolete.
2978
 
2979
2003-05-31  Jakub Jelinek  
2980
 
2981
        * elf32-ppc.c (allocate_dynrelocs): Use single slot for first 8192
2982
        plt entries, not just 8191.
2983
 
2984
2003-05-30  Daniel Jacobowitz  
2985
 
2986
        * elfxx-mips.c (_bfd_mips_elf_discard_info): Correct loop index.
2987
        Reported by Ken Faiczak .
2988
 
2989
2003-05-30  Ulrich Drepper  
2990
            Jakub Jelinek  
2991
 
2992
        * elflink.h (elf_link_add_object_symbols): Use !info->executable
2993
        instead of info->shared where appropriate.
2994
        (bfd_elfNN_size_dynamic_sections, elf_link_output_extsym): Likewise.
2995
        * elflink.c (_bfd_elf_create_got_section): Likewise.
2996
        (_bfd_elf_link_create_dynamic_sections): Likewise.
2997
        (_bfd_elf_link_assign_sym_version): Likewise.
2998
        * elf32-i386.c (elf_i386_size_dynamic_sections): Create .interp section
2999
        and DT_DEBUG dynamic tag even for position independent executables.
3000
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
3001
        * elf32-s390.c (elf_s390_size_dynamic_sections: Likewise.
3002
        * elf64-ppc.c (ppc64_elf_size_dynamic_sections: Likewise.
3003
        * elf64-s390.c (elf_s390_size_dynamic_sections: Likewise.
3004
        * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections: Likewise.
3005
        * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections: Likewise.
3006
        * elf32-sparc.c (elf32_sparc_size_dynamic_sections: Likewise.
3007
        * elf64-alpha.c (elf64_alpha_size_dynamic_sections: Likewise.
3008
        * elf64-sparc.c (sparc64_elf_size_dynamic_sections: Likewise.
3009
 
3010
2003-05-30  Kris Warkentin 
3011
 
3012
        * elf.c (elfcore_grok_nto_status): Only set lwpid for the active or
3013
        signalled thread.
3014
        (elfcore_grok_nto_gregs): Only make .reg section for the active thread.
3015
 
3016
2003-05-29  Nick Clifton  
3017
 
3018
        * pef.c: Include "safe-ctype.h" instead of .
3019
        Tidy up formatting.
3020
        * Makefile.am: Add dependency on safe-ctype.h.
3021
        * Makefile.in: Regenerate.
3022
 
3023
2003-05-29  Thiemo Seufer 
3024
 
3025
        * elfxx-mips.c: Don't force symbols local unconditionally.
3026
 
3027
2003-05-28  Alan Modra  
3028
 
3029
        * elf32-hppa.c (elf32_hppa_relocate_section): Delete bogus
3030
        undefined_symbol call.
3031
 
3032
2003-05-27  Richard Sandiford  
3033
 
3034
        * elfxx-mips.c (mips_elf_hash_sort_data): Fix formattting.
3035
        (mips_elf_link_hash_table): Likewise.
3036
 
3037
2003-05-22  Thiemo Seufer 
3038
 
3039
        * elf64-mips.c (elf_mips_gnu_rel16_s2): Add internally used
3040
        R_MIPS_GNU_REL16_S2 support.
3041
        (bfd_elf64_bfd_reloc_type_lookup): Use it.
3042
        (mips_elf64_rtype_to_howto): Use it.
3043
        * elfn32-mips.c (elf_mips_gnu_rel16_s2): Add internally used
3044
        R_MIPS_GNU_REL16_S2 support.
3045
        (bfd_elf32_bfd_reloc_type_lookup): Use it.
3046
        (mips_elf_n32_rtype_to_howto): Use it.
3047
 
3048
2003-05-21  Stuart F. Downing  
3049
 
3050
        * som.h: Define PA_2_0 before including a.out.h
3051
 
3052
2003-05-07  Eric Christopher  
3053
            Alexandre Oliva   
3054
 
3055
        * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Adjust
3056
        pic tests, change to warning.
3057
        (_bfd_mips_elf_final_link): Remove EF_MIPS_CPIC flag setting.
3058
 
3059
2003-05-21  Marcus Comstedt  
3060
 
3061
        * config.bfd: Check for a target triplet of shl-...-netbsdelf as
3062
        well as shle-...-netbsdelf.  Remove duplicate entry.
3063
 
3064
2003-05-21  Nick Clifton  
3065
 
3066
        * elf32-xstormy16.c (xstormy16_elf_howto_table): Fix dst_mask
3067
        for X_STORMY16_REL_12 reloc.
3068
 
3069
        * elf.c (bfd_elf_get_needed_list): Use is_elf_hash_table to check
3070
        the type of the hash table in the bfd_link_info structure.
3071
        (bfd_elf_get_runpath_list): Likewise.
3072
 
3073
2003-05-19  Roland McGrath  
3074
 
3075
        * elf.c (bfd_elf_bfd_from_remote_memory): New function.
3076
        * bfd-in.h: Declare it.
3077
        * bfd-in2.h: Regenerated.
3078
        * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): New function.
3079
        * elf-bfd.h (struct elf_backend_data): New function pointer member
3080
        elf_backend_bfd_from_remote_memory.
3081
        (_bfd_elf32_bfd_from_remote_memory, _bfd_elf64_bfd_from_remote_memory):
3082
        Declare them.
3083
        * elfxx-target.h (elf_backend_bfd_from_remote_memory): New macro.
3084
        (elfNN_bed): Add that to the initializer.
3085
 
3086
2003-05-15  Roland McGrath  
3087
 
3088
        * elf.c (elfcore_grok_note): Grok NT_AUXV note, make ".auxv" section.
3089
 
3090
2003-05-20  Jakub Jelinek  
3091
 
3092
        * elflink.h (elf_link_output_extsym): Only issue error about !=
3093
        STV_DEFAULT symbols if they are bfd_link_hash_undefined.
3094
 
3095
2003-05-20  H.J. Lu 
3096
 
3097
        * elflink.c (_bfd_elf_merge_symbol): Check ELF_LINK_DYNAMIC_DEF
3098
        when removing the old definition for symbols with non-default
3099
        visibility.
3100
 
3101
2003-05-18  Jason Eckhardt  
3102
 
3103
        * elf32-i860.c (elf32_i860_relocate_highadj): Simplify calculation.
3104
 
3105
2003-05-17  Andreas Schwab  
3106
 
3107
        * elf32-m68k.c (elf_m68k_check_relocs): Cache reloc section in
3108
        elf_section_data during processing of pc-relative and absolute
3109
        relocations.
3110
        (elf_m68k_relocate_section): Use the cached reloc section instead
3111
        of computing it again.  Fix handling of visibility.  Don't modify
3112
        addend when copying over a relocation into the output.
3113
 
3114
2003-05-17  Alan Modra  
3115
 
3116
        * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL
3117
        to trim plt entries.  Move undefweak non-default visibility test..
3118
        (allocate_dynrelocs): ..from here.
3119
        * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't test
3120
        dynamic_sections_created here.  Update comment.  Move undefweak
3121
        non-default visibility test..
3122
        (allocate_dynrelocs): ..from here.  Fix comment.
3123
        * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL
3124
        to trim plt entries.  Move undefweak non-default visibility test..
3125
        (allocate_dynrelocs): ..from here.  Fix comment.
3126
        * elflink.h (elf_link_output_extsym): Compare ELF_ST_VISIBILITY with
3127
        STV_DEFAULT rather than comparing with zero.
3128
        * elflink.c (_bfd_elf_merge_symbol): Likewise.
3129
        (_bfd_elf_fix_symbol_flags): Likewise.  Format comment.
3130
 
3131
2003-05-17  Thiemo Seufer 
3132
 
3133
        * bfd.c (_bfd_get_gp_value): Prevent illegal access for abfd null
3134
        pointers.
3135
        (_bfd_set_gp_value): Likewise.
3136
 
3137
2003-05-16  Michael Snyder  
3138
        From Bernd Schmidt  
3139
        * archures.c (bfd_mach_h8300sx): New.
3140
        * bfd-in2.h: Regenerate.
3141
        * cpu-h8300.c (h8300_scan)): Add support for h8300sx.
3142
        (h8300sx_info_struct): New.
3143
        (h8300s_info_struct): Link to it.
3144
        * elf32-h8300.c (elf32_h8_mach): Add support for h8300sx.
3145
        (elf32_h8_final_write_processing): Likewise.
3146
        (elf32_h8_relax_section): Likewise.
3147
 
3148
2003-05-16  Kelley Cook  
3149
 
3150
        * config.bfd: Accept i[3-7]86 variants.
3151
        * configure.host: Likewise.
3152
        * configure.in: Likewise.
3153
        * configure: Regenerate.
3154
 
3155
2003-05-15  H.J. Lu 
3156
 
3157
        * elflink.c (_bfd_elf_fix_symbol_flags): Also hide protected
3158
        symbol.
3159
 
3160
2003-05-15  H.J. Lu 
3161
 
3162
        * elflink.h (elf_link_check_versioned_symbol): Also allow
3163
        the base version.
3164
 
3165
2003-05-15  Alan Modra  
3166
            H.J. Lu 
3167
 
3168
        * elf32-i386.c (allocate_dynrelocs): Use SYMBOL_CALLS_LOCAL.
3169
        (elf_i386_relocate_section): Likewise.
3170
        * elf32-ppc.c (allocate_dynrelocs): Likewise.
3171
        (ppc_elf_relocate_section): Likewise.
3172
        * elf64-ppc.c (allocate_dynrelocs): Likewise.
3173
        (ppc64_elf_relocate_section): Likewise.
3174
 
3175
2003-05-15  Thiemo Seufer 
3176
 
3177
        * elf32-mips.c (gprel32_with_gp): Remove useless N64 ABI case.
3178
 
3179
2003-05-13  Stephane Carrez  
3180
 
3181
        * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Check for
3182
        processor capability, allow merge of HC12 and HCS12 in some cases.
3183
        (m68hc11_elf_hash_table_create): Use bfd_malloc instead of bfd_zalloc.
3184
        * cpu-m68hc12.c (bfd_m68hc12s_arch): New struct.
3185
        (bfd_m68hc12_arch): Link it.
3186
        (scan_mach): New function.
3187
 
3188
2003-05-13  Andrew Haley  
3189
 
3190
        * elf.c (bfd_elf_hash): Mask lower 32 bits of hash.
3191
 
3192
2003-05-13  Alan Modra  
3193
            H.J. Lu  
3194
 
3195
        * elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Move from
3196
        elf32-ppc.c.  Add ELF_LINK_FORCED_LOCAL check.
3197
        * elf32-ppc.c: (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Delete.
3198
        (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL for dynreloc check.
3199
        (ppc_elf_relocate_section): Likewise.
3200
        * elf64-ppc.c (allocate_dynrelocs): Likewise.
3201
        (ppc64_elf_relocate_section): Likewise.  Use for .got relocs too.
3202
        (ppc64_elf_adjust_dynamic_symbol): Don't assume symbols with .plt
3203
        relocs need no other types.
3204
        * elf32-i386.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL for
3205
        dynreloc check.
3206
        (elf_i386_relocate_section): Likewise.  Use for .got relocs too.
3207
        (elf_i386_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL for
3208
        .got relocs.
3209
 
3210
2003-05-13  Kaz Kojima  
3211
 
3212
        * elf32-sh.c (sh_elf_adjust_dynamic_symbol): For weak symbols,
3213
        copy ELF_LINK_NON_GOT_REF from weakdef.
3214
        (allocate_dynrelocs): For undef weak syms with non-default
3215
        visibility, a) don't allocate plt entries, b) don't allocate
3216
        .got relocs, c) discard dyn rel space
3217
        (sh_elf_relocate_section): d) don't generate .got relocs, e)
3218
        don't generate dynamic relocs.
3219
        (sh_elf_copy_indirect_symbol): Don't copy ELF_LINK_NON_GOT_REF
3220
        for weakdefs when symbol already adjusted.
3221
 
3222
2003-05-12  Nick Clifton  
3223
 
3224
        * elf32-xstormy16.c (xstormy16_elf_howto_table): use 'bitfield'
3225
        overflow detection for R_XSTORMY16_16 reloc.
3226
 
3227
2003-05-12  Paul Clarke  
3228
 
3229
        * elf32-h8300.c: Fix typo in name of R_H8_DIR8 reloc.
3230
 
3231
2003-05-11  Jason Eckhardt  
3232
 
3233
        * elf32-i860.c (elf32_i860_relocate_highadj): Properly
3234
        adjust upper bits.
3235
        (elf32_i860_relocate_splitn): Obtain upper 5 bits from the
3236
        proper place.
3237
        (elf32_i860_relocate_pc16): Obtain upper 5 bits from the
3238
        proper place.
3239
 
3240
2003-05-11  Andreas Schwab  
3241
 
3242
        * elf32-m68k.c (elf_m68k_relocate_section): Replace ugly
3243
        complicated tests for unresolvable relocs with a simple direct
3244
        scheme using "unresolved_reloc" var.  Report some detail on
3245
        bfd_reloc_outofrange and similar errors.
3246
 
3247
2003-05-09  Martin Schwidefsky  
3248
 
3249
        * elf32-s390.c (allocate_dynrelocs, elf_s390_relocate_section):
3250
        Fix WILL_CALL_FINISH_DYNAMIC_SYMBOL call.
3251
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
3252
        * elf64-s390.c: Likewise.
3253
 
3254
2003-05-09  Martin Schwidefsky  
3255
 
3256
        * elf32-s390.c (ELIMINATE_COPY_RELOCS): Define as one.
3257
        (elf_s390_adjust_dynamic_symbol): For weak symbols, copy
3258
        ELF_LINK_NON_GOT_REF from weakdef.
3259
        (elf_s390_copy_indirect_symbol): Test whether the weakdef sym has
3260
        already been adjusted before treating it specially.
3261
        * el64-s390.c: Likwise.
3262
 
3263
2003-05-09  Martin Schwidefsky  
3264
 
3265
        * elf32-s390.c (allocate_dynrelocs): For undef weak syms with
3266
        non-default visibility, a) don't make them dynamic, b) discard
3267
        space for dynamic relocs.
3268
        (elf_s390_relocate_section): Initialize the GOT entries and skip
3269
        R_390_{8,16,32}/R_390_PC{16,16DBL,32DBL,32} for weak undefined
3270
        symbols with non-default visibility.
3271
        * elf64-s390.c: Likewise.
3272
 
3273
2003-05-09  Alan Modra  
3274
 
3275
        * cpu-arm.c (arm_check_note): Warning fix.
3276
        * elf32-iq2000.c (iq2000_elf_check_relocs): Warning fixes.  Arrange
3277
        to keep relocs if edited.
3278
        (iq2000_elf_print_private_bfd_data): Return TRUE.
3279
        * elfxx-ia64.c (elfNN_ia64_relax_section): Use ELFNN_R_SYM, not
3280
        ELF64_R_SYM.
3281
        (elfNN_ia64_relax_ldxmov): Warning fix.
3282
        * xtensa-isa.c (xtensa_add_isa): Warning fix.
3283
        * xtensa-modules.c (get_num_opcodes): Warning fix.
3284
 
3285
2003-05-09  Andrey Petrov 
3286
 
3287
        * elf.c (elf_fake_sections): Use correct cast for sh_name.
3288
 
3289
2003-05-09  Alan Modra  
3290
 
3291
        * elflink.c (_bfd_elf_link_create_dynamic_sections): Move from
3292
        elflink.h.  Replace LOG_FILE_ALIGN with bed->s->log_file_align.
3293
        (_bfd_elf_create_dynamic_sections): Use bed->s->log_file_align.
3294
        (bfd_elf_record_link_assignment): Move from elflink.h.
3295
        (_bfd_elf_merge_symbol): Likewise.
3296
        (_bfd_elf_add_default_symbol): Likewise.
3297
        (_bfd_elf_export_symbol): Likewise.
3298
        (_bfd_elf_link_find_version_dependencies): Likewise.
3299
        (_bfd_elf_link_assign_sym_version): Likewise.
3300
        (_bfd_elf_link_read_relocs): Likewise.
3301
        (_bfd_elf_link_size_reloc_section): Likewise.
3302
        (_bfd_elf_fix_symbol_flags): Likewise.
3303
        (_bfd_elf_adjust_dynamic_symbol): Likewise.
3304
        (_bfd_elf_link_sec_merge_syms): Likewise.
3305
        (elf_link_read_relocs_from_section): Likewise.  Use bed->s->sizeof_rel
3306
        and bed->s->sizeof_rela.
3307
        (_bfd_elf_link_output_relocs): Likewise.
3308
        * elf-bfd.h (struct elf_size_info): Rename file_align to
3309
        log_file_align.
3310
        (struct elf_info_failed): Move from elflink.h.
3311
        (struct elf_assign_sym_version_info): Likewise.
3312
        (struct elf_find_verdep_info): Likewise.
3313
        (_bfd_elf_create_dynamic_sections): Delete duplicate declaration.
3314
        (_bfd_elf_merge_symbol, _bfd_elf_add_default_symbol,
3315
        _bfd_elf_export_symbol, _bfd_elf_link_find_version_dependencies,
3316
        _bfd_elf_link_assign_sym_version,
3317
        _bfd_elf_link_create_dynamic_sections, _bfd_elf_link_read_relocs,
3318
        _bfd_elf_link_size_reloc_section, _bfd_elf_link_output_relocs,
3319
        _bfd_elf_fix_symbol_flags, _bfd_elf_adjust_dynamic_symbol,
3320
        _bfd_elf_link_sec_merge_syms): Declare.
3321
        (bfd_elf32_link_create_dynamic_sections): Don't declare.
3322
        (_bfd_elf32_link_read_relocs): Likewise.
3323
        (bfd_elf64_link_create_dynamic_sections): Likewise.
3324
        (_bfd_elf64_link_read_relocs): Likewise.
3325
        * elflink.h: Move lots o' stuff elsewhere.
3326
        * bfd-in.h (bfd_elf32_record_link_assignment): Don't declare.
3327
        (bfd_elf64_record_link_assignment): Likewise.
3328
        (bfd_elf_record_link_assignment): Declare.
3329
        * bfd-in2.h: Regenerate.
3330
        * elfcode.h (elf_link_create_dynamic_sections): Don't declare.
3331
        (NAME(_bfd_elf,size_info)): Adjust for log_file_align.
3332
        * elf.c (_bfd_elf_init_reloc_shdr): Adjust for bed->s->log_file_align.
3333
        (assign_file_positions_for_segments): Likewise.
3334
        (assign_file_positions_except_relocs): Likewise.
3335
        (swap_out_syms, elfcore_write_note): Likewise.
3336
        * elf-m10200.c: Adjust for changed function names.
3337
        * elf-m10300.c: Likewise.
3338
        * elf32-arm.h: Likewise.
3339
        * elf32-h8300.c: Likewise.
3340
        * elf32-hppa.c: Likewise.
3341
        * elf32-ip2k.c: Likewise.
3342
        * elf32-m32r.c: Likewise.
3343
        * elf32-m68hc11.c: Likewise.
3344
        * elf32-m68hc1x.c: Likewise.
3345
        * elf32-m68k.c: Likewise.
3346
        * elf32-mips.c: Likewise.
3347
        * elf32-ppc.c: Likewise.
3348
        * elf32-sh.c: Likewise.
3349
        * elf32-v850.c: Likewise.
3350
        * elf32-xtensa.c: Likewise.
3351
        * elf64-alpha.c: Likewise.
3352
        * elf64-hppa.c: Likewise.
3353
        * elf64-mmix.c: Likewise.
3354
        * elf64-ppc.c: Likewise.
3355
        * elf64-sh64.c: Likewise.
3356
        * elfxx-ia64.c: Likewise.
3357
        * elfxx-mips.c: Likewise.
3358
        (MIPS_ELF_LOG_FILE_ALIGN): Use log_file_align.
3359
        * elf64-alpha.c (alpha_elf_size_info): Adjust for log_file_align.
3360
        * elf64-hppa.c (hppa64_elf_size_info): Likewise.
3361
        * elf64-mips.c (mips_elf64_size_info): Likewise.
3362
        * elf64-s390.c (s390_elf64_size_info): Likewise.
3363
        * elf64-sparc.c (sparc64_elf_size_info): Likewise.
3364
 
3365
2003-05-08  H.J. Lu 
3366
 
3367
        * elflink.h (elf_add_default_symbol): After skipping the
3368
        unversioned symbol, go to non-default one.
3369
 
3370
2003-05-07  H.J. Lu 
3371
 
3372
        * elfxx-ia64.c (_bfd_elf_link_hash_hide_symbol): Also clear the
3373
        want_plt field.
3374
        (elfNN_ia64_relocate_section): Don't do dynamic symbol lookup
3375
        for symbols with non-default visibility.
3376
 
3377
2003-05-07  H.J. Lu 
3378
 
3379
        * elflink.h (elf_link_check_versioned_symbol): Also handle the
3380
        case that a DSO references a hidden symbol which may be
3381
        satisfied by a versioned symbol in another DSO.
3382
        (elf_link_output_extsym): Check versioned definition for hidden
3383
        symbol referenced by a DSO.
3384
 
3385
2003-05-07  Nick Clifton  
3386
 
3387
        * elf32-xstormy16.c (xstormy16_elf_howto_table): Reset
3388
        R_XSTORMY16_16 reloc to ignore overflows.
3389
 
3390
2003-05-06  Alexandre Oliva  
3391
 
3392
        * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Improve
3393
        error message for mixing different-endian files.  Check for ABI
3394
        compatibility of input files with the selected emulation.
3395
 
3396
2003-05-05  Alan Modra  
3397
 
3398
        * elf32-i386.c (allocate_dynrelocs): For undef weak syms with
3399
        non-default visibility, a) don't make them dynamic, b) discard
3400
        space for dynamic relocs.
3401
        * elf64-x86-64.c (allocate_dynrelocs): Likewise.
3402
 
3403
        * elf32-ppc.c (allocate_dynrelocs): For undef weak syms with
3404
        non-default visibility, a) don't allocate plt entries, b) don't
3405
        allocate .got relocs, c) discard dyn rel space,
3406
        (ppc_elf_relocate_section): d) don't generate .got relocs, e)
3407
        don't generate dynamic relocs.
3408
        * elf64-ppc.c (allocate_dynrelocs): As above.
3409
        (ppc64_elf_relocate_section): As above.
3410
 
3411
2003-05-05  Andreas Jaeger  
3412
 
3413
        * elf64-x86-64.c (allocate_dynrelocs): Don't allocate dynamic
3414
        relocation entries for weak undefined symbols with non-default
3415
        visibility.
3416
        (elf64_x86_64_relocate_section): Initialize the GOT entries and
3417
        skip R_386_32/R_386_PC32 for weak undefined symbols with
3418
        non-default visibility.
3419
 
3420
2003-05-04  H.J. Lu 
3421
 
3422
        * elf32-i386.c (allocate_dynrelocs): Don't allocate dynamic
3423
        relocation entries for weak undefined symbols with non-default
3424
        visibility.
3425
        (elf_i386_relocate_section): Initialize the GOT entries and
3426
        skip R_386_32/R_386_PC32 for weak undefined symbols with
3427
        non-default visibility.
3428
 
3429
        * elfxx-ia64.c (allocate_fptr): Don't allocate function
3430
        descriptors for weak undefined symbols with non-default
3431
        visibility.
3432
        (allocate_dynrel_entries): Don't allocate relocation entries
3433
        for symbols resolved to 0.
3434
        (set_got_entry): Don't install dynamic relocation for weak
3435
        undefined symbols with non-default visibility.
3436
        (set_pltoff_entry): Likewise.
3437
 
3438
        * elflink.h (elf_fix_symbol_flags): Hide weak undefined symbols
3439
        with non-default visibility.
3440
        (elf_link_output_extsym): Don't make weak undefined symbols
3441
        with non-default visibility dynamic.
3442
 
3443
2003-05-04  H.J. Lu 
3444
 
3445
        * elflink.h (elf_merge_symbol): Correctly handle weak definition.
3446
 
3447
2003-05-04  H.J. Lu 
3448
 
3449
        * elflink.h (elf_merge_symbol): Don't record a hidden/internal
3450
        symbol dynamic. Check indirection when removing the old
3451
        definition for symbols with non-default visibility.
3452
        (elf_add_default_symbol): Skip when told by elf_merge_symbol.
3453
 
3454
2003-05-02  Nick Clifton  
3455
 
3456
        * elf32-xstormy16.c (xstormy16_elf_howto_table): Make the
3457
        R_XSTORMY16_8 and R_XSTORMY16_16 relocs detect and complain about
3458
        unsigned overflow.
3459
 
3460
2003-05-02  Andreas Jaeger  
3461
 
3462
        * elf64-x86-64.c (elf_x86_64_copy_indirect_symbol): Don't copy
3463
        ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted.
3464
        (ELIMINATE_COPY_RELOCS): Define as one.  Use throughout.
3465
        (elf_x86_64_adjust_dynamic_symbol): For weak symbols, copy
3466
        ELF_LINK_NON_GOT_REF from weakdef.
3467
 
3468
2003-05-02  Charles Lepple 
3469
            Nick Clifton 
3470
 
3471
        * acinclude.m4: Fix name of --enable-install-libbfd switch.
3472
        * aclocal.m4: Regenerate.
3473
        * configure: Regenerate.
3474
        * Makefile.in: Regenerate.
3475
 
3476
2003-05-01  Alan Modra  
3477
 
3478
        * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Test whether the
3479
        weakdef sym has already been adjusted before treating it specially.
3480
        * elf32-i386.c (elf_i386_copy_indirect_symbol): Don't copy
3481
        ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted.
3482
        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
3483
        (ppc64_elf_check_relocs): Set ELF_LINK_NON_GOT_REF.
3484
 
3485
2003-04-28  H.J. Lu 
3486
 
3487
        * elfxx-ia64.c (elfNN_ia64_relax_section): Relax ldxmov during
3488
        the relax finalize pass.
3489
 
3490
        * section.c (struct sec): Add need_finalize_relax and remove
3491
        flag11.
3492
        (STD_SECTION): Update struct sec initializer.
3493
        * bfd-in2.h: Regenerated.
3494
 
3495
2003-04-28  H.J. Lu 
3496
 
3497
        * elflink.h (elf_merge_symbol): Call elf_backend_copy_indirect_symbol
3498
        to copy any information related to dynamic linking when we flip
3499
        the indirection.
3500
 
3501
2003-04-27  H.J. Lu 
3502
 
3503
        * elf-bfd.h (ELF_LINK_DYNAMIC_DEF): New.
3504
        (ELF_LINK_DYNAMIC_WEAK): New.
3505
 
3506
        * elflink.h (elf_merge_symbol): Add one argument to indicate if
3507
        a symbol should be skipped. Ignore definitions in dynamic
3508
        objects for symbols with non-default visibility.
3509
        (elf_add_default_symbol): Adjusted.
3510
        (elf_link_add_object_symbols): Check if a symbol should be
3511
        skipped. Don't merge the visibility field with the one from
3512
        a dynamic object.
3513
        (elf_link_check_versioned_symbol): Use undef_bfd.
3514
        (elf_link_output_extsym): Warn if a forced local symbol is
3515
        referenced from dynamic objects. Make non-weak undefined symbol
3516
        with non-default visibility a fatal error.
3517
 
3518
2003-04-27  Daniel Jacobowitz  
3519
 
3520
        * configure.in: Bump version on HEAD to 2.14.90.
3521
        * configure: Regenerated.
3522
 
3523
2003-04-26  Stephane Carrez  
3524
 
3525
        PR savannah/3331:
3526
        * elf32-m68hc11.c (m68hc11_elf_relax_section): Clear prev_insn_group
3527
        when we couldn't relax something.
3528
 
3529
2003-04-25  Alan Modra  
3530
 
3531
        * elflink.h (elf_merge_symbol): When we find a regular definition
3532
        for an indirect symbol, flip the indirection so that the old
3533
        direct symbol now points to the new definition.
3534
 
3535
2003-04-24  Roland McGrath  
3536
 
3537
        * elf.c (bfd_section_from_phdr): Map PT_GNU_EH_FRAME to "eh_frame_hdr".
3538
 
3539
2003-04-24  Alan Modra  
3540
 
3541
        * elf32-ppc.c: Formatting and comment fixes.
3542
        (ELIMINATE_COPY_RELOCS): Move before ppc_elf_copy_indirect_symbol.
3543
        (ppc_elf_copy_indirect_symbol): Copy flags here for weakdefs.
3544
 
3545
2003-04-24 Dhananjay Deshpande 
3546
 
3547
        * archures.c (bfd_mach_h8300hn, bfd_mach_h8300sn): Added.
3548
        * bfd-in2.h: Rebuilt.
3549
        * coff-h8300.c (BADMAG): Add check for H8300HNBADMAG & H8300SNBADMAG.
3550
        * coffcode.h (coff_set_arch_mach_hook): Add case for H8300HNMAGIC
3551
        & H8300SNMAGIC.
3552
        (coff_set_flags): Add case for bfd_mach_h8300hn & bfd_mach_h8300sn.
3553
        * cpu-h8300.c (h8300_scan): Handle h8300hn, h8300sn.
3554
        (h8300sn_info_struct, h8300hn_info_struct): New.
3555
        * elf32-h8300.c (elf32_h8_mach): Handle case for h8300hn & h8300sn
3556
        (elf32_h8_final_write_processing): Likewise.
3557
 
3558
2003-04-23  Kaz Kojima  
3559
 
3560
        * elf32-sh.c (tpoff): New.
3561
        (struct elf_sh_dyn_relocs): Remove tls_tpoff32.
3562
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
3563
        (allocate_dynrelocs): Don't make unnecessary dynamic TLS
3564
        relocations.  Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses.
3565
        (sh_elf_relocate_section): Likewise. Remove unnecessary tests.
3566
        (dtpoff_base): Fix wrong indentation.
3567
        (sh_elf_check_relocs): Don't set DF_STATIC_TLS flag with non-TLS
3568
        relocations.  Don't set tls_tpoff32 flag.  Don't make unnecessary
3569
        R_SH_TLS_TPOFF32 relocations.
3570
 
3571
2003-04-23  J"orn Rennecke 
3572
 
3573
        * archures.c (enum bfd_architecture): Amend comment to refer to SuperH.
3574
        * cpu-sh.c: Likewise.
3575
        * elf32-sh.c: Likewise.
3576
        * reloc.c (bfd_reloc_code_real): Likewise.
3577
        * elf32-sh64-com.c: Change comment to refer to SuperH.
3578
        * elf32-sh64.c: Likewise.
3579
        * elf64-sh64.c: Likewise.
3580
        * bfd-in2.h (enum bfd_architecture): Regenerate.
3581
 
3582
2003-04-23  Alan Modra  
3583
 
3584
        From Julien LEMOINE 
3585
        * elf32-i386.c (elf_i386_info_to_howto): Delete.
3586
        (elf_info_to_howto): Define as elf_i386_info_to_howto_rel.
3587
 
3588
2003-04-22  Kazuhiro Inaoka  
3589
 
3590
        * archures.c: Replace references to Mitsubishi M32R with references
3591
        to Renesas M32R.
3592
        * relocs.c: Likewise.
3593
        * bfd-in2.h: Regenerate.
3594
 
3595
2003-04-21  Richard Henderson  
3596
 
3597
        * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Return false for an
3598
        executable when a symbol is defined both regular and dynamic.
3599
 
3600
2003-04-21  Stephane Carrez  
3601
 
3602
        * Makefile.am (BFD32_BACKENDS): Add elf32-m68hc1x.lo.
3603
        (elf32-m68hc1x.lo): Update dependencies
3604
        * configure.in: Add elf32-m68hc1x.lo.
3605
        * configure: Rebuild.
3606
        * Makefile.in: Rebuild.
3607
 
3608
2003-04-21  Stephane Carrez  
3609
 
3610
        * elf32-m68hc1x.c: New file (from elf32-m68hc11.c and elf32-m68hc12.c)
3611
        (m68hc11_elf_hash_table_create): New function.
3612
        (elf32_m68hc11_link_hash_table_free): New function.
3613
        (stub_hash_newfunc): New function.
3614
        (m68hc11_add_stub): New function.
3615
        (elf32_m68hc11_add_symbol_hook): New function.
3616
        (elf32_m68hc11_setup_section_lists): New function.
3617
        (elf32_m68hc11_next_input_section): New function.
3618
        (elf32_m68hc11_size_stubs): New function.
3619
        (elf32_m68hc11_build_stubs): New function.
3620
        (m68hc11_get_relocation_value): New function.
3621
        (elf32_m68hc11_relocate_section): Call the above to redirect
3622
        some relocations to the trampoline code.
3623
        (m68hc11_elf_export_one_stub): New function.
3624
        (m68hc11_elf_set_symbol): New function.
3625
        (elf32_m68hc11_build_stubs): Call it via bfd_hash_traverse.
3626
        (m68hc11_elf_get_bank_parameters): Get parameters only when the info
3627
        is not yet initialized.
3628
 
3629
        * elf32-m68hc1x.h: New file (from elf32-m68hc11.c and elf32-m68hc12.c)
3630
        (elf32_m68hc11_stub_hash_entry): New struct.
3631
        (m68hc11_page_info): Add trampoline handler address.
3632
        (m68hc11_elf_link_hash_table): Add stubs generation members.
3633
        (elf32_m68hc11_add_symbol_hook): Declare.
3634
        (elf32_m68hc11_setup_section_lists): Declare.
3635
        (elf32_m68hc11_size_stubs): Declare.
3636
        (elf32_m68hc11_build_stubs): Declare.
3637
 
3638
        * elf32-m68hc11.c (m68hc11_elf_ignore_reloc): Move to elf32-m68hc1x.c.
3639
        (elf32_m68hc11_gc_mark_hook, elf32_m68hc11_gc_sweep_hook): Likewise.
3640
        (elf32_m68hc11_check_relocs, elf32_m68hc11_relocate_section): Ditto.
3641
        (_bfd_m68hc11_elf_set_private_flags): Ditto.
3642
        (_bfd_m68hc11_elf_merge_private_bfd_data): Ditto.
3643
        (_bfd_m68hc11_elf_print_private_bfd_data): Ditto.
3644
        (bfd_elf32_bfd_link_hash_table_create): Define.
3645
        (elf_backend_add_symbol_hook): Define.
3646
        (m68hc11_elf_bfd_link_hash_table_create): New function.
3647
        (m68hc11_elf_build_one_stub): New function.
3648
        (m68hc11_elf_size_one_stub): New function.
3649
        (m68hc11_elf_bfd_link_hash_table_create): Install the above.
3650
        (bfd_elf32_bfd_link_hash_table_create): Define.
3651
 
3652
        * elf32-m68hc12.c (m68hc11_elf_ignore_reloc): Remove.
3653
        (m68hc12_addr_is_banked): Remove, use m68hc11_addr_is_banked.
3654
        (m68hc12_phys_addr): Ditto.
3655
        (m68hc12_phys_page): Ditto.
3656
        (m68hc12_elf_special_reloc): Move to elf32-m68hc1x.c.
3657
        (elf32_m68hc11_gc_mark_hook): Likewise.
3658
        (elf32_m68hc11_gc_sweep_hook): Likewise.
3659
        (elf32_m68hc11_check_relocs): Likewise.
3660
        (elf32_m68hc11_relocate_section): Likewise.
3661
        (_bfd_m68hc12_elf_set_private_flags): Likewise.
3662
        (_bfd_m68hc12_elf_merge_private_bfd_data): Likewise.
3663
        (_bfd_m68hc12_elf_print_private_bfd_data): Likewise.
3664
        (m68hc12_elf_build_one_stub): New function.
3665
        (m68hc12_elf_size_one_stub): New function.
3666
        (m68hc12_elf_bfd_link_hash_table_create): New function, use the above.
3667
        (elf_backend_add_symbol_hook): Define.
3668
        (elf_m68hc11_howto_table): Use TRUE for pcrel relocs; fix masks.
3669
 
3670
2003-04-18  Nick Clifton  
3671
 
3672
        * format.c (bfd_check_format_matches): Only check associated
3673
        vector if the matching_vector has been created.
3674
 
3675
2003-04-15  Alexandre Oliva  
3676
 
3677
        * dwarf2.c (_bfd_dwarf2_find_nearest_line): Fix typo in
3678
        2003-04-09's change.
3679
 
3680
2003-04-15  Brian Ford  
3681
 
3682
        * peicode.h (coff_swap_scnhdr_in): If a section holds
3683
        uninitialized data and is from an object file or from an
3684
        executable image that has not initialized the s_size field, or if
3685
        the physical size is padded, use the virtual size (stored in
3686
        s_paddr) instead.
3687
 
3688
2003-04-15  H.J. Lu 
3689
 
3690
        * elflink.h (elf_link_add_object_symbols): Properly report
3691
        filename for alignment reduction.
3692
 
3693
2003-04-15  Rohit Kumar Srivastava 
3694
 
3695
        * archures.c: Replace occurrances of 'Hitachi' with 'Renesas'.
3696
        * reloc.c: Likewise.
3697
        * coff-h8300.c: Likewise.
3698
        * coff-h8500.c: Likewise.
3699
        * coff-sh.c: Likewise.
3700
        * cpu-h8300.c: Likewise.
3701
        * cpu-sh.c: Likewise.
3702
        * elf32-h8300.c: Likewise.
3703
        * elf32-sh.c: Likewise.
3704
        * elf32-sh64-com.c: Likewise.
3705
        * elf32-sh64.c: Likewise.
3706
        * elf64-sh64.c: Likewise.
3707
        * bfd-in2.h: Regenerate.
3708
 
3709
2003-04-14  H.J. Lu 
3710
 
3711
        * elflink.h (elf_link_add_object_symbols): Maintain maximum
3712
        alignment for common symbols. Warn reducing alignment for
3713
        common symbols. Report old filename when symbol size changes.
3714
 
3715
2003-04-12  Alexandre Oliva  
3716
 
3717
        * elfxx-mips.c (mips_elf_calculate_relocation): Adjust two other
3718
        occurrences of the same test changed in the previous patch.
3719
        Optimize.
3720
 
3721
2003-04-11  Alexandre Oliva  
3722
 
3723
        * elfxx-mips.c (mips_elf_get_global_gotsym_index): New.
3724
        (mips_elf_calculate_relocation): Decay GOT_PAGE/GOT_OFST to
3725
        GOT_DISP/addend only if the symbol got a global GOT entry.
3726
 
3727
2003-04-10  Alexandre Oliva  
3728
 
3729
        * elfxx-mips.c (mips_elf_calculate_relocation): Decay
3730
        GOT_PAGE/GOT_OFST referencing overridable symbol to
3731
        GOT_DISP/addend.
3732
        (_bfd_mips_elf_check_relocs): Handle GOT_PAGE referencing
3733
        global symbol as GOT_DISP.
3734
 
3735
2003-04-10  Bob Wilson  
3736
 
3737
        * elf32-xtensa.c (elf_xtensa_relocate_section): Don't continue to the
3738
        next relocation on an undefined symbol.
3739
 
3740
2003-04-09  Richard Henderson  
3741
 
3742
        * elf64-alpha.c (elf64_alpha_relocate_section) :
3743
        Ignore relocations against r_symndx == 0.
3744
 
3745
2003-04-09  H.J. Lu 
3746
 
3747
        * elf64-alpha.c (elf64_alpha_relocate_section): Don't return
3748
        FALSE for undefined symbols.
3749
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
3750
 
3751
2003-04-09  Alexandre Oliva  
3752
 
3753
        * dwarf2.c (_bfd_dwarf2_find_nearest_line): Try DWARF3-standard
3754
        and IRIX-specific shift-to-64-bit 4-byte lengths before following
3755
        addr_size.
3756
 
3757
2003-04-08  Alexandre Oliva  
3758
 
3759
        * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): Detect (ctor)
3760
        pointer size from ABI, not arch_bits_per_address.
3761
 
3762
2003-04-07  Kevin Buettner  
3763
 
3764
        * elfn32-mips.c (elf32_mips_grok_prstatus): Adjust core file related
3765
        constants for n32 ABI.
3766
 
3767
2003-04-06  Andrew Cagney  
3768
 
3769
        * simple.c (bfd_simple_get_relocated_section_contents): Disable
3770
        free that leads to GDB vs BFD memory corruption.
3771
 
3772
2003-04-04  Stephane Carrez  
3773
 
3774
        * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Also adjust
3775
        symbols that mark the end of the section.
3776
        (m68hc11_elf_relax_section): Use R_M68HC11_PCREL_8 relocs when
3777
        converting to a relative branch so that the offset is computed after
3778
        the relaxation; also relocate a jsr into a bsr if possible but don't
3779
        relax them if they are to a far symbol as we need to call the
3780
        trampoline code.
3781
        (elf_m68hc11_howto_table): Set pcrel_offset to true.
3782
 
3783
2003-04-04  Svein E. Seldal  
3784
 
3785
        * archures.c: Namespace cleanup. Rename bfd_mach_c3x to
3786
        bfd_mach_tic3x and bfd_mach_c4x to bfd_mach_tic4x
3787
        * bfd-in2.h: Regenerate
3788
        * coff-tic4x.c: Namespace cleanup. Replace s/c4x/tic4x/
3789
        * cpu-tic4x.c: Ditto
3790
 
3791
2003-04-03  Nick Clifton  
3792
 
3793
        * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Compute ps and ss
3794
        differently for object files and executables.
3795
        * peicode.h (coff_swap_scnhdr_in): Only set the s_size field
3796
        for object files or for executables who have not already
3797
        initialised the field.
3798
        * libpei.h (bfd_pe_executable_p): New macro.  Return true if
3799
        the PE format bfd is an executable.
3800
 
3801
2003-04-03  Alan Modra  
3802
 
3803
        * elf32-ppc.c (ppc_elf_check_relocs): Don't use SYMBOL_REFERENCES_LOCAL
3804
        here as it's too early to reliably determine locality.
3805
        (ppc_elf_gc_sweep_hook): Likewise.
3806
        (SYMBOL_REFERENCES_LOCAL): Expand comment.
3807
 
3808
2003-04-02  Bob Wilson  
3809
 
3810
        * xtensa-modules.c: Remove comment indicating that this is a
3811
        generated file.
3812
 
3813
2003-04-02  Alan Modra  
3814
 
3815
        * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Test for NULL dynobj.
3816
 
3817
2003-04-01  Bob Wilson  
3818
 
3819
        * Makefile.am (ALL_MACHINES): Add cpu-xtensa.lo.
3820
        (ALL_MACHINES_CFILES): Add cpu-xtensa.c.
3821
        (BFD32_BACKENDS): Add elf32-xtensa.lo, xtensa-isa.lo, and
3822
        xtensa-modules.lo.
3823
        (BFD32_BACKENDS_CFILES): Add elf32-xtensa.c, xtensa-isa.c, and
3824
        xtensa-modules.c.
3825
        (cpu-xtensa.lo): New target.
3826
        (elf32-xtensa.lo): Likewise.
3827
        (xtensa-isa.lo): Likewise.
3828
        (xtensa-modules.lo): Likewise.
3829
        * Makefile.in: Regenerate.
3830
        * archures.c (bfd_architecture): Add bfd_{arch,mach}_xtensa.
3831
        (bfd_archures_list): Add bfd_xtensa_arch.
3832
        * config.bfd: Handle xtensa-*-*.
3833
        * configure.in: Handle bfd_elf32_xtensa_{le,be}_vec.
3834
        * configure: Regenerate.
3835
        * reloc.c: Add BFD_RELOC_XTENSA_{RTLD,GLOB_DAT,JMP_SLOT,RELATIVE,
3836
        PLT,OP0,OP1,OP2,ASM_EXPAND,ASM_SIMPLIFY}.
3837
        * targets.c (bfd_elf32_xtensa_be_vec): Declare.
3838
        (bfd_elf32_xtensa_le_vec): Likewise.
3839
        (bfd_target_vector): Add bfd_elf32_xtensa_{be,le}_vec.
3840
        * cpu-xtensa.c: New file.
3841
        * elf32-xtensa.c: Likewise.
3842
        * xtensa-isa.c: Likewise.
3843
        * xtensa-modules.c: Likewise.
3844
        * libbfd.h: Regenerate.
3845
        * bfd-in2.h: Likewise.
3846
 
3847
2003-04-01  Nick Clifton  
3848
 
3849
        * archures.c (bfd_mach_arm_unknown): Define.
3850
        * bfd-in.h (bfd_arm_merge_machines, bfd_arm+update_notes,
3851
        bfd_arm_get_mach_from_notes): Prototype.
3852
        * bfd-in2.h: Regenerate.
3853
        * coff-arm.c (coff_arm_merge_private_bfd_data): Call
3854
        bfd_arm_merge_machines.
3855
        (coff_arm_final_link_postscript): Call bfd_arm_update_notes.
3856
        * coffcode.h (coff_set_arch_mach_hook): Call
3857
        bfd_arm_get_mach_from_notes.
3858
        * coffgen.c (coff_real_object_p): Revert previous delta.
3859
        * cpu_arm.c (arm_check_note): New function.  Examine a note in a
3860
        .note section.
3861
        (bfd_arm_merge_machines): New function: Handle the merging of ARM
3862
        binaries compiled for different architectures..
3863
        (bfd_arm_update_notes): New function: Update an ARM note section.
3864
        (bfd_arm_get_mach_from_notes): New function: Extract a bfd machine
3865
        number from an ARM note section.
3866
        * elf32-arm.h (elf32_arm_object_p): Use
3867
        bfd_arm_get_mach_from_notes.
3868
        (elf32_arm_merge_private_bfd_data): Use bfd_arm_merge_machines.
3869
        (elf32_arm_final_write_processing): Use bfd_arm_update_notes.
3870
 
3871
2003-04-01  Ben Elliston  
3872
 
3873
        * dwarf2.c (read_attribute_value): Correct typo in comment.
3874
 
3875
2003-04-01  Nick Clifton  
3876
 
3877
        * dwarf2.c (concat_filename): Use bfd_malloc() and strdup()
3878
        instead of concat().
3879
        (decode_line_info): Only free filename if it is not NULL.
3880
        (add_line_info): Make a copy of the filename when storing it into
3881
        the info structure.
3882
 
3883
2003-03-31  Andreas Schwab  
3884
            Daniel Jacobowitz  
3885
 
3886
        * simple.c (bfd_simple_get_relocated_section_contents): Add
3887
        parameter symbol_table.  Optionally use it instead of the symbol
3888
        table from the bfd.  Save and restore output offsets and output
3889
        sections  around bfd_get_relocated_section_contents.  Fix a memory
3890
        leak.
3891
        (simple_save_output_info, simple_restore_output_info): New
3892
        functions.
3893
        * bfd-in2.h: Regenerate.
3894
        * dwarf2.c (read_abbrevs): Use
3895
        bfd_simple_get_relocated_section_contents instead of
3896
        bfd_get_section_contents.
3897
        (decode_line_info): Likewise.
3898
        (_bfd_dwarf2_find_nearest_line): Likewise.  Don't call
3899
        find_rela_addend.
3900
        (find_rela_addend): Remove.
3901
        * elfxx-ia64.c (elfNN_ia64_reloc): Weaken sanity check for
3902
        debugging sections.
3903
        (elfNN_ia64_hash_table_create): Create the hash table with malloc,
3904
        not bfd_zalloc.
3905
 
3906
2003-03-31  David Heine  
3907
 
3908
        * aoutx.h (aout_link_hash_table_create): Use bfd_malloc instead of
3909
        bfd_alloc.
3910
        * dwarf2.c (concat_filename): Always allocate space for the
3911
        returned filename.
3912
        (decode_line_info): Free the allocated filename returned by
3913
        concat_filename.
3914
        * elf-eh-frame.c (bfd_elf_write_section_eh_frame): Fix memory leaks.
3915
        * elf.c (copy_private_bfd_data): Likewise.
3916
        (_bfd_elf_slurp_version_tables): Fix bug freeing contents pointer.
3917
        * elflink.h (elf_link_sort_relocs): Fix memory leak.
3918
        * format.c (bfd_check_format_matches): Likewise.
3919
        * linker.c (bfd_generic_final_link): Likewise.
3920
        * opncls.c (find_separate_debug_info): Likewise.
3921
        * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
3922
 
3923
2003-03-28  H.J. Lu 
3924
 
3925
        * elflink.h (elf_link_add_object_symbols): Correctly combine
3926
        visibilities.
3927
 
3928
2003-03-27  Jakub Jelinek  
3929
 
3930
        * elfxx-ia64.c (elfNN_ia64_relax_section): Reset self_dtpmod_offset
3931
        to -1 before recomputing got offsets.
3932
 
3933
2003-03-26  Andreas Schwab  
3934
 
3935
        * elf32-m68k.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
3936
        (elf_m68k_relocate_section): Use it to correctly handle symbols
3937
        forced to be local.
3938
        (elf_m68k_finish_dynamic_symbol): Emit RELATIVE reloc for got
3939
        entries for symbols that are forced to be local.
3940
 
3941
2003-03-25  Alexandre Oliva  
3942
 
3943
        * elfxx-mips.c (_bfd_mips_relax_section): New function.
3944
        * elfxx-mips.h (_bfd_mips_relax_section): Declare.
3945
        * elfn32-mips.c, elf64-mips.c: Use it.
3946
 
3947
2003-03-25  Stan Cox   
3948
            Nick Clifton  
3949
 
3950
        Contribute support for Intel's iWMMXt chip - an ARM variant:
3951
 
3952
        * archures.c: Add bfd_mach_arm_iWMMXt.
3953
        * reloc.c: Add BFD_RELOC_ARM_CP_OFF_IMM_S2.
3954
        * bfd-in2.h: Regenerate.
3955
        * libbfd.h: Regenerate.
3956
        * coff-arm.c (coff_arm_merge_private_bfd_data): Allow iWMMXt
3957
        object files to be linked with XScale ones.
3958
        (coff_arm_final_link_postscript): Update note section.
3959
        * coffcode.h (coff_set_arch_mach_hook): Handle note section.
3960
        * coffgen.c (coff_real_object_p): Call bfd_coff_set_arch_mach_hook
3961
        after identifying a coff binary.
3962
        * cpu-arm.c (processors): Add iWMMXt.
3963
        (arch_inf): Likewise.
3964
        * elf32-arm.h (arm_object_p): Handle note section.
3965
        (elf32_arm_merge_private_bfd_data): Allow iWMMXt object files to
3966
        be linked with XScale ones.
3967
        (elf32_arm_section_flags): New function: Set flags on note section.
3968
        (elf32_arm_final_write_processing): Handle note section.
3969
 
3970
2003-03-21  DJ Delorie  
3971
 
3972
        * elf32-xstormy16.c (elf32_xstormy16_relocate_section): Call
3973
        _bfd_elf_rela_local_sym.
3974
 
3975
2003-03-20  H.J. Lu 
3976
 
3977
        * elfxx-ia64.c (elfNN_ia64_relax_section): Don't try relax for
3978
        non-ELF outputs.
3979
 
3980
2003-03-20  Nick Clifton  
3981
 
3982
        * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Initialise $idata2 and
3983
        $idata5 in case bfd_coff_final_link is not called.
3984
 
3985
2003-03-19  Jakub Jelinek  
3986
 
3987
        * elf64-sparc.c (struct sparc64_elf_section_data): Add reloc_count
3988
        field.
3989
        (canon_reloc_count): Define.
3990
        (sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table,
3991
        sparc64_elf_canonicalize_dynamic_reloc): Use it instead of
3992
        reloc_count.
3993
        (sparc64_elf_canonicalize_reloc): New routine.
3994
        (bfd_elf64_canonicalize_reloc): Define.
3995
 
3996
2003-03-18  Jakub Jelinek  
3997
 
3998
        * elfxx-ia64.c (elfNN_ia64_relax_section): Handle relaxation
3999
        againt mergeable sections.  Take r_addend into account when caching
4000
        trampolines.
4001
 
4002
2003-03-18  Richard Henderson  
4003
 
4004
        * elfxx-ia64.c (get_dyn_sym_info): Return NULL gracefully for
4005
        local symbols that have no dyninfo.
4006
 
4007
2003-03-14  Gene Smith  
4008
 
4009
        * ieee.c (ieee_write_expression): Handle the case where symbol is
4010
        NULL.
4011
        General formatting improvements.
4012
 
4013
2003-03-13  Nick Clifton  
4014
 
4015
        * configure.in (LINGUAS): Add zh_CN.
4016
        * configure: Regenerate.
4017
        * po/zh_CN.po: New file.
4018
 
4019
2003-03-13  Elias Athanasopoulos  
4020
 
4021
        * aout-cris.c (BYTES_IN_WORD): Don't define.
4022
        aout-encap.c: Likewise.
4023
        aout-ns32k.c: Likewise.
4024
        aout-tic30.c: Likewise.
4025
        hp300bsd.c: Likewise.
4026
        i386aout.c: Likewise.
4027
        i386dynix.c: Likewise.
4028
        i386linux.c: Likewise.
4029
        i386lynx.c: Likewise.
4030
        i386mach3.c: Likewise.
4031
        m68k4knetbsd.c: Likewise.
4032
        m68klinux.c: Likewise.
4033
        m68klynx.c: Likewise.
4034
        m68knetbsd.c: Likewise.
4035
        m88kmach3.c: Likewise.
4036
        mipsbsd.c: Likewise.
4037
        newsos3.c: Likewise.
4038
        sparclinux.c: Likewise.
4039
        sparclynx.c: Likewise.
4040
        sparcnetbsd.c: Likewise.
4041
        vaxbsd.c: Likewise. Fix comment formatting.
4042
 
4043
2003-03-12  Alexandre Oliva  
4044
 
4045
        * Reverted 2003-03-02's patch.
4046
 
4047
        * elfxx-target.h (bfd_elfNN_canonicalize_reloc): Make it
4048
        overridable.
4049
        * elf64-mips.c (mips_elf64_canonicalize_reloc,
4050
        mips_elf64_get_dynamic_reloc_upper_bound,
4051
        mips_elf64_canonicalize_dynamic_reloc): New, adapted from elf.c.
4052
        (bfd_elf64_get_canonicalize_reloc,
4053
        bfd_elf64_get_dynamic_reloc_upper_bound,
4054
        bfd_elf64_canonicalize_dynamic_reloc): Define.
4055
        (mips_elf64_slurp_reloc_table): Support dynamic.
4056
        (mips_elf64_slurp_one_reloc_table): Adjust.
4057
 
4058
2003-03-12  Nick Clifton  
4059
 
4060
        * xsym.c (bfd_sym_fetch_type_information_table_entry): Change
4061
        'index' to 'offset' in test for zero value.
4062
 
4063
2003-03-11  Alexandre Oliva  
4064
 
4065
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Do not create
4066
        dynamic relocations pointing to local or section symbols, use the
4067
        NULL symbol instead.  Document the choice to not emit an
4068
        additional R_MIPS_64 relocation.
4069
 
4070
2003-03-11  Alan Modra  
4071
 
4072
        * elf32-ppc.c (ppc_elf_relocate_section): Subtract tls seg vma from
4073
        zero index dynamic tls relocs generated for the GOT.  Tidy code.
4074
        Set "relocation" to 1 on DTPMOD32 relocs.  Optimize HA adjustment.
4075
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
4076
 
4077
2003-03-07  Alan Modra  
4078
 
4079
        * elf32-ppc.c (ppc_elf_relocate_section): Don't look for a nop after
4080
        a tls_get_addr call.
4081
 
4082
        * elf32-ppc.c (ELIMINATE_COPY_RELOCS): Define as one.
4083
        (ppc_elf_adjust_dynamic_symbol): For weak symbols, copy
4084
        ELF_LINK_NON_GOT_REF from weakdef.
4085
        * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define as one.
4086
        (ppc64_elf_adjust_dynamic_symbol): For weak symbols, copy
4087
        ELF_LINK_NON_GOT_REF from weakdef.
4088
        * elf32-i386.c (ELIMINATE_COPY_RELOCS): Define as one.  Use throughout.
4089
        (elf_i386_adjust_dynamic_symbol): For weak symbols, copy
4090
        ELF_LINK_NON_GOT_REF from weakdef.
4091
 
4092
2003-03-06  Jakub Jelinek 
4093
        Andrew Haley  
4094
 
4095
        * elflink.h (elf_bfd_discard_info): Don't process eh frames if
4096
        output is relocateable.
4097
 
4098
2003-03-06  Steven Konopa 
4099
 
4100
        * som.c (som_fixup_formats): Correct formats for R_AUX_UNWIND and
4101
        R_COMMENT.
4102
 
4103
2003-03-06  Alan Modra  
4104
 
4105
        * elf32-ppc.c (ppc_elf_create_linker_section): Don't capitalize
4106
        error messages.
4107
        (ELIMINATE_COPY_RELOCS): Define to zero.
4108
        (ppc_elf_relocate_section): Don't deref htab->tls_sec when calculating
4109
        TLSLD relocs.  Report reloc types on a number of errors.  Optimize
4110
        LOCAL24PC check for non-local syms.  Don't capitalize error messages.
4111
        * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define to zero.
4112
        (ppc64_elf_relocate_section): Don't deref htab->tls_sec when
4113
        calculating TLSLD relocs.  Report reloc types on a number of errors.
4114
        Don't capitalize error messages.
4115
 
4116
2003-03-03  H.J. Lu 
4117
 
4118
        * elfxx-ia64.c (USE_BRL): Removed.
4119
        (oor_ip): Removed.
4120
 
4121
2003-03-03  J"orn Rennecke 
4122
 
4123
        * elf32-sh.c (sh_elf_howto_tab): Make R_SH_IND12W into an ordinary
4124
        relocation (no special function), and make it non-partial_inplace.
4125
        (sh_elf_relax_section): When creating a bsr, use a consistent value
4126
        no matter if the symbol is extern or not;  set addend to -4.
4127
        Don't swap load / non-load instructions for SH4.
4128
        (sh_elf_relax_delete_bytes): In R_SH_IND12W case, check the offset
4129
        rather than if the symbol is external to determine if adjusting the
4130
        offset makes sense.  Adjust the addend too if appropriate.
4131
        (sh_elf_relocate_section): In R_SH_IND12W, don't fiddle with the
4132
        relocation.
4133
 
4134
2003-03-03  Nick Clifton  
4135
 
4136
        * po/da.po: Installed latest translation.
4137
 
4138
2003-03-02  Thiemo Seufer 
4139
 
4140
        * elf32-mips.c (elf_mips_howto_table_rel): Change definition of
4141
        R_MIPS_PC16 to rightshift 2.
4142
        (elf_reloc_map mips_reloc_map): Map to rightshifted BFD reloc.
4143
        (bfd_elf32_bfd_reloc_type_lookup): Support
4144
        BFD_RELOC_MIPSEMB_16_PCREL_S2.
4145
        * elf64-mips.c (mips_elf64_howto_table_rel): Change definition of
4146
        R_MIPS_PC16 to rightshift 2.
4147
        (mips_elf64_howto_table_rela): Likewise.
4148
        (mips_reloc_map): Map to rightshifted BFD reloc.
4149
        * elfn32-mips.c: The same as in elf64-mips.c.
4150
        * elfxx-mips.c (mips_elf_got_for_ibfd): Typo in comment.
4151
        (mips_elf_calculate_relocation): Handle rightshifted addends for
4152
        R_MIPS_PC16.
4153
        * reloc.c (BFD_RELOC_MIPSEMB_16_PCREL_S2): New BFD relocation for
4154
        MIPS Embedded PIC. Remove superfluous empty COMMENT.
4155
        * libbfd.h: Regenerate.
4156
        * bfd-in2.h: Regenerate.
4157
 
4158
2003-02-28  Richard Henderson  
4159
 
4160
        * elfxx-ia64.c (elfNN_ia64_relax_section): Correct bounds
4161
        for ltoff22x relaxation.
4162
 
4163
2003-03-01  Alan Modra  
4164
 
4165
        * bfd-in.h (_bfd): Don't define.
4166
        * bfd.c: Rename occurrences of "struct _bfd" to "struct bfd".
4167
        * syms.c: Likewise.
4168
        * bfd-in2.h: Regenerate.
4169
 
4170
2003-02-27  Richard Henderson  
4171
 
4172
        * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add want_gotx;
4173
        (elfNN_ia64_check_relocs): Set it.
4174
        (allocate_global_data_got): Check it.
4175
        (allocate_local_got): Likewise.
4176
        (allocate_dynrel_entries): Likewise.
4177
        (elfNN_ia64_relax_ldxmov): New.
4178
        (elfNN_ia64_relax_section): Handle LTOFF22X, LDXMOV.
4179
        (elfNN_ia64_choose_gp): Split out from ...
4180
        (elfNN_ia64_final_link): ... here.
4181
 
4182
2003-02-27  Andrew Cagney  
4183
 
4184
        * bfd.c (struct bfd): Rename "struct _bfd".
4185
        * bfd-in.h: Update copyright.
4186
        (struct bfd): Rename "struct _bfd".
4187
        (_bfd): Define for backward compatibility.
4188
        * bfd-in2.h: Regenerate.
4189
 
4190
2003-02-25  Alan Modra  
4191
 
4192
        * elflink.h (elf_bfd_final_link): Apportion reloc counts to rel_hdr
4193
        and rel_hdr2 when initially counting input relocs rather than after
4194
        creating output reloc sections.
4195
        (elf_link_read_relocs_from_section): Don't abort with wrong reloc
4196
        sizes.
4197
 
4198
        * Makefile.am: Run "make dep-am".
4199
        * Makefile.in: Regenerate.
4200
 
4201
2003-02-24  Kris Warkentin  
4202
 
4203
        * elf.c (elfcore_read_notes): Add check for QNX style core file.
4204
        (elfcore_grog_nto_note): New function.
4205
        (elfcore_grog_nto_gregs): New function.
4206
        (elfcore_grog_nto_status): New function.
4207
 
4208
2003-02-24  Alan Modra  
4209
 
4210
        * elflink.c (_bfd_elf_create_got_section): Check existing .got
4211
        section flags before concluding that we've already been called.
4212
        Don't use register keyword.
4213
        (_bfd_elf_create_dynamic_sections): Don't use register keyword.
4214
        (_bfd_elf_create_linker_section): Formatting.
4215
 
4216
2003-02-20  jmc  
4217
 
4218
        * coff-h8300.c: Fix typo: intial -> initial.
4219
        * coff-ppc.c: Likewise.
4220
 
4221
2003-02-20  Alan Modra  
4222
 
4223
        * elf32-ppc.c: Formatting.
4224
        (allocate_dynrelocs): LD and GD relocs against the same sym need
4225
        separate GOT entries.
4226
        (ppc_elf_relocate_section): Correct GOT handling for multiple GOT
4227
        entries per symbol.
4228
 
4229
2003-02-19  Alan Modra  
4230
 
4231
        * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Simplify dynamic reloc
4232
        removal.  Localize vars.  Remove unnecessary dynobj test.
4233
        * elf32-i386 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead
4234
        of INFO.
4235
        (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
4236
        and optimize.
4237
        (elf_i386_relocate_section): Likewise.
4238
        (elf_i386_gc_sweep_hook): Simplify dyn reloc removal.  Localize vars.
4239
        * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
4240
        * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
4241
        * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
4242
        * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
4243
        * elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise.  Remove
4244
        local_dynrel for section too.  Don't touch HIPLT22, LOPLT10, PCPLT32
4245
        or PCPLT10 relocs.  Don't subtract twice on PLT32 relocs.
4246
        Formatting.
4247
 
4248
        * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define.
4249
        (ppc64_elf_check_relocs): Use it.  Correct comment.  Move SEC_ALLOC
4250
        test.
4251
        (ppc64_elf_adjust_dynamic_symbol): Use ELIMINATE_COPY_RELOCS.
4252
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
4253
        (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
4254
        and optimize.  Use ELIMINATE_COPY_RELOCS.
4255
        (ppc64_elf_relocate_section): Likewise.
4256
 
4257
        * elf32-ppc.c (struct ppc_elf_dyn_relocs): Add pc_count field.
4258
        (ppc_elf_copy_indirect_symbol): Copy pc_count field.
4259
        (ELIMINATE_COPY_RELOCS): Define.
4260
        (ppc_elf_adjust_dynamic_symbol): Convert copy relocs to dynamic.
4261
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
4262
        (MUST_BE_DYN_RELOC): Define.
4263
        (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
4264
        and optimize.  Trim dyn_relocs.
4265
        (ppc_elf_check_relocs): Don't generate dyn_relocs when we know they'll
4266
        not be used.  Do generate dyn_relocs for copy reloc avoidance.  Keep
4267
        track of pc_rel dyn relocs.
4268
        (ppc_elf_relocate_section): Remove "will_become_local".  Adjust
4269
        WILL_CALL_FINISH_DYNAMIC_SYMBOL use.  Trim dyn relocs as per
4270
        allocate_dynrelocs.  Don't recalculate "sec".
4271
 
4272
2003-02-18  Alan Modra  
4273
 
4274
        * elf32-ppc.c (ppc_elf_relocate_section): Remove unnecessary test.
4275
        * elf64-ppc.c (ppc64_elf_tls_optimize): Decrement tlsld_got.refcount
4276
        on invalid LD relocs.
4277
        (allocate_dynrelocs): Invalid LD relocs don't use tlsld_got entry.
4278
        (ppc64_elf_relocate_section): Unify new handling of LD relocs and
4279
        tlsld_got entry.  Use IS_PPC64_TLS_RELOC.
4280
 
4281
        * elf32-ppc.h: New file.
4282
        * elf32-ppc.c: Include elf32-ppc.h.
4283
        (NOP, CROR_151515, CROR_313131, TP_OFFSET, DTP_OFFSET): Define.
4284
        (struct ppc_elf_link_hash_entry): Rename "root" to "elf".  Adjust uses.
4285
        Add "tls_mask" field.
4286
        (TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, TLS_TLS, TLS_TPRELGD): Define.
4287
        (struct ppc_elf_link_hash_table): Rename "root" to "elf".  Adjust uses.
4288
        Add got, relgot, plt, relplt, dynbss, relbss, dynsbss, relsbss,
4289
        sdata, sdata2, tls_sec, tls_get_addr, tlsld_got fields.
4290
        Make use of htab shortcuts throughout file.
4291
        (ppc_elf_link_hash_newfunc): Init tls_mask field.
4292
        (ppc_elf_link_hash_table_create): Init new fields.
4293
        (ppc_elf_copy_indirect_symbol): Copy tls_mask.
4294
        (ppc_elf_howto_raw): Add tls relocs.
4295
        (ppc_elf_reloc_type_lookup): Handle them.
4296
        (ppc_elf_unhandled_reloc): New function.
4297
        (ppc_elf_create_got): Stash got section pointer in hash table,
4298
        return status.  Make .rela.got too.
4299
        (ppc_elf_create_dynamic_sections): Stash section pointers in htab.
4300
        (ppc_elf_adjust_dynamic_symbol): Only set up copy relocs when
4301
        NON_GOT_REF set.  Don't allocate space in .plt here..
4302
        (allocate_dynrelocs): ..do so here instead, properly ref-counting and
4303
        not allocating plt entries unnecessarily.  Allocate got entries here.
4304
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
4305
        (ppc_elf_size_dynamic_sections): Allocate local got entries.  Pass
4306
        "info" during allocate_dynrelocs hash traversal.  Use htab section
4307
        shortcuts rather than searching for named sections.  Get rid of
4308
        "plt" and "strip" booleans.
4309
        (update_local_sym_info, bad_shared_reloc): New functions.
4310
        (ppc_elf_check_relocs): Handle TLS relocs.  Move .rela.got creation to
4311
        ppc_elf_create_got.  Don't mark got or plt reloc syms dynamic, do so
4312
        in allocate_dynreloc.  Use update_local_sym_info and bad_shared_reloc.
4313
        Disallow R_PPC_EMB_RELSDA, R_PPC_EMB_NADDR32, R_PPC_EMB_NADDR16,
4314
        R_PPC_EMB_NADDR16_LO, R_PPC_EMB_NADDR16_HI and R_PPC_EMB_NADDR16_HA
4315
        in shared libs.  R_PPC_PLTREL32 is a plt reloc too.  Refcount all
4316
        relocs that might use a plt entry.  Set NON_GOT_REF too.
4317
        Enumerate all do-nothing relocs.
4318
        (ppc_elf_gc_sweep_hook): Simplify removal of dynrelocs.  Handle
4319
        tls relocs and all plt relocs.
4320
        (ppc_elf_tls_setup, ppc_elf_tls_optimize): New functions.
4321
        (ppc_elf_finish_dynamic_symbol): Don't build got entries here.
4322
        (ppc_elf_finish_dynamic_sections): Rewrite tag code using htab
4323
        shortcuts.
4324
        (ppc_elf_relocate_section): Tidy.  Handle TLS relocs.  Use
4325
        bfd_elf_local_sym_name.  Simplify unresolved reloc code.  Build got
4326
        entries and got relocs here.  Warn on non-zero got reloc addend.
4327
        Split out branch taken/not taken reloc code into a separate switch
4328
        and correct offset calculation. Allow BRTAKEN/BRNTAKEN dynamic relocs.
4329
        Split out HA reloc adjustments to separate switch statement.  Don't
4330
        warn on reloc overflow if we've already warned about undefined.
4331
        Don't rebuild sym name when reporting errors.  Report all possible
4332
        errors from _bfd_final_link_relocate.
4333
        (bfd_elf32_bfd_final_link): Don't define.
4334
 
4335
2003-02-18  Alan Modra  
4336
 
4337
        * elf64-ppc.c (ppc64_elf_relocate_section): Don't init "r".  Don't
4338
        rebuild sym name when reporting errors.
4339
 
4340
2003-02-17  Nick Clifton  
4341
 
4342
        * elflink.h (elf_link_output_extsym): Only check
4343
        allow_shlib_undefined for shared libraries.
4344
        * elf32-i386.c (elf_i386_relocate_section): Remove bogus check
4345
        of allow_shlib_undefined.
4346
        * elf32-cris.c (cris_elf_relocate_section): Likewise.
4347
        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
4348
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
4349
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
4350
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
4351
        * elf32-sh.c (sh_elf_relocate_section): Likewise.
4352
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
4353
        * elf32-vax.c (elf_vax_relocate_section): Likewise.
4354
        * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
4355
        * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
4356
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
4357
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
4358
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
4359
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
4360
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
4361
        * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
4362
 
4363
2003-02-17  Nick Clifton  
4364
 
4365
        * elf.c (SEGMENT_AFTER_SEGMENT): Add third parameter - the
4366
        address field to use in the comparison.
4367
        (SEGMENT_OVERLAPS): Check that LMAs overlap as well.
4368
 
4369
2003-02-14  Bob Wilson  
4370
 
4371
        * elfcore.h (elf_core_file_p): Compare alternate machine codes for ELF
4372
        backends when checking if the generic ELF target should be used.
4373
 
4374
        * syms.c (_bfd_stab_section_find_nearest_line): For line number stabs
4375
        outside of functions, treat values as absolute addresses.
4376
 
4377
        * bfd.c: Change embedded documentation to use consistent indentation
4378
        and to split up long lines.  Change informal style of description
4379
        for functions lacking real documentation.
4380
        * coffcode.h: Break up long lines in embedded documentation.
4381
        * format.c: Likewise.
4382
        * targets.c: Likewise.
4383
        * libcoff.h: Regenerate.
4384
        * bfd-in2.h: Regenerate.
4385
 
4386
2003-02-14  Alan Modra  
4387
 
4388
        * elf64-ppc.c (ppc64_elf_link_hash_table_create): Init tls_get_addr.
4389
        (ppc64_elf_copy_indirect_symbol): Merge tls_mask too.
4390
        (ppc64_elf_gc_sweep_hook): Simplify removal of dyn_relocs.
4391
        (allocate_dynrelocs): Don't treat undefined and undefweak specially.
4392
        (ppc_size_one_stub): Fix warning, and tighten plt entry check.
4393
        (group_sections): Don't share a stub section if stubs are for a large
4394
        section.  Adjust comment.
4395
        (ppc64_elf_size_stubs): Roughly double the size left for stubs if
4396
        !stubs_always_before_branch.
4397
        (ppc64_elf_relocate_section): Initialize tlsld GOT entry once.  Don't
4398
        treat undefined and undefweak specially when processing dyn relocs.
4399
 
4400
2003-02-13  Jakub Jelinek  
4401
 
4402
        * elflink.h (elf_link_add_object_symbols): Handle .symver x, x@FOO.
4403
 
4404
2003-02-13  Nick Clifton  
4405
 
4406
        * elf32-arm.h (elf32_thumb_to_arm_stub): Include section VMAs
4407
        in computation of offset to insert into BL instruction.
4408
 
4409
2003-02-11  Uwe Stieber  
4410
 
4411
        * config.bfd: Add support for kaOS as cross build target system.
4412
 
4413
2003-02-11  Alan Modra  
4414
 
4415
        * elf64-ppc.c (ppc64_elf_check_relocs): Match versioned
4416
        .__tls_get_addr too.
4417
        (ppc64_elf_tls_setup): Ensure cached tls_get_addr is not indirect.
4418
 
4419
2003-02-10  Kaz kojima  
4420
 
4421
        * elf32-sh.c (elf_sh_dyn_relocs): Add tls_tpoff32 field.
4422
        (elf_sh_link_hash_entry): Remove tls_tpoff32 field.
4423
        (sh_elf_link_hash_newfunc): Remove the initialization of
4424
        tls_tpoff32 field.
4425
        (allocate_dynrelocs): Keep dyn_relocs if it includes the entry
4426
        for which tls_tpoff32 flag is set.
4427
        (sh_elf_relocate_section): Covert to LE only if the dyn_relocs
4428
        of the symbol includes the entry matched with the input_section
4429
        and having tls_tpoff32 flag on.  When linking statically, set
4430
        symbol index of R_SH_TLS_TPOFF32 relocation to zero if the symbol
4431
        is defined in this executable.
4432
        (sh_elf_check_relocs): Set tls_tpoff32 flag appropriately.
4433
 
4434
2003-02-10  Jakub Jelinek  
4435
 
4436
        * elf32-s390.c (elf_s390_size_dynamic_sections): Set relocs to TRUE
4437
        even if there is just non-empty .rela.plt.
4438
 
4439
2003-02-10  Nick Clifton  
4440
 
4441
        * archures.c (bfd_mach_arm_ep9312): Define.
4442
        * bfd-in2.h: Regenerate.
4443
        * cpu-arm.c (processors[]): Add ep9312.
4444
        (bfd_arm_arch): Add ep9312.
4445
        * elf32-arm.h (elf32_arm_merge_private_data): Update error
4446
        messages and add test for Maverick floating point support.
4447
        (elf32_arm_print_private_bfd_data): Handle
4448
        EF_ARM_MAVERICK_FLOAT flag.
4449
        (elf32_arm_object_p): New function.
4450
        (elf_backend_object_p): Define.
4451
 
4452
2003-02-10  Alan Modra  
4453
 
4454
        * elf64-ppc.c: Rename assorted occurrences of tls_type and similar
4455
        variables, structure fields or function params to tls_mask or
4456
        similar to better reflect usage.
4457
        (struct got_entry): Comment.
4458
        (struct ppc_link_hash_entry): Expand comment, and renumber TLS_*.
4459
        (get_tls_mask): Rename from get_tls_type.
4460
 
4461
2003-02-09  Alan Modra  
4462
 
4463
        * elf64-ppc.c (TLS_GD_LD): Don't define..
4464
        (TLS_GD): ..define this instead and update all uses.
4465
        (TLS_TPRELGD): Define.
4466
        (ppc64_elf_link_hash_table_create): Tweak initialization of
4467
        init_refcount and init_offset.
4468
        (ppc64_elf_check_relocs): Add one extra element to t_symndx array.
4469
        Mark second slot of GD or LD toc entries.
4470
        (get_tls_type): Return an int.  Distinguish toc GD and LD entries
4471
        from other tls types.
4472
        (ppc64_elf_tls_setup): New function, split out from..
4473
        (ppc64_elf_tls_optimize): ..here.  Don't optimize when symbols are
4474
        defined in a dynamic object.  Fix LD optimization.  Don't set TLS_TPREL
4475
        on GD->IE optimization, use TLS_TPRELGD instead.  Use get_tls_type
4476
        return value to properly decide whether toc GD and LD entries can
4477
        optimize away __tls_get_addr call.  Check next reloc after DTPMOD64
4478
        to determine GD or LD rather than looking at TLS_LD flag.  Don't
4479
        attempt to adjust got entry tls_type here..
4480
        (allocate_dynrelocs): ..instead, adjust got entry tls_type here, and
4481
        look for possible merges.
4482
        (ppc64_elf_size_dynamic_sections): Adjust local got entries for
4483
        optimization.
4484
        (ppc64_elf_size_stubs): Tweak __tls_get_addr fudge.
4485
        (ppc64_elf_relocate_section): Rename some vars to better reflect usage.
4486
        Make use of return value from get_tls_type to properly detect GD and
4487
        LD optimizations.  Split tlsld/gd hi/ha from lo/ds case.  Don't
4488
        handle tls_get_addr removal when looking at REL24 relocs, do it when
4489
        looking at the previous reloc.  Check reloc after DTPMOD64 to determine
4490
        GD or LD.
4491
        * elf64-ppc.h (ppc64_elf_tls_setup): Declare.
4492
 
4493
2003-02-08  Alan Modra  
4494
 
4495
        * elf32-hppa.c (group_sections): Don't share a stub section if
4496
        stubs are for a large section.
4497
 
4498
        * elf32-hppa.c (elf32_hppa_size_stubs): Double the size left for
4499
        stubs if !stubs_always_before_branch.
4500
 
4501
2003-02-07  Nick Clifton  
4502
 
4503
        * elf.c (swap_out_syms): Generate an error message if an
4504
        equivalent output section cannot be found for a symbol.
4505
 
4506
2003-02-07  Jakub Jelinek  
4507
 
4508
        * elf64-alpha.c (elf64_alpha_relax_section): Don't crash if
4509
        local_got_entries is NULL.
4510
 
4511
2003-02-06  Andreas Schwab  
4512
 
4513
        * elf-eh-frame.c (get_DW_EH_PE_signed): Define.
4514
        (read_value): Add parameter is_signed, use signed extraction if
4515
        the value is signed.
4516
        (_bfd_elf_write_section_eh_frame): Pass signed flag of the
4517
        encoding to read_value.
4518
 
4519
2003-02-06  Alan Modra  
4520
 
4521
        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy got and
4522
        plt info when called to transfer weak sym info.
4523
 
4524
2003-02-05  Alan Modra  
4525
 
4526
        * reloc.c: Add PPC and PPC64 TLS relocs.
4527
        * libbfd.h: Regenerate.
4528
        * bfd-in2.h: Regenerate.
4529
        * elf64-ppc.c (TP_OFFSET, DTP_OFFSET): Declare.
4530
        (ppc64_elf_howto_raw): Add TLS howto's.  Adjust R_PPC64_NONE to be
4531
        against a 32 bit field.
4532
        (ppc64_elf_reloc_type_lookup): Handle TLS relocs.
4533
        (_ppc64_elf_section_data): Add t_symndx and comments.
4534
        (ppc64_elf_section_data): Use elf_section_data macro.
4535
        (ppc64_elf_new_section_hook): American spelling.
4536
        (struct got_entry, struct plt_entry): New.
4537
        (MUST_BE_DYN_RELOC): Rename from IS_ABSOLUTE_RELOC.
4538
        (struct ppc_stub_hash_entry): Add "addend" field.
4539
        (struct ppc_link_hash_entry): Add "tls_type".
4540
        (TLS_TLS, TLS_GD_LD, TLS_LD, TLS_TPREL, TLS_DTPREL,
4541
        TLS_EXPLICIT): Define.
4542
        (struct ppc_link_hash_table): Add tls_sec, tls_get_addr, tlsld_got.
4543
        (link_hash_newfunc): Init new fields.
4544
        (ppc64_elf_link_hash_table_create): Likewise.  Set init_refcount and
4545
        init_offset to NULL.
4546
        (ppc64_elf_copy_indirect_symbol): Copy got and plt info.  Don't call
4547
        _bfd_elf_link_hash_copy_indirect, rather insert relevant code from
4548
        there.
4549
        (update_local_sym_info, update_plt_info): New functions.
4550
        (ppc64_elf_check_relocs): Use them.  Handle TLS relocs.  Adjust GOT
4551
        handling to use got.glist rather than got.refcount.  Likewise for PLT.
4552
        (ppc64_elf_gc_sweep_hook): Handle TLS relocs, new GOT and PLT lists.
4553
        (func_desc_adjust): Adjust for new PLT list.
4554
        (ppc64_elf_adjust_dynamic_symbol): Likewise.
4555
        (get_sym_h, get_tls_type): New functions.
4556
        (ppc64_elf_edit_opd): Remove unused variable.  Use get_sym_h.
4557
        (ppc64_elf_tls_optimize): New function.
4558
        (allocate_dynrelocs): Adjust for new PLT and GOT lists.  Allocate
4559
        TLS relocs.
4560
        (ppc64_elf_size_dynamic_sections): Likewise.
4561
        (ppc_type_of_stub): Adjust for new PLT list.
4562
        (ppc_build_one_stub): Likewise.
4563
        (ppc64_elf_size_stubs): Likewise.  Use get_sym_h.  Treat __tls_get_addr
4564
        calls specially.
4565
        (ppc64_elf_relocate_section): Adjust for new GOT and PLT lists.  Handle
4566
        TLS relocs.  Report local syms using bfd_elf_local_sym_name.  Don't
4567
        init GOT entries that have a reloc.  Generate GOT relocs here..
4568
        (ppc64_elf_finish_dynamic_symbol): ..not here.  Adjust for PLT list.
4569
        * elf64-ppc.h (ppc64_elf_tls_optimize): Declare.
4570
 
4571
2003-02-04  Andreas Schwab  
4572
 
4573
        * elf32-m68k.c (elf_m68k_hash_entry): Define.
4574
        (elf_m68k_link_hash_traverse): Remove.
4575
        (elf_m68k_link_hash_newfunc): Use struct bfd_hash_entry and
4576
        elf_m68k_hash_entry instead of struct elf_m68k_link_hash_entry to
4577
        reduce casting.
4578
        (elf_m68k_check_relocs): Use elf_m68k_hash_entry instead of
4579
        casting.
4580
        (elf_m68k_size_dynamic_sections): Use elf_link_hash_traverse
4581
        instead of elf_m68k_link_hash_traverse.
4582
        (elf_m68k_discard_copies): Change first parameter to pointer to
4583
        struct elf_link_hash_entry and use elf_m68k_hash_entry when struct
4584
        elf_m68k_link_hash_entry is needed.
4585
 
4586
2003-02-04  Alan Modra  
4587
 
4588
        * elf-bfd.h (struct got_entry, struct plt_entry): Forward declare.
4589
        (struct elf_link_hash_entry): Add "glist" and "plist" fields to
4590
        "got" union, and declare as gotplt_union.  Use gotplt_uinion for
4591
        "plt" field.
4592
        (struct elf_link_hash_table): Make "init_refcount" a gotplt_union.
4593
        Add "init_offset" field.
4594
        (struct elf_obj_tdata ): Add "struct got_entry **" to union.
4595
        (elf_local_got_ents): Declare.
4596
        * elf.c (_bfd_elf_link_hash_newfunc): Adjust initialization of "got"
4597
        and "plt".
4598
        (_bfd_elf_link_hash_hide_symbol): Use "init_offset".
4599
        (_bfd_elf_link_hash_table_init): Set "init_offset".
4600
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set init_refcount
4601
        from init_offset.
4602
        (elf_adjust_dynamic_symbol): Set plt and got offsets using init_offset.
4603
 
4604
        * elf.c (bfd_elf_local_sym_name): Split out from..
4605
        (group_signature): ..here.
4606
        * elf-bfd.h (bfd_elf_local_sym_name): Declare.
4607
 
4608
2003-02-04  Alan Modra  
4609
 
4610
        * elf-bfd.h (enum elf_link_info_type): Remove.
4611
        (struct bfd_elf_section_data): Move sec_info_type, use_rela_p fields
4612
        to struct sec.  Remove linkonce_p field.
4613
        (elf_linkonce_p): Delete.
4614
        (elf_discarded_section): Update for sec_info_type change.
4615
        * section.c (struct sec): Add sec_info_type, use_rela_p, has_tls_reloc,
4616
        flag11, flag12, flag13, flag14, flag15, flag16, flag20, flag24.
4617
        (ELF_INFO_TYPE_NONE): Define.
4618
        (ELF_INFO_TYPE_STABS): Define.
4619
        (ELF_INFO_TYPE_MERGE): Define.
4620
        (ELF_INFO_TYPE_EH_FRAME): Define.
4621
        (ELF_INFO_TYPE_JUST_SYMS): Define.
4622
        (STD_SECTION): Update struct sec initializer.
4623
        * ecoff.c (bfd_debug_section): Likewise.
4624
        * elf.c: Likewise.  Update occurrences of sec_info_type and use_rela_p.
4625
        * elflink.h: Likewise.
4626
        * elf-eh-frame.c: Likewise.
4627
        * elf64-alpha.c: Likewise.
4628
        * elfxx-ia64.c: Likewise.
4629
        * elfxx-mips.c: Likewise.
4630
        * bfd-in2.h: Regenerate.
4631
 
4632
        * elf32-sparc.c (sec_do_relax): Use elf_section_data macro rather than
4633
        referring to used_by_bfd.
4634
        * elf64-sparc.c (sec_do_relax): Likewise.
4635
        * elf64-mmix.c (mmix_elf_section_data): Likewise.
4636
        * elfxx-mips.c (mips_elf_section_data): Likewise.
4637
        * ieee.c (ieee_slurp_section_data): Use ieee_per_section macro.
4638
        (ieee_get_section_contents): Likewise.
4639
        (ieee_new_section_hook): Formatting.
4640
        (ieee_canonicalize_reloc): Remove commented out code.
4641
        * mmo.c (mmo_section_data): Define.  Use throughout file.
4642
        * oasys.c (oasys_get_section_contents): Use oasys_per_section macro.
4643
 
4644
2003-01-31  Graydon Hoare 
4645
 
4646
        * Makefile.am (opncls.lo): Add dependency upon libiberty.h.
4647
        * Makefile.in: Regenerate.
4648
        * opncls.c (calc_crc32, get_debug_link_info,
4649
        seperate_debug_file_exists, find_seperate_debug_file): New
4650
        internal functions.
4651
        (bfd_follow_gnu_debuglink): New function.  Follow the pointer
4652
        contained inside a .gnu_debuglink section.
4653
        * bfd-in2.h: Regenerate.
4654
 
4655
2003-01-29  Alexandre Oliva  
4656
 
4657
        * elfxx-mips.c (mips_elf_got_entry_hash): Don't dereference
4658
        entry->abfd when it's NULL.
4659
 
4660
2003-01-27  Alexandre Oliva  
4661
 
4662
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Handle
4663
        _bfd_elf_section_offset returning -2 the same way as -1.
4664
 
4665
        * elfxx-mips.c (mips_elf_multi_got): New function.
4666
        (struct mips_got_entry): Make symndx and gotidx signed.  Moved
4667
        addend into union along with address and link hash entry.
4668
        (struct mips_got_info): Added bfd2got and next.
4669
        (struct mips_elf_hash_sort_data): Added max_unref_got_dynindx.
4670
        (mips_elf_got_section, mips_elf_create_got_section): Use
4671
        SEC_EXCLUDE bit to tell whether we really need the got
4672
        section.  Take boolean arguments to disregard an excluded
4673
        section, or to create it as excluded.  Adjust all callers.
4674
        Use mips_elf_got_section all over.
4675
        (mips_elf_local_got_index, mips_elf_got_page,
4676
        mips_elf_got16_entry): Take input bfd as argument, and pass it
4677
        on to mips_elf_create_local_got_entry.
4678
        (mips_elf_global_got_index, mips_elf_create_local_got_entry):
4679
        Take input bfd as argument, and manage entries in the
4680
        appropriate GOT.
4681
        (mips_elf_got_offset_from_index): Take input bfd as argument,
4682
        and use it to adjust the GP offset of the bfd.
4683
        (mips_elf_sort_hash_table, mips_elf_sort_hash_table_f): Move
4684
        unreferenced GOT entries of global symbols to the end.
4685
        (mips_elf_record_global_got_symbol): Take input bfd as
4686
        argument.  Add entries to the master GOT hash table.
4687
        (struct mips_elf_bfd2got_hash): New.
4688
        (struct mips_elf_got_per_bfd_arg): New.
4689
        (struct mips_elf_set_global_got_offset_arg): New.
4690
        (mips_elf_hash_bfd_vma, mips_elf_multi_got_entry_hash,
4691
        mips_elf_multi_got_entry_eq, mips_elf_bfd2got_entry_hash,
4692
        mips_elf_bfd2got_entry_eq, mips_elf_make_got_per_bfd,
4693
        mips_elf_merge_gots, mips_elf_set_global_got_offset,
4694
        mips_elf_resolve_final_got_entry,
4695
        mips_elf_resolve_final_got_entries, mips_elf_adjust_gp,
4696
        mips_elf_got_for_ibfd): New functions.
4697
        (ELF_MIPS_GP_OFFSET): Don't depend on SGI_COMPAT.
4698
        (MIPS_ELF_GOT_MAX_SIZE): New macro.
4699
        (STUB_LW): Generate 64-bit stub regardless of SGI_COMPAT.
4700
        (mips_elf_got_entry_hash): Take new fields into account.  Use
4701
        mips_elf_hash_bfd_vma.
4702
        (mips_elf_got_entry_eq): Take new fields into account.
4703
        (mips_elf_create_got_section): Initialize new fields.
4704
        (mips_elf_calculate_relocation): Pass input_bfd to functions
4705
        that now take it.  Adjust gp for the input_bfd.
4706
        (mips_elf_allocate_dynamic_relocation,
4707
        mips_elf_create_dynamic_relocation,
4708
        _bfd_mips_elf_create_dynamic_sections): Use...
4709
        (mips_elf_rel_dyn_section): New function.  Borrow code from...
4710
        (_bfd_mips_elf_check_relocs): Pass input_bfd to functions that
4711
        now take it.  Create the got section if needed, even if
4712
        excluded, before recording a global got symbol.  Move some
4713
        code to...
4714
        (mips_elf_record_local_got_symbol): New fn.
4715
        (_bfd_mips_elf_size_dynamic_sections): Disable combreloc.
4716
        Compute multi-got global entries offsets.  Move GOT code to...
4717
        (_bfd_mips_elf_always_size_sections): Call mips_elf_multi_got
4718
        if the GOT is too big.
4719
        (_bfd_mips_elf_finish_dynamic_symbol): Set got entry of
4720
        undefweak symbol to zero.  Generate dynamic relocations for
4721
        non-primary GOT entries for global symbols.
4722
        (_bfd_mips_elf_finish_dynamic_sections): Handle multi-got
4723
        case.  Generate dynamic relocations for local got entries.
4724
        Sort dynamic relocations on N64 too, using...
4725
        (sort_dynamic_relocs_64): New fns.
4726
        (_bfd_mips_elf_hide_symbol): Adjust multi-got counters.
4727
        (_bfd_mips_elf_merge_private_bfd_data): Ignore EF_MIPS_XGOT.
4728
 
4729
2003-01-27  Alexandre Oliva  
4730
 
4731
        * bfd.c (struct _bfd): Added id field.
4732
        * opncls.c (_bfd_id_counter): New static variable.
4733
        (_bfd_new_bfd): Use it.
4734
        * bfd-in2.h: Rebuilt.
4735
 
4736
2003-01-25  Alan Modra  
4737
 
4738
        * elf32-sparc.c (bfd_elf32_new_section_hook): Define.
4739
 
4740
2003-01-25  Jakub Jelinek  
4741
 
4742
        * elf32-sparc.c (_bfd_sparc_elf_howto_table): Add TLS relocs.
4743
        (elf32_sparc_rev32_howto): New variable.
4744
        (sparc_reloc_map): Add TLS relocs.
4745
        (elf32_sparc_reloc_type_lookup, elf32_sparc_info_to_howto):
4746
        Handle REV32.
4747
        (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc, elf32_sparc_mkobject):
4748
        New functions.
4749
        (struct elf32_sparc_dyn_relocs, struct elf32_sparc_link_hash_entry,
4750
        struct elf32_sparc_link_hash_table):
4751
        New structures.
4752
        (elf32_sparc_tdata, elf32_sparc_local_got_tls_type,
4753
        elf32_sparc_hash_table): Define.
4754
        (link_hash_newfunc, elf32_sparc_link_hash_table_create,
4755
        create_got_section, elf32_sparc_create_dynamic_sections,
4756
        elf32_sparc_copy_indirect_symbol, elf32_sparc_tls_transition): New
4757
        functions.
4758
        (elf32_sparc_check_relocs): Handle TLS relocs.  Add dynamic reloc
4759
        reference counting.
4760
        (elf32_sparc_gc_sweep_hook): Likewise.
4761
        (elf32_sparc_adjust_dynamic_symbol): Likewise.
4762
        (elf32_sparc_size_dynamic_sections): Likewise.
4763
        (elf32_sparc_relocate_section): Likewise.
4764
        (allocate_dynrelocs, readonly_dynrelocs, dtpoff_base, tpoff):
4765
        New functions.
4766
        (elf32_sparc_object_p): Allocate backend private object data.
4767
        (bfd_elf32_bfd_link_hash_table_create,
4768
        elf_backend_copy_indirect_symbol, bfd_elf32_mkobject,
4769
        elf_backend_can_refcount): Define.
4770
        (elf_backend_create_dynamic_sections): Define to
4771
        elf32_sparc_create_dynamic_sections.
4772
        * reloc.c: Add SPARC TLS relocs.
4773
        * bfd-in2.h, libbfd.h: Rebuilt.
4774
        * elf64-sparc.c (sparc64_elf_howto_table): Add TLS relocs.
4775
        (sparc_reloc_map): Likewise.
4776
 
4777
2003-01-24  Martin Schwidefsky  
4778
 
4779
        * bfd-in2.h: Regenerate.
4780
        * elf32-s390.c (elf_s390_mkobject, elf_s390_tls_transition,
4781
        s390_tls_reloc, dtpoff_base, tpoff, invalid_tls_insn): New functions.
4782
        (elf_howto_table): Add TLS relocs.
4783
        (elf_s390_reloc_type_lookup): Likewise.
4784
        (elf_s390_link_hash_entry): Add tls_type.
4785
        (elf_s390_hash_entry, elf_s390_obj_tdata, elf_s390_local_got_tls_type):
4786
        New macros.
4787
        (elf_s390_link_hash_table): Add tls_ldm_got.
4788
        (link_hash_newfunc): Initialize tls_type.
4789
        (elf_s390_link_hash_table_create): Initialize refcount of tls_ldm_got.
4790
        (elf_s390_copy_indirect_symbol): Copy tls_type information.
4791
        (elf_s390_check_relocs): Support TLS relocs.
4792
        (elf_s390_gc_sweep_hook): Likewise.
4793
        (allocate_dynrelocs): Likewise.
4794
        (elf_s390_size_dynamic_sections): Likewise.
4795
        (elf_s390_relocate_section): Likewise.
4796
        (elf_s390_finish_dynamic_symbol): Likewise.
4797
        (bfd_elf32_mkobject): Define for TLS.
4798
        * elf64-s390.c: Same changes as for elf32-s390.c.
4799
        * libbfd.h: Regenerate.
4800
        * reloc.c: Add s390 TLS relocations.
4801
 
4802
2003-01-24  Charles Lepple  
4803
 
4804
        * aclocal.m4: Fix name of --enable-install-libbfd switch.
4805
 
4806
2003-01-23  Nick Clifton  
4807
 
4808
        * Add sh2e support:
4809
        2002-04-02  Elena Zannoni  
4810
        * archures.c (bfd_mach_sh2e): Added.
4811
        * bfd-in2.h: Rebuilt.
4812
        * cpu-sh.c (arch_info_struct): Added SH2e.
4813
        * elf32-sh.c (sh_elf_set_mach_from_flags): Handle EF_SH2E.
4814
 
4815
2003-01-23  Alan Modra  
4816
 
4817
        * elf-bfd.h (struct bfd_elf_section_data): Remove tdata.  Change
4818
        dynindx to an int.  Rearrange for better packing.
4819
        * elf.c (_bfd_elf_new_section_hook): Don't alloc if already done.
4820
        * elf32-mips.c (bfd_elf32_new_section_hook): Define.
4821
        * elf32-sh64.h: New.  Split out from include/elf/sh.h.
4822
        (struct _sh64_elf_section_data): New struct.
4823
        (sh64_elf_section_data): Don't dereference sh64_info (was tdata).
4824
        * elf32-sh64-com.c: Include elf32-sh64.h.
4825
        * elf32-sh64.c: Likewise.
4826
        (sh64_elf_new_section_hook): New function.
4827
        (bfd_elf32_new_section_hook): Define.
4828
        (sh64_elf_fake_sections): Adjust for sh64_elf_section_data change.
4829
        (sh64_bfd_elf_copy_private_section_data): Likewise.
4830
        (sh64_elf_final_write_processing): Likewise.
4831
        * elf32-sparc.c (struct elf32_sparc_section_data): New.
4832
        (elf32_sparc_new_section_hook): New function.
4833
        (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
4834
        (sec_do_relax): Define.
4835
        (elf32_sparc_relax_section): Adjust to use sec_do_relax.
4836
        (elf32_sparc_relocate_section): Likewise.
4837
        * elf64-mips.c (bfd_elf64_new_section_hook): Define.
4838
        * elf64-mmix.c (struct _mmix_elf_section_data): New.
4839
        (mmix_elf_section_data): Define.  Use throughout file.
4840
        (mmix_elf_new_section_hook): New function.
4841
        (bfd_elf64_new_section_hook): Define.
4842
        * elf64-ppc.c (struct _ppc64_elf_section_data): New.
4843
        (ppc64_elf_section_data): Define.  Use throughout.
4844
        (ppc64_elf_new_section_hook): New function.
4845
        (bfd_elf64_new_section_hook): Define.
4846
        * elf64-sparc.c (struct sparc64_elf_section_data): New.
4847
        (sparc64_elf_new_section_hook): New function.
4848
        (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
4849
        (sec_do_relax): Define.
4850
        (sparc64_elf_relax_section): Adjust to use sec_do_relax.
4851
        (sparc64_elf_relocate_section): Likewise.
4852
        (bfd_elf64_new_section_hook): Define.
4853
        * elfn32-mips.c (bfd_elf32_new_section_hook): Define.
4854
        * elfxx-mips.c (struct _mips_elf_section_data): New.
4855
        (mips_elf_section_data): Define.  Use throughout.
4856
        (_bfd_mips_elf_new_section_hook): New function.
4857
        (mips_elf_create_got_section): Don't alloc used_by_bfd.
4858
        * elfxx-mips.h (_bfd_mips_elf_new_section_hook): Declare.
4859
        * elfxx-target.h (bfd_elfNN_new_section_hook): Add #ifndef.
4860
        * Makefile.am: Run "make dep-am".
4861
        * Makefile.in: Regenerate.
4862
 
4863
2003-01-21  Richard Henderson  
4864
 
4865
        * elf64-alpha.c (ALPHA_ELF_LINK_HASH_PLT_LOC): New.
4866
        (struct alpha_elf_link_hash_entry): Add plt_old_section, plt_old_value.
4867
        (elf64_alpha_adjust_dynamic_symbol): Set them.
4868
        (elf64_alpha_size_plt_section_1): Reset them when plt entry removed.
4869
        (elf64_alpha_relax_tls_get_addr): Handle LDM relocs.  Frob the
4870
        symbol index when relaxing LDM to TPREL.
4871
        (elf64_alpha_relax_section): Likewise.  Allow relaxation of GD
4872
        relocs, even if the target isn't locally defined.
4873
        (elf64_alpha_check_relocs): Frob LDM reloc symndx to zero.
4874
        (elf64_alpha_relocate_section): Likewise.  Force TP-relative
4875
        relocs vs symndx 0 to the tp base.
4876
 
4877
2003-01-21  Fabio Alemagna  
4878
 
4879
        * config.bfd: Handle i[3456]86-*-aros*.
4880
 
4881
2003-01-21  Andreas Schwab  
4882
 
4883
        * elf32-ppc.c (struct ppc_elf_dyn_relocs): Define.
4884
        (struct ppc_elf_link_hash_entry): Define.
4885
        (ppc_elf_hash_entry): New function.
4886
        (struct ppc_elf_link_hash_table): Define.
4887
        (ppc_elf_hash_table): New function.
4888
        (ppc_elf_link_hash_newfunc): New function.
4889
        (ppc_elf_link_hash_table_create): New function.
4890
        (ppc_elf_copy_indirect_symbol): New function.
4891
        (allocate_dynrelocs): New function.
4892
        (readonly_dynrelocs): New function.
4893
        (ppc_elf_size_dynamic_sections): Allocate space for dynamic
4894
        relocs and determine DT_TEXTREL.
4895
        (ppc_elf_check_relocs): Don't do that here, just count the
4896
        dynamic relocs.
4897
        (ppc_elf_gc_sweep_hook): Discard any dynamic relocs against the
4898
        removed section.
4899
        (bfd_elf32_bfd_link_hash_table_create): Define.
4900
        (elf_backend_copy_indirect_symbol): Define.
4901
 
4902
2003-01-21  Richard Henderson  
4903
 
4904
        * elf64-alpha.c (alpha_dynamic_entries_for_reloc): GOTTPREL and
4905
        TPREL also get a reloc if shared.  Remove SREL support.
4906
        (elf64_alpha_emit_dynrel): New.
4907
        (elf64_alpha_relocate_section): Use it.  Resolve dynamic TPREL
4908
        and GOTTPREL relocs to local symbols against the tp base.
4909
        (elf64_alpha_finish_dynamic_symbol): Use elf64_alpha_emit_dynrel.
4910
 
4911
        * elf64-alpha.c (elf64_alpha_relax_got_load): Decrement got
4912
        use count before clobbering r_type.
4913
        (elf64_alpha_relax_tls_get_addr): Don't use pos[1] if insn
4914
        ordering would mean dataflow inspection is necessary.
4915
 
4916
2003-01-20  Svein E. Seldal  
4917
 
4918
        * coffcode.h (coff_set_flags): Added get/set arch hooks.
4919
 
4920
2003-01-20  Fabio Alemagna  
4921
 
4922
        * elf32-sh.c: Treat elfNN_bed like other macros defined in
4923
          elfxx-target.h and #undef it before #define'ing it.
4924
        * elf32-i386.c: Likewise.
4925
        * elf32-sh64.c: Likewise.
4926
        * elf64-alpha.c: Likewise.
4927
        * elf64-sh64.c: Likewise.
4928
 
4929
2003-01-20  Martin Schwidefsky  
4930
 
4931
        * bfd-in2.h: Regenerate.
4932
        * elf32-s390.c (elf_s390_adjust_gotplt): New prototype.
4933
        (elf_howto_table): Rename R_390_GOTOFF to R_390_GOTOFF32. Add
4934
        R_390_GOTOFF16, R_390_GOTOFF64, R_390_GOTPLT12, R_390_GOTPLT16,
4935
        R_390_GOTPLT32, R_390_GOTPLT64, R_390_GOTPLTENT, R_390_PLTOFF16,
4936
        R_390_PLTOFF32 and R_390_PLTOFF64.
4937
        (elf_s390_reloc_type_lookup): Likewise.
4938
        (struct elf_s390_link_hash_entry): Add gotplt_refcount to keep track
4939
        of GOTPLT references to a function.
4940
        (link_hash_newfunc): Initialize gotplt_refcount.
4941
        (elf_s390_check_relocs): Move allocation of local_got_refcounts array
4942
        and creation of the got section out of the main switch. Add support
4943
        for the gotoff, gotplt and pltoff relocations.
4944
        (elf_s390_gc_sweep_hook): Add reference counting for gotoff, gotplt
4945
        and pltoff.
4946
        (elf_s390_adjust_gotplt): New function.
4947
        (elf_s390_adjust_dynamic_symbol): Adjust gotplt refcount for removed
4948
        plt entries.
4949
        (allocate_dynrelocs): Add comment.
4950
        (elf_s390_relocate_section): Change r_type to unsigned. Add support
4951
        for gotoff, gotplt and pltoff relocations.
4952
        * elf64-s390.c: Same changes as for elf32-s390.c.
4953
        * libbfd.h: Regenerate.
4954
        * reloc.c: Add BFD_RELOC_390_GOTOFF64, BFD_RELOC_390_GOTPLT12,
4955
        BFD_RELOC_390_GOTPLT16, BFD_RELOC_390_GOTPLT32, BFD_RELOC_390_GOTPLT64,
4956
        BFD_RELOC_390_GOTPLTENT, BFD_RELOC_390_PLTOFF16, BFD_RELOC_390_PLTOFF32
4957
        and BFD_RELOC_390_PLTOFF64.
4958
 
4959
2003-01-18  Jakub Jelinek  
4960
 
4961
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Handle
4962
        R_IA64_TPREL64[LM]SB against non-global symbol properly.
4963
 
4964
2003-01-16  Jakub Jelinek  
4965
 
4966
        * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add
4967
        self_dtpmod_done and self_dtpmod_offset.
4968
        (allocate_global_data_got): Only use one got entry for all
4969
        dtpmod relocs against local symbols.
4970
        (allocate_dynrel_entries): Only need .rela.got entry for
4971
        dtpmod against global symbol.
4972
        (elfNN_ia64_size_dynamic_sections): Initialize self_dtpmod_offset.
4973
        Reserve space in .rela.got for the local dtpmod entry.
4974
        (set_got_entry): Initialize the common local dtpmod .got entry.
4975
        (elfNN_ia64_relocate_section): Handle R_IA_64_DTPREL64LSB
4976
        and R_IA_64_DTPREL64MSB.
4977
 
4978
2003-01-16  Alan Modra  
4979
 
4980
        * elf64-ppc.c: Include elf/ppc64.h rather than elf/ppc.h.
4981
        (R_PPC_*): Rename all occurrences to R_PPC64_*.
4982
        (R_PPC64_ADDR30): Rename all occurrences to R_PPC64_REL30.
4983
        (enum elf_ppc_reloc_type): Ditto to enum elf_ppc64_reloc_type.
4984
        (ppc64_elf_gc_sweep_hook): Handle R_PPC64_REL30 along with other
4985
        relative relocs, not with absolute ones.
4986
        * Makefile.am: Run "make dep-am".
4987
        * Makefile.in: Regenerate.
4988
        * po/SRC-POTFILES.in: Regenerate.
4989
 
4990
2003-01-15  Andreas Schwab  
4991
 
4992
        * elf32-ppc.c (ppc_elf_check_relocs): Don't set DF_TEXTREL for a
4993
        relocation against a non-allocated readonly section.
4994
 
4995
2003-01-10  Alan Modra  
4996
 
4997
        * elf32-ppc.c (ppc_elf_relocate_section): Adjust addend for GOT16_HA.
4998
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.  PLTGOT16_HA too.
4999
 
5000
2002-01-08  Klee Dienes  
5001
 
5002
        * Makefile.am (ALL_MACHINES): Use cpu-msp430.lo, not cpu-msp430.c.
5003
        (BFD32_BACKENDS): Use elf32-msp430.lo, not elf32-msp430.c.
5004
        * Makefile.in: Regenerate.
5005
 
5006
2003-01-08  Alexandre Oliva  
5007
 
5008
        * elfn32-mips.c (prev_reloc_section): New.
5009
        (GET_RELOC_ADDEND): Use it.  Parenthesize macro arguments.
5010
        (SET_RELOC_ADDEND): Parenthesize macro argument.
5011
 
5012
2003-01-07  John David Anglin  
5013
 
5014
        * elf32-hppa.c (final_link_relocate): For all DP relative relocations,
5015
        adjust addil instructions if the symbol has no section.
5016
 
5017
2003-01-07  DJ Delorie  
5018
 
5019
        * elf32-xstormy16.c (xstormy16_elf_howto_table): Make REL_12 not
5020
        partial_inplace.
5021
 
5022
2003-01-07  Andreas Schwab  
5023
 
5024
        * elf32-m68k.c (elf_m68k_check_relocs): Don't set DF_TEXTREL for
5025
        PC relative relocations.
5026
        (elf_m68k_discard_copies): Set it here instead.
5027
 
5028
2002-01-02  Ben Elliston  
5029
            Jeff Johnston  
5030
 
5031
        * Makefile.am (ALL_MACHINES): Add cpu-iq2000.lo.
5032
        (ALL_MACHINES_CFILES): Add cpu-iq2000.c.
5033
        (BFD32_BACKENDS): Add elf32-iq2000.lo.
5034
        (BFD32_BACKENDS_CFILES): Add elf32-iq2000.c.
5035
        (cpu-iq2000.lo): New target.
5036
        * Makefile.in: Regenerate.
5037
        * config.bfd: Handle iq2000-*-elf.
5038
        * archures.c (bfd_architecture): Add bfd_{arch,mach}_iq2000.
5039
        (bfd_archures_list): Add bfd_iq2000_arch.
5040
        * configure.in: Handle bfd_elf32_iq2000_vec.
5041
        * configure: Regenerate.
5042
        * reloc.c: Add BFD_RELOC_IQ2000_OFFSET_16, BFD_RELOC_IQ2000_OFFSET_21,
5043
        and BFD_RELOC_IQ2000_UHI16.
5044
        * targets.c (bfd_elf32_iq2000_vec): Declare.
5045
        (bfd_target_vector): Add bfd_elf32_iq2000_vec.
5046
        * elf.c (prep_headers): Set e_machine to EM_IQ2000.
5047
        * cpu-iq2000.c: New file.
5048
        * elf32-iq2000.c: Likewise.
5049
        * libbfd.h: Regenerate.
5050
        * bfd-in2.h: Likewise.
5051
 
5052
2003-01-02  Richard Sandiford  
5053
 
5054
        * elfxx-mips.c: Include libiberty.h.
5055
        (elf_mips_isa, _bfd_mips_elf_mach_extends_p): Remove.
5056
        (mips_set_isa_flags): New function, split out from...
5057
        (_bfd_mips_elf_final_write_processing): ...here.  Only call
5058
        mips_set_isa_flags if the EF_MIPS_MACH bits are clear.
5059
        (mips_mach_extensions): New array.
5060
        (mips_32bit_flags_p): New function.
5061
        (_bfd_mips_elf_merge_private_bfd_data): Rework architecture checks.
5062
        Use mips_32bit_flags_p to check if one binary is 32-bit and the
5063
        other is 64-bit.  When adopting IBFD's architecture, adopt the
5064
        bfd_mach as well as the flags.
5065
 
5066
2003-01-02  Nick Kelsey  
5067
 
5068
        * elf32-ip2k.c: Re-work of linker relaxation code for the ip2k to
5069
        fix internal errors, fix bad code generation, fix incorrect stabs
5070
        information, and improve ability to eliminate redundant page
5071
        instructions. Added code to ip2k_final_link_relocate to self-verify
5072
        the linker relaxation.  Fix formatting problems.
5073
 
5074
2002-12-30  Chris Demetriou  
5075
 
5076
        * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mipsisa32r2 case.
5077
        * archures.c (bfd_mach_mipsisa32r2): New define.
5078
        * bfd-in2.h: Regenerate.
5079
        * cpu-mips.c (I_mipsisa32r2): New enum value.
5080
        (arch_info_struct): Add entry for I_mipsisa32r2.
5081
        * elfxx-mips.c (elf_mips_isa, _bfd_elf_mips_mach)
5082
        (_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_32R2.
5083
        (_bfd_mips_elf_final_write_processing): Add
5084
        bfd_mach_mipsisa32r2 case.
5085
        (_bfd_mips_elf_merge_private_bfd_data): Handle merging of
5086
        binaries marked as using MIPS32 Release 2.
5087
 
5088
2002-12-30    Dmitry Diky 
5089
 
5090
        * Makefile.am: Add msp430 target.
5091
        * configure.in: Likewise.
5092
        * Makefile.in: Regenerate.
5093
        * configure: Regenerate.
5094
        * archures.c: Add msp430 architecture vector.
5095
        * config.bfd: Likewise.
5096
        * reloc.c: Add msp430 relocs.
5097
        * targets.c: Add msp320 target.
5098
        * cpu-msp430.c: New file: msp430 cpu detection.
5099
        * elf32-msp430.c: New file: msp430 reloc processing.
5100
        * bfd-in2.h: Regenerate.
5101
        * libbfd.h: Regenerate.
5102
 
5103
2002-12-28  Jakub Jelinek  
5104
 
5105
        * elf.c (elf_sort_sections): Don't reorder .tbss.
5106
        (assign_file_positions_for_segments): Only adjust off/voff
5107
        for increased alignment in PT_LOAD or PT_NOTE segment,
5108
        but adjust p_filesz for .tbss too.  in PT_LOAD consider
5109
        .tbss to have zero memory size.
5110
        (copy_private_bfd_data) [SECTION_SIZE]: Define.
5111
        [IS_CONTAINED_BY_VMA, IS_CONTAINED_BY_LMA]: Use it.
5112
        [INCLUDE_SECTION_IN_SEGMENT]: Only put SHF_TLS sections
5113
        into PT_TLS segment.  Never put SHF_TLS sections in
5114
        segments other than PT_TLS or PT_LOAD.
5115
 
5116
        * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Clear .plt
5117
        sh_entsize.
5118
 
5119
2002-12-23  DJ Delorie  
5120
 
5121
        * coff64-rs6000.c (xcoff64_ppc_relocate_section): Fix logic reversal.
5122
 
5123
2002-12-23  Alan Modra  
5124
 
5125
        * elflink.h (elf_link_output_extsym): Heed strip_discarded.
5126
 
5127
2002-12-23  Nick Clifton  
5128
 
5129
        * archures.c (bfd_arch_get_compatible): Add third parameter
5130
        'accept_unknowns'.  Only accept unknown format BFDs if
5131
        accept_unknowns is true, or if the format is "binary".
5132
        * bfd-in2.h: Regenerate.
5133
 
5134
2002-12-21  Nick Clifton  
5135
 
5136
        * coff-arm.c (coff_arm_relocate_section): Disable WINCE workaround
5137
        that subtracted 8 from pc relative relocations.
5138
 
5139
2002-12-20  Kazu Hirata  
5140
 
5141
        * coff-h8300.c: Fix comment typos.
5142
        * coffcode.h: Likewise.
5143
        * cpu-cris.c: Likewise.
5144
        * elf32-vax.c: Likewise.
5145
        * genlink.h: Likewise.
5146
        * linker.c: Likewise.
5147
        * som.c: Likewise.
5148
        * tekhex.c: Likewise.
5149
        * vms-misc.c: Likewise.
5150
 
5151
2002-12-20  DJ Delorie  
5152
 
5153
        * reloc.c: Add BFD_RELOC_XSTORMY16_12.
5154
        * libbfd.h: Regenerate.
5155
        * bfd-in2.h: Regenerate.
5156
        * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_12.
5157
        (xstormy16_reloc_map): Add R_XSTORMY16_12.
5158
 
5159
2002-12-19  Kazu Hirata  
5160
 
5161
        * doc/bfdint.texi: Fix typos.
5162
 
5163
2002-12-20  Paul Eggert  
5164
 
5165
        Port to POSIX 1003.1-2001.
5166
        * acinclude.m4 (AM_INSTALL_LIBBFD): Do not rely on "test -o".
5167
        * configure.in (build-warnings): Likewise.
5168
        (Horrible hacks to build DLLs on Windows): Do not rely on "tail -1".
5169
        * aclocal.m4: Regenerate.
5170
        * config.in: Regenerate.
5171
        * configure: Regenerate.
5172
 
5173
2002-12-19  Alan Modra  
5174
 
5175
        * coff-h8300.c: Include libiberty.h.
5176
        (h8300_reloc16_extra_cases): Check the hash table creator before
5177
        referencing h8300 specific fields.  Stash the hash table pointer
5178
        in a local var.  Comment typo fixes.
5179
        (h8300_bfd_link_add_symbols): Likewise.
5180
 
5181
        * reloc.c (struct reloc_howto_struct): Revise src_mask and
5182
        dst_mask comments.
5183
        * bfd-in2.h: Regenerate.
5184
 
5185
2002-12-18  Alan Modra  
5186
 
5187
        * elf32-ppc.c (ppc_elf_relocate_section): Reorganize dynamic reloc
5188
        code a little.  Comment on dynamic relocs against section symbols.
5189
 
5190
2002-12-17  Roger Sayle  
5191
 
5192
        * configure.host (ia64-*-hpux*): Support 64 bit targets using
5193
        the HP compiler's "long long".
5194
 
5195
2002-12-16  Andrew MacLeod  
5196
 
5197
        * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_LO16
5198
        and R_XSTORMY16_HI16) howto entries.
5199
        (xstormy16_reloc_map): Map R_XSTORMY16_{LO,HI}16 to BFD_RELOC_{LO,HI}16.
5200
        (xstormy16_info_to_howto_rela): Use R_XSTORMY16_GNU_VTINHERIT to
5201
        determine the start of the second reloc table.
5202
 
5203
2002-12-16  Nathan Tallent  
5204
 
5205
        * ecofflink.c: Fix the reading of the debugging information
5206
        of Tru64/Alpha binaries that are produced by recent Compaq
5207
        compilers.
5208
        (mk_fdrtab): Fix error in creating the FDR (file descriptor)
5209
        table.
5210
        (lookup_line): Because of the strange information sometimes
5211
        generated by Compaq's recent compilers, change how the FDR
5212
        table is searched so that PDRs (procedure descriptors) are
5213
        correctly found.  Note that this change is really more of a hack;
5214
        however, I have included extensive documentation as to why
5215
        this is the best solution short of an extensive rewrite or
5216
        another hack.
5217
        (fdrtab_lookup): Add comments to explain the algorithm.
5218
 
5219
2002-12-12  Alexandre Oliva  
5220
 
5221
        * elf-m10300.c (elf32_mn10300_link_hash_newfunc): Reorder
5222
        initializers to match struct declaration.
5223
 
5224
2002-12-12  Alan Modra  
5225
 
5226
        * dwarf2.c (comp_unit_contains_address): Comment typo fix.
5227
        * elf.c (get_program_header_size): Likewise.
5228
        * elf32-m32r.c (m32r_elf_lo16_reloc): Likewise.
5229
        (m32r_elf_generic_reloc): Likewise.
5230
        * elf32-ppc.c (ppc_elf_howto_init): Likewise.
5231
        * elflink.h (elf_bfd_discard_info): Likewise.
5232
 
5233
2002-12-12  Alan Modra  
5234
 
5235
        * elf32-i386.c (elf_i386_finish_dynamic_sections): Add output_offset
5236
        to DT_JMPREL.  Use srelplt input section size for DT_PLTRELSZ and
5237
        DT_RELSZ adjustment, not output section.  Avoid writing tags when
5238
        unchanged.  Don't assume linker script is sane, adjust DT_REL too.
5239
        * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Just use raw
5240
        size of srelplt for DT_PLTRELSZ.  Use srelplt input section size for
5241
        DT_RELASZ adjustment, not output section.  Avoid writing tags when
5242
        unchanged.  Adjust DT_RELA.
5243
        * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Tweaks for better
5244
        formatting.  Avoid writing tags when unchanged.  Adjust DT_RELA.
5245
 
5246
2002-12-12  Alexandre Oliva  
5247
 
5248
        * elfxx-mips.c (mips_elf_calculate_relocation): Don't divide
5249
        addend by 4.
5250
 
5251
2002-12-12  Alexandre Oliva  
5252
 
5253
        * elfxx-mips.c (struct mips_got_entry): New.
5254
        (struct mips_got_info): Added got_entries field.
5255
        (mips_elf_got_entry_hash, mips_elf_got_entry_eq): New functions.
5256
        (mips_elf_local_got_index, mips_elf_got_page,
5257
        mips_elf_got16_entry): Re-implement in terms of new...
5258
        (mips_elf_create_local_got_entry): Rewrite to use got_entries.
5259
        Change return type.
5260
        (mips_elf_highest): Warning clean-up.
5261
        (mips_elf_create_got_section): Initialize got_entries.
5262
        (_bfd_mips_elf_check_relocs): Use got_entries to estimate
5263
        local got size.
5264
        (_bfd_mips_elf_size_dynamic_sections): Do not account for
5265
        GOT_PAGE entries, since we now reuse GOT16 entries.
5266
 
5267
2002-12-10  Jason Thorpe  
5268
 
5269
        * aoutx.h (set_section_contents): Allow an otherwise unrepresentable
5270
        read-only section that lies after .text and before .data to be
5271
        written into the output file and included in a_text.
5272
        (translate_to_native_sym_flags): If an otherwise unrepresentable
5273
        section was merged with .text, convert its symbols to N_TEXT
5274
        symbols.
5275
        * libaout.h (aout_section_merge_with_text_p): New macro.
5276
 
5277
2002-12-08  Alan Modra  
5278
 
5279
        * bfd-in.h: Comment typo fix.  Formatting.
5280
        * bfd-in2.h: Regenerate.
5281
        * coff64-rs6000.c (xcoff64_openr_next_archived_file): Warning fix.
5282
        * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): Prototype.
5283
        * elf64-mmix.c (mmix_dump_bpo_gregs): Warning fix.
5284
 
5285
2002-12-05  Richard Henderson  
5286
 
5287
        * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21BI.
5288
        Only send PCREL21B though the plt.  Fix installed reloc type.
5289
        (elfNN_ia64_relocate_section): Give error for dynamic reloc
5290
        against PCREL22 or PCREL64I; clean up error messages for
5291
        branch relocs.
5292
 
5293
2002-12-04  Kevin Buettner  
5294
 
5295
        * elf64-mips.c (elf64_mips_grok_prstatus, elf64_mips_grok_psinfo):
5296
        New functions.
5297
        (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define.
5298
 
5299
2002-12-04  David Mosberger  
5300
 
5301
        * cpu-ia64-opc.c: Add operand constant "ar.csd".
5302
 
5303
2002-12-04  H.J. Lu 
5304
 
5305
        * elfxx-ia64.c (get_local_sym_hash): Use section ID instead of
5306
        BFD address when constructing local name.
5307
 
5308
2002-12-04  Andreas Schwab  
5309
 
5310
        * elf32-m68k.c (struct elf_m68k_link_hash_table): Add sym_sec
5311
        member.
5312
        (elf_m68k_link_hash_table_create): Initialize it.
5313
        (elf_m68k_check_relocs): Handle symbols that are forced to be
5314
        local due to visibility changes.
5315
        (elf_m68k_adjust_dynamic_symbol): Likewise.
5316
        (elf_m68k_size_dynamic_sections): Likewise.
5317
        (elf_m68k_discard_copies): Likewise.
5318
        (elf_m68k_relocate_section): Likewise.
5319
 
5320
2002-12-04  Alan Modra  
5321
 
5322
        * elf64-ppc.c (ppc64_elf_edit_opd): Correct typo.
5323
 
5324
2002-12-04  Alan Modra  
5325
 
5326
        * srec.c (srec_write_symbols): Restore '$' prefix to address
5327
        accidentally removed in 2002-04-04 change.
5328
        (srec_get_symtab): Use 0 instead of `(long) FALSE'.
5329
 
5330
2002-12-03  Nick Clifton  
5331
 
5332
        * elf32-ppc.c (apuinfo_list_init): New function.
5333
        (apuinfo_list_add): New function: Add a value to the list.
5334
        (apuinfo_list_length): New function: Return the number of
5335
        values on the list.
5336
        (apuinfo_list_element): New function: Return a value on the
5337
        list.
5338
        (apuinfo_list_finish): New function: Free the resources used
5339
        by the list.
5340
        (ppc_elf_begin_write_processing): New function.  Scan the
5341
        input bfds for apuinfo sections.
5342
        (ppc_elf_write_section): New function: Delay the creation of
5343
        the contents of an apuinfo section in an output bfd.
5344
        (ppc_elf_final_write_processing): New function.  Create the
5345
        contents of an apuinfo section in an output bfd.
5346
        (elf_backend_begin_write_processing): Define.
5347
        (elf_backend_final_write_processing): Define.
5348
        (elf_backend_write_section): Define.
5349
 
5350
2002-12-03  Richard Henderson  
5351
 
5352
        * cpu-ia64-opc.c (elf64_ia64_operands): Add ldxmov entry.
5353
 
5354
2002-12-01  Stephane Carrez  
5355
 
5356
        Fix PR savannah/1417:
5357
        * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Don't adjust
5358
        branch if it goes to the start of the deleted region.
5359
 
5360
2002-12-01  Stephane Carrez  
5361
 
5362
        * bfd-in2.h (bfd_mach_m6812): Rebuild.
5363
        * archures.c (bfd_mach_m6812_default, bfd_mach_m6812,
5364
        bfd_mach_m6812s): Declare.
5365
 
5366
        * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): New function.
5367
        (_bfd_m68hc12_elf_set_private_flags): Call it.
5368
        (_bfd_m68hc12_elf_print_private_bfd_data): Report processor version.
5369
        (_bfd_m68hc12_elf_merge_private_bfd_data): Merge the flags and
5370
        report microcontroller incompatibilities (HC12 vs HCS12).
5371
        (elf_backend_object_p): Update.
5372
 
5373
2002-11-30  Alan Modra  
5374
 
5375
        * bfd-in.h (TRUE_FALSE_ALREADY_DEFINED, BFD_TRUE_FALSE): Delete.
5376
        (enum bfd_boolean, boolean): Delete.
5377
        (bfd_boolean): Typedef to an int.
5378
        (FALSE, TRUE): Define.
5379
        * aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c, aout-cris.c,
5380
        aout-encap.c, aout-ns32k.c, aout-target.h, aout-tic30.c, aoutf1.h,
5381
        aoutx.h, archive.c, archive64.c, archures.c, bfd-in.h, bfd.c, bfdwin.c,
5382
        binary.c, bout.c, cache.c, cisco-core.c, coff-a29k.c, coff-alpha.c,
5383
        coff-apollo.c, coff-arm.c, coff-aux.c, coff-h8300.c, coff-h8500.c,
5384
        coff-i386.c, coff-i860.c, coff-i960.c, coff-ia64.c, coff-m68k.c,
5385
        coff-m88k.c, coff-mcore.c, coff-mips.c, coff-or32.c, coff-ppc.c,
5386
        coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c, coff-tic30.c,
5387
        coff-tic4x.c, coff-tic54x.c, coff-tic80.c, coff-w65.c, coff-we32k.c,
5388
        coff-z8k.c, coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c,
5389
        corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c,
5390
        cpu-cris.c, cpu-d10v.c, cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c,
5391
        cpu-h8300.c, cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c,
5392
        cpu-i860.c, cpu-i960.c, cpu-ia64.c, cpu-ip2k.c, cpu-m10200.c,
5393
        cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c, cpu-m68hc12.c, cpu-m68k.c,
5394
        cpu-m88k.c, cpu-mcore.c, cpu-mips.c, cpu-mmix.c, cpu-ns32k.c,
5395
        cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c,
5396
        cpu-rs6000.c, cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c,
5397
        cpu-tic4x.c, cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c,
5398
        cpu-w65.c, cpu-we32k.c, cpu-xstormy16.c, cpu-z8k.c, dwarf1.c,
5399
        dwarf2.c, ecoff.c, ecofflink.c, efi-app-ia32.c, efi-app-ia64.c,
5400
        elf-bfd.h, elf-eh-frame.c, elf-hppa.h, elf-m10200.c, elf-m10300.c,
5401
        elf-strtab.c, elf.c, elf32-arc.c, elf32-arm.h, elf32-avr.c,
5402
        elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c, elf32-fr30.c,
5403
        elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c, elf32-hppa.h,
5404
        elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
5405
        elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c,
5406
        elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c,
5407
        elf32-pj.c, elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-sh64-com.c,
5408
        elf32-sh64.c, elf32-sparc.c, elf32-v850.c, elf32-vax.c,
5409
        elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c,
5410
        elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c,
5411
        elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c,
5412
        elfarm-oabi.c, elfcode.h, elfcore.h, elflink.c, elflink.h,
5413
        elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
5414
        elfxx-target.h, format.c, freebsd.h, genlink.h, hash.c, hp300hpux.c,
5415
        hppabsd-core.c, hpux-core.c, i386aout.c, i386linux.c, i386lynx.c,
5416
        i386mach3.c, i386msdos.c, i386os9k.c, ieee.c, ihex.c, irix-core.c,
5417
        libaout.h, libbfd-in.h, libbfd.c, libcoff-in.h, libecoff.h, libieee.h,
5418
        libnlm.h, liboasys.h, libpei.h, libxcoff.h, linker.c, lynx-core.c,
5419
        m68klinux.c, m68klynx.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c,
5420
        mmo.c, netbsd-core.c, netbsd.h, nlm.c, nlm32-alpha.c, nlm32-i386.c,
5421
        nlm32-ppc.c, nlm32-sparc.c, nlmcode.h, oasys.c, opncls.c, osf-core.c,
5422
        pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c, pe-mcore.c, pe-mips.c,
5423
        pe-sh.c, peXXigen.c, pef.c, pei-arm.c, pei-i386.c, pei-mcore.c,
5424
        pei-mips.c, pei-sh.c, peicode.h, ppcboot.c, ptrace-core.c, reloc.c,
5425
        reloc16.c, riscix.c, rs6000-core.c, sco5-core.c, section.c, simple.c,
5426
        som.c, som.h, sparclinux.c, sparclynx.c, srec.c, stabs.c, sunos.c,
5427
        syms.c, targets.c, tekhex.c, ticoff.h, trad-core.c, versados.c,
5428
        vms-gsd.c, vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h,
5429
        xcoff-target.h, xcofflink.c, xsym.c, xsym.h: Replace boolean with
5430
        bfd_boolean, true with TRUE, false with FALSE.  Simplify comparisons
5431
        of bfd_boolean vars with TRUE/FALSE.  Formatting.
5432
        * bfd-in2.h, libbfd.h, libcoff.h: Regenerate
5433
 
5434
2002-11-28  Alan Modra  
5435
 
5436
        * elf-bfd.h: Replace occurrences of Elf32_Internal_* and
5437
        Elf64_Internal_* with Elf_Internal_*.  Replace Elf_Internal_Rel
5438
        with Elf_Internal_Rela.
5439
        * elf-hppa.h, elf-m10200.c, elf-m10300.c, elf32-arc.c, elf32-arm.h,
5440
        elf32-avr.c, elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c,
5441
        elf32-fr30.c, elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c,
5442
        elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
5443
        elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c,
5444
        elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c,
5445
        elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-v850.c, elf32-vax.c,
5446
        elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c,
5447
        elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c,
5448
        elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c, elfarm-oabi.c,
5449
        elfcode.h, elflink.h, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c: Ditto.
5450
        * elf-hppa.h (elf_hppa_internal_shdr): Delete.  Use Elf_Internal_Shdr
5451
        throughout instead.
5452
        * elf.c (_bfd_elf_no_info_to_howto_rel): Delete.
5453
        * elfcode.h (elf_swap_reloca_in): Pass source operand as a bfd_byte *.
5454
        Remove INLINE keyword.
5455
        (elf_swap_reloc_in): Likewise.  Also clear r_addend.
5456
        (elf_swap_reloc_out, elf_swap_reloca_out): Pass destination operand
5457
        as a bfd_byte *.
5458
        (elf_write_relocs): Consolidate REL and RELA code.
5459
        (elf_slurp_reloc_table_from_section): Simplify REL code.
5460
        (NAME(_bfd_elf,size_info)): Populate reloc swap entries.
5461
        * elf-bfd.h (MAX_INT_RELS_PER_EXT_REL): Define.
5462
        * elflink.h (elf_link_read_relocs_from_section): Consolidate REL and
5463
        RELA code.
5464
        (elf_link_adjust_relocs): Likewise.  Don't malloc space for temp
5465
        reloc array, use a fixed size of MAX_INT_RELS_PER_EXT_REL.
5466
        (elf_link_output_relocs): Likewise.
5467
        (elf_reloc_link_order): Likewise.
5468
        (elf_finish_pointer_linker_section): Likewise.
5469
        (struct elf_link_sort_rela): Remove union.
5470
        (elf_link_sort_cmp1): Update to suit.
5471
        (elf_link_sort_cmp2): Here too.
5472
        (elf_link_sort_relocs): Consolidate REL and RELA code.  Fix memory
5473
        over-allocation for int_rels_per_ext_rel != 1 case.
5474
        * elf32-arm.h: Update all bfd_elf32_swap_reloc_out calls.
5475
        * elf32-i386.c: Likewise.
5476
        * elf32-cris.c: Likewise for bfd_elf32_swap_reloca_out.
5477
        * elf32-hppa.c, elf32-i370.c, elf32-m68k.c, elf32-ppc.c, elf32-s390.c,
5478
        elf32-sh.c, elf32-vax.c, elfxx-mips.c: Likewise.
5479
        * elf64-alpha.c: Likewise for bfd_elf64_swap_reloca_out.
5480
        * elf64-hppa.c, elf64-mips.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c,
5481
        elf64-sparc.c, elf64-x86-64.c: Likewise.
5482
        * elfxx-ia64.c: Likewise for bfd_elfNN_swap_reloca_out.
5483
        * elfxx-mips.c (sort_dynamic_relocs): Likewise for
5484
        bfd_elf32_swap_reloc_in.
5485
 
5486
        * elf32-arm.h: Update elf32_arm_info_to_howto calls.
5487
        * elf32-mips.c: Likewise for mips_info_to_howto_rel.
5488
        (mips_elf64_swap_reloc_in): Zero r_addend.
5489
        (mips_elf64_be_swap_reloc_in): Likewise.
5490
        (mips_elf64_slurp_one_reloc_table): Simplify.
5491
 
5492
        * elf64-alpha.c (alpha_elf_size_info): Populate reloc swap entries.
5493
        * elf64-hppa.c (hppa64_elf_size_info): Likewise.
5494
        * elf64-sparc.c (sparc64_elf_size_info): Likewise.
5495
 
5496
2002-11-28  Kaz Kojima  
5497
 
5498
        * elf32-sh.c (sh_elf_relocate_section): Don't complain about
5499
        unresolved debugging relocs in dynamic applications.
5500
        * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
5501
 
5502
2002-11-26  Alan Modra  
5503
 
5504
        * elf-eh-frame.c (ENSURE_NO_RELOCS): Disregard R_*_NONE relocs.
5505
        (_bfd_elf_discard_section_eh_frame): Don't discard duplicate CIEs
5506
        on a relocatable link.  Comment typos.
5507
        * elf.c (_bfd_elf_link_hash_newfunc): Assign elements of structure
5508
        in the order they are declared.  Clear elf_hash_value too.
5509
        (_bfd_elf_link_hash_table_init): Likewise assign in order.  Clear
5510
        eh_info and tls_segment.
5511
        * elflink.h (elf_link_input_bfd ): Keep reloc offsets
5512
        sorted when discarding relocs by turning them into R_*_NONE.
5513
 
5514
        * libbfd.c (warn_deprecated): Comment spelling.
5515
        * po/SRC-POTFILES.in: Regenerate.
5516
 
5517
2002-11-21  Richard Henderson  
5518
 
5519
        * elflink.h (elf_link_add_object_symbols): Don't overwrite the
5520
        arch's st_other bits when merging visibilities.
5521
        (elf_link_output_extsym): Tidy clearing of visibility field.
5522
 
5523
2002-11-21  Alan Modra  
5524
 
5525
        * coff-mcore.c (SWAP_IN_RELOC_OFFSET): Define.
5526
        (SWAP_OUT_RELOC_OFFSET): Define.
5527
 
5528
2002-11-20  Alexandre Oliva  
5529
 
5530
        * elf.c (_bfd_elf_link_hash_table_init): Make sure
5531
        can_refcount is properly extended to the type of
5532
        init_refcount.
5533
 
5534
2002-11-19  Alexandre Oliva  
5535
 
5536
        * elfxx-mips.c (MIPS_RELOC_RELA_P): New macro.
5537
        (_bfd_mips_elf_relocate_section): Use it.
5538
 
5539
        * elfxx-mips.c (MNAME): New macro.
5540
        (_bfd_mips_elf_check_relocs): Use it.
5541
        (_bfd_mips_elf_discard_info): Likewise.
5542
        (_bfd_mips_elf_final_link): Likewise.
5543
 
5544
2002-11-19  Alan Modra  
5545
 
5546
        * elf64-ppc.c (ppc64_elf_edit_opd): When deleting relocs, adjust
5547
        rel_hdr.sh_size too.
5548
 
5549
2002-11-18  Klee Dienes  
5550
 
5551
        * Makefile.am (BFD32_LIBS): Add bfdwin.lo, bfdio.lo.
5552
        (BFD32_LIBS_CFILES): Add bfdwin.c, bfdio.c.
5553
        (BFD_H_FILES): Add bfdwin.c, bfdio.c.
5554
        (LIBBFD_H_FILES): Add bfdwin.c, bfdio.c.
5555
        Add dependencies for bfdwin.c, bfdio.c.
5556
        * bfd.c: Remove bfd_get_mtime, bfd_get_size.
5557
        * libbfd.c: Remove real_read, bfd_bread, _bfd_window_internal,
5558
        bfd_init_window, bfd_free_window, bfd_get_file_window, bfd_bwrite,
5559
        bfd_tell, bfd_flush, bfd_stat, bfd_seek.
5560
        * bfdio.c: New file.  Contains real_read, bfd_bread, bfd_write,
5561
        bfd_tell, bfd_flush, bfd_stat, bfd_seek, bfd_ge_mtime,
5562
        bfd_get_size (moved from libbfd.c and bfd.c).
5563
        * bfdwin.c New file.  Contains _bfd_window_internal,
5564
        bfd_init_window, bfd_free_window, bfd_get_file_window (moved from
5565
        libbfd.c and bfd.c).
5566
        * po/SRC-POTFILES.in: Regenerate.
5567
        * po/bfd.pot: Regenerate.
5568
        * libbfd.h: Regenerate.
5569
        * bfd-in2.h: Regenerate.
5570
        * aclocal.m4: Regenerate.
5571
        * Makefile.in: Regenerate.
5572
        * configure: Regenerate.
5573
 
5574
2002-11-18  Klee Dienes  
5575
 
5576
        * bfd.c (bfd_preserve_save): Don't zero BFD_IN_MEMORY.
5577
 
5578
2002-11-15  Kazu Hirata  
5579
 
5580
        * coff-h8300.c (h8300_reloc16_estimate): Do not optimize away
5581
        jsr after a short jump.
5582
        * elf32-h8300.c (elf32_h8_relax_section): Likewise.
5583
 
5584
2002-11-15  Klee Dienes  
5585
 
5586
        * pef.c (bfd_pef_convert_architecture): Move declaration of
5587
        ARCH_POWERPC and ARCH_M68K to the start of the function.
5588
 
5589
2002-11-14  Svein E. Seldal  
5590
 
5591
        * coff-tic4x.c (tic4x_howto_table): Formatting fixup
5592
 
5593
2002-11-14  Hans-Peter Nilsson  
5594
 
5595
        * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs):
5596
        For bpo_gregs_section->contents, allocate _raw_size, not
5597
        _cooked_size.
5598
 
5599
2002-11-13  Klee Dienes  
5600
 
5601
        * config.bfd: Add entries for powerpc-*-darwin and cousins.
5602
 
5603
2002-11-13  H.J. Lu 
5604
 
5605
        * elfcode.h (elf_object_p): Don't restore abfd->arch_info.
5606
 
5607
2002-11-13  Klee Dienes  
5608
            Alan Modra  
5609
 
5610
        * bfd.c (struct bfd_preserve): New.
5611
        (bfd_preserve_save): New function.
5612
        (bfd_preserve_restore): Ditto.
5613
        (bfd_preserve_finish): Ditto.
5614
        * bfd-in2.h: Regenerate.
5615
        * mach-o.c: Formatting.
5616
        (bfd_mach_o_scan_read_symtab_symbol): Make "value" unsigned.
5617
        (bfd_mach_o_object_p): Use bfd_preserve_save/restore/finish.
5618
        (bfd_mach_o_core_p): Ditto.
5619
        (bfd_mach_o_scan): Pass in mdata.
5620
        * mach-o.h (bfd_mach_o_scan): Update prototype.
5621
        * pef.c: Formatting.
5622
        (bfd_pef_object_p): Use bfd_preserve_save/restore/finish.
5623
        (bfd_pef_xlib_object_p): Ditto.
5624
        (bfd_pef_scan): Pass in mdata.  Move version check to bfd_pef_object_p.
5625
        * pef.h (bfd_pef_scan): Update prototype.
5626
        * xsym.c: Formatting, K&R fixes.
5627
        (bfd_sym_object_p): Use bfd_preserve_save/restore/finish.
5628
        (bfd_sym_scan): New function split out from bfd_sym_object_p.
5629
        * xsym.h (bfd_sym_scan): Declare.
5630
        * elfcode.h (elf_object_p): Use bfd_preserve_save/restore/finish.
5631
        * elfcore.h (elf_core_file_p): Likewise.
5632
        * targets.c (_bfd_target_vector): Revert 2002-11-08 change.
5633
 
5634
2002-11-12  Nick Clifton  
5635
 
5636
        * po/da.po: Updated Danish translation.
5637
 
5638
2002-11-12  Alan Modra  
5639
 
5640
        * elflink.h (elf_link_add_object_symbols): Optimize stabs for
5641
        relocatable link too.
5642
        (elf_link_input_bfd): When emitting relocs, adjust offsets for
5643
        eh_frame and stab sections.  Zap deleted relocs.
5644
        (elf_reloc_symbol_deleted_p): Return true for zero r_symndx.
5645
        (elf_bfd_discard_info): Run for relocatable link too.
5646
        * elf64-ppc.c (ppc64_elf_edit_opd): Rename from edit_opd.  Make global.
5647
        Handle ld -r case.
5648
        (ppc64_elf_size_dynamic_sections): Don't call edit_opd from here.
5649
        * elf64-ppc.h (ppc64_elf_edit_opd): Declare.
5650
 
5651
        * elf-bfd.h (struct cie_header): Move from elf_eh-frame.c.
5652
        (struct cie, struct eh_cie_fde, struct eh_frame_sec_info): Likewise.
5653
        (struct eh_frame_array_ent, struct eh_frame_hdr_info): Likewise.
5654
        (enum elf_link_info_type): Remove ELF_INFO_TYPE_EH_FRAME_HDR.
5655
        (struct eh_frame_hdr_info): Add "hdr_sec", remove "split".
5656
        (struct elf_link_hash_table): Add eh_info.
5657
        (struct elf_obj_tdata): Change eh_frame_hdr to an asection *.
5658
        (_bfd_elf_discard_section_eh_frame): Update prototype.
5659
        (_bfd_elf_discard_section_eh_frame_hdr): Likewise.
5660
        (_bfd_elf_write_section_eh_frame): Likewise.
5661
        (_bfd_elf_write_section_eh_frame_hdr): Likewise.
5662
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Remove "ehdrsec"
5663
        param.  Get "hdr_info" from link hash table.
5664
        (_bfd_elf_discard_section_eh_frame_hdr): Remove "sec" param.  Get
5665
        header section from link hash table.  Save header section to elf_tdata.
5666
        (_bfd_elf_maybe_strip_eh_frame_hdr): Remove local "sec".  Use
5667
        header section from link hash table.  Don't alloc hdr_info.  Clear
5668
        hdr_sec instead of setting "strip".
5669
        (_bfd_elf_eh_frame_section_offset): Formatting.
5670
        (_bfd_elf_write_section_eh_frame): Remove "ehdrsec", add "info" param.
5671
        Get header section from link hash table.
5672
        (_bfd_elf_write_section_eh_frame_hdr): Remove "sec", add "info" param.
5673
        Get header section from link hash table.
5674
        * elf.c (map_sections_to_segments): Use cached eh_frame_hdr.
5675
        (get_program_header_size): Likewise.
5676
        (_bfd_elf_section_offset): Formatting.
5677
        * elflink.h (elf_link_create_dynamic_sections): Stash eh frame header
5678
        section pointer in link hash table.
5679
        (elf_bfd_final_link): Adjust _bfd_elf_write_section_eh_frame_hdr
5680
        and _bfd_elf_write_section_eh_frame calls.  Update comment about
5681
        eh_frame entries.
5682
        (elf_bfd_discard_info): Adjust _bfd_elf_discard_section_eh_frame and
5683
        _bfd_elf_discard_section_eh_frame_hdr calls.  Remove "ehdr".
5684
 
5685
        * po/SRC-POTFILES.in: Regenerate.
5686
 
5687
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't zero
5688
        relocs for discarded FDEs.  Remove dead code.
5689
        (_bfd_elf_write_section_eh_frame_hdr): Remove dead code.
5690
        * elflink.h (elf_bfd_discard_info): Don't save edited relocs.
5691
        Tidy conditions under which stabs are edited.  Formatting.
5692
        * elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows
5693
        from discarded relocs.
5694
        * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Add reloc output
5695
        section adjustments after testing magic values.
5696
 
5697
2002-11-12  Thomas Moestl 
5698
 
5699
        * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Correct
5700
        references to large plt symbols.
5701
 
5702
2002-11-12  Klee Dienes  
5703
 
5704
        * mach-o.c (bfd_mach_o_scan_read_thread): Don't re-use 'i' when
5705
        looking for an unused section name.
5706
 
5707
2002-11-11  Kazu Hirata  
5708
 
5709
        * coff-h8300.c: Fix formatting.
5710
        * elf32-h8300.c: Likewise.
5711
        * reloc16.c: Likewise.
5712
 
5713
2002-11-09  Jeroen Dobbelaere  
5714
 
5715
        * elf32-arm.h (elf32_arm_size_dynamic_sections): Don't strip output
5716
        section when dynamic section unused;  _bfd_strip_section_from_output
5717
        instead.
5718
 
5719
2002-11-08  Alan Modra  
5720
 
5721
        * targets.c (_bfd_target_vector): Disable pef_vec, pef_xlib_vec
5722
        and sym_vec.
5723
 
5724
        * dwarf2.c: Revert last change.
5725
 
5726
2002-11-07  Michal Ludvig  
5727
 
5728
        * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info,
5729
        _bfd_dwarf2_find_nearest_line): Use
5730
        bfd_simple_get_relocated_section_contents() instead of
5731
        bfd_get_section_contents().
5732
        * reloc.c (bfd_perform_relocation): Add sanity check.
5733
        * simple.c (simple_get_relocated_section_contents): If the section
5734
        does not have any relocs associated with it, just return the
5735
        unadjusted contents.
5736
 
5737
2002-11-07  Hans-Peter Nilsson  
5738
 
5739
        * elf32-cris.c (cris_elf_relocate_section) 
5740
        case R_CRIS_32_GOT>: Correct test for filling in constant .got
5741
        contents, enabling for a non-DSO, for symbols defined in the
5742
        program with --export-dynamic.
5743
 
5744
2002-11-07  Alan Modra  
5745
 
5746
        * elf64-ppc.c: Comment typo fixes.
5747
        (ppc64_elf_merge_private_bfd_data): Allow BFD_ENDIAN_UNKNOWN input.
5748
 
5749
2002-11-07  Nick Clifton  
5750
 
5751
        * po/da.po: Updated Danish translation.
5752
 
5753
2002-11-06  Alexandre Oliva  
5754
 
5755
        * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Generate
5756
        exactly three internal relocs per external reloc.  Set reloc_count
5757
        to the external reloc count.
5758
 
5759
2002-11-06  Klee Dienes  
5760
 
5761
         * coff-stgo32.c (stub_bytes): Mark as const.
5762
         Fix comment formatting.
5763
 
5764
2002-11-06  Klee Dienes  
5765
 
5766
        * Makefile.am (BFD32_BACKENDS): Add mach-o.lo, pef.lo, and
5767
        xsym.lo.
5768
        (BFD32_BACKENDS_CFILES): Add mach-o.c, pef.c, and xsym.c.
5769
        (SOURCE_HFILES): Add mach-o.h, pef.h, pef-traceback.h, xsym.h
5770
        * archures.c (enum bfd_architecture): Add bfd_arch_m98k.
5771
        * bfd.c (struct bfd): Add private data for mach-o, pef, and sym.
5772
        * targets.c (enum bfd_flavour): Add flavours for mach-o, pef, and
5773
        sym.
5774
        (_bfd_target_vector): Add target vectors for mach-o, pef, and sym.
5775
        * Makefile.in: Regenerate.
5776
        * doc/Makefile.in: Regenerate.
5777
        * bfd-in2.h: Regenerate.
5778
        * xsym.c: New file.  Contains support for the Apple/Metrowerks
5779
        xSYM debugging format.
5780
        * xsym.h: New file.
5781
        * pef.c: New file.  Contains support for the Apple Code Fragment
5782
        Manager Preferred Executable Format
5783
        * pef.h: New file.
5784
        * pef-traceback.h: New file.  Contains support for parsing PowerPC
5785
        traceback tables as used by PEF executables (and perhaps other
5786
        systems as well).
5787
        * mach-o.c: New file.  Contains support for the Mach-O object file
5788
        format.
5789
        * mach-o.h: New file.
5790
        * mach-o-target.c: New file.  Declares the mach-o targets
5791
        themselves.  Included three times by mach-o.c; each time with a
5792
        different set of macros set.
5793
 
5794
2002-11-06  Graeme Peterson  
5795
 
5796
        * Makefile.am: Remove entries for elf32-qnx.[ch].
5797
        * Makefile.in: Regenerate.
5798
        * config.bfd: Change arm-nto to use bfd_elf32_{big|little}arm_vec,
5799
        ppc-nto to use bfd_elf32_powerpc{le}_vec, sh-nto to use
5800
        bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec.
5801
        * configure.in: Remove support for bfd_elf32_sh{l}qnx_vec,
5802
        bfd_elf32_powerpc{le}qnx_vec, bfd_elf32_{big|little}armqnx_vec,
5803
        and bfd_elf32_i386qnx_vec, and removed elf32-qnx.lo from other targets.
5804
        bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec.
5805
        * configure: Regenerate.
5806
        * elf32-qnx.c: Remove.
5807
        * elf32-qnx.h: Remove.
5808
        * elf.c: Remove calls to QNX specific set_nonloadable_filepos,
5809
        is_contained_by_filepos, and copy_private_bfd_data_p.
5810
        * elf-bfd.h (struct elf_backend_data): Remove set_nonloadable_filepos,
5811
        is_contained_by_filepos, and copy_private_bfd_data_p.
5812
        * elf32-i386.c: Remove QNX extended bfd support.
5813
        * elf32-ppc.c: Remove QNX extended bfd support.
5814
        * elf32-sh.c: Remove QNX extended bfd support.
5815
        * elfarm-nabi.c: Remove QNX extended bfd support.
5816
        * targets.c: Remove qnx vectors.
5817
        * elfxx-target.h (elf_backend_set_nonloadable_filepos): Remove
5818
        (elf_backend_is_contained_by_filepos): Remove.
5819
        (elf_backend_copy_private_bfd_data_p): Remove.
5820
        * po/SRC-POTFILES.in: Regenerate.
5821
 
5822
2002-11-06  David O'Brien  
5823
            Alan Modra  
5824
 
5825
        * elf64-sparc.c (sparc64_elf_relocate_section): Adjust addend of
5826
        dynamic relocs against section symbols for the output section vma.
5827
 
5828
2002-11-05  Alan Modra  
5829
 
5830
        * elf32-arm.h (t2a1_push_insn, t2a2_ldr_insn, t2a3_mov_insn,
5831
        t2a4_bx_insn, t2a5_pop_insn, t2a6_bx_insn): Remove.
5832
 
5833
2002-11-05  Kaz Kojima  
5834
            Alan Modra  
5835
 
5836
        * config.bfd (sh-*-linux*): Use bfd_elf*_sh64*lin_vec as sh64
5837
        vectors in target_selvecs.
5838
        (shle-*-netbsdelf*): Use bfd_elf*_sh64*nbsd_vec as sh64 vectors
5839
        in target_selvecs.
5840
        (sh-*-netbsdelf*): Likewise.
5841
        * configure.in (assocvecs): New variable.  Handle assocvecs like
5842
        selvecs.
5843
        * configure: Regenerate.
5844
        * format.c (bfd_check_format_matches): Store bfd_target pointers
5845
        in matching_vector instead of target names.  Select first target
5846
        from bfd_associated_vector that matches a list of ambiguous targets.
5847
        * targets.c (_bfd_associated_vector): New array.
5848
        (bfd_associated_vector): New variable.
5849
        (_bfd_target_vector): Add bfd_elf*_sh64*lin_vec.
5850
        * libbfd-in.h (bfd_associated_vector): Declare.
5851
        * libbfd.h: Regenerate.
5852
 
5853
2002-11-05  Elias Athanasopoulos  
5854
 
5855
        * vms-gsd.c (_bfd_vms_write_gsd): Check that symbol->udata.p is
5856
        non-NULL before dereferencing.
5857
 
5858
2002-11-04  Kaz Kojima  
5859
 
5860
        * vms.c (vms_object_p): Restore the start address when returning
5861
        NULL.
5862
 
5863
2002-11-04  Alan Modra  
5864
            Hans-Peter Nilsson  
5865
 
5866
        * elflink.h (struct elf_final_link_info): Add shndxbuf_size.
5867
        (elf_bfd_final_link): Don't bother zeroing symtab_hdr fields.
5868
        Set up a larger symshndxbuf, and write it out.  Free it on
5869
        exit rather than freeing symbuf twice.  Correct section index
5870
        on output section symbol loop.
5871
        (elf_link_output_sym): Accumulate symbol extension section
5872
        indices, reallocating symshndxbuf rather than writing it out.
5873
        (elf_link_flush_output_syms): Don't flush symshndxbuf.
5874
        * elf.c (assign_section_numbers): Init i_shdrp to all zero.
5875
        Use bfd_zalloc to clear i_shdrp[0] too.
5876
 
5877
2002-11-03  Stephen Clarke 
5878
 
5879
         * elf32-sh64-com.c (sh64_address_in_cranges): Use
5880
        _raw_size of cranges section if _cooked_size not yet set.
5881
 
5882
2002-11-03  Hans-Peter Nilsson  
5883
 
5884
        * elf32-v850.c (v850_elf_relax_delete_bytes): Correct parameters
5885
        for bfd_elf32_swap_symbol_out.
5886
 
5887
2002-10-31  David O'Brien  
5888
 
5889
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't mix
5890
        signed and unsigned in comparison.
5891
 
5892
2002-10-30  Daniel Jacobowitz  
5893
 
5894
        * coffcode.h: Remove extraneous '\'.
5895
 
5896
2002-10-28  H.J. Lu 
5897
 
5898
        * Makefile.am (targets.lo): Depend on Makefile instead of
5899
        config.status.
5900
        (archures.lo): Likewise.
5901
        * Makefile.in: Regenerated.
5902
 
5903
2002-10-25  Jason Thorpe  
5904
 
5905
        * config.bfd (mips*el-*-netbsd*, mips*-*-netbsd*): Add
5906
        bfd_elf64_bigmips_vec and bfd_elf64_littlemips_vec to
5907
        targ_selvecs.
5908
 
5909
2002-10-25  Jim Wilson  
5910
 
5911
        * elf64-sh64.c (sh_elf64_relocate_section): Call
5912
        _bfd_elf_rela_local_sym.  Handle relocs against STT_SECTION symbol
5913
        of SHF_MERGE section.
5914
 
5915
2002-10-25  Hans-Peter Nilsson  
5916
 
5917
        * simple.c: Correct placement of ATTRIBUTE_UNUSED.
5918
 
5919
2002-10-24  John David Anglin  
5920
 
5921
        * aoutx.h (NAME(aout,swap_ext_reloc_in)): Cast bytes->r_index to
5922
        unsigned int.  Cast RELOC_BASE10, RELOC_BASE13 and RELOC_BASE22 to
5923
        unsigned int.
5924
        (NAME(aout,final_link)): Cast enum used in assignment.
5925
        (aout_link_write_symbols): Cast enums in comparisons, int values to
5926
        boolean, enums in assignments to int.
5927
        (aout_link_input_section_std): Cast rel->r_index to unsigned int.
5928
        (aout_link_input_section_ext): Likewise.  Cast enums used in
5929
        comparisons with unsigned ints.
5930
        (aout_link_reloc_link_order): Cast enum to int in assignment.
5931
        * archive.c (_bfd_generic_read_ar_hdr_mag): Cast result of memchr
5932
        calls to char *.
5933
        * bfd-in.h (bfd_set_section_vma): Cast enum true to unsigned int in
5934
        assignment.
5935
        * bfd-in2.h (bfd_set_section_vma): Likewise.
5936
        * bfd.c (bfd_record_phdr): Cast enums in assignments.
5937
        * binary.c (bfd_alloc): Cast enum to long.
5938
        * coffgen.c (_bfd_coff_is_local_label_name): Cast return to boolean.
5939
        * dwarf2.c (read_abbrevs): Add casts to enum types.
5940
        (read_attribute_value): Likewise.
5941
        (arange_add): Cast result of bfd_zalloc call.
5942
        (comp_unit_contains_address): Return true and false.
5943
        (comp_unit_find_nearest_line): Cast return to boolean.
5944
        * format.c (bfd_check_format_matches, bfd_set_format): Likewise.
5945
        * gen-aout.c: define macro '_' if not defined.
5946
        * libbfd.c (bfd_realloc): Cast malloc and realloc to PTR.
5947
        (bfd_bwrite): Cast bfd_realloc to bfd_byte *.
5948
        (bfd_write_bigendian_4byte_int): Cast return to boolean.
5949
        (bfd_seek): Cast bfd_realloc to bfd_byte *.
5950
        (bfd_generic_is_local_label_name): Cast return to boolean.
5951
        * libcoff.h (_bfd_coff_adjust_symndx): Remove extraneous '\'.
5952
        * linker.c (_bfd_link_hash_newfunc): Cast bfd_hash_allocate result to
5953
        struct bfd_hash_entry *.
5954
        (_bfd_generic_link_hash_newfunc): likewise.
5955
        (_bfd_generic_final_link): Cast enum to unsigned int.
5956
        * merge.c (sec_merge_emit): Cast return to boolean.
5957
        (merge_strings): Add casts to const unsigned char *.
5958
        * reloc.c (bfd_get_reloc_code_name): Cast enums in comparison to int.
5959
        (bfd_generic_get_relocated_section_content): Cast enum to unsigned int.
5960
        * section.c (bfd_section_hash_newfunc): Cast bfd_hash_allocate result
5961
        to struct bfd_hash_entry *.
5962
        (bfd_set_section_content): Add cast to PTR in comparison.
5963
        * simple.c (simple_dummy_warning, simple_dummy_undefined_symbol,
5964
        simple_dummy_reloc_overflow, simple_dummy_reloc_dangerous,
5965
        simple_dummy_unattached_reloc,
5966
        bfd_simple_get_relocated_section_contents): Add K&R declarations and
5967
        function definitions.
5968
        * srec.c (S3Forced): Initialize to false.
5969
        (srec_get_symtab): Cast return value from bfd_alloc to asymbol *.
5970
        * stabs.c (_bfd_link_section_stabs): Cast enum to int in comparisons.
5971
        (_bfd_discard_section_stabs): Likewise.  Also cast return to boolean.
5972
        * syms.c (bfd_is_undefined_symclass): Cast return to boolean.
5973
        (_bfd_stab_section_find_nearest_line): Cast enum to bfd_byte in
5974
        comparisons.
5975
 
5976
2002-10-23  Jakub Jelinek  
5977
 
5978
        * elf64-alpha.c (elf64_alpha_check_relocs): Only put maybe_dynamic
5979
        relocs into shared lib non-allocated reloc sections.
5980
 
5981
2002-10-23  Nathan Tallent  
5982
 
5983
        * dwarf2.c (add_line_info): Ensure that the line_info_table is
5984
        sorted even when given an out-of-order line sequence.
5985
        (lookup_address_in_line_info_table): When an exact VMA match is
5986
        not found, return line information with the closest VMA.
5987
 
5988
2002-10-23 Ross Alexander 
5989
 
5990
        * elf64-hppa.c: Force DT_FLAGS to always be set.  Required by
5991
        HPUX 11.00 patch PHSS_26559.
5992
 
5993
2002-10-22  Alexandre Oliva  
5994
 
5995
        * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Don't move
5996
        the options section into a separate section unless IRIX 6
5997
        compatibility is enabled.
5998
 
5999
2002-10-22  Alexandre Oliva  
6000
 
6001
        * elflink.h (struct elf_link_sort_rela): Turn rel and rela
6002
        into arrays.
6003
        (elf_link_sort_cmp1, elf_link_sort_cmp2): Adjust.
6004
        (elf_link_sort_relocs): Likewise.  Take int_rels_per_ext_rel
6005
        into account.
6006
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Compose
6007
        R_MIPS_REL32 with R_MIPS64 if ABI_64_P.
6008
 
6009
2002-10-21  Graeme Peterson  
6010
 
6011
        * targets.c (_bfd_target_vector): Add missing qnx vectors.
6012
 
6013
2002-10-21  Alan Modra  
6014
 
6015
        * targets.c (bfd_target_list): Don't return the default target twice.
6016
 
6017
2002-10-21  Elias Athanasopoulos  
6018
 
6019
        * archive.c (_bfd_archive_bsd_update_armap_timestamp): Replace
6020
        perror with bfd_perror.
6021
 
6022
2002-10-19  H.J. Lu 
6023
 
6024
        * elflink.h (elf_link_add_object_symbols): Correctly handle
6025
        DT_RPATH and DT_RUNPATH.
6026
 
6027
2002-10-19  Mark Kettenis  
6028
 
6029
        * elf.c (elfcore_grok_note): Fix recognition on NT_PRXFPREG notes.
6030
 
6031
2002-10-17  Denis Chertykov  
6032
 
6033
        * elf32-ip2k.c (ELF_MACHINE_ALT1): Define alternate machine code
6034
        for ip2k port.
6035
 
6036
2002-10-17  Alan Modra  
6037
 
6038
        * elfxx-target.h (USE_REL): Don't define as 1.
6039
        * elf32-arm.h (USE_REL): Provide a default define of 0.
6040
        Use #if rather than #ifdef when testing USE_REL.
6041
        * elf32-m32r.c: Likewise.
6042
 
6043
        * elf32-arc.c (USE_REL): Define as 1.
6044
        * elf32-d10v.c (USE_REL): Likewise.
6045
        * elf32-m32r.c (USE_REL): Likewise.
6046
        * elf32-m68hc11.c (USE_REL): Likewise.
6047
        * elf32-m68hc12.c (USE_REL): Likewise.
6048
        * elf32-or32.c (USE_REL): Likewise.
6049
        * elfarm-nabi.c (USE_REL): Likewise.
6050
 
6051
2002-10-16  Jakub Jelinek  
6052
 
6053
        * config.bfd (s390-*-linux*): Add targ64_selvecs.
6054
        (s390x-*-linux*): Add targ_selvecs.
6055
 
6056
2002-10-16  Alan Modra  
6057
 
6058
        * Makefile.am (BFD32_BACKENDS): Remove elfarmqnx-nabi.lo,
6059
        elf32-i386-fbsd.lo, elf32-i386qnx.lo, elf32-ppcqnx.lo,
6060
        elf32-sh-lin.lo, elf32-sh64-lin.lo, elf32-sh-nbsd.lo,
6061
        elf32-sh64-nbsd.lo, elf32-shqnx.lo.  Add elf32-qnx.lo.
6062
        (BFD32_BACKENDS_CFILES): Likewise for corresponding C files.
6063
        (BFD64_BACKENDS): Remove elf64-sh64-lin.lo, elf64-sh64-nbsd.lo.
6064
        (BFD64_BACKENDS_CFILES): Likewise for corresponding C files.
6065
        (SOURCE_HFILES): Add elf32-qnx.h.
6066
        (BUILD_HFILES): Add bfdver.h.
6067
        Run "make dep-am".
6068
        * Makefile.in: Regenerate.
6069
        * configure.in Update bfd vector dependencies.
6070
        * configure: Regenerate.
6071
        * elf32-i386-fbsd.c: Delete.  Move code to elf32-i386.c.
6072
        * elf32-i386qnx.c: Likewise.
6073
        * elf32-ppcqnx.c: Delete.  Move code to elf32-ppc.c.
6074
        * elf32-sh-nbsd.c: Delete.  Move code to elf32-sh.c.
6075
        * elf32-sh-lin.c: Likewise.
6076
        * elf32-shqnx.c: Likewise.
6077
        * elf32-sh64-lin.c: Delete.  Move code to elf32-sh64.c.
6078
        * elf32-sh64-nbsd.c: Likewise.
6079
        * elf64-sh64-lin.c: Delete.  Move code to elf64-sh64.c.
6080
        * elf64-sh64-nbsd.c: Likewise.
6081
        * elfarmqnx-nabi.c: Delete.  Move code to elfarm-nabi.c.
6082
        * elf32-arm.h (ELF_MAXPAGESIZE): Always define.
6083
        * elf32-i386.c: Remove ELF_ARCH and ELF32_I386_C_INCLUDED tests.
6084
        * elf32-ppc.c: Remove ELF32_PPC_C_INCLUDED tests.
6085
        * elf32-qnx.h (elf_backend_set_nonloadable_filepos): Always define.
6086
        (elf_backend_is_contained_by_filepos): Likewise.
6087
        (elf_backend_copy_private_bfd_data_p): Likewise.
6088
        Globalize and move functions to..
6089
        * elf32-qnx.c: ..here.  New file.
6090
        * elf32-sh.c: Remove ELF_ARCH and ELF32_SH_C_INCLUDED tests.  Don't
6091
        emit target vectors when INCLUDE_SHMEDIA.
6092
        * elf32-sh64.c: Remove ELF_ARCH test.  Move TARGET_* etc. defines to
6093
        end of file.
6094
        * elf64-sh64.c: Remove ELF_ARCH test.
6095
        * elfarm-nabi.c: Remove ELFARM_NABI_C_INCLUDED test.
6096
        * po/BLD-POTFILES.in: Regenerate.
6097
        * po/SRC-POTFILES.in: Regenerate.
6098
 
6099
2002-10-16  Alan Modra  
6100
 
6101
        * elflink.h (elf_link_add_object_symbols): Error out on dynamic objects
6102
        loaded with --just-symbols.
6103
 
6104
        * elf32-i386qnx.c (TARGET_LITTLE_NAME): Define.
6105
        * elf32-ppcqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define.
6106
        * elf32-shqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define.
6107
        * elfarmqnx-nabi.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define.
6108
 
6109
2002-10-15  Richard Henderson  
6110
 
6111
        * Makefile.am (BFD64_BACKENDS): Remove elf64-alpha-fbsd.
6112
        (BFD64_BACKENDS_CFILES): Likewise.
6113
        * configure.in (bfd_elf64_alpha_freebsd_vec): Use elf64-alpha.
6114
        * elf64-alpha-fbsd.c: Remove file, move code ...
6115
        * elf64-alpha.c: ... here.
6116
        * Makefile.in, configure: Rebuild.
6117
 
6118
2002-10-14  Richard Henderson  
6119
 
6120
        * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: Increment
6121
        VALUE, not ADDEND.
6122
 
6123
2002-10-14  Stephen Clarke 
6124
 
6125
        * elf32-sh.c (elf_sh_link_hash_entry): Replace
6126
        datalabel_got_offset with union of datalabel_got
6127
        offset and refcount.
6128
        (sh_elf_link_hash_newfunc): Initialize datalabel_got.refcount.
6129
        (allocate_dynrelocs): Delete unnecessary code for
6130
        STT_DATALABEL type.  Create entry in got for
6131
        datalabel version of symbol if datalabel_got.refcount > 0.
6132
        (sh_elf_relocate_section): Use datalabel_got union.
6133
        (sh_elf_gc_sweep_hook): Pull common code to initialize
6134
        h and eh out of switch statement.  Declare seen_stt_datalabel.
6135
        Initialize it.  Decrement datalabel_got.refcount for
6136
        got relocs when seen_stt_datalabel is true.
6137
        Decrement local_got_refcounts entry for datalabel got relocs
6138
        of local symbols.
6139
        (sh_elf_copy_indirect_symbol): Copy datalabel_got field over.
6140
        (sh_elf_check_relocs): Declare seen_stt_datalabel.
6141
        Initialize it.  When seen_stt_datalabel is true, increment
6142
        datalabel_got refcount rather than got.refcount.
6143
        (sh_elf_finish_dynamic_symbol): Create relocs to
6144
        initialize got entry for datalabel version of symbol.
6145
 
6146
2002-10-14  Alan Modra  
6147
 
6148
        * Makefile.am: Run "make dep-am".
6149
        (BFD_H_FILES): Remove version.h.
6150
        * bfd-in.h (BFD_VERSION, BFD_VERSION_DATE, BFD_VERSION_STRING): Move..
6151
        * version.h: ..to here.
6152
        * configure.in (bfd_version_date): Remove.
6153
        (AC_OUTPUT): Make bfdver.h from version.h.
6154
        * bfd.c: #include "bfdver.h".
6155
        * vms-hdr.c: Likewise.
6156
        * Makefile.in: Regenerate.
6157
        * bfd-in2.h: Regenerate.
6158
        * configure: Regenerate.
6159
        * po/SRC-POTFILES.in: Regenerate.
6160
 
6161
2002-10-14  Alan Modra  
6162
 
6163
        * archures.c (bfd_mach_i386_i386, bfd_mach_i386_i8086,
6164
        bfd_mach_i386_i386_intel_syntax, bfd_mach_x86_64,
6165
        bfd_mach_x86_64_intel_syntax bfd_mach_ppc, bfd_mach_ppc64,
6166
        bfd_mach_rs6k, bfd_mach_d10v, bfd_mach_sh, bfd_mach_v850,
6167
        bfd_mach_arc_5, bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8,
6168
        bfd_mach_m32r, bfd_mach_frv, bfd_mach_frvsimple,
6169
        bfd_mach_ia64_elf64, bfd_mach_ia64_elf32,
6170
        bfd_mach_ip2022, bfd_mach_ip2022ext,
6171
        bfd_mach_s390_31, bfd_mach_s390_64, bfd_mach_xstormy16): Renumber.
6172
        * bfd-in2.h: Regenerate.
6173
 
6174
2002-10-14  Kaz Kojima  
6175
 
6176
        * config.bfd (sh*eb-*-linux*, sh*-*-linux*): Add the alternative
6177
        endian vector to targ_selvecs.
6178
 
6179
2002-10-13  Alexandre Oliva  
6180
 
6181
        * elfxx-mips.c (mips_elf_calculate_relocation): Take
6182
        save_addend argument.  Don't apply the 32-bit mask to a
6183
        GPREL32 value if it's to be used in another relocation.  Don't
6184
        use forced-check computation of local_p to decide whether to
6185
        add gp0 to GPREL16 value.  Don't use only the lowest 16 bits
6186
        of the addend of a non-in-place GPREL16 relocation.
6187
        (_bfd_mips_elf_relocate_section): Pass use_saved_addend_p to
6188
        mips_elf_calculate_relocation().
6189
 
6190
2002-10-12  Stephane Carrez  
6191
 
6192
        * elf32-m68hc11.c (m68hc11_elf_relax_section): Don't treat relocs
6193
        with symbols in other sections if we relaxed something;  the sections
6194
        output offsets must be re-computed before.
6195
 
6196
2002-10-12  Stephane Carrez  
6197
 
6198
        * elf32-m68hc11.c (m68hc11_elf_relax_section): Update symbols
6199
        handling to use Elf_Internal_Sym.
6200
        (m68hc11_elf_relax_delete_bytes): Likewise.
6201
 
6202
2002-10-11  Kaz Kojima  
6203
 
6204
        * elf32-sh.c (sh_elf_optimized_tls_reloc, sh_elf_mkobject,
6205
        sh_elf_object_p, dtpoff_base): New functions.
6206
        (sh_elf_howto_table): Add TLS relocs.
6207
        (sh_reloc_map): Likewise.
6208
        (sh_elf_info_to_howto): Support TLS relocs.
6209
        (elf_sh_link_hash_entry): Add tls_type and tls_tpoff32.
6210
        (sh_elf_hash_entry, sh_elf_tdata, sh_elf_local_got_tls_type):
6211
        New macros.
6212
        (sh_elf_obj_tdata): New.
6213
        (elf_sh_link_hash_table): Add tls_ldm_got.
6214
        (sh_elf_link_hash_table_create): Clear refcount of tls_ldm_got.
6215
        (allocate_dynrelocs): Support TLS relocs.
6216
        (sh_elf_size_dynamic_sections): Likewise.
6217
        (sh_elf_relocate_section): Support TLS relocs.  Don't try to find
6218
        .rela.got section when found already.  Return false after printing
6219
        error about unresolvable relocation.
6220
        (sh_elf_gc_sweep_hook): Support TLS relocs.
6221
        (sh_elf_check_relocs): Likewise.
6222
        (sh_elf_finish_dynamic_symbol): Likewise.
6223
        (bfd_elf32_mkobject, elf_backend_object_p): Define for TLS case.
6224
        * reloc.c: Add SH TLS relocs.
6225
        * bfd-in2.h, libbfd.h: Regenerate.
6226
 
6227
2002-10-11  Daniel Jacobowitz  
6228
 
6229
        * Makefile.in: Regenerated.
6230
 
6231
2002-10-11  Daniel Jacobowitz  
6232
 
6233
        * Makefile.am: Run dep-am.
6234
        (BFD_H_DEP): Add simple.c and linker.c.
6235
        (BFD32_LIBS): Add simple.lo.
6236
        (BFD32_LIBS_CFILES): Add simple.c.
6237
        * Makefile.in: Regenerated.
6238
        * bfd-in2.h: Regenerated.
6239
        * simple.c: New file.
6240
 
6241
2002-10-11  Alan Modra  
6242
 
6243
        * coff-arm.c (record_arm_to_thumb_glue): Avoid type-punned pointers.
6244
        (record_thumb_to_arm_glue): Likewise.
6245
        * ecoff.c (ecoff_link_add_externals): Likewise.
6246
        * elf32-arm.h (record_arm_to_thumb_glue): Likewise.
6247
        (record_thumb_to_arm_glue): Likewise.
6248
        * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise.
6249
        * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise.
6250
        * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
6251
        * elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise.
6252
        * elf64-ppc.c (func_desc_adjust): Likewise.
6253
        * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
6254
        (sh64_elf64_create_dynamic_sections): Likewise.
6255
        * elflink.c (_bfd_elf_create_got_section): Likewise.
6256
        (_bfd_elf_create_dynamic_sections): Likewise.
6257
        (_bfd_elf_create_linker_section): Likewise.
6258
        * elflink.h (elf_add_default_symbol): Likewise.
6259
        (elf_link_create_dynamic_sections): Likewise.
6260
        (NAME(bfd_elf,size_dynamic_sections)): Likewise.
6261
        * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Likewise.
6262
        * elfxx-mips.c (mips_elf_create_got_section): Likewise.
6263
        (_bfd_mips_elf_add_symbol_hook): Likewise.
6264
        (_bfd_mips_elf_create_dynamic_sections): Likewise.
6265
        * linker.c (generic_link_add_symbol_list): Likewise.
6266
        * xcofflink.c (xcoff_link_add_symbols): Likewise.
6267
 
6268
        * elfxx-ia64.c (oor_brl, oor_ip): Conditionally define.
6269
 
6270
        * elf64-ppc.c (edit_opd): Only zero opd syms when function is
6271
        completely removed.  Correct local sym adjustment.
6272
 
6273
2002-10-10  Stephen Clarke 
6274
 
6275
        * elf32-sh.c (elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le):
6276
        Correct mistake in calculation of address of .got.
6277
        * elf64-sh64.c (elf_sh64_pic_plt_entry_be,
6278
        elf_sh64_pic_plt_entry_le): Likewise.
6279
 
6280
2002-10-09  Richard Shann 
6281
            Stephen Clarke 
6282
 
6283
        * Makefile.am: Add entries for elf32-sh64-lin.c and
6284
        elf64-sh64-lin.c. Regenerate.
6285
        * Makefile.in: Regenerate.
6286
        * config.bfd: Change sh64eb-*-linux* and sh64-*-linux*
6287
        to use sh64 vectors rather than sh vectors.
6288
        * configure.in: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec,
6289
        bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec.
6290
        * configure: Regenerate.
6291
        * elf32-sh64-lin.c: New file.
6292
        * elf64-sh64-lin.c: New file.
6293
        * targets.c: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec,
6294
        bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec.
6295
 
6296
2002-10-08  H.J. Lu 
6297
 
6298
        * elf32-i386.c (elf_i386_relocate_section): Re-arrange the
6299
        IE->LE transition for R_386_TLS_IE.
6300
 
6301
2002-10-08  Alan Modra  
6302
 
6303
        * elf64-ppc.c (edit_opd): Correct test for discarded sections.
6304
 
6305
2002-10-07  Mark Elbrecht  
6306
 
6307
        * cofflink.c (mark_relocs): Don't mark relocations in excluded
6308
        sections.
6309
 
6310
2002-10-07  Alan Modra  
6311
 
6312
        * elflink.h (elf_link_input_bfd): Remove BFD_VERSION_DATE dependent
6313
        code.
6314
 
6315
        * elf64-ppc.c (ppc64_elf_build_stubs): Increment .glink indx.
6316
 
6317
2002-10-06  Alan Modra  
6318
 
6319
        * opncls.c: Formatting.
6320
        (_bfd_new_bfd): Use a smaller section hash table.
6321
 
6322
2002-10-05  Alexandre Oliva  
6323
 
6324
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Set the type
6325
        of the other two relocations packed with a REL32 to NONE.
6326
 
6327
2002-10-02  Stephen Clarke 
6328
 
6329
        * elf32-sh.c (elf_sh_link_hash_entry): Add gotplt_refcount.
6330
        (sh_elf_link_hash_newfunc): Initialize it.
6331
        (allocate_dynrelocs): Transfer gotplt refs from plt.refcount
6332
        to got.refcount for symbols that are forced local or when
6333
        we have direct got refs.
6334
        (sh_elf_gc_sweep_hook): Adjust gotplt_refcount.  Use it
6335
        to correctly adjust got.refcount and plt.refcount.
6336
        (sh_elf_copy_indirect_symbol): Copy gotplt_refcount across.
6337
        (sh_elf_check_relocs): Increment gotplt_refcount.
6338
 
6339
2002-10-01  Jakub Jelinek  
6340
 
6341
        * elf32-i386.c (elf_i386_relocate_section): Fix
6342
        movl foo@indntpoff, %eax IE->LE transition.
6343
 
6344
2002-10-01  Jakub Jelinek  
6345
 
6346
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Change TLSGD
6347
        sequence and its transitions.
6348
 
6349
2002-10-01  Jakub Jelinek  
6350
 
6351
        * elf32-i386.c (elf_i386_relocate_section): Resolve R_386_TLS_LDO_32
6352
        to st_value + addend in non-code sections.
6353
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Resolve
6354
        R_X86_64_DTPOFF32 to st_value + addend in non-code sections.
6355
 
6356
2002-09-30  Gavin Romig-Koch  
6357
            Ken Raeburn  
6358
            Aldy Hernandez  
6359
            Eric Christopher  
6360
            Richard Sandiford  
6361
 
6362
        * archures.c (bfd_mach_mips4120, bfd_mach_mips5400): New.
6363
        (bfd_mach_mips5500): New.
6364
        * cpu-mips.c (I_mips4120, I_mips5400, I_mips5500): New.
6365
        (arch_info_struct): Add corresponding entries here.
6366
        * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_4120,
6367
        E_MIPS_MACH_5400 and E_MIPS_MACH_5500.
6368
        (_bfd_mips_elf_final_write_processing): Handle bfd_mach_mips4120,
6369
        bfd_mach_mips5400 and bfd_mach_mips5500.
6370
        (_bfd_mips_elf_mach_extends_p): New function.
6371
        (_bfd_mips_elf_merge_private_bfd_data): Use it to help merge
6372
        the EF_MIPS_MACH flags.
6373
        * bfd-in2.h: Regenerate.
6374
 
6375
2002-09-28  Jason Thorpe  
6376
 
6377
        * elf32-vax.c (elf_vax_size_dynamic_section): Don't strip
6378
        .got sections.
6379
 
6380
2002-09-28  Alan Modra  
6381
 
6382
        * elf.c (map_sections_to_segments): Correct test for start of
6383
        writable section in the same page as end of read-only section.
6384
 
6385
2002-09-27  Matt Thomas  
6386
 
6387
        * elf32-vax.c (elf_vax_check_relocs): Remove unused
6388
        local_got_refcounts usage.  Remove allocation of got slot.
6389
        (elf_vax_gc_sweep_hook): Remove unused local_got_refcounts usage.
6390
        Remove de-allocation of got slot.
6391
        (elf_vax_size_dynamic_section): Fix some indentation.  Add hash
6392
        traversal for elf_vax_instantiate_got_entries.  Allow empty .got
6393
        sections to be GC'ed.
6394
        (elf_vax_instantiate_got_entries): New function.
6395
        (elf_vax_relocate_section): Simplify R_VAX_GOT32 handling.  Remove
6396
        tests that are now handled by elf_vax_instantiate_got_entries.
6397
        Assert GOT entry falls within .got section size.  Remove redundant
6398
        comparisions.  Fix comments.
6399
 
6400
2002-09-27  Jakub Jelinek  
6401
 
6402
        * reloc.c: Add x86-64 TLS relocs.
6403
        * bfd-in2.h, libbfd.h: Rebuilt.
6404
        * elf64-x86-64.c (x86_64_elf_howto): Fix size fields for 32-bit
6405
        relocs.  Add TLS relocs.
6406
        (x86_64_reloc_map): Add TLS relocs.
6407
        (elf64_x86_64_info_to_howto): Adjust for added TLS relocs.
6408
        (struct elf64_x86_64_link_hash_entry): Add tls_type field.
6409
        (GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD, GOT_TLS_IE): Define.
6410
        (elf64_x86_64_hash_entry): Define.
6411
        (struct elf64_x86_64_obj_tdata): New.
6412
        (elf64_x86_64_tdata, elf64_x86_64_local_got_tls_type): Define.
6413
        (struct elf64_x86_64_link_hash_table): Add tls_ld_got.
6414
        (link_hash_newfunc): Initialize tls_type.
6415
        (elf64_x86_64_link_hash_table_create): Initialize tls_ld_got.
6416
        (elf64_x86_64_copy_indirect_symbol): Swap tls_type if necessary.
6417
        (elf64_x86_64_mkobject): New.
6418
        (elf64_x86_64_elf_object_p): Allocate struct elf64_x86_64_obj_tdata.
6419
        (elf64_x86_64_tls_transition): New.
6420
        (elf64_x86_64_check_relocs): Add r_type variable and use it.
6421
        Handle TLS relocs.
6422
        (elf64_x86_64_gc_sweep_hook): Handle TLS relocs.
6423
        (allocate_dynrelocs): Allocate GOT space for TLS relocs.
6424
        (elf64_x86_64_size_dynamic_sections): Likewise.
6425
        (dtpoff_base, tpoff): New.
6426
        (elf64_x86_64_relocate_section): Handle TLS relocs.
6427
        (elf64_x86_64_finish_dynamic_symbol): Only handle non-TLS GOT
6428
        entries.
6429
        (bfd_elf64_mkobject): Define.
6430
 
6431
        * elf32-i386.c (elf_i386_check_relocs) [R_386_TLS_LE]: Set
6432
        DF_STATIC_TLS if shared.
6433
 
6434
2002-09-26  Thiemo Seufer 
6435
 
6436
        * elfxx-mips.c (_bfd_mips_elf_fake_sections): Don't emit unneeded
6437
        empty relocation sections.
6438
 
6439
2002-09-26  Alan Modra  
6440
 
6441
        * elf64-ppc.c (ppc_build_one_stub): Don't build glink stubs here.
6442
        (ppc64_elf_build_stubs): Build them here instead.
6443
 
6444
2002-09-24  Jakub Jelinek  
6445
 
6446
        * elf32-sparc.c (elf32_sparc_relocate_section): Put R_SPARC_RELATIVE
6447
        addend into r_addend, not *r_offset.
6448
        (elf32_sparc_finish_dynamic_symbol): Likewise.
6449
        * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Clear xword at
6450
        R_SPARC_RELATIVE's r_offset.
6451
 
6452
2002-09-23  Nathan Tallent  
6453
 
6454
        * dwarf2.c (decode_line_info): Update to correctly decode
6455
        the (non-standard DWARF2) out-of-order address sequences
6456
        generated by the Intel C++ 6.0 compiler for ia64-Linux.
6457
 
6458
2002-09-23  Mark Elbrecht  
6459
 
6460
        * config.bfd: For DJGPP targets, match with any cpu and any machine.
6461
 
6462
2002-09-23  Alan Modra  
6463
 
6464
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Zero relocs
6465
        for discarded FDEs.  Remove redundant assignment.
6466
        * elflink.h (elf_bfd_discard_info): Save edited relocs.
6467
 
6468
2002-09-22  H.J. Lu 
6469
 
6470
        * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Don't merge
6471
        the relocation count between different .reloc sections.
6472
 
6473
2002-09-21  Alan Modra  
6474
 
6475
        * elf32-ppc.c (ppc_elf_relocate_section): Allow ".sbss.*" and
6476
        ".sdata.*" for R_PPC_SDAREL16, ".sbss2*" and ".sdata2*" for
6477
        R_PPC_EMB_SDA2REL.  Similarly for R_PPC_EMB_SDA21 and
6478
        R_PPC_EMB_RELSDA.
6479
 
6480
        * elfcode.h (elf_slurp_reloc_table_from_section): Make "symcount"
6481
        unsigned.  Move "symcount" assignment out of loop.
6482
        * Makefile.am: Run "make dep-am".
6483
        * Makefile.in: Regenerate.
6484
        * configure: Regenerate.
6485
        * po/SRC-POTFILES.in: Regnerate.
6486
 
6487
2002-09-19  Nathan Tallent  
6488
 
6489
        * dwarf2.c (_bfd_dwarf2_find_nearest_line): If address length is
6490
        zero, set it to 8 for (non-standard) 64-bit DWARF2 formats
6491
        (e.g. IRIX64).
6492
 
6493
2002-09-19  Jakub Jelinek  
6494
 
6495
        * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Clear .got word
6496
        even if generating R_PPC_RELATIVE reloc.
6497
        (ppc_elf_relocate_section): Make sure relocation is performed
6498
        if skip == -2.  Clear memory at r_offset when creating dynamic
6499
        relocation.
6500
 
6501
2002-09-19  Jakub Jelinek  
6502
 
6503
        * reloc.c (BFD_RELOC_386_TLS_TPOFF, BFD_RELOC_386_TLS_IE,
6504
        BFD_RELOC_386_TLS_GOTIE): Add.
6505
        * bfd-in2.h, libbfd.h: Rebuilt.
6506
        * elf32-i386.c (elf_howto_table): Add R_386_TLS_TPOFF, R_386_TLS_IE
6507
        and R_386_TLS_GOTIE.
6508
        (elf_i386_reloc_type_lookup): Handle it.
6509
        (struct elf_i386_link_hash_entry): Change tls_type type to unsigned
6510
        char instead of enum, change GOT_* into defines.
6511
        (GOT_TLS_IE_POS, GOT_TLS_IE_NEG, GOT_TLS_IE_BOTH): Define.
6512
        (elf_i386_tls_transition): Handle R_386_TLS_IE and R_386_TLS_GOTIE.
6513
        (elf_i386_check_relocs): Likewise.  Avoid crash if local symbol is
6514
        accessed both as normal and TLS symbol.  Move R_386_TLS_LDM and
6515
        R_386_PLT32 cases so that R_386_TLS_IE can fall through.
6516
        Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs.
6517
        (elf_i386_gc_sweep_hook): Handle R_386_TLS_IE and R_386_TLS_GOTIE.
6518
        Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs.
6519
        (allocate_dynrelocs): Allocate 2 .got and 2 .rel.got entries if
6520
        tls_type is GOT_TLS_IE_BOTH.
6521
        (elf_i386_size_dynamic_sections): Likewise.
6522
        (elf_i386_relocate_section): Handle R_386_TLS_IE and R_386_TLS_GOTIE.
6523
        Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs.
6524
        (elf_i386_finish_dynamic_symbol): Use tls_type & GOT_TLS_IE to catch
6525
        all 4 GOT_TLS_* TLS types.
6526
 
6527
2002-09-19  Nick Clifton  
6528
 
6529
        * elflink.h (elf_fix_symbol_flags): When examining weak symbols,
6530
        follow indirect links.
6531
 
6532
2002-09-19  Nathan Tallent  
6533
 
6534
        * ecoffswap.h (ecoff_swap_pdr_in) : Update to
6535
        correctly sign-extend 32-bit ECOFF null values (0xffffffff, -1)
6536
        on 64 bit machines.
6537
        (ecoff_swap_sym_in) : Likewise.
6538
        * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Fix error reading
6539
        ECOFF information: 'ioptMax' refers to the actual *size*
6540
        of the optimization symtab, not the number of entries.
6541
 
6542
2002-09-19  Daniel Jacobowitz  
6543
 
6544
        * elf32-arm.h (elf32_arm_adjust_dynamic_symbol): Update
6545
        ELF_LINK_HASH_NEEDS_PLT logic.
6546
 
6547
2002-09-18  Daniel Jacobowitz  
6548
 
6549
        * elfcode.h (elf_slurp_reloc_table_from_section): Check
6550
        correct relocation count.
6551
 
6552
2002-09-17  Daniel Jacobowitz  
6553
 
6554
        * bfd-in.h (bfd_get_dynamic_symcount): Define.
6555
        * bfd.c (struct _bfd): Add dynsymcount.
6556
        * bfd-in2.h: Regenerated.
6557
        * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Set
6558
        abfd->dynsymcount.
6559
        * elfcode.h (elf_slurp_reloc_table_from_section): Check
6560
        for overflow.
6561
 
6562
2002-09-17  Stan Cox 
6563
 
6564
        * elf64-mips.c (mips_elf64_be_swap_reloca_out): Handle type2 and type3.
6565
        (mips_elf64_final_gp): Don't make up gp value.
6566
        * elfn32-mips.c (mips_elf_final_gp): Likewise.
6567
        * elfxx-mips.c (_bfd_mips_elf_final_link): Always create
6568
        .MIPS.options/.options section.
6569
 
6570
2002-09-17  David O'Brien  
6571
 
6572
        * elf32-i386-fbsd.c: Always label using the EI_OSABI method.
6573
        It is benign for FreeBSD < 4.1.  Minor reformatting.
6574
        * elf64-alpha-fbsd.c: Likewise.
6575
 
6576
2002-09-17  Jakub Jelinek  
6577
 
6578
        * elf32-i386.c (elf_i386_relocate_section) [R_386_TLS_TPOFF32]: Negate
6579
        addend.
6580
 
6581
2002-09-17  Alan Modra  
6582
 
6583
        * elf64-alpha.c (alpha_elf_size_info): Make static.
6584
 
6585
2002-09-17  Svein E. Seldal  
6586
 
6587
        * coff-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
6588
        * cpu-tic4x.c: Ditto.
6589
 
6590
2002-09-17  Thiemo Seufer 
6591
 
6592
        * elf64-mips.c (define elf_backend_ignore_discarded_relocs): Remove
6593
        duplicate define.
6594
 
6595
2002-09-16  Bruno Haible  
6596
 
6597
        * elf32-i386.c: Don't defined ELF_ARCH etc. if this file is included
6598
        by a target variant implementation.
6599
        * elf64-alpha.c: Likewise.
6600
        * elf32-i386-fbsd.c: New file.
6601
        * elf64-alpha-fbsd.c: New file.
6602
        * targets.c: Support bfd_elf32_i386_freebsd_vec and
6603
        bfd_elf64_alpha_freebsd_vec.
6604
        * configure.in: Accept the vectors bfd_elf32_i386_freebsd_vec,
6605
        bfd_elf64_alpha_freebsd_vec.
6606
        * Makefile.am (BFD32_BACKENDS): Add elf32-i386-fbsd.lo.
6607
        (BFD32_BACKENDS_CFILES): Add elf32-i386-fbsd.c.
6608
        (BFD64_BACKENDS): Add elf64-alpha-fbsd.lo.
6609
        (BFD64_BACKENDS_CFILES): Add elf64-alpha-fbsd.c.
6610
        (elf32-i386-fbsd.lo, elf64-alpha-fbsd.lo): Add dependencies.
6611
        * config.bfd: For FreeBSD targets, set targ_defvec to a FreeBSD
6612
        specific targets. Define OLD_FREEBSD_ABI_LABEL if appropriate.
6613
 
6614
2002-09-12  Jakub Jelinek  
6615
 
6616
        * elf32-i386.c (dtpoff_base, tpoff): Don't crash if tls_segment is
6617
        NULL.
6618
        (elf_i386_relocate_section): Return false after printing error about
6619
        unresolvable relocation.
6620
 
6621
2002-09-12  Nick Clifton  
6622
 
6623
        * elf32-arm.h (elf32_arm_final_link_relocate): Fix handling of
6624
        R_ARM_THM_PC11.
6625
 
6626
2002-09-11  Jeffrey Law  
6627
 
6628
        * elf32-h8300.c (elf32_h8_relax_section): Fix typo.
6629
 
6630
2002-09-11  Andrew Haley  
6631
 
6632
        * elf.c (_bfd_elf_find_nearest_line): Check functionname_ptr and
6633
        line_ptr before deciding we've found a symbol.
6634
 
6635
2002-09-11  Nick Clifton  
6636
 
6637
        * po/da.po: New Danish translation file.
6638
        * configure.in (LINGUAS): Add 'da'.
6639
        * configure: Regenerate.
6640
 
6641
2002-09-10  Michael Snyder  
6642
 
6643
        * irix-core.c (do_sections, do_sections64): New functions.
6644
        (irix_core_core_file_p): Call new functions do_sections,
6645
        do_sections64, depending on corefile (32-bit or 64-bit).
6646
 
6647
2002-09-09  Richard Henderson  
6648
 
6649
        * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21M
6650
        and PCREL21F like PCREL21B.
6651
 
6652
2002-09-04  Kevin Buettner  
6653
 
6654
        * config.bfd (mips*-*-irix6*): Add new ABI vectors.  Make n32 default
6655
        vector.
6656
 
6657
2002-09-02  Nick Clifton  
6658
 
6659
        * elf32-v850.c (v850_elf_final_link_relocate): Use helpful
6660
        names instead of cryptically overloaded bfd_reloc error
6661
        codes.
6662
        (v850_elf_relocate_section): Likewise.
6663
        (v850_elf_relax_section): Replace caching of external symbols
6664
        with caching of internal symbols obtained from calling
6665
        bfd_elf_get_elf_syms().
6666
        Fixup problems with freeing cached allocated memory blocks.
6667
 
6668
2002-09-02  Alan Modra  
6669
 
6670
        * cpu-pj.c (scan_mach, compatible, arch_info_struct): Remove.
6671
        (bfd_pj_arch): Use bfd_default_scan.
6672
        * cpu-v850.c (scan): Remove.
6673
        (N): Use bfd_default_scan.
6674
        * cpu-z8k.c (scan_mach): Remove.
6675
        (arch_info_struct, bfd_z8k_arch): Reorganize so that the default is
6676
        first.  Use bfd_default_scan.
6677
 
6678
        * ecoff.c (_bfd_ecoff_set_arch_mach_hook): Don't use hard-coded
6679
        bfd_mach constants.
6680
        (ecoff_get_magic): Likewise.
6681
        * elf32-v850.c (v850_elf_object_p): Likewise.
6682
        (v850_elf_final_write_processing): Likewise.
6683
        * mipsbsd.c (MY(set_arch_mach)): Likewise.
6684
        (MY(write_object_contents)): Likewise.
6685
        * coff64-rs6000.c (xcoff64_write_object_contents): Likewise.
6686
        * coffcode.h (coff_write_object_contents): Likewise.
6687
        (coff_set_arch_mach_hook): Add comment describing machine == 0.
6688
        Remove unnecessary "machine" assignments.
6689
        (coff_write_relocs): Test for the absolute section sym by testing
6690
        section and flags.
6691
 
6692
        * aoutx.h (NAME(aout,machine_type)): Recognize bfd_mach_i386_i386
6693
        and bfd_mach_i386_i386_intel_syntax.
6694
        * pdp11.c (NAME(aout,machine_type)): Likewise.
6695
 
6696
2002-08-30  John David Anglin  
6697
 
6698
        * bfd-in.h (align_power): Cast constants to bfd_vma type.
6699
        * bfd-in2.h (align_power): Likewise.
6700
 
6701
2002-08-30  Alan Modra  
6702
 
6703
        * Makefile.am: Run "make dep-am".
6704
        * Makefile.in: Regenerate.
6705
 
6706
        * cpu-avr.c (compatible): Don't use hard-coded mach constants.
6707
        * cpu-powerpc.c (powerpc_compatible): Likewise.
6708
        * cpu-rs6000.c (rs6000_compatible): Likewise.
6709
 
6710
2002-08-28  Catherine Moore  
6711
 
6712
        * elf32-v850.c (v850_elf_reloc_map): Add new relocs.
6713
        (v850-elf-reloc): Don't resolve pc relative relocs.
6714
        (v850_elf_ignore_reloc): New routine.
6715
        (v850_elf_final_link_relocate): Handle new relocs.
6716
        (v850_elf_relax_delete_bytes ): New routine.
6717
        (v850_elf_relax_section): New routine.
6718
        (bfd_elf32_bfd_relax_section): Define.
6719
        (HOWTO): New entries for new relocs.
6720
        * reloc.c (BFD_RELOC_V850_LONGCALL): New reloc.
6721
        (BFD_RELOC_V850_LONGJUMP): New reloc.
6722
        (BFD_RELOC_V850_ALIGN): New reloc.
6723
        * archures.c: Remove redundant v850ea architecture.
6724
        * cpu-v850.c: Remove redundant v850ea support.
6725
        * libbfd.h: Regenerate.
6726
        * bfd-in2.h: Regenerated.
6727
 
6728
2002-08-28  Svein E. Seldal  
6729
 
6730
        * config.bfd: Add tic4x-*-*coff* and c4x-*-*coff* target.
6731
        * configure.in: Add tic4x_coff vector files.
6732
        * configure: Regenerate.
6733
        * Makefile.am: Add tic4x target.
6734
        * Makefile.in: Regenerate.
6735
 
6736
2002-08-27  Michael Hayes 
6737
 
6738
        * archures.c: Add the BFD arch type tic4x.
6739
        * bfd-in.h: Add BFD_IN_MEMORY flag.
6740
        * coff-tic4x.c: New file.
6741
        * coffswap.h (coff_swap_sym_out): Add preadjuster.
6742
        * cpu-tic4x.c: New file.
6743
        * targets.c: Added tic4x- in list of xvecs.
6744
        * ticoff.h: New file.
6745
        * bfd-in2.h: Regenerate.
6746
 
6747
2002-08-27  Adam Nemet  
6748
 
6749
        * elf32-arm.h (elf32_arm_finish_dynamic_sections): Set the last
6750
        bit of DT_INIT and DT_FINI for Thumb functions.
6751
 
6752
2002-08-26  Alan Modra  
6753
 
6754
        * coffcode.h (coff_set_arch_mach_hook): Handle W65MAGIC.
6755
 
6756
2002-08-26  Alan Modra  
6757
 
6758
        * aoutx.h (NAME(aout,reloc_type_lookup)): Handle BFD_RELOC_8.
6759
 
6760
2002-08-24  Kaz Kojima  
6761
 
6762
        * elf32-sh.c (sh_elf_copy_indirect_symbol): New.
6763
        (create_got_section, allocate_dynrelocs, readonly_dynrelocs):
6764
        Likewise.
6765
        (struct elf_sh_pcrel_relocs_copied): Removed.
6766
        (struct elf_sh_dyn_relocs): New.
6767
        (struct elf_sh_link_hash_entry): Replace pcrel_relocs_copied
6768
        field with dyn_relocs.
6769
        (struct elf_sh_link_hash_table): Add short-cuts to get dynamic
6770
        sections and sym_sec.
6771
        (sh_elf_link_hash_newfunc): Clear dyn_relocs.
6772
        (sh_elf_link_hash_table_create): Clear shorts-cuts and sym_sec.
6773
        (sh_elf_create_dynamic_sections): Use create_got_section instead
6774
        of _bfd_elf_create_got_section.
6775
        (sh_elf_check_relocs): Likewise.
6776
        (sh_elf_create_dynamic_sections): Use short-cuts to the dynamic
6777
        sections.
6778
        (sh_elf_adjust_dynamic_symbol, sh_elf_size_dynamic_sections,
6779
        sh_elf_relocate_section, sh_elf_check_relocs,
6780
        sh_elf_finish_dynamic_symbol, sh_elf_finish_dynamic_sections):
6781
        Likewise.
6782
        (sh_elf_adjust_dynamic_symbol): Handle nocopyreloc. Keep the
6783
        dynamic relocations and avoiding the copy relocation when we
6784
        didn't find any dynamic relocations in the section which has
6785
        contents or is read-only.
6786
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
6787
        (sh_elf_size_dynamic_sections): Don't reset the size of
6788
        .rela.got section even if dynamic_sections_created flag is off.
6789
        Don't use sh_elf_discard_copies. Scan all input bfd and use
6790
        allocate_dynrelocs. Call readonly_dynrelocs to determine
6791
        whether we need DT_TEXTREL.
6792
        (sh_elf_adjust_dynamic_symbol): Use plt.refcount to determine
6793
        whether the symbol was never referred to.
6794
        (sh_elf_relocate_section): Use WILL_CALL_FINISH_DYNAMIC_SYMBOL.
6795
        (sh_elf_gc_sweep_hook): Fill with the real sweep function.
6796
        (sh_elf_check_relocs): Call create_got_section if the short-cut
6797
        to .got is null. Increment reference counters only instead of
6798
        allocating space on dynamic sections here. Don't conditionalize
6799
        uninitialized got.offset value when marking the symbol as a
6800
        global offset table entry. Keep relocations for symbols satisfied
6801
        by a dynamic library to avoid copy relocations for the symbol.
6802
        Set dynobj field of an elf hash table if needed.
6803
        (sh_elf_finish_dynamic_sections): Handle null section pointer
6804
        correctly.
6805
        (elf_backend_copy_indirect_symbol): Defined.
6806
        (elf_backend_can_refcount): Defined.
6807
 
6808
2002-08-23  Nick Clifton  
6809
 
6810
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Undo
6811
        previous change.  Add comment explaining why.
6812
 
6813
2002-08-23  Stephen Clarke 
6814
 
6815
        * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le): Copy
6816
        contents of .got.plt[2] to tr0, not address of .got.plt.
6817
        (sh_elf_finish_dynamic_symbol): Do not apply GOT_BIAS when
6818
        patching absolute plt entry. For shmedia plt entry, set bottom bit
6819
        of branch to plt0 as this is a branch to an shmedia instruction.
6820
        * elf64-sh64.c (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le):
6821
        Copy contents of .got.plt[2] to tr0, not address of .got.plt.
6822
        (elf_sh64_plt_entry_be, elf_sh64_plt_entry_le): Use ptrel to
6823
        branch to plt0.
6824
        (sh64_elf64_finish_dynamic_symbol): Do not apply GOT_BIAS when
6825
        patching absolute plt entry. For shmedia plt entry, branch to
6826
        plt0 is now ptrel, so use relative offset.  Set bottom bit of
6827
        branch target as it is a branch to an shmedia instruction.
6828
 
6829
2002-08-23  Stephen Clarke ,
6830
            Richard Shann 
6831
 
6832
        * elf32-sh.c (sh_elf_finish_dynamic_sections): Set LSB of DT_INIT
6833
        value if .init is an SHmedia function.  Similarly for DT_FINI.
6834
        * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise.
6835
 
6836
2002-08-23  Stephen Clarke 
6837
 
6838
        * elf32-sh.c (sh_elf_size_dynamic_sections): Zero initialize
6839
        dynamic section.
6840
        * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise.
6841
 
6842
2002-08-22  Kaz Kojima 
6843
 
6844
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use a simple
6845
        byte read when reading the return address register column.
6846
 
6847
2002-08-22  Nick Clifton  
6848
 
6849
        * config.bfd: Add powepc64-*-*bsd* target.
6850
 
6851
2002-08-22  Graeme Peterson  
6852
 
6853
        * Makefile.am: Add entries for elf32-shqnx.c
6854
        * Makefile.in: Regenerate.
6855
        * config.bfd: Add support sh-*-nto* target.
6856
        * configure.in: Add support for bfd_elf32_sh{l}qnx_vec.
6857
        * configure: Regenerate.
6858
        * elf32-qnx.h: Changed typo "elf_i386qnx_*" to "elf_qnx_*" .
6859
        * elf32-sh.c: Do not include elf32-target.h if
6860
        ELF32_SH_C_INCLUDED is defined.
6861
        * elf32-shqnx.c: New file: Support for QNX.
6862
        * targets.c: Add bfd_elf32_sh{l}qnx_vec.
6863
 
6864
2002-08-22  Nick Clifton  
6865
 
6866
        * po/tr.po: Updated Turkish translation.
6867
 
6868
        * syms.c (_bfd_generic_read_minisymbols): Set bfd_error if the
6869
        symbols are not read.
6870
 
6871
2002-08-22  Alan Modra  
6872
 
6873
        * elf32-m68hc11.c: Formatting fixes.
6874
        (elf32_m68hc11_gc_mark_hook): Correct params.  Remove unnecessary test.
6875
        * elf32-m68hc12.c: Formatting fixes.
6876
        (elf32_m68hc11_gc_mark_hook): Correct params.  Remove unnecessary test.
6877
 
6878
2002-08-22  Alan Modra  
6879
 
6880
        * coff-rs6000.c (rs6000coff_vec ): Add SEC_CODE and
6881
        SEC_DATA.
6882
        (pmac_xcoff_vec): Likewise.
6883
        * coff64-rs6000.c (rs6000coff64_vec): Likewise.
6884
        (aix5coff64_vec): Likewise.
6885
 
6886
2002-08-22  Alan Modra  
6887
 
6888
        * elf-bfd.h (struct elf_backend_data): Add struct elf_backend_data
6889
        param to elf_backend_copy_indirect_symbol.
6890
        (_bfd_elf_link_hash_copy_indirect): Likewise.
6891
        * elflink.h (elf_add_default_symbol, elf_fix_symbol_flags): Adjust
6892
        calls to copy_indirect_symbol.
6893
        * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
6894
        * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
6895
        * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise.
6896
        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
6897
        * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise.
6898
        * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise.
6899
        * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
6900
        * elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise.
6901
        * elfxx-mips.h (_bfd_mips_elf_copy_indirect_symbol): Likewise.
6902
        * elf.c (_bfd_elf_link_hash_copy_indirect): Likewise.  Properly
6903
        test refcounts for "used" values.
6904
 
6905
2002-08-21  John David Anglin  
6906
 
6907
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Add PARAMS to
6908
        argument declaration.
6909
 
6910
2002-08-19  Elena Zannoni 
6911
 
6912
        * archures.c (bfd_mach_ppc_e500): Added.
6913
        * bfd-in2.h: Rebuilt.
6914
        * cpu-powerpc.c (bfd_powerpc_archs): Added e500.
6915
 
6916
2002-08-19  Alan Modra  
6917
 
6918
        * elf32-m68hc12.c (elf_backend_can_gc_sections): False.
6919
 
6920
2002-08-17  Andrew Cagney  
6921
 
6922
        * elf.c (bfd_elf_get_elf_syms): Change type of `esym' to
6923
        `bfd_byte'.
6924
 
6925
2002-08-17  Stan Cox  
6926
 
6927
        * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Use the
6928
        IRIX 6 segment layout for NEWABI.
6929
 
6930
2002-08-16  Stephen Clarke 
6931
 
6932
        * elf32-sh.c (sh_elf_gc_mark_hook): For sh64, skip indirect
6933
        symbols when looking for section referred to by a relocation.
6934
        * elf64-sh.c (sh_elf64_gc_mark_hook): Likewise.
6935
 
6936
2002-08-15  Alan Modra  
6937
 
6938
        * elf32-i370.c: Move reloc enum to include/elf/i370.h.
6939
 
6940
2002-08-15  Hans-Peter Nilsson  
6941
 
6942
        * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Add
6943
        missing check for whether the symbol is referenced by DSO before
6944
        unexporting it as an unneeded dynamic symbol.
6945
 
6946
2002-08-14  H.J. Lu 
6947
 
6948
        * libbfd.h: Regenerate.
6949
 
6950
2002-08-14  H.J. Lu 
6951
 
6952
        * config.bfd: Always add 64bit vectors to 32bit Linux/mips.
6953
 
6954
2002-08-14  Stephane Carrez  
6955
 
6956
        * elf32-m68hc11.c (m68hc11_relax_group): New to relax group of
6957
        instructions.
6958
        (m68hc11_direct_relax): New to define table of relaxable instructions.
6959
        (find_relaxable_insn): New, find a relaxable insn.
6960
        (compare_reloc): New to compare two relocs.
6961
        (m68hc11_elf_relax_section): New, relax text sections.
6962
        (m68hc11_elf_relax_delete_bytes): New, delete bytes and adjust branchs.
6963
        (elf32_m68hc11_check_relocs): New function for GC support.
6964
        (elf32_m68hc11_relocate_section): New function for GC support.
6965
        (bfd_elf32_bfd_relax_section): Define to support linker relaxation.
6966
        (elf_backend_check_relocs): Likewise.
6967
        (elf_backend_relocate_section): Likewise.
6968
 
6969
2002-08-13  H.J. Lu 
6970
 
6971
        * elflink.h (NAME(bfd_elf,size_dynamic_sections): Don't count
6972
        definitions in shared objects when checking symbol with
6973
        undefined version.
6974
 
6975
2002-08-13  Stephane Carrez  
6976
 
6977
        * elf32-m68hc11.c (elf32_m68hc11_gc_mark_hook): New for section GC.
6978
        (elf32_m68hc11_gc_sweep_hook): Likewise.
6979
        (elf_backend_gc_mark_hook): Define for GC section support.
6980
        (elf_backend_gc_sweep_hook): Likewise.
6981
        (elf_backend_can_gc_sections): Likewise.
6982
 
6983
        * elf32-m68hc12.c: Likewise.
6984
 
6985
2002-08-13  Stephane Carrez  
6986
 
6987
        * elf32-m68hc11.c (_bfd_m68hc11_elf_print_private_bfd_data): New.
6988
        (_bfd_m68hc11_elf_merge_private_bfd_data): New function.
6989
        (_bfd_m68hc11_elf_set_private_flags): New function.
6990
        Use them to set/check/print ELF flags specific to 68HC11.
6991
 
6992
        * elf32-m68hc12.c (_bfd_m68hc12_elf_print_private_bfd_data): New.
6993
        (_bfd_m68hc12_elf_merge_private_bfd_data): New function.
6994
        (_bfd_m68hc12_elf_set_private_flags): New function.
6995
        Use them to set/check/print ELF flags specific to 68HC12.
6996
 
6997
2002-08-13  Stephane Carrez  
6998
 
6999
        * elf32-m68hc11.c (elf_m68hc11_howto_table): Add the new relocs;
7000
        fix masks for PC-rel relocs.
7001
        (m68hc11_elf_ignore_reloc): New function.
7002
 
7003
        * elf32-m68hc12.c (m68hc12_elf_special_reloc): New to handle specific
7004
        68HC12 banked addressing relocs.
7005
        (m68hc12_phys_addr): New to compute physical address of banked memory.
7006
        (m68hc12_phys_page): Likewise for page.
7007
        (m68hc12_addr_is_banked): New to see if address is in banked area.
7008
        (elf_m68hc12_howto_table): Add new relocs and rename to xx12.
7009
 
7010
2002-08-13  Stephane Carrez  
7011
 
7012
        * reloc.c (BFD_RELOC_M68HC11_RL_JUMP, BFD_RELOC_M68HC11_RL_GROUP,
7013
        BFD_RELOC_M68HC11_LO16, BFD_RELOC_M68HC11_PAGE,
7014
        BFD_RELOC_M68HC11_24): New relocs for 68HC11/68HC12.
7015
        * bfd-in2.h: Regenerate.
7016
 
7017
2002-08-12  H.J. Lu 
7018
 
7019
        * elflink.h (elf_add_default_symbol): Preserve section across
7020
        elf_merge_symbol.
7021
 
7022
2002-08-09  Graeme Peterson  
7023
 
7024
        * Makefile.am: Add entries for elf32-ppcqnx.c, and add
7025
        elf32-qnx.h dependency to elfarmqnx-nabi.c and elf32-i386qnx.c.
7026
        * Makefile.in: Regenerate.
7027
        * config.bfd: Add support for powerpc{le}-*-nto targets.
7028
        * configure.in: Add support for bfd_elf32_powerpc{le}qnx_vec.
7029
        * configure: Regenerate.
7030
        * elf32-i386qnx.c: Moved backend functions into a QNX specific
7031
        common file "elf32-qnx.h", and now include that file.
7032
        * elf32-qnx.h: New file: QNX specific common elf backend.
7033
        * elf32-ppc.c: Do not include elf32-target.h if
7034
        ELF32_PPC_C_INCLUDED is defined.
7035
        * elf32-ppcqnx.c: New file: Support for QNX.
7036
        * elfarmqnx-nabi.c: Include elf32-qnx.h for qnx elf backend.
7037
        * targets.c: Add bfd_elf32_powerpc{le}qnx_vec.
7038
 
7039
2002-08-09  Nick Clifton  
7040
 
7041
        * po/sv.po: Updated Swedish translation.
7042
 
7043
2002-08-09  Thiemo Seufer 
7044
 
7045
        * elfxx-mips.c (mips_elf_global_got_index): Avoid segfault if
7046
        g->global_gotsym is NULL.
7047
 
7048
2002-08-08  H.J. Lu 
7049
 
7050
        * elflink.h (elf_add_default_symbol): Don't warn if a definition
7051
        overrides an indirect versioned symbol.
7052
 
7053
2002-08-08  Jakub Jelinek  
7054
 
7055
        * elf32-i386.c (elf_i386_relocate_section): Fill in proper addend
7056
        for R_386_TLS_TPOFF32 relocs against symndx 0.
7057
 
7058
2002-08-07  H.J. Lu 
7059
 
7060
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Check symbol
7061
        with undefined version if needed.
7062
        (elf_link_assign_sym_version): Match a default symbol with a
7063
        version without definition. No need to hide the default
7064
        definition separately.
7065
 
7066
2002-08-08  Alan Modra  
7067
 
7068
        * elflink.h (elf_link_output_extsym): Don't output symbols from
7069
        SEC_EXCLUDE sections.
7070
 
7071
        * aoutx.h (aout_link_write_symbols): Correct handling of warning syms.
7072
 
7073
2002-08-07  Alan Modra  
7074
 
7075
        * elf64-ppc.c (edit_opd): Arrange to drop symbols for discarded .opd
7076
        entries.
7077
 
7078
2002-08-07  Thiemo Seufer 
7079
 
7080
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Cast signedness
7081
        mismatch.
7082
 
7083
2002-08-07  Thiemo Seufer 
7084
 
7085
        * elfxx-mips.c (ABI_64_P): Remove superfluous check.
7086
 
7087
2002-08-07  Thiemo Seufer 
7088
 
7089
        * elf32-mips.c (mips_reloc_map): Fix typo.
7090
 
7091
2002-08-06  Alan Modra  
7092
 
7093
        * xcofflink.c (xcoff_write_global_symbol): Set n_scnum for abs_section.
7094
 
7095
2002-08-06  Alan Modra  
7096
 
7097
        * elf64-ppc.c (ppc64_elf_howto_raw): Zero all src_mask entries.
7098
 
7099
2002-08-06  Alan Modra  
7100
 
7101
        * libxcoff.h: Use PARAMS on function declarations.
7102
        * coff-rs6000.c (xcoff_generate_rtinit): Simplify size calc.
7103
        * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise.
7104
 
7105
        * coff-rs6000.c: (xcoff_rtype2howto): Don't place reloc address in
7106
        addend.
7107
        * coff64-rs6000.c: (xcoff64_rtype2howto): Likewise.
7108
 
7109
2002-08-06  Alan Modra  
7110
 
7111
        * coff-rs6000.c: Formatting fixes.
7112
        (xcoff_calculate_relocation): Use PARAMS in declaration.
7113
        (xcoff_complain_overflow): Likewise.
7114
        (xcoff_ppc_relocate_section): Use old-style function pointer call.
7115
        (bfd_xcoff_backend_data): Remove useless comments.
7116
        (rs6000coff_vec): Likewise.
7117
        (bfd_pmac_xcoff_backend_data): Likewise.
7118
        (pmac_xcoff_vec): Likewise.
7119
 
7120
        * coff64-rs6000.c: Formatting fixes.
7121
        (xcoff64_calculate_relocation): Use PARAMS in declaration.
7122
        (xcoff64_ppc_relocate_section): Use old-style function pointer call.
7123
        (bfd_xcoff_backend_data): Remove useless comments.
7124
        (rs6000coff64_vec): Likewise.
7125
        (bfd_xcoff_aix5_backend_data): Likewise.
7126
        (aix5coff64_vec): Likewise.
7127
 
7128
2002-08-06  Alan Modra  
7129
 
7130
        * coff-rs6000.c (xcoff_howto_table): Revert some of last change to
7131
        mask entries.  Use complain_overflow_dont for R_REF.
7132
        (xcoff_reloc_type_ba): Revert last change.
7133
        (xcoff_reloc_type_br): Likewise.
7134
        (xcoff_reloc_type_crel): Likewise.
7135
        (xcoff_ppc_relocate_section): Likewise.
7136
        * coff64-rs6000.c (xcoff64_reloc_type_br): Likewise.
7137
        (xcoff64_ppc_relocate_section): Likewise.
7138
        (xcoff64_howto_table): Revert some of last change to mask entries.
7139
        Use complain_overflow_dont for R_REF.
7140
 
7141
        * coff-rs6000.c (xcoff_howto_table): Fix src_mask entries.  Make all
7142
        relocs with bitsize == 16 have size = 1.
7143
        (xcoff_reloc_type_ba): Correct src_mask and dst_mask adjustment.
7144
        (xcoff_reloc_type_br): Likewise.
7145
        (xcoff_reloc_type_crel): Likewise.
7146
        (xcoff_ppc_relocate_section): Set up src_mask and dst_mask correctly.
7147
        * coff64-rs6000.c (xcoff64_reloc_type_br): Correct src_mask and
7148
        dst_mask adjustment.
7149
        (xcoff64_ppc_relocate_section): Set up src_mask and dst_mask correctly.
7150
        (xcoff64_howto_table): Fix src_mask entries.  Make all relocs with
7151
        bitsize == 16 have size = 1.
7152
 
7153
2002-08-01  Denis Chertykov  
7154
 
7155
        * elf32-ip2k.c: Processor manufacturer changed to Ubicom.
7156
        (struct misc): New field isymbuf. All free_* fields removed.
7157
        (symbol_value): Pass in internal syms. No need to swap syms in.
7158
        (ip2k_elf_relax_section): Use bfd_elf_get_elf_syms. Properly free
7159
        possibly cached info.
7160
        (tidyup_after_error): Removed.
7161
        (ip2k_elf_relax_section_pass1): Don't use removed fields of struct
7162
        misc. Use new field.
7163
        (adjust_all_relocations): Use internal syms. No need to swap syms
7164
        in and out.
7165
        (add_page_insn): Don't use removed fields of struct misc.
7166
 
7167
2002-08-01  Nick Clifton  
7168
 
7169
        * elf32-arm.h: Revert previous delta.
7170
 
7171
2002-08-01  Nick Clifton  
7172
 
7173
        * configure.in (AM_INIT_AUTOMAKE): Bump version number.
7174
        * configure: Regenerate.
7175
 
7176
2002-07-31  H.J. Lu 
7177
 
7178
        * config.bfd: Add x86-64 vector to Linux/i386 if 64bit BFD is
7179
        selected.
7180
 
7181
2002-07-31  H.J. Lu 
7182
 
7183
        * config.bfd: Add n32 vectors to 32bit Linux/mips if 64bit BFD
7184
        is selected.
7185
 
7186
2002-07-31  Jakub Jelinek  
7187
 
7188
        * elf32-i386.c (elf_i386_copy_indirect_symbol): Swap tls_type
7189
        if _bfd_elf_link_hash_copy_indirect will swap got.refcount.
7190
 
7191
2002-07-31  Ian Dall  
7192
 
7193
        * cpu-ns32k.c (_bfd_ns32k_put_immdeiate, _bfd_ns32k_get_immediate):
7194
        There is no 8 byte relocation type for this architecture.
7195
        (do_ns32k_reloc): Use bfd_vma instead of native types.
7196
        (bfd_ns32k_put_immediate, _bfd_ns32k_relocate_contents) put_data
7197
        returns void.
7198
        (_bfd_ns32k_put_displacement): Don't check for overflow. We can
7199
        rely on generic code to do that.
7200
        * aout-ns32k.c (howto_table): Add appropriate overflow detection
7201
        to all table entries.
7202
        (_bfd_ns32k_relocate_contents): put_data returns void.
7203
        * ns32k.h: (_bfd_ns32k_put_displacement, _bfd_ns32k_put_immediate)
7204
        (_bfd_do_ns32k_reloc_contents): Fix prototypes. put data functions
7205
        return void.
7206
 
7207
2002-07-31  Ian Dall  
7208
 
7209
        * aoutx.h (aout_link_check_ar_symbols): Whether to include an
7210
        archive object is target dependant.
7211
 
7212
2002-07-31  Adam Nemet  
7213
 
7214
        * elf32-arm.h (ARM_PLT_ENTRY_SIZE): Rename PLT_ENTRY_SIZE.
7215
        (THUMB_PLT_ENTRY_SIZE): New macro.
7216
        (PLT_ENTRY_SIZE): Return the appropriate *_PLT_ENTRY_SIZE.
7217
        (elf32_arm_plt0_entry): Rename PLT_ENTRY_SIZE to
7218
        ARM_PLT_ENTRY_SIZE.
7219
        (elf32_arm_plt_entry): Likewise.
7220
        (elf_backend_plt_header_size): Likewise.
7221
        (elf32_thumb_plt0_entry): New global.
7222
        (elf32_arm_finish_dynamic_sections): Use it.  Put Thumb entries
7223
        into .plt.thumb.
7224
        (elf32_thumb_plt_entry): New global.
7225
        (elf32_arm_finish_dynamic_symbol): Use it.  Use .thumb.plt for
7226
        Thumb entries.  Set the bottom bit of the corresponding GOT entry
7227
        for a Thumb PLT entry.
7228
        (struct elf32_arm_plt_entry_info): New structure.
7229
        (struct elf32_arm_link_hash_entry, plt_info): New member of this
7230
        type.
7231
        (elf32_arm_link_hash_newfunc): Initialize new member.
7232
        (elf32_arm_final_link_relocate, R_ARM_THM_PC22 case): Handle
7233
        relocations against the PLT.
7234
        (elf32_arm_check_relocs, case R_ARM_PLT32 case): Set
7235
        first_rel_type if this is the first time we encounter the symbol.
7236
        (elf32_arm_check_relocs, case R_ARM_THM_PC22 case): New case.
7237
        Determine if relocation needs a PLT entry.  Set first_rel_type if
7238
        this is the first time we encounter the symbol
7239
        (elf32_arm_adjust_dynamic_symbol): Create PLT entries for Thumb
7240
        functions as well.
7241
        (elf32_arm_size_dynamic_sections): Handle .plt.thumb like .plt.
7242
        (elf32_arm_create_dynamic_sections): New function.  Create the
7243
        .plt.thumb section.
7244
        (elf_backend_create_dynamic_sections): Call it.
7245
 
7246
2002-07-31  Nick Clifton  
7247
 
7248
        * bfd.c (bfd_alt_mach_code): Rename parameter 'index' to
7249
        'alternative' in order to avoid shadowing global symbol of the
7250
        same name.
7251
        * bfd-in2.h: Regenerate.
7252
        * libbfd.h: Regenerate.
7253
        * libcoff.h: Regenerate.
7254
 
7255
2002-07-31  Thiemo Seufer 
7256
 
7257
        * Makefile.am: Add n32 ABI support.
7258
        * Makefile.in: Regenerate.
7259
        * config.bfd: Add n32 vectors to mips64*-*-linux* targets. Treat 64
7260
        bit vectors for mips*-*-linux targets as optional.
7261
        * configure.in: Add n32 ABI vectors.
7262
        * configure: Regenerate.
7263
        * elf32-mips.c (mips_elf32_object_p): Reject n32 ABI files.
7264
        * elfn32-mips.c: New file, n32 ABI support.
7265
        * targets.c: Add n32 ABI vectors.
7266
 
7267
2002-07-30  Graeme Peterson  
7268
 
7269
        * elfarmqnx-nabi.c: New file: Support for QNX.
7270
        * config.bfd: Add support for arm-*-nto target.
7271
        * configure.in: Add support for bfd_elf32_{big|little}armqnx_vec.
7272
        * configure: Regenerate.
7273
        * Makefile.am: Add entries for elfarmqnx-nabi.c.
7274
        * Makefile.in: Regenerate.
7275
        * elf32-arm.h (ELF_MAXPAGESIZE): Do not define if already defined.
7276
        Do not define global function if ELFARM_NABI_C_INCLUDED is defined.
7277
        * elfarm-nabi.c: Do not include elf32-arm.h if
7278
        ELFARM_NABI_C_INCLUDED is defined.
7279
        * targets.c: Add bfd_elf32_{big|little}armqnx_vec.
7280
 
7281
2002-07-30  Nick Clifton  
7282
 
7283
        * po/sv.po: Updated Swedish translation.
7284
 
7285
2002-07-30  Jakub Jelinek  
7286
 
7287
        * elf.c (elf_fake_sections): Fix up .tbss sh_size and sh_type.
7288
 
7289
2002-07-30  Alan Modra  
7290
 
7291
        * aoutx.h (some_aout_object_p): Clean up tdata properly on error.
7292
        * archive.c (bfd_generic_archive_p): Likewise.
7293
        * coff-rs6000.c (_bfd_xcoff_archive_p): Likewise.
7294
        (_bfd_xcoff_archive_p): Use bfd_scan_vma in place of strtol.
7295
        * coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
7296
        (xcoff64_archive_p): Likewise.
7297
        (xcoff64_openr_next_archived_file): Likewise.
7298
        (xcoff64_archive_p): Clean up tdata properly on error.
7299
        * coffgen.c (coff_real_object_p): Likewise.
7300
        (coff_object_p): Release filehdr and opthdr.
7301
        * ecoff.c (_bfd_ecoff_archive_p): Clean up tdata properly on error.
7302
        * ieee.c (ieee_archive_p): Likewise.
7303
        * ihex.c (ihex_object_p): Likewise.
7304
        (ihex_mkobject): Always allocate tdata.
7305
        * peicode.h (pe_ILF_object_p): Release bfd_alloc'd buffer on error.
7306
        * srec.c (srec_mkobject): Always allocate tdata.
7307
        (srec_object_p): Clean up tdata properly on error.
7308
        (symbolsrec_object_p): Likewise.
7309
        * versados.c (versados_object_p): Likewise.
7310
        * vms-misc.c (_bfd_vms_get_record): Use bfd_malloc instead of malloc,
7311
        and bfd_realloc instead of realloc.
7312
        (add_new_contents): Use bfd_alloc instead of bfd_malloc for sections.
7313
        * vms.c (vms_initialize): Always allocate tdata.  Use bfd_alloc in
7314
        place of bfd_malloc, simplifying error freeing.  Free hash table too.
7315
        (vms_object_p): Clean up tdata on error.
7316
        (vms_mkobject): Don't complain on stderr if vms_initialize fails.
7317
        (vms_close_and_cleanup): Adjust for bfd_alloc use.
7318
 
7319
2002-07-30  Alan Modra  
7320
 
7321
        * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags.
7322
 
7323
2002-07-26  Chris Demetriou  
7324
 
7325
        * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE
7326
        flags into resulting BFD.
7327
 
7328
2002-07-26  Alan Modra  
7329
 
7330
        From John Reiser 
7331
        * elf32-i386.c (elf_i386_link_hash_table_create): Clear
7332
        tls_ldm_got.refcount.
7333
 
7334
2002-07-25  Thiemo Seufer 
7335
 
7336
        * elf64-mips.c: Update TODO comment.
7337
        (mips_elf64_higher_reloc,mips_elf64_highest_reloc,
7338
        mips_elf64_gprel16_reloca): Remove prototypes.
7339
        (mips16_jump_reloc,mips16_gprel_reloc): Add functions.
7340
        (UNUSED_RELOC): Replace by EMPTY_RELOC.
7341
        (mips_elf64_howto_table_rel): Use special R_MIPS_HI16 handling. Remove
7342
        wrong comments. Remove disfunctional support of R_MIPS_HIGHER and
7343
        R_MIPS_HIGHEST.
7344
        (mips_elf64_howto_table_rela): Fix handling of R_MIPS_GPREL16 and
7345
        R_MIPS_GOT16. Remove wrong comments.
7346
        (elf_mips16_jump_howto,elf_mips16_gprel_howto,
7347
        elf_mips_gnu_vtinherit_howto,elf_mips_gnu_vtentry_howto): New, code
7348
        from elf32-mips.c.
7349
        (mips_elf64_hi16_reloc): Fix formatting.
7350
        (mips_elf64_higher_reloc,mips_elf64_highest_reloc): Remove.
7351
        (mips_elf64_got16_reloc): Fix formatting. Remove superfluous code.
7352
        Better comment. Fall back to R_MIPS_GOT_DISP instead of abort().
7353
        (mips_elf64_gprel16_reloc): Make static. Add check for
7354
        partial_inplace.
7355
        (mips_elf64_gprel16_reloca): Remove.
7356
        (mips_elf64_literal_reloc): New function.
7357
        (mips_elf64_gprel32_reloc): Fix formatting.
7358
        (mips_elf64_shift6_reloc): Fix comment. Make static.
7359
        (mips16_jump_reloc,mips16_gprel_reloc): New functions, code from
7360
        elf32-mips.c.
7361
        (elf_reloc_map,mips_reloc_map): New mapping table, similiar as in
7362
        elf32-mips.c
7363
        (bfd_elf64_bfd_reloc_type_lookup): Use the mapping table. Enable GNU
7364
        specific relocations.
7365
        (mips_elf64_rtype_to_howto): Enable GNU specific relocations.
7366
        (mips_elf64_object_p): Invert logic to check for SGI-ish ABI.
7367
        (ELF_MAXPAGESIZE): Add comment.
7368
 
7369
2002-07-25  Nick Clifton  
7370
 
7371
        * po/sv.po: Updated Swedish translation.
7372
        * po/es.po: Updated Spanish translation.
7373
        * po/fr.po: Updated French translation.
7374
 
7375
2002-07-25  Alan Modra  
7376
 
7377
        * elf-bfd.h (_bfd_elf32_link_record_local_dynamic_symbol): Define
7378
        as elf_link_record_local_dynamic_symbol.
7379
        (_bfd_elf64_link_record_local_dynamic_symbol): Likewise.
7380
        (elf_link_record_local_dynamic_symbol): Declare.  Now returns int.
7381
        * elflink.h (elf_link_record_local_dynamic_symbol): Move to..
7382
        * elflink.c: .. here.  Use bfd_elf_get_elf_syms.  Check whether an
7383
        attempt is made to record a symbol in a discarded section, and
7384
        return `2' in that case.
7385
 
7386
2002-07-24  Nick Clifton  
7387
 
7388
        * po/sv.po: Updated Swedish translation.
7389
        * po/es.po: Updated Spanish translation.
7390
 
7391
2002-07-23  Alan Modra  
7392
 
7393
        * po/SRC-POTFILES.in: Regenerate.
7394
 
7395
        * elf-hppa.h (elf_hppa_relocate_section): If relocatable, return
7396
        immediately.  Remove code handling relocatable linking.
7397
        * elf32-avr.c (elf32_avr_relocate_section): Likewise.
7398
        * elf32-cris.c (cris_elf_relocate_section): Likewise.
7399
        * elf32-fr30.c (elf32_frv_relocate_section): Likewise.
7400
        * elf32-frv.c (elf32_frv_relocate_section): Likewise.
7401
        * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
7402
        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
7403
        * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
7404
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
7405
        * elf32-v850.c (v850_elf_relocate_section): Likewise.
7406
        * elf32-vax.c (elf_vax_relocate_section): Likewise.
7407
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
7408
        * elf32-avr.c (elf_backend_rela_normal): Define.
7409
        * elf32-cris.c: Likewise.
7410
        * elf32-fr30.c: Likewise.
7411
        * elf32-frv.c: Likewise.
7412
        * elf32-h8300.c: Likewise.
7413
        * elf32-hppa.c: Likewise.
7414
        * elf32-ip2k.c: Likewise.
7415
        * elf32-sparc.c: Likewise.
7416
        * elf32-v850.c: Likewise.
7417
        * elf32-vax.c: Likewise.
7418
        * elf64-hppa.c: Likewise.
7419
        * elf64-sparc.c: Likewise.
7420
        * elf32-fr30.c (elf32_frv_relocate_section): Edit comment.
7421
        * elf32-frv.c (elf32_frv_relocate_section): Likewise.
7422
        * elf32-i860.c (elf32_i860_relocate_section): Likewise.
7423
        * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
7424
        * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
7425
        * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
7426
        * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
7427
        * elf-m10200.c (USE_RELA): Don't define.
7428
        * elf-m10300.c: Likewise.
7429
        * elfarm-oabi.c: Likewise.
7430
        * elf32-i370.c: Likewise.
7431
        * elf32-ip2k.c: Likewise.
7432
        * elf32-m68k.c: Likewise.
7433
        * elf32-mcore.c: Likewise.
7434
        * elf32-ppc.c: Likewise.
7435
        * elf32-s390.c: Likewise.
7436
        * elf32-vax.c: Likewise.
7437
        * elf64-ppc.c: Likewise.
7438
        * elf64-s390.c: Likewise.
7439
        * elf64-x86-64.c: Likewise.
7440
        * elfxx-ia64.c: Likewise.
7441
        * elf32-avr.c (USE_REL): Don't undef.
7442
        * elf32-ip2k.c: Likewise.
7443
 
7444
2002-07-23  Nick Clifton  
7445
 
7446
        * elf-bfd.h (struct elf_backend_data): Add new bitfield
7447
        'want_p_paddr_set_to_zero'.
7448
        * elfxx-target.h: Set default value for want_p_paddr_set_to_zero
7449
        to false;
7450
        * elfxx-ia64.c: Set want_p_paddr_set_zero for HPUX target.
7451
        * elf.c (copy_private_bfd_data): Test want_p_paddr_set_zero.
7452
 
7453
2002-07-23  Gabor Keresztfalvi  
7454
 
7455
        * nlmcode.h (nlm_swap_auxiliary_headers_out): Swapped the order of
7456
        the MeSsAgEs and CoPyRiGhT tags to make >=NW4.x NLM loaders to
7457
        show the Copyright string.
7458
        Minor formatting tidy ups.
7459
 
7460
2002-07-23  Nick Clifton  
7461
 
7462
        * po/fr.po: Updated French translation.
7463
        * po/sv.po: Updated Swedish translation.
7464
 
7465
2002-07-23  Alan Modra  
7466
 
7467
        * elflink.h (elf_link_input_bfd): Don't change internal symbols
7468
        when outputting relocs.
7469
 
7470
2002-07-20  Jason Thorpe  
7471
 
7472
        * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only insert
7473
        DT_PLTGOT into the dynamic section if there is a PLT.
7474
 
7475
2002-07-19  Thiemo Seufer 
7476
 
7477
        * elfxx-mips.c (_bfd_mips_elf_discard_info): New function, code from
7478
        elf32-mips.c.
7479
        (_bfd_mips_elf_write_section): Likewise.
7480
        * elfxx-mips.h (_bfd_mips_elf_discard_info): New prototype.
7481
        (_bfd_mips_elf_write_section): Likewise.
7482
        * elf32-mips.c (elf32_mips_discard_info): Move to elfxx-mips.c.
7483
        (elf32_mips_write_section): Likewise.
7484
        * elf64-mips.c (_bfd_mips_elf_ignore_discarded_relocs): Use it.
7485
        (_bfd_mips_elf_write_section): Likewise.
7486
 
7487
2002-07-19  Alan Modra  
7488
 
7489
        * elfxx-ia64.c: (elfNN_ia64_modify_segment_map): Properly scan
7490
        PT_IA_64_UNWIND segments for a given section.
7491
 
7492
2002-07-17  H.J. Lu 
7493
 
7494
        * Makefile.am: Fix a typo.
7495
        * Makefile.in: Regenerate.
7496
 
7497
2002-07-15  Denis Chertykov  
7498
            Frank Ch. Eigler  
7499
            Ben Elliston  
7500
            Alan Lehotsky  
7501
            John Healy  
7502
            Graham Stott  
7503
            Jeff Johnston  
7504
 
7505
        * Makefile.am: Add support for ip2k.
7506
        * Makefile.in: Regenerate.
7507
        * doc/Makefile.in: Regenerate.
7508
        * archures.c: Add support for ip2k.
7509
        * config.bfd: Add support for ip2k.
7510
        * configure.in: Add support for ip2k.
7511
        * configure: Regenerate.
7512
        * reloc.c: Add support for ip2k.
7513
        * targets.c: Add support for ip2k.
7514
        * bfd-in2.h: Regenerate.
7515
        * libbfd.h: Regenerate.
7516
        * cpu-ip2k.c: New file.
7517
        * elf32-ip2k.c: New file.
7518
 
7519
2002-07-17  Ian Rickards  
7520
 
7521
        * dwarf2.c (concat_filename): If we can't establish the directory
7522
        just return the filename.
7523
 
7524
2002-07-16  Moritz Jodeit  
7525
 
7526
        * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Correct order of memset args.
7527
 
7528
2002-07-16  Alan Modra  
7529
 
7530
        * elflink.h: Formatting fixes, tidy prototypes.
7531
        (elf_link_assign_sym_version): Move common code out of loop.
7532
 
7533
2002-07-16  Alan Modra  
7534
 
7535
        * elflink.h (elf_link_input_bfd): Don't call reloc_emitter when
7536
        reloc section size is zero.  Correct reloc output location.
7537
 
7538
2002-07-16  John David Anglin  
7539
 
7540
        * elf-hppa.h (elf_hppa_reloc_final_type): Use R_PARISC_PCREL16F as
7541
        the final type for the e_fsel selector when generating PA2.0W code.
7542
        (elf_hppa_relocate_insn): Provide support for PA2.0W 16-bit format 1
7543
        relocations.
7544
 
7545
2002-07-14  H.J. Lu 
7546
 
7547
        * elflink.h (elf_link_assign_sym_version): Hide the default
7548
        definition if there is a hidden versioned definition.
7549
 
7550
2002-07-12  Hans-Peter Nilsson  
7551
 
7552
        * elf32-cris.c (cris_elf_relocate_section): Drop nonsensical
7553
        dynamic reference test in assertion when initializing GOT with
7554
        static contents.  Just assert that there are either no dynamic
7555
        sections, the symbol is defined in the regular objects or that the
7556
        symbol is undef weak.  Tweak comment.
7557
        (elf_cris_finish_dynamic_symbol): Emit .got reloc for a program
7558
        only if the symbol isn't defined in the program and isn't undef
7559
        weak.
7560
        (elf_cris_adjust_dynamic_symbol): Simplify condition for getting
7561
        rid of PLT entry: only do it if the symbol isn't defined in a DSO.
7562
        When doing so, clear ELF_LINK_HASH_NEEDS_PLT.  Tweak comments.
7563
        (elf_cris_discard_excess_program_dynamics): Don't consider
7564
        ELF_LINK_HASH_REF_DYNAMIC when omitting .got runtime relocs.
7565
 
7566
2002-07-11  Alan Modra  
7567
 
7568
        * elf32-i386.c (elf_i386_relocate_section): Don't complain about
7569
        unresolved debugging relocs in dynamic applications.
7570
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
7571
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
7572
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
7573
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
7574
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
7575
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
7576
 
7577
2002-07-10  Alan Modra  
7578
 
7579
        * elf64-ppc.c (ONES): Define.
7580
        (ppc64_elf_howto_table): Use ONES here to avoid warnings.  Fill in
7581
        missing src_mask fields.  Tweak R_PPC64_NONE, R_PPC64_COPY.  Fill
7582
        in missing dst_mask fields on R_PPC64_PLT32, R_PPC64_PLTREL32.
7583
 
7584
        * elf64-ppc.c (ppc64_elf_get_symbol_info): Delete.
7585
        (ppc64_elf_set_private_flags): Delete.
7586
        (ppc64_elf_section_from_shdr): Delete.
7587
        (ppc64_elf_merge_private_bfd_data): Remove flag checking/merging code.
7588
        (ppc64_elf_fake_sections): Delete.
7589
        (bfd_elf64_bfd_set_private_flags): Don't define.
7590
        (bfd_elf64_get_symbol_info): Likewise.
7591
        (elf_backend_section_from_shdr): Likewise.
7592
        (elf_backend_fake_sections): Likewise.
7593
 
7594
2002-07-10  Marco Walther  
7595
 
7596
        * elf.c: (assign_section_numbers) Set sh_entsize for .stab only
7597
        when not already set.
7598
        * elf64-sparc.c: (sparc64_elf_fake_sections): New function.
7599
        (elf_backend_fake_sections): Define.
7600
 
7601
2002-07-10  Alan Modra  
7602
 
7603
        * merge.c (_bfd_merge_section): Remove redundant output_section check.
7604
        Formatting.
7605
        (_bfd_merge_sections): Don't set SEC_EXCLUDE on unused sections.
7606
 
7607
2002-07-09  Hans-Peter Nilsson  
7608
 
7609
        * elf32-cris.c (cris_elf_relocate_section): Move sanity-check for
7610
        NULL sym_hashes to just before use.
7611
        : In test for local symbol, accept also
7612
        symbol with non-default visibility.
7613
        : Ditto.
7614
        :
7615
        Ditto.
7616
        (cris_elf_gc_sweep_hook): Only decrease h->plt.refcount for
7617
        symbol with non-default visibility.
7618
        (cris_elf_check_relocs): At tests for local symbol before
7619
        increasing h->plt.refcount, also check for non-default
7620
        visibility.  Ditto when checking for local symbol to eliminate
7621
        pc-relative runtime relocs.
7622
 
7623
2002-07-08  Alan Modra  
7624
 
7625
        * elf.c: Formatting.
7626
        (IS_SOLARIS_PT_INTERP): Add p_paddr and p_memsz checks.
7627
        (INCLUDE_SECTION_IN_SEGMENT): Remove IS_SOLARIS_PT_INTERP.
7628
        (copy_private_bfd_data): Set p_vaddr on broken Solaris PT_INTERP
7629
        segments.
7630
 
7631
2002-07-07  Mark Mitchell  
7632
            Alan Modra  
7633
 
7634
        * cofflink.c (_bfd_coff_final_link): On PE COFF systems, take into
7635
        account the impact of relocation count overflow when computing
7636
        section offsets.
7637
        * coffcode.h (coff_write_relocs): Use obj_pe when deciding whether
7638
        or not to apply the PE COFF reloc overflow handling.  Fix a
7639
        fencepost error in deciding whether or not to use that technique.
7640
 
7641
2002-07-07  Alan Modra  
7642
 
7643
        * elf-bfd.h (struct elf_reloc_cookie): Remove locsym_shndx,
7644
        change type of locsyms.
7645
        (bfd_elf_get_elf_syms): Declare.
7646
        * elf.c (bfd_elf_get_elf_syms): New function.
7647
        (group_signature): Use bfd_elf_get_elf_syms.
7648
        (bfd_section_from_r_symndx): Likewise.
7649
        * elfcode.h (elf_slurp_symbol_table): Likewise.
7650
        * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
7651
        (elf_link_add_object_symbols): Likewise.  Reorganise to increase
7652
        locality of various data structures.  Properly free internal relocs.
7653
        (elf_bfd_final_link): Properly free internal relocs.
7654
        (elf_link_check_versioned_symbol): Use bfd_elf_get_elf_syms.
7655
        (elf_link_input_bfd): Likewise.
7656
        (elf_gc_mark): Likewise.  Properly free internal relocs.
7657
        (elf_gc_sweep): Properly free internal relocs.
7658
        (elf_reloc_symbol_deleted_p): No need to swap syms in.
7659
        (elf_bfd_discard_info): Use bfd_elf_get_elf_syms.  Properly free
7660
        internal relocs.
7661
        * elf-m10200.c (mn10200_elf_relax_section): Use bfd_elf_get_elf_syms.
7662
        Properly free possibly cached info.
7663
        (mn10200_elf_relax_delete_bytes): Remove symbol swapping code.
7664
        (mn10200_elf_symbol_address_p): Pass in internal syms.  Remove
7665
        symbol swapping code.
7666
        (mn10200_elf_get_relocated_section_contents): Use bfd_elf_get_elf_syms.
7667
        Properly free possibly cached info.
7668
        * elf-m10300.c (mn10300_elf_relax_section): As above for elf-m10200.c.
7669
        (mn10300_elf_relax_delete_bytes): Likewise.
7670
        (mn10300_elf_symbol_address_p): Likewise.
7671
        (mn10300_elf_get_relocated_section_contents): Likewise.
7672
        * elf32-h8300.c (elf32_h8_relax_section): As above for elf-m10200.c.
7673
        (elf32_h8_relax_delete_bytes): Likewise.
7674
        (elf32_h8_symbol_address_p): Likewise.
7675
        (elf32_h8_get_relocated_section_contents): Likewise.
7676
        * elf32-m32r.c (m32r_elf_relax_section): As above for elf-m10200.c.
7677
        (m32r_elf_relax_delete_bytes): Likewise.
7678
        (m32r_elf_get_relocated_section_contents): Likewise.
7679
        * elf32-sh.c (sh_elf_reloc_loop): Free section contents using
7680
        elf_section_data to determine whether cached.
7681
        (sh_elf_relax_section): As above for elf-m10200.c.
7682
        (sh_elf_relax_delete_bytes): Likewise.
7683
        (sh_elf_get_relocated_section_contents): Likewise.
7684
        * elf32-xstormy16.c (xstormy16_elf_relax_section): As above.
7685
        * elf64-alpha.c (elf64_alpha_relax_section): As above.  Also delay
7686
        reading of local syms.
7687
        * elf64-mmix.c (mmix_elf_relax_section): Likewise.
7688
        * elf64-sh64.c (sh_elf64_get_relocated_section_contents): As above.
7689
        * elfxx-ia64.c (elfNN_ia64_relax_section): As above.
7690
        * elfxx-mips.c (_bfd_mips_elf_check_relocs): Properly free internal
7691
        relocs.
7692
        * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Properly
7693
        free internal relocs and section contents.  Don't read symbols.
7694
        * elf32-hppa.c (get_local_syms): Use bfd_elf_get_elf_syms.
7695
        (elf32_hppa_size_stubs): Don't free local syms.
7696
        * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Delay
7697
        reading of local syms.  Use bfd_elf_get_elf_syms.  Properly free
7698
        possibly cached info.
7699
        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
7700
        * elf64-hppa.c (elf64_hppa_check_relocs): Use bfd_elf_get_elf_syms.
7701
        * elf64-ppc.c (struct ppc_link_hash_table): Delete bfd_count and
7702
        all_local_syms.
7703
        (get_local_syms): Delete function.
7704
        (edit_opd): Use bfd_elf_get_elf_syms.  Free on error exit.  Cache
7705
        on exit.
7706
        (ppc64_elf_size_stubs): Use bfd_elf_get_elf_syms.  Free/cache on exit.
7707
 
7708
2002-07-05  Jim Wilson  
7709
 
7710
        * syms.c (decode_section_type): New.
7711
        (bfd_decode_symclass): Call decode_section_type.
7712
 
7713
2002-07-04  Jakub Jelinek  
7714
 
7715
        * merge.c (_bfd_merged_section_offset): Avoid accessing byte before
7716
        section content start.
7717
        Reported by Michael Schumacher .
7718
 
7719
2002-07-04  Alan Modra  
7720
 
7721
        * section.c (_bfd_strip_section_from_output): Remove unnecessary
7722
        link order code.  Don't actually remove the output section here;
7723
        Just set a flag for the linker to do so.
7724
        * elflink.c (_bfd_elf_link_renumber_dynsyms): Test for removed
7725
        sections when setting up output section dynsyms.
7726
 
7727
2002-07-04  Alan Modra  
7728
 
7729
        * elflink.h (elf_link_add_object_symbols): Revert 1999-09-02 hpux
7730
        fudge.
7731
        * elf.c (bfd_section_from_shdr): Work around broken hpux shared
7732
        libs here instead.
7733
 
7734
2002-07-02  Martin Schwidefsky  
7735
 
7736
        * elf64-s390.c (create_got_section): Set .got section alignment to
7737
        8 bytes.
7738
        (elf_s390_check_relocs): Set .rela.dyn section alignment to 8 bytes.
7739
 
7740
2002-07-02  Alan Modra  
7741
 
7742
        * elf.c (_bfd_elf_reloc_type_class): Fix comment grammar.
7743
 
7744
2002-07-01  Matt Thomas  
7745
 
7746
        * elf32-vax.c (elf32_vax_print_private_bfd_data): Change EF_*
7747
        to EF_VAX_*.
7748
 
7749
2002-07-01  Thiemo Seufer 
7750
 
7751
        * elfxx-mips.c (ABI_64_P): Fix comment.
7752
        (MIPS_ELF_OPTIONS_SECTION_NAME,MIPS_ELF_STUB_SECTION_NAME): Use the
7753
        new section names for N64 ABI.
7754
        (mips_elf_output_extsym): No special _gp_disp handling for NewABI.
7755
        (mips_elf_calculate_relocation): Code formatting.
7756
        (mips_elf_create_dynamic_relocation): Likewise.
7757
        (_bfd_mips_elf_fake_sections): IRIX6 needs this hack, too.
7758
        (_bfd_mips_elf_size_dynamic_sections): Handle GOT_PAGE for any NewABI.
7759
        (_bfd_mips_elf_relocate_section): No special handling for R_MIPS_64
7760
        in any NewABI.
7761
        (_bfd_mips_elf_finish_dynamic_symbol): No special _gp_disp handling
7762
        for NewABI.
7763
        (_bfd_mips_elf_modify_segment_map): Handle any N64 ABI.
7764
        (_bfd_mips_elf_gc_sweep_hook): NewABI GOT relocs should be handled
7765
        here, too.
7766
 
7767
2002-07-01  Andreas Schwab  
7768
 
7769
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Only convert
7770
        R_X86_64_64 to R_X86_64_RELATIVE.
7771
 
7772
2002-07-01  John David Anglin  
7773
 
7774
        * vaxbsd.c: New BFD backend for VAX BSD and Ultrix.
7775
        * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add new backend.
7776
        Run "make dep-am".
7777
        * config.bfd (vax-*-bsd* | vax-*-ultrix*): Use vaxbsd_vec instead of
7778
        host_aout_vec.
7779
        * configure.in (vaxbsd_vec): Add.
7780
        * targets.c (vaxbsd_vec): Add.
7781
        * Makefile.in: Rebuild.
7782
        * configure: Rebuild.
7783
        * po/SRC-POTFILES.in: Rebuild.
7784
 
7785
2002-07-01  Alan Modra  
7786
 
7787
        * elflink.h (elf_gc_mark): Pass in the section whose relocs we are
7788
        examining to gc_mark_hook, rather than the bfd.
7789
        (elf_gc_sections): Adjust.
7790
        * elf-bfd.h (struct elf_backend_data ): Likewise.
7791
        * elf-m10300.c (mn10300_elf_gc_mark_hook): Likewise.
7792
        * elf32-arm.h (elf32_arm_gc_mark_hook): Likewise.
7793
        * elf32-avr.c (elf32_avr_gc_mark_hook): Likewise.
7794
        * elf32-cris.c (cris_elf_gc_mark_hook): Likewise.
7795
        * elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise.
7796
        * elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise.
7797
        * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise.
7798
        * elf32-i386.c (elf_i386_gc_mark_hook): Likewise.
7799
        * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise.
7800
        * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise.
7801
        * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise.
7802
        * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise.
7803
        * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise.
7804
        * elf32-s390.c (elf_s390_gc_mark_hook): Likewise.
7805
        * elf32-sh.c (sh_elf_gc_mark_hook): Likewise.
7806
        * elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise.
7807
        * elf32-v850.c (v850_elf_gc_mark_hook): Likewise.
7808
        * elf32-vax.c (elf_vax_gc_mark_hook): Likewise.
7809
        * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise.
7810
        * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise.
7811
        * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
7812
        * elf64-s390.c (elf_s390_gc_mark_hook): Likewise.
7813
        * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
7814
        * elfxx-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise.
7815
        * elfxx-mips.h (_bfd_mips_elf_gc_mark_hook): Likewise.
7816
        * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise.
7817
        * elf32-frv.c (elf32_frv_gc_mark_hook): Likewise.  Also remove
7818
        redundant local sym tests.
7819
        * elf64-ppc.c (struct ppc_link_hash_entry): Add is_entry.
7820
        (link_hash_newfunc): Init is_entry.
7821
        (ppc64_elf_copy_indirect_symbol): Copy is_entry.
7822
        (ppc64_elf_link_hash_table_create): Init all_local_syms.
7823
        (create_linkage_sections): Use bfd_make_section_anyway rather than
7824
        bfd_make_section.
7825
        (ppc64_elf_mark_entry_syms): New function.
7826
        (ppc64_elf_check_relocs): Don't bother testing elf_bad_symtab.  Set
7827
        up opd entry to function section map.
7828
        (ppc64_elf_gc_mark_hook): Special case opd section relocs, and
7829
        relocs that reference the opd section.
7830
        (edit_opd): New function.
7831
        (ppc64_elf_size_dynamic_sections): Call get_local_syms and edit_opd.
7832
        (ppc64_elf_setup_section_lists): Don't calculate htab->bfd_count here.
7833
        (get_local_syms): Do so here.  Exit if we already have local syms.
7834
        Remove bogus comment imported from elf32-hppa.c.  Don't attempt to
7835
        read local syms on non-ELF input.
7836
        (ppc64_elf_size_stubs): Call _bfd_elf64_link_read_relocs rather
7837
        than duplicating it's function here.  Adjust free of internal
7838
        relocs to suit.
7839
        (ppc64_elf_relocate_section): Adjust local syms in opd section.
7840
        * elf64-ppc.h (ppc64_elf_mark_entry_syms): Declare.
7841
        * elf32-hppa.c (elf32_hppa_size_stubs): Call
7842
        _bfd_elf32_link_read_relocs rather than duplicating it's function
7843
        here.  Adjust free of internal relocs to suit.
7844
 
7845
2002-07-01  Andreas Jaeger  
7846
 
7847
        * elf64-x86-64.c (elf64_x86_64_check_relocs): Certain relocations
7848
        are not allowed in shared libs code, enforce -fPIC.
7849
 
7850
2002-06-29  Hans-Peter Nilsson  
7851
 
7852
        * mmo.c (mmo_write_loc_chunk): Don't eliminate leading and
7853
        trailing zero-sequences when there's previous left-over data.
7854
 
7855
2002-06-27  John David Anglin  
7856
 
7857
        * elf64-hppa.c (elf64_hppa_reloc_type_class): New function.
7858
        (elf64_hppa_finish_dynamic_sections): Check other_rel_sec, dlt_rel_sec
7859
        and opd_rel_sec in order for starting rela section.  Check _raw_size.
7860
        (elf_backend_reloc_type_class): Define.
7861
 
7862
2002-06-27  Kevin Buettner 
7863
 
7864
        * dwarf2.c (decode_line_info): Handle older, non-standard, 64-bit
7865
        DWARF2 formats.
7866
 
7867
2002-06-27  Alan Modra  
7868
 
7869
        * cpu-powerpc.c: Comment on ordering of arch_info.
7870
        * elf32-ppc.c (ppc_elf_object_p): New function.
7871
        (elf_backend_object_p): Define.
7872
        * elf64-ppc.c (ppc64_elf_object_p): New function.
7873
        (elf_backend_object_p): Define.
7874
 
7875
2002-06-26  Jason Thorpe  
7876
 
7877
        * configure.in (vax-*-netbsd*): Set COREFILE to netbsd-core.lo.
7878
        * configure: Regenerate.
7879
 
7880
2002-06-25  Jason Eckhardt  
7881
 
7882
        * dwarf2.c (decode_line_info): Check unit->addr_size
7883
        to read in the proper number of prologue bytes.
7884
 
7885
2002-06-25  Nick Clifton  
7886
 
7887
        * config.bfd (powerpc-*-aix5*): Only create a selvecs for
7888
        aix5coff64_vec if 64-bit bfd support has been enabled.
7889
        (powerpc64-*-aix5*): Only define if 64-bit bfd support has
7890
        been enabled.
7891
 
7892
        * targets.c (_bfd_target_vector[]): Only include
7893
        aix5coff64_vec if 64-bit bfd support has been enabled.
7894
 
7895
2002-06-25  Alan Modra  
7896
 
7897
        * elf64-ppc.c (ppc_add_stub): Replace strcpy/strncpy with memcpy.
7898
        * elf32-hppa.c (hppa_add_stub): Likewise.
7899
        * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise.
7900
        * elflink.h (elf_add_default_symbol): Fix comment typo.
7901
        (elf_add_default_symbol): Replace strcpy and strncpy with memcpy.
7902
        (elf_link_add_object_symbols): Likewise.
7903
        (elf_link_assign_sym_version): Likewise.
7904
        * hash.c (bfd_hash_lookup): Likewise.
7905
        * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
7906
        * section.c (bfd_get_unique_section_name): Likewise.
7907
        * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
7908
        * elf.c (_bfd_elf_make_section_from_phdr): Likewise.
7909
        (assign_section_numbers): Likewise.
7910
        (_bfd_elfcore_make_pseudosection): Likewise.
7911
        (elfcore_grok_lwpstatus): Likewise.
7912
        (elfcore_grok_win32pstatus): Likewise.
7913
        (elfcore_write_note): Constify input params.  Use PTR instead of
7914
        void *.  Include terminating NUL in namesz.  Correct padding.
7915
        Support NULL "name" param.  Use memcpy instead of strcpy.
7916
        (elfcore_write_prpsinfo): Constify input params.
7917
        (elfcore_write_prstatus): Likewise.  Use PTR instead of void *.
7918
        (elfcore_write_lwpstatus): Likewise.
7919
        (elfcore_write_pstatus): Likewise.
7920
        (elfcore_write_prfpreg): Likewise.
7921
        (elfcore_write_prxfpreg): Likewise.
7922
        * elf-bfd.h (elfcore_write_note): Update declaration.
7923
        (elfcore_write_prpsinfo): Likewise.
7924
        (elfcore_write_prstatus): Likewise.
7925
        (elfcore_write_pstatus): Likewise.
7926
        (elfcore_write_prfpreg): Likewise.
7927
        (elfcore_write_prxfpreg): Likewise.
7928
        (elfcore_write_lwpstatus): Likewise.
7929
 
7930
2002-06-25  Jason Eckhardt  
7931
 
7932
        * ecoff.c (ecoff_set_symbol_info): Set BSF_FUNCTION for
7933
        symbols of type stProc and stStaticProc.
7934
 
7935
2002-06-25  Nick Clifton  
7936
 
7937
        * ecoff.c: VArious formatting fixes.
7938
 
7939
2002-06-25  Alan Modra  
7940
 
7941
        * coff-rs6000.c (xcoff_generate_rtinit): Fix typo.
7942
 
7943
2002-06-25  Alan Modra  
7944
 
7945
        * aout-adobe.c: Don't compare against "true" or "false.
7946
        * aout-target.h: Likewise.
7947
        * aoutx.h: Likewise.
7948
        * archive.c: Likewise.
7949
        * bout.c: Likewise.
7950
        * cache.c: Likewise.
7951
        * coff-a29k.c: Likewise.
7952
        * coff-alpha.c: Likewise.
7953
        * coff-i386.c: Likewise.
7954
        * coff-mips.c: Likewise.
7955
        * coff-or32.c: Likewise.
7956
        * coff64-rs6000.c: Likewise.
7957
        * coffcode.h: Likewise.
7958
        * coffgen.c: Likewise.
7959
        * cpu-ns32k.c: Likewise.
7960
        * ecoff.c: Likewise.
7961
        * ecofflink.c: Likewise.
7962
        * elf.c: Likewise.
7963
        * elf32-arm.h: Likewise.
7964
        * elf32-cris.c: Likewise.
7965
        * elf32-d30v.c: Likewise.
7966
        * elf32-i386.c: Likewise.
7967
        * elf32-mcore.c: Likewise.
7968
        * elf32-ppc.c: Likewise.
7969
        * elf32-sh.c: Likewise.
7970
        * elf32-sh64.c: Likewise.
7971
        * elf32-v850.c: Likewise.
7972
        * elf64-alpha.c: Likewise.
7973
        * elf64-sh64.c: Likewise.
7974
        * elfcode.h: Likewise.
7975
        * elfcore.h: Likewise.
7976
        * elflink.h: Likewise.
7977
        * elfxx-mips.c: Likewise.
7978
        * i386os9k.c: Likewise.
7979
        * ieee.c: Likewise.
7980
        * libbfd.c: Likewise.
7981
        * linker.c: Likewise.
7982
        * mmo.c: Likewise.
7983
        * nlm32-alpha.c: Likewise.
7984
        * nlm32-i386.c: Likewise.
7985
        * nlm32-ppc.c: Likewise.
7986
        * nlm32-sparc.c: Likewise.
7987
        * nlmcode.h: Likewise.
7988
        * oasys.c: Likewise.
7989
        * pdp11.c: Likewise.
7990
        * peicode.h: Likewise.
7991
        * reloc.c: Likewise.
7992
        * som.c: Likewise.
7993
        * srec.c: Likewise.
7994
        * tekhex.c: Likewise.
7995
        * vms.c: Likewise.
7996
        * xcofflink.c: Likewise.
7997
        * elf64-sparc.c: Edit comment to not use "== false".
7998
 
7999
        * aoutf1.h: Don't use "? true : false".
8000
        * ecoff.c: Likewise.
8001
        * format.c: Likewise.
8002
        * ieee.c: Likewise.
8003
        * linker.c: Likewise.
8004
        * mmo.c: Likewise.
8005
        * oasys.c: Likewise.
8006
 
8007
2002-06-23  H.J. Lu  
8008
 
8009
        * elflink.h (elf_link_add_archive_symbols): For the default
8010
        version, check references with only one `@' first.
8011
 
8012
2002-06-23  John David Anglin  
8013
 
8014
        * elf64-hppa.c (elf64_hppa_mark_milli_and_exported_functions): New
8015
        function.
8016
        (allocate_global_data_dlt): Don't add millicode symbols to dynamic
8017
        symbol table.
8018
        (allocate_global_data_opd, allocate_dynrel_entries): Likewise.
8019
        (elf64_hppa_size_dynamic_sections): Revise to use
8020
        elf64_hppa_mark_milli_and_exported_functions.
8021
        (elf64_hppa_finish_dynamic_symbol): Remove code to keep millicode
8022
        symbols out of dynamic symbol table.
8023
 
8024
2002-06-23  Alan Modra  
8025
 
8026
        * Makefile.in: Regenerate.
8027
        * libbfd.h: Regenerate.
8028
        * bfd-in2.h: Regenerate.
8029
        * configure: Regenerate.
8030
        * po/SRC-POTFILES.in: Regenerate.
8031
 
8032
        * elflink.h: Comment typo fixes.
8033
 
8034
2002-06-23  H.J. Lu  
8035
 
8036
        * elf-bfd.h (elf_link_loaded_list): New structure.
8037
        (elf_link_hash_table): Add "loaded".
8038
        * elf.c (_bfd_elf_link_hash_table_init): Initialize "loaded".
8039
        * elflink.h (elf_link_check_versioned_symbol): New function.
8040
        (elf_link_output_extsym): Call elf_link_check_versioned_symbol.
8041
 
8042
2002-06-19  Nick Clifton  
8043
 
8044
        * elflink.h (size_dynamic_sections): If the target does not
8045
        support an ELF style hash table, return true, indicating that
8046
        nothing needed to be done, rather than false, indicating that the
8047
        section's size could not be computed.
8048
 
8049
2002-06-18  Dave Brolley  
8050
 
8051
        From Catherine Moore, Michael Meissner, Dave Brolley:
8052
        * po/SRC-POTFILES.in: Add cpu-frv.c and elf32-frv.c
8053
        * targets.c: Support bfd_elf32_frv_vec.
8054
        * reloc.c: Add FRV relocs.
8055
        * configure.in: Add support for bfd-elf32-frv-vec.
8056
        * config.bfd (targ_cpu): Add support for frv-*-elf.
8057
        * archures.c: Add frv arch and machines.
8058
        * Makefile.am (ALL_MACHINES): Add cpu-frv.lo.
8059
        (ALL_MACHINES_CFILES): Add cpu-frv.c.
8060
        (BFD32_BACKENDS): Add elf32-frv.lo.
8061
        (BFD32_BACKENDS_CFILES): Add elf32-frv.c
8062
        (cpu-frv.lo): New target.
8063
        (elf32-frv.lo): New target.
8064
        * cpu-frv.c: New file.
8065
        * elf32-frv.c: New file.
8066
 
8067
2002-06-18  Jakub Jelinek  
8068
 
8069
        * elfcode.h (elf_object_p): Sanity check eh_shoff == 0 implies
8070
        e_shnum == 0.
8071
        Only read the first section header if e_shoff is non-zero.
8072
        Don't consider e_shstrndx if there are no sections.
8073
 
8074
2002-06-17  Tom Rix 
8075
 
8076
        * elf32-d10v.c (elf_d10v_howto_table): Change R_D10V_10_PCREL_R,
8077
        R_D10V_10_PCREL_L and R_D10V_18_PCREL to use
8078
        complain_overflow_bitfield.
8079
 
8080
2002-06-17  Alan Modra  
8081
 
8082
        * opncls.c (bfd_openr): Remove redundant bfd_set_error.
8083
        (bfd_fdopenr): Likewise.
8084
        (bfd_openstreamr): Likewise.
8085
        (bfd_openw): Likewise.
8086
 
8087
        * targets.c: Sort target vecs.
8088
        (_bfd_target_vector): Add aix5coff64_vec, bfd_elf32_sh64_vec,
8089
        bfd_elf32_sh64l_vec, bfd_elf32_sh64lnbsd_vec,
8090
        bfd_elf32_sh64nbsd_vec, bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec,
8091
        bfd_elf64_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec.
8092
        * configure.in: Sort target vecs.  Add m88kmach3_vec.
8093
        * configure: Regenerate.
8094
 
8095
2002-06-16  Hans-Peter Nilsson  
8096
 
8097
        * elf64-mmix.c (bpo_reloc_request_sort_fn): Use member
8098
        bpo_reloc_no to break sort order ties, not address of items.
8099
 
8100
2002-06-16  John David Anglin  
8101
 
8102
        * elf-hppa.h (elf_hppa_final_link): Fix formatting in comment.
8103
        Skip excluded sections in determing __gp value.
8104
        (elf_hppa_final_link_relocate): Use the symbol's address in
8105
        R_PARISC_FPTR64 relocations that don't need an opd entry.
8106
        * elf64-hppa.c (allocate_dynrel_entries): Simplify code.
8107
        (elf64_hppa_finalize_dynreloc): Likewise.
8108
        (elf64_hppa_size_dynamic_sections): Move comments and fix typo.
8109
        (elf64_hppa_finish_dynamic_symbol): Break up assert.
8110
 
8111
2002-06-14  Sergey Grigoriev  
8112
 
8113
        * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
8114
        alignment for .bss, .data and .text sections so that sse and sse2
8115
        code will work.
8116
        * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
8117
 
8118
2002-06013  J"orn Rennecke  
8119
 
8120
        config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*,
8121
        sh[1234]*-elf*.
8122
 
8123
2002-06-12  John David Anglin  
8124
 
8125
        * elflink.h (elf_bfd_final_link): Improve error handling for missing
8126
        dynamic sections.
8127
 
8128
        * elf64-hppa.c (allocate_global_data_opd): We don't need an opd entry
8129
        for a symbol that has no output section.
8130
        (allocate_dynrel_entries): Correct comment.
8131
        (elf64_hppa_finalize_dynreloc): Likewise.  Don't create an opd entry
8132
        unless we want one.
8133
        (elf64_hppa_finalize_opd): Prevent segfault if dyn_h is NULL.
8134
        (elf64_hppa_finalize_dlt): Likewise.  Prevent segfault for symbols
8135
        with no section.  Remove unnecessary parentheses.
8136
 
8137
2002-06-11  Tom Rix  
8138
 
8139
        * coffcode.h (coff_compute_section_file_positions): Add data
8140
        section to AIX loader alignment check.
8141
 
8142
        * coff-rs6000.c (_bfd_xcoff_mkobject): Set default text section
8143
        alignment to 4 bytes.
8144
        (_bfd_xcoff_copy_private_bfd_data): Use text and data alignment
8145
        power accessor macro.
8146
        (do_shared_object_padding): Remove invalid assertion.
8147
 
8148
2002-06-10  Richard Sandiford  
8149
 
8150
        * section.c (_bfd_strip_section_from_output): Set SEC_EXCLUDE
8151
        for removed output sections.
8152
 
8153
2002-06-10  Geoffrey Keating  
8154
 
8155
        * merge.c (merge_strings): Use htab_create_alloc with calloc, not
8156
        htab_alloc.
8157
        * elf-strtab.c (_bfd_elf_strtab_finalize): Likewise.
8158
 
8159
2002-06-08  H.J. Lu 
8160
 
8161
        * elf.c (copy_private_bfd_data): Don't cast to bfd_size_type to
8162
        work around a long long bug in gcc 2.96 on mips.
8163
 
8164
2002-06-08  Jason Thorpe  
8165
 
8166
        * Makefile.am (BFD32_BACKENDS): Add vax1knetbsd.lo.
8167
        (BFD32_BACKENDS_CFILES): Add vax1knetbsd.c.
8168
        Regenerate dependency lists.
8169
        * Makefile.in: Regenerate.
8170
        * config.bfd (vax-*-netbsdelf*, vax-*-netbsdaout*): Add
8171
        vax1knetbsd_vec to targ_selvecs.
8172
        * configure.in: Add vax1knetbsd_vec.
8173
        * configure: Regenerate.
8174
        * targets.c (_bfd_target_vector): Add vax1knetbsd_vec.
8175
        * vax1knetbsd.c: New file.
8176
        * vaxnetbsd.c: Update copyright years.
8177
        (TARGET_PAGE_SIZE): Set to 0x1000.
8178
        (DEFAULT_MID): Set to M_VAX4K_NETBSD.
8179
 
8180
2002-06-08  Matt Thomas  
8181
 
8182
        * libaout.h (enum machine_type): Add M_VAX4K_NETBSD.
8183
 
8184
2002-06-08  Alan Modra  
8185
 
8186
        * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Make static.
8187
 
8188
2002-06-08  Alan Modra  
8189
 
8190
        * Makefile.am: Run "make dep-am".
8191
        * Makefile.in: Regenerate.
8192
 
8193
        * armnetbsd.c: Replace CONST with const.
8194
        * corefile.c: Likewise.
8195
        * elf32-dlx.c: Likewise.
8196
        * elf64-mips.c: Likewise.
8197
        * mmo.c: Likewise.
8198
        * ns32knetbsd.c: Likewise.
8199
 
8200
        * elf64-sparc.c (sparc64_elf_add_symbol_hook): Check the hash
8201
        table is elf64-sparc.
8202
 
8203
2002-06-08  Thiemo Seufer 
8204
 
8205
        * elfxx-mips.c (_bfd_mips_elf_relocate_section): Simplify code.
8206
        Fix RELA addends to get not shifted in the result. Don't do special
8207
        handling of R_MIPS_64 for NewABI.
8208
 
8209
2002-06-07  Alan Modra  
8210
 
8211
        * aoutx.h (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc.
8212
        (NAME(aout,slurp_reloc_table)): Likewise.
8213
        * coff-mips.c (mips_relax_section): Use bfd_zalloc.
8214
        * coff-rs6000.c (xcoff_write_armap_big): Use bfd_zmalloc.
8215
        (xcoff_write_archive_contents_big): Likewise.
8216
        (xcoff_generate_rtinit): Likewise.
8217
        (xcoff_generate_rtinit): Likewise, and check error return.
8218
        * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise.
8219
        * coffgen.c (coff_section_symbol): Use bfd_zalloc.
8220
        (coff_get_normalized_symtab): Likewise.
8221
        (coff_make_empty_symbol): Likewise.
8222
        (bfd_coff_set_symbol_class): Likewise.
8223
        * cofflink.c (coff_link_add_symbols): Likewise.
8224
        * ecoff.c (_bfd_ecoff_make_empty_symbol): Likewise.
8225
        * ecofflink.c (ecoff_write_shuffle): Use bfd_zmalloc.
8226
        (bfd_ecoff_write_accumulated_debug): Likewise.
8227
        * elf64-alpha.c (get_got_entry): Use bfd_zalloc.
8228
        * i386linux.c (bfd_i386linux_size_dynamic_sections): Likewise.
8229
        * i386lynx.c (NAME(lynx,slurp_reloc_table)): Use bfd_zmalloc.
8230
        * ieee.c (do_with_relocs): Use bfd_zalloc.
8231
        * m68klinux.c (bfd_m68klinux_size_dynamic_sections): Likewise.
8232
        * pdp11.c (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc.
8233
        (NAME(aout,slurp_reloc_table)): Likewise.
8234
        (NAME(aout,squirt_out_relocs)): Don't memset when zalloc'd.
8235
        * reloc16.c (bfd_coff_reloc16_relax_section): Use bfd_zmalloc.
8236
        * som.c (som_build_and_write_symbol_table): Likewise.
8237
        (som_slurp_string_table): Likewise.
8238
        (som_slurp_symbol_table): Likewise.
8239
        (som_bfd_ar_write_symbol_stuff): Likewise.
8240
        * sparclinux.c (bfd_sparclinux_size_dynamic_sections): Use bfd_zalloc.
8241
        * sunos.c (bfd_sunos_size_dynamic_sections): Likewise.
8242
        * tekhex.c (find_chunk): Likewise.  Get rid of unused "sname".
8243
        * vms-gsd.c (_bfd_vms_slurp_gsd): Use bfd_zmalloc.
8244
        * xcofflink.c (xcoff_link_add_symbols): Use bfd_zalloc/bfd_zmalloc.
8245
 
8246
2002-06-07  Alan Modra  
8247
 
8248
        * elf-bfd.h (struct bfd_elf_section_data ): Replace with
8249
        "group" union.
8250
        (elf_group_name): Update.
8251
        (elf_group_id): Define.
8252
        (bfd_elf_set_group_contents): Declare.
8253
        * elf.c (elf_fake_sections): Qualify use of elf_group_name.
8254
        (set_group_contents): Rename to bfd_elf_set_group_contents.  Remove
8255
        ATTRIBUTE_UNUSED from failedptrarg.  If elf_group_id is set, use
8256
        that sym for the signature.
8257
        (_bfd_elf_compute_section_file_positions): Don't call
8258
        set_group_contents for "ld -r" case.
8259
        (swap_out_syms): Use bfd_zalloc.
8260
        * elflink.h (elf_link_add_archive_symbols): Likewise.
8261
        (NAME(bfd_elf,size_dynamic_sections)): Likewise.
8262
        (elf_bfd_final_link): Call bfd_elf_set_group_contents.
8263
 
8264
2002-06-07  Alan Modra  
8265
 
8266
        * elf64-ppc.c (ppc64_elf_relocate_section): Allow unresolved
8267
        relocs in opd for non-shared too.
8268
 
8269
2002-06-06  Jeffrey Law  
8270
 
8271
        * elf32-h8300.c (elf32_h8_relax_section): Ignore uninteresting
8272
        relocations.
8273
 
8274
2002-06-06  Nick Clifton  
8275
 
8276
        * merge.c: Include libiberty.h.
8277
        * elf-strtab.c: Include libiberty.h.
8278
 
8279
2002-06-06  Elias Athanasopoulos  
8280
 
8281
        * peXXigen.c (pe_print_idata): Remove unused variable.
8282
 
8283
2002-06-06  David Heine 
8284
 
8285
        * elf.c (assign_file_positions_for_segments): Remove unallocated
8286
        sections from the section to segment mapping for PT_LOAD segments.
8287
        Update comment about empty loadable segments.
8288
 
8289
2002-06-06  Richard Sandiford  
8290
 
8291
        * stabs.c (_bfd_link_section_stabs): Check that the symbol offset
8292
        is within the .stabstr section.
8293
 
8294
2002-06-06  Alan Modra  
8295
 
8296
        * elf-bfd.h (struct elf_size_info ): Function args
8297
        are "const PTR", not "const PTR *".
8298
        (bfd_elf32_swap_symbol_in): Likewise.
8299
        (bfd_elf64_swap_symbol_in): Likewise.
8300
        * elfcode.h (elf_swap_symbol_in): Change input args to const PTR.
8301
        (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
8302
        * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
8303
        (elf_link_add_object_symbols): Likewise.
8304
        (elf_link_record_local_dynamic_symbol): Likewise.
8305
        (elf_link_input_bfd): Likewise.
8306
        (elf_gc_mark): Likewise.
8307
        (elf_reloc_symbol_deleted_p): Likewise.
8308
        * elf-m10200.c (mn10200_elf_relax_section): Likewise.
8309
        (mn10200_elf_relax_delete_bytes): Likewise.
8310
        (mn10200_elf_symbol_address_p): Likewise.
8311
        (mn10200_elf_get_relocated_section_contents): Likewise.
8312
        * elf-m10300.c (mn10300_elf_relax_section): Likewise.
8313
        (mn10300_elf_relax_section): Likewise.
8314
        (mn10300_elf_relax_delete_bytes): Likewise.
8315
        (mn10300_elf_symbol_address_p): Likewise.
8316
        (mn10300_elf_get_relocated_section_contents): Likewise.
8317
        * elf32-h8300.c (elf32_h8_relax_section): Likewise.
8318
        (elf32_h8_relax_delete_bytes): Likewise.
8319
        (elf32_h8_symbol_address_p): Likewise.
8320
        (elf32_h8_get_relocated_section_contents): Likewise.
8321
        * elf32-hppa.c (get_local_syms): Likewise.
8322
        * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
8323
        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
8324
        * elf32-sh.c (sh_elf_relax_section): Likewise.
8325
        (sh_elf_relax_delete_bytes): Likewise.
8326
        (sh_elf_get_relocated_section_contents): Likewise.
8327
        * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
8328
        * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
8329
        * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
8330
        * elf64-mmix.c (mmix_elf_relax_section): Likewise.
8331
        * elf64-ppc.c (get_local_syms): Likewise.
8332
        * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
8333
        * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
8334
 
8335
2002-06-05  J"orn Rennecke 
8336
 
8337
        * config.bfd (sh64l*-*-elf*, shl*-*-elf*): New configurations.
8338
 
8339
2002-06-05  Alan Modra  
8340
 
8341
        * elf.c (group_signature): Swap in the whole symbol, and handle
8342
        extracting section symbol names.
8343
        (setup_group): Add comment.
8344
        (set_group_contents): When called from objcopy or ld, arrange for
8345
        section contents to be written.  Write group member output section
8346
        indices to allow objcopy to reorganize sections.
8347
        (_bfd_elf_copy_private_section_data): Copy group info.
8348
 
8349
        * elf-bfd.h (struct elf_size_info): Add swap_symbol_in field.
8350
        (bfd_elf32_swap_symbol_in): Update prototype.
8351
        (bfd_elf64_swap_symbol_in): Likewise.
8352
        * elfcode.h (elf_swap_symbol_in): Change input args to const PTR *.
8353
        (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
8354
        * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
8355
        (elf_link_add_object_symbols): Likewise.
8356
        (elf_link_record_local_dynamic_symbol): Likewise.
8357
        (elf_link_input_bfd): Likewise.
8358
        (elf_gc_mark): Likewise.
8359
        (elf_reloc_symbol_deleted_p): Likewise.
8360
        * elf-m10200.c (mn10200_elf_relax_section): Likewise.
8361
        (mn10200_elf_relax_delete_bytes): Likewise.
8362
        (mn10200_elf_symbol_address_p): Likewise.
8363
        (mn10200_elf_get_relocated_section_contents): Likewise.
8364
        * elf-m10300.c (mn10300_elf_relax_section): Likewise.
8365
        (mn10300_elf_relax_section): Likewise.
8366
        (mn10300_elf_relax_delete_bytes): Likewise.
8367
        (mn10300_elf_symbol_address_p): Likewise.
8368
        (mn10300_elf_get_relocated_section_contents): Likewise.
8369
        * elf32-h8300.c (elf32_h8_relax_section): Likewise.
8370
        (elf32_h8_relax_delete_bytes): Likewise.
8371
        (elf32_h8_symbol_address_p): Likewise.
8372
        (elf32_h8_get_relocated_section_contents): Likewise.
8373
        * elf32-hppa.c (get_local_syms): Likewise.
8374
        * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
8375
        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
8376
        * elf32-sh.c (sh_elf_relax_section): Likewise.
8377
        (sh_elf_relax_delete_bytes): Likewise.
8378
        (sh_elf_get_relocated_section_contents): Likewise.
8379
        * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
8380
        * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
8381
        * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
8382
        * elf64-mmix.c (mmix_elf_relax_section): Likewise.
8383
        * elf64-ppc.c (get_local_syms): Likewise.
8384
        * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
8385
        * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
8386
        * elfcode.h (NAME(_bfd_elf,size_info)): Update initialiser.
8387
        * elf64-alpha.c (alpha_elf_size_info): Likewise.
8388
        * elf64-hppa.c (hppa64_elf_size_info): Likewise.
8389
        * elf64-mips.c (mips_elf64_size_info): Likewise.
8390
        * elf64-s390.c (s390_elf64_size_info): Likewise.
8391
        * elf64-sparc.c (sparc64_elf_size_info): Likewise.
8392
 
8393
2002-06-05  Maciej W. Rozycki  
8394
 
8395
        * elf32-mips.c (elf32_mips_ignore_discarded_relocs): Move to...
8396
        elfxx-mips.c (_bfd_mips_elf_ignore_discarded_relocs): ... here.
8397
        elf64-mips.c (elf_backend_ignore_discarded_relocs): Use
8398
        _bfd_mips_elf_ignore_discarded_relocs.
8399
        elfxx-mips.h (_bfd_mips_elf_ignore_discarded_relocs): Declare.
8400
 
8401
2002-06-05  H.J. Lu 
8402
 
8403
        * elfxx-mips.c (mips_elf_calculate_relocation): Call
8404
        _bfd_elf_rel_local_sym for STT_SECTION relocations against
8405
        the SEC_MERGE section.
8406
 
8407
2002-06-05  Alan Modra  
8408
 
8409
        * coff-alpha.c: Update copyright date.
8410
        * coff-mips.c: Likewise.
8411
        * xcoff-target.h: Likewise.
8412
 
8413
        * bfd-in.h: Remove "taken from the source" comment.
8414
        * libbfd-in.h: Likewise.
8415
        * libcoff-in.h: Likewise.
8416
        * bfd-in2.h: Regenerate.
8417
        * libbfd.h: Regenerate.
8418
        * libcoff.h: Regenerate.
8419
 
8420
        * elf.c (bfd_elf_discard_group): Return true.
8421
        * elf-bfd.h (bfd_elf_discard_group): Declare.
8422
        * bfd-in.h (bfd_elf_discard_group): Don't declare here.
8423
        * section.c (bfd_discard_group): Rename to bfd_generic_discard_group.
8424
        * bfd.c (bfd_discard_group): Define.
8425
        * targets.c (struct bfd_target): Add _bfd_discard_group.
8426
        (BFD_JUMP_TABLE_LINK): Here too.
8427
        * libbfd-in.h (_bfd_nolink_bfd_discard_group): Define.
8428
        * aout-adobe.c (aout_32_bfd_discard_group): Define.
8429
        * aout-target.h (MY_bfd_discard_group): Define.
8430
        * aout-tic30.c (MY_bfd_discard_group): Define.
8431
        * binary.c (binary_bfd_discard_group): Define.
8432
        * bout.c (b_out_bfd_discard_group): Define.
8433
        * coff-alpha.c (_bfd_ecoff_bfd_discard_group): Define.
8434
        * coffcode.h (coff_bfd_discard_group): Define.
8435
        * coff-mips.c (_bfd_ecoff_bfd_discard_group): Define.
8436
        * elfxx-target.h (bfd_elfNN_bfd_discard_group): Define.
8437
        * i386msdos.c (msdos_bfd_discard_group): Define.
8438
        * i386os9k.c (os9k_bfd_discard_group): Define.
8439
        * ieee.c (ieee_bfd_discard_group): Define.
8440
        * ihex.c (ihex_bfd_discard_group): Define.
8441
        * mmo.c (mmo_bfd_discard_group): Define.
8442
        * nlm-target.h (nlm_bfd_discard_group): Define.
8443
        * oasys.c (oasys_bfd_discard_group): Define.
8444
        * ppcboot.c (ppcboot_bfd_discard_group): Define.
8445
        * som.c (som_bfd_discard_group): Define.
8446
        * srec.c (srec_bfd_discard_group): Define.
8447
        * tekhex.c (tekhex_bfd_discard_group): Define.
8448
        * versados.c (versados_bfd_discard_group): Define.
8449
        * vms.c (vms_bfd_discard_group): Define.
8450
        * xcoff-target.h (_bfd_xcoff_bfd_discard_group): Define.
8451
        * coff64-rs6000.c (rs6000coff64_vec): Update initialiser.
8452
        (aix5coff64_vec): Likewise.
8453
        * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise.
8454
 
8455
2002-06-04  Jason Thorpe  
8456
 
8457
        * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-com.lo.
8458
        (BFD32_BACKENDS_CFILES): Add elf32-sh64-com.c.
8459
        (elf32-sh64-com.lo): New dependency list.
8460
        * Makefile.in: Regenerate.
8461
        * configure.in (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec)
8462
        (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec): Add
8463
        elf32-sh64-com.lo.
8464
        * configure: Regenerate.
8465
        * elf32-sh64.c (sh64_address_in_cranges)
8466
        (sh64_get_contents_type, sh64_address_is_shmedia): Move to...
8467
        (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb):
8468
        (crange_bsearch_cmpl): Prepend _bfd_sh64_ to name and move to...
8469
        * elf32-sh64-com.c: ...here.  New file.
8470
 
8471
2002-06-04  Alan Modra  
8472
 
8473
        * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove
8474
        ATTRIBUTE_UNUSED on used params.
8475
        * elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks
8476
        before calling bfd_section_from_elf_index on local syms.
8477
        * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
8478
 
8479
2002-06-04  Jason Thorpe  
8480
 
8481
        * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
8482
        (BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
8483
        (BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
8484
        (BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
8485
        (elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
8486
        * Makefile.in: Regenerate.
8487
        * config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
8488
        (sh64-*-netbsd*): New targets.
8489
        * configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
8490
        bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
8491
        * configure: Regenerate.
8492
        * elf32-sh64-nbsd.c: New file.
8493
        * elf64-sh64-nbsd.c: New file.
8494
        * targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
8495
        bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
8496
        bfd_elf64_sh64lnbsd_vec.
8497
 
8498
2002-06-04  Alan Modra  
8499
 
8500
        * elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups.
8501
        (bfd_section_from_shdr): Likewise.  Set section name of group
8502
        sections from signature.
8503
        (group_signature): Split out from setup_group.  Ensure symbol table
8504
        is available.
8505
        (bfd_elf_discard_group): New function.
8506
        (_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on
8507
        .gnu.linkonce* sections if they are members of a group.
8508
        (set_group_contents): Set GRP_COMDAT flag.
8509
        * section.c (bfd_discard_group): New function.
8510
        * bfd-in.h (bfd_elf_discard_group): Declare.
8511
        * bfd-in2.h: Regenerate.
8512
        * elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field.
8513
        (elf_linkonce_p): Define.
8514
 
8515
2002-06-04  Alan Modra  
8516
 
8517
        * elf.c (bfd_section_from_shdr): Make "name" const.
8518
        * elf-bfd.h (elf_backend_section_from_shdr): Likewise.
8519
        * elf32-i370.c (i370_elf_section_from_shdr): Likewise.
8520
        * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
8521
        * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise.
8522
        * elf32-v850.c (v850_elf_section_from_shdr): Likewise.
8523
        * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise.
8524
        * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
8525
        * elf64-ppc.c (ppc64_elf_section_from_shdr): Likewise.
8526
        * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
8527
        * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise.
8528
        * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise.
8529
 
8530
2002-06-03  Maciej W. Rozycki  
8531
 
8532
        * elfxx-mips.c (ABI_64_P): Use backend's data to determine the
8533
        ABI.
8534
 
8535
2002-06-02  Kazu Hirata  
8536
 
8537
        * elf32-arc.c: Fix formatting.
8538
        * elf32-arm.h: Likewise.
8539
        * elf32-cris.c: Likewise.
8540
        * elf32-dlx.c: Likewise.
8541
        * elf32-hppa.c: Likewise.
8542
        * elf32-i386.c: Likewise.
8543
        * elf32-i386qnx.c: Likewise.
8544
        * elf32-or32.c: Likewise.
8545
        * elf32-s390.c: Likewise.
8546
        * elf32-sh64.c: Likewise.
8547
        * elf32-vax.c: Likewise.
8548
        * elf32-xstormy16.c: Likewise.
8549
        * elf64-alpha.c: Likewise.
8550
        * elf64-mmix.c: Likewise.
8551
        * elf64-ppc.c: Likewise.
8552
        * elf64-s390.c: Likewise.
8553
        * elf64-sh64.c: Likewise.
8554
        * elf64-x86-64.c: Likewise.
8555
 
8556
2002-06-02  Richard Henderson  
8557
 
8558
        * elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference
8559
        null when there are no got entries for a symbol.
8560
        (elf64_alpha_relax_find_tls_segment): Rearrange to avoid
8561
        uninitialized variable warning.
8562
 
8563
2002-06-01  Richard Henderson  
8564
 
8565
        * elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for
8566
        undefined symbols here.
8567
        (elf64_alpha_relax_section): Do it here.  Also test for not
8568
        defined in the current module.
8569
        (elf64_alpha_relocate_section_r): Split out of ...
8570
        (elf64_alpha_relocate_section): ... here.  Don't dereference
8571
        NULL when looking up local got entries.
8572
 
8573
2002-06-01  Richard Henderson  
8574
 
8575
        * elf64-alpha.c (elf64_alpha_relax_with_lituse): Reject undefined
8576
        symbols from JSR relaxation.
8577
        (elf64_alpha_size_plt_section_1): New.
8578
        (elf64_alpha_calc_dynrel_sizes): Split out .rela.got bits ...
8579
        (elf64_alpha_size_rela_got_1): ... here.
8580
        (elf64_alpha_size_dynamic_sections): Split out .rela.got bits ...
8581
        (elf64_alpha_size_rela_got_section): ... here.
8582
        (elf64_alpha_size_plt_section): New.
8583
        (elf64_alpha_relax_section): Call them.
8584
        (elf64_alpha_size_got_sections): Remove output_bfd arg.
8585
        (elf64_alpha_finish_dynamic_symbol): Check gotent use_count.
8586
 
8587
2002-06-01  Richard Henderson  
8588
 
8589
        * elf64-alpha.c (alpha_get_dtprel_base, alpha_get_tprel_base): New.
8590
        (elf64_alpha_relocate_section): Use them.  Reject LE TLS relocs
8591
        in shared libraries.  Fix DTPRELHI and TPRELHI value.
8592
        (INSN_ADDQ, INSN_RDUNIQ): New.
8593
        (struct alpha_relax_info): Add symtab_hdr, tls_segment, first_gotent.
8594
        (elf64_alpha_relax_with_lituse): Return boolean.  Remove irelend
8595
        argument.  Reject dynamic symbols.  Use LITUSE symbolic constants.
8596
        (elf64_alpha_relax_got_load): Rename from relax_without_lituse.
8597
        Handle GOTDTPREL and GOTTPREL relocations.
8598
        (elf64_alpha_relax_gprelhilo): New.
8599
        (elf64_alpha_relax_tls_get_addr): New.
8600
        (elf64_alpha_relax_find_tls_segment): New.
8601
        (elf64_alpha_relax_section): Handle TLS relocations.
8602
        (ALPHA_ELF_LINK_HASH_TLS_IE): New.
8603
        (elf64_alpha_check_relocs): Set it.
8604
 
8605
2002-06-01  Richard Henderson  
8606
 
8607
        * elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp.
8608
 
8609
        * elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic
8610
        check; don't suppress dynamic relocs for non-allocated sections.
8611
 
8612
        * elf64-alpha.c: Remove dead code.
8613
 
8614
2002-05-31  Alan Modra  
8615
 
8616
        * bfd-in2.h: Regenerate.
8617
        * libbfd.h: Regenerate.
8618
        * po/SRC-POTFILES.in: Regenerate.
8619
 
8620
        * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Don't allocate
8621
        space for bss .plt.
8622
 
8623
2002-05-31  Graeme Peterson  
8624
 
8625
        * Makefile.am (BFD32_BACKENDS): Add elf32-i386qnx.lo.
8626
        (BFD32_BACKENDS_CFILES): Add elf32-i386qnx.c.
8627
        Run "make dep-am".
8628
        * Makefile.in: Regenerate.
8629
        * config.bfd: Add i[3456]86-*-nto-qnx* support.
8630
        * configure.in: Add bfd_elf32_i386qnx_vec support.
8631
        * configure: Regenerate.
8632
        * elf-bfd.h (struct elf_backend_data): Add set_nonloadable_filepos,
8633
        is_contained_by_filepos, and copy_private_bfd_data_p.
8634
        * elf.c (assign_file_positions_for_segments): Call backend
8635
        set_nonloadable_filepos.  Fix non-K&R call to _bfd_error_handler.
8636
        (IS_CONTAINED_BY_FILEPOS): Define.
8637
        (INCLUDE_SECTION_IN_SEGMENT): Also test IS_CONTAINED_BY_FILEPOS.
8638
        (copy_private_bfd_data): Use IS_CONTAINED_BY_FILEPOS.  Typo fix.
8639
        Fix non-K&R call to _bfd_error_handler.
8640
        (_bfd_elf_copy_private_section_data): Use backend
8641
        copy_private_bfd_data_p.
8642
        * elf32-i386.c: Don't include elfxx-target.h when
8643
        ELF32_I386_C_INCLUDED is defined.
8644
        * elf32-i386qnx.c: New QNX elf backend file.
8645
        * elfxx-target.h: Add elf_backend_set_nonloadable_filepos,
8646
        elf_backend_is_contained_by_filepos, and
8647
        elf_backend_do_copy_private_bfd_data.
8648
        * targets.c: Add bfd_target bfd_elf32_i386qnx_vec.
8649
 
8650
2002-05-31  Alan Modra  
8651
 
8652
        * elfarm-oabi.c (bfd_elf32_arm_add_glue_sections_to_bfd): Define.
8653
        Move other similar defines to start of file.
8654
 
8655
2002-05-30  Tom Rix  
8656
 
8657
        * coff-rs6000.c (xcoff_rtype2howto): Handle 16 bit R_RBA.
8658
        * coff64-rs6000.c (xcoff64_rtype2howto): Same.
8659
 
8660
2002-05-30  Richard Henderson  
8661
 
8662
        * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_TLSGD,
8663
        ALPHA_ELF_LINK_HASH_LU_TLSLDM, ALPHA_ELF_LINK_HASH_LU_FUNC): New.
8664
        (ALPHA_ELF_GOT_ENTRY_RELOCS_DONE): Remove.
8665
        (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Remove.
8666
        (struct alpha_elf_got_entry): Add reloc_type, reloc_done, reloc_xlated.
8667
        (struct alpha_elf_obj_tdata): Rename total_got_entries and
8668
        n_local_got_entries to total_got_size and local_got_size.
8669
        (elf64_alpha_howto, elf64_alpha_reloc_map): Update for TLS relocs.
8670
        (alpha_got_entry_size): New.
8671
        (elf64_alpha_relax_with_lituse): Use it.
8672
        (elf64_alpha_relax_without_lituse): Likewise.
8673
        (MAX_GOT_SIZE): Rename from MAX_GOT_ENTRIES.
8674
        (get_got_entry): New.
8675
        (elf64_alpha_check_relocs): Handle TLS relocs.  Reorganize.
8676
        (elf64_alpha_adjust_dynamic_symbol): Test LU_FUNC as a mask.
8677
        (elf64_alpha_merge_ind_symbols): Check gotent->reloc_type.
8678
        (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots): Likewise.
8679
        (elf64_alpha_calc_got_offsets_for_symbol): Use alpha_got_entry_size.
8680
        (elf64_alpha_calc_got_offsets): Likewise.
8681
        (alpha_dynamic_entries_for_reloc): New.
8682
        (elf64_alpha_calc_dynrel_sizes): Use it.
8683
        (elf64_alpha_size_dynamic_sections): Likewise.
8684
        (elf64_alpha_relocate_section): Handle TLS relocations.
8685
        * reloc.c: Add Alpha TLS relocations.
8686
        * bfd-in2.h, libbfd.h: Rebuild.
8687
 
8688
2002-05-29 Ralf Habacker 
8689
 
8690
        * peXXigen.c (pe_print_idata): Remove double printed
8691
        import table lines; add Bound-To comment.
8692
 
8693
2002-05-29  Matt Thomas  
8694
 
8695
        * Makefile.am (BFD32_BACKENDS): Add elf32-vax.lo.
8696
        (BFD32_BACKENDS_CFILES): Add elf32-vax.c.
8697
        (elf32-vax.lo): New rule.
8698
        * Makefile.in: Regenerate.
8699
        * configure.in (bfd_elf32_vax_vec)
8700
        (vaxnetbsd_vec): New vectors.
8701
        * configure: Regenerate.
8702
        * config.bfd (vax-*-netbsdelf*)
8703
        (vax-*-netbsdaout*)
8704
        (vax-*-netbsd*): New targets.
8705
        * elf32-vax.c: New file.
8706
        * reloc.c: Add VAX relocations.
8707
        * bfd-in2.h: Regenerate.
8708
        * targets.c (_bfd_target_vector): Add bfd_elf32_vax_vec.
8709
 
8710
2002-05-29  Jason Thorpe  
8711
 
8712
        * config.bfd (arm-*-netbsd*): Add bfd_elf32_littlearm_vec
8713
        and bfd_elf32_bigarm_vec to targ_selvecs.
8714
 
8715
2002-05-29  Ralf Habacker  
8716
 
8717
        * peXXigen.c (pe_print_idata): Fix seg faults on printing import tables
8718
        with auto-imported symbols.
8719
 
8720
2002-05-29  Adam Nemet  
8721
 
8722
        * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Don't add glue
8723
        sections only record bfd.
8724
        (bfd_elf32_arm_add_glue_sections_to_bfd): New function.
8725
        * bfd-in.h (bfd_elf32_arm_add_glue_sections_to_bfd): Declare it.
8726
        * bfd-in2.h: Regenerate.
8727
 
8728
2002-05-28  Nick Clifton  
8729
 
8730
        * syms.c (_bfd_stab_section_find_nearest_line): Move
8731
        declaration and initialisation of saw_line and saw_func out of
8732
        for loop.
8733
 
8734
2002-05-29  Alan Modra  
8735
 
8736
        * elf64-ppc.c (ppc64_elf_get_symbol_info): New function.
8737
        (bfd_elf64_get_symbol_info): Define.
8738
        * elfxx-target.h (bfd_elfNN_get_symbol_info): Only define if undef.
8739
 
8740
2002-05-29  Andrey Volkov  
8741
 
8742
        * cpu-h8300.c: Make default h8300 machine first in machine list.
8743
 
8744
2002-05-28  Kuang Hwa Lin 
8745
 
8746
        * config.bfd: Added DLX configuraton.
8747
        * Makefile.am: Added DLX configuraton.
8748
        * configure.in: Added DLX configuraton.
8749
        * archures.c: Add DLX architecture.
8750
        * reloc.c: Add DLX relocs.
8751
        * targets.c: Added DLX target vector.
8752
        * configure: Regenerate.
8753
        * Makefile.in: Regenreate.
8754
        * bfd-in2.h: Regenreate.
8755
        * elf32-dlx.c: New file: Support DLX target.
8756
        * cpu-dlx.c: New file: Support DLX target.
8757
 
8758
2002-05-25  Alan Modra  
8759
 
8760
        * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Formatting.
8761
 
8762
        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Revert last change.
8763
        (ppc64_elf_check_relocs): Don't set up function descriptor symbol
8764
        strings to point inside function code sym string.
8765
        (func_desc_adjust): Likewise.
8766
        (ppc64_elf_hide_symbol): Rewrite code to look up function code sym.
8767
 
8768
2002-05-24  Michal Ludvig  
8769
 
8770
        * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Added.
8771
        (elf64_x86_64_grok_psinfo): Added.
8772
 
8773
2002-05-24  TAMURA Kent 
8774
 
8775
        * config.bfd: Add a target for i386-netbsdpe.
8776
 
8777
2002-05-24  Alan Modra  
8778
 
8779
        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy is_func
8780
        and is_func_descriptor.
8781
        (func_desc_adjust): Hide function code sym in shared libs unless
8782
        there is a matching exported function descriptor sym.
8783
 
8784
2002-05-23  Jakub Jelinek  
8785
 
8786
        * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL
8787
        for symbols from SHF_TLS section.
8788
        (_bfd_elf_print_private_bfd_data): Add PT_TLS.
8789
        (elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections.
8790
        (map_sections_to_segments): Build PT_TLS segment if necessary.
8791
        (assign_file_positions_for_segments): Likewise.
8792
        (get_program_header_size): Account for PT_TLS segment.
8793
        (swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from
8794
        SEC_THREAD_LOCAL sections to STT_TLS.
8795
        * reloc.c: Add 386 and IA-64 TLS relocs.
8796
        * section.c (SEC_THREAD_LOCAL): Define.
8797
        (SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS):
8798
        Remove.
8799
        * elflink.h (elf_link_add_object_symbols): Support .tcommon.
8800
        (size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS
8801
        unconditionally.
8802
        (struct elf_final_link_info): Add first_tls_sec.
8803
        (elf_bfd_final_link): Set first_tls_sec.
8804
        Compute elf_hash_table (info)->tls_segment.
8805
        (elf_link_output_extsym): Handle STT_TLS symbols.
8806
        (elf_link_input_bfd): Likewise.
8807
        * syms.c (BSF_THREAD_LOCAL): Define.
8808
        * bfd-in2.h: Rebuilt.
8809
        * libbfd.h: Rebuilt.
8810
        * elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff,
8811
        elf_i386_mkobject, elf_i386_object_p): New functions.
8812
        (elf_howto_table): Add TLS relocs.
8813
        (elf_i386_reloc_type_lookup): Support TLS relocs.
8814
        (elf_i386_info_to_howto_rel): Likewise.
8815
        (struct elf_i386_link_hash_entry): Add tls_type.
8816
        (struct elf_i386_obj_tdata): New.
8817
        (elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type):
8818
        New macros.
8819
        (struct elf_i386_link_hash_table): Add tls_ldm_got.
8820
        (link_hash_newfunc): Clear tls_type.
8821
        (elf_i386_check_relocs): Support TLS relocs.
8822
        (elf_i386_gc_sweep_hook): Likewise.
8823
        (allocate_dynrelocs): Likewise.
8824
        (elf_i386_size_dynamic_sections): Likewise.
8825
        (elf_i386_relocate_section): Likewise.
8826
        (elf_i386_finish_dynamic_symbol): Likewise.
8827
        (bfd_elf32_mkobject, elf_backend_object_p): Define.
8828
        * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset,
8829
        dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done,
8830
        want_tprel, want_dtpmod, want_dtprel.
8831
        (elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions.
8832
        (ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to
8833
        R_IA64_LTOFF_TPREL22.
8834
        (elf_code_to_howto_index): Add TLS relocs.
8835
        (elfNN_ia64_check_relocs): Support TLS relocs.
8836
        (allocate_global_data_got): Account for TLS .got data.
8837
        (allocate_dynrel_entries): Account for TLS dynamic relocations.
8838
        (elfNN_ia64_install_value): Supprt TLS relocs.
8839
        (set_got_entry): Support TLS relocs.
8840
        (elfNN_ia64_relocate_section): Likewise.
8841
 
8842
2002-05-23  Nick Clifton  
8843
 
8844
        * elf32-arm.h (elf32_arm_final_link_relocate): For the Thumb
8845
        BLX reloc round the relocation up rather than down.
8846
        * coff-arm.c (coff_arm_relocate_section): Likewise.
8847
 
8848
2002-05-21  H.J. Lu  (hjl@gnu.org)
8849
 
8850
        * linker.c (_bfd_generic_link_add_one_symbol): Allow multiple
8851
        definition.
8852
 
8853
2002-05-22  Alan Modra  
8854
 
8855
        * elf64-ppc.c (ppc64_elf_size_stubs): Don't strip .branch_lt.
8856
        (ppc64_elf_relocate_section): Handle unresolved relocs in opd.
8857
 
8858
2002-05-22  Alan Modra  
8859
 
8860
        * elf64-ppc.c (ppc64_elf_relocate_section): Return false for
8861
        unresolved relocs.
8862
        (ppc64_elf_size_dynamic_sections): Check for splt NULL.
8863
 
8864
2002-05-21  Thiemo Seufer 
8865
 
8866
        * bfd.c (bfd_get_arch_size): Remove bfd_set_error call for
8867
        non-ELF targets.
8868
 
8869
2002-05-21  Thiemo Seufer 
8870
 
8871
        * elf-bfd.h (elf_backend_emit_relocs): Change prototype to return
8872
        an error value.
8873
        * elflink.h (elf_link_output_relocs): Likewise. Improve error message.
8874
        return with false on error.
8875
        (elf_link_input_bfd): Check reloc_emitter return value.
8876
 
8877
2002-05-21  Jason Thorpe  
8878
 
8879
        * config.bfd (armeb-*-netbsdelf*): New target.
8880
 
8881
2002-05-20  Alan Modra  
8882
 
8883
        * elf64-ppc.c (ppc_build_one_stub): Point undefined function syms
8884
        at the plt call stub.
8885
 
8886
2002-05-19  Thiemo Seufer 
8887
 
8888
        * cpu-mips.c (mips_compatible): Don't try to check machine
8889
        compatibility.
8890
 
8891
2002-05-18  Tom Rix  
8892
 
8893
        * coff64-rs6000.c (_bfd_xcoff64_swap_aux_out): Fix C_FILE auxent.
8894
 
8895
2002-05-17  Alan Modra  
8896
 
8897
        * elf64-ppc.c (ppc64_elf_info_to_howto): Formatting.
8898
        (ppc64_elf_relocate_section): Don't warn about reloc overflow when
8899
        we've already warned about an undefined symbol.  Report more
8900
        detail on reloc errors.
8901
 
8902
2002-05-17  Alan Modra  
8903
 
8904
        * acinclude.m4 (AM_INSTALL_LIBBFD): New.
8905
        * configure.in: Invoke AM_INSTALL_LIBBFD.
8906
        * Makefile.am (install-data-local): Revert 2002-05-13.  Move to..
8907
        (install_libbfd): .. New target.
8908
        (uninstall_libbfd): Likewise.
8909
        (install-bfdlibLTLIBRARIES): Likewise.
8910
        (uninstall-bfdlibLTLIBRARIES): Likewise.
8911
        (bfdlibdir): New.
8912
        (bfdincludedir): New.
8913
        (lib_LTLIBRARIES): Rename to bfdlib_LTLIBRARIES.
8914
        * aclocal.m4: Regenerate.
8915
        * configure: Regenerate.
8916
        * Makefile.in: Regenerate.
8917
 
8918
2002-05-17  Stuart Balfour 
8919
 
8920
        * hash.c (bfd_hash_lookup): Remove computation of len from inside
8921
        hash loop.
8922
 
8923
2002-05-16  Nick Clifton  
8924
 
8925
        * config.bfd: Add targets for sh64-linux (little endian and
8926
        big endian).
8927
 
8928
2002-05-15  Laurent Pinchart 
8929
 
8930
        * peXXigen.c (pe_print_idata): Do not assume that the first thunk
8931
        is located in the same section as the import table.  Instead
8932
        check, and if necessary load the section containing the thunk.
8933
 
8934
2002-05-15  Nick Clifton  
8935
 
8936
        * aix5ppc-core.c (xcoff64_core_p): Replace bfd_read with
8937
        bfd_bread.
8938
        (xcoff64_core_file_matches_executable_p): Replace bfd_read
8939
        with bfd_bread.
8940
 
8941
2002-05-15  Alan Modra  
8942
 
8943
        * aix5ppc-core.c: Warning fixes.
8944
        * aout-adobe.c (aout_32_bfd_link_just_syms): Define.
8945
        * aout-target.h (MY_bfd_link_just_syms): Define.
8946
        * aout-tic30.c (MY_bfd_link_just_syms): Define.
8947
        * bfd.c (bfd_link_just_syms): Define.
8948
        * binary.c (binary_bfd_link_just_syms): Define.
8949
        * bout.c (b_out_bfd_link_just_syms): Define.
8950
        * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update initializer.
8951
        * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
8952
        * coffcode.h (coff_bfd_link_just_syms): Define.
8953
        * elf-bfd.h (enum elf_link_info_type): Add ELF_INFO_TYPE_JUST_SYMS.
8954
        (elf_discarded_section): Check for ELF_INFO_TYPE_JUST_SYMS.
8955
        (_bfd_elf_link_just_syms): Declare.
8956
        * elf.c (_bfd_elf_link_just_syms): New function.
8957
        * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Check that
8958
        sections haven't already been discarded by the linker.
8959
        * elflink.h (elf_link_add_object_symbols): Likewise for stab
8960
        sections and SEC_MERGE sections.
8961
        (elf_bfd_discard_info): Similarly here.
8962
        * elfxx-target.h (bfd_elfNN_bfd_link_just_syms): Define.
8963
        * i386msdos.c (msdos_bfd_link_just_syms): Define.
8964
        * i386os9k.c (os9k_bfd_link_just_syms): Define.
8965
        * ieee.c (ieee_bfd_link_just_syms): Define.
8966
        * ihex.c (ihex_bfd_link_just_syms): Define.
8967
        * libbfd-in.h (_bfd_nolink_bfd_link_just_syms): Define.
8968
        (_bfd_generic_link_just_syms): Declare.
8969
        * libecoff.h (_bfd_ecoff_bfd_link_just_syms): Define.
8970
        * linker.c (_bfd_generic_link_just_syms): New function.
8971
        * mmo.c (mmo_bfd_link_just_syms): Define.
8972
        * nlm-target.h (nlm_bfd_link_just_syms): Define.
8973
        * oasys.c (oasys_bfd_link_just_syms): Define.
8974
        * ppcboot.c (ppcboot_bfd_link_just_syms): Define.
8975
        * som.c (som_bfd_link_just_syms): Define.
8976
        * srec.c (srec_bfd_link_just_syms): Define.
8977
        * targets.c (struct bfd_target): Add _bfd_link_just_syms.
8978
        (BFD_JUMP_TABLE_LINK): And here.
8979
        * tekhex.c (tekhex_bfd_link_just_syms): Define.
8980
        * versados.c (versados_bfd_link_just_syms): Define.
8981
        * vms.c (vms_bfd_link_just_syms): Define.
8982
        * libbfd.h: Regenerate.
8983
        * bfd-in2.h: Regenerate.
8984
 
8985
2002-05-15  Thiemo Seufer 
8986
 
8987
        * elf32-mips.c: Remove superfluous definitions copied from
8988
        elfxx-mips.c.
8989
        (bfd_elf32_bigmips_vec,bfd_elf32_littlemips_vec): Use the
8990
        SGIish vectors to check the special case.
8991
        (mips_elf_hi16_reloc): Fix comment.
8992
        (mips_elf_got16_reloc): Likewise.
8993
        (_bfd_mips_elf32_gprel16_reloc): Likewise.
8994
        (elf_reloc_map): Code cleanup.
8995
        (mips_reloc_map): Add comment.
8996
        (bfd_elf23_bfd_reloc_type_lookup): Code cleanup.
8997
        (mips_elf32_rtype_to_howto): Likewise.
8998
        (mips_elf32_discard_info): Likewise.
8999
        (elf32_mips_irix_compat): Invert logic: Only SGIish vectors
9000
        lead to IRIX compatibility now.
9001
 
9002
2002-05-15  Thiemo Seufer 
9003
 
9004
        * elfxx-mips.c: Call it IRIX, not Irix in comments.
9005
 
9006
2002-05-13  Jason Thorpe  
9007
 
9008
        * config.bfd (shle-*-netbsdelf*): Add target which includes
9009
        sh64 support.
9010
 
9011
2002-05-13  David Edelsohn  
9012
 
9013
        * configure.in: Revert 2002-04-07.  Instead, auto-configure
9014
        HAVE_ST_C_IMPL.
9015
        * configure: Regenerate.
9016
        * config.in: Regenerate.
9017
        * rs6000-core.c (CNEW_IMPL): Guard use of c_impl with HAVE_ST_C_IMPL
9018
        or AIX_5_CORE.
9019
 
9020
2002-05-11  Federico G. Schwindt 
9021
 
9022
        * configure.in (sparc*-*-openbsd*): Support sparc64-openbsd
9023
        corefiles as well.2
9024
        * configure: Regenerate.
9025
 
9026
2002-05-13  Alan Modra  
9027
 
9028
        * Makefile.am (install-data-local): Install headers to
9029
        $(exec_prefix)/include.
9030
        * Makefile.in: Regenerate.
9031
 
9032
2002-05-11  Ralf Corsepius  
9033
            Daniel Jacobowitz  
9034
 
9035
        * coff-sh.c (sh_reloc_map): Map to R_SH_IMM32 for non-PE.  Don't
9036
        map BFD_RELOC_RVA.
9037
 
9038
2002-05-11  Federico G. Schwindt 
9039
 
9040
        * config.bfd (alpha*-*-openbsd*, sparc64*-*-openbsd*,
9041
        hppa*-*-openbsd*): New targets.
9042
        * configure.in (alpha*-*-openbsd*): Set COREFILE.
9043
        * configure: Regenerate.
9044
 
9045
2002-05-10  Tom Rix  
9046
 
9047
        * coff64-rs6000.c (xcoff64_reloc_type_br): New function for
9048
        xcoff64_ppc_relocate_section.
9049
        * coff-rs6000.c : Extern common xcoff_reloc_type functions.
9050
        * libxcoff.h: Common xcoff_reloc_type function declaration.
9051
 
9052
2002-05-10  Alan Modra  
9053
 
9054
        * elf32-i386.c (elf_i386_relocate_section): Remove overflow checks
9055
        added in 2002-05-09 commit.
9056
 
9057
        * elf32-hppa.c (elf32_hppa_size_stubs): Revert part of 2002-05-04,
9058
        don't look for stubs on all undefined syms.
9059
 
9060
2002-05-09  Alan Modra  
9061
 
9062
        * elf64-ppc.c (RA_REGISTER_MASK, RA_REGISTER_SHIFT): Delete.
9063
        (ppc64_elf_howto_raw ): Not pc_relative or
9064
        pcrel_offset.
9065
 
9066
        * elf32-i386.c (elf_howto_table): Comments.
9067
        (elf_i386_relocate_section): Handle more relocs for relocatable
9068
        linking and against SEC_MERGE sections.
9069
 
9070
2002-05-08  Alan Modra  
9071
 
9072
        * elf32-ppc.c (ppc_elf_create_got): New function.
9073
        (ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before
9074
        _bfd_elf_create_dynamic_sections.  Correct .plt flags.
9075
        (ppc_elf_check_relocs): Use ppc_elf_create_got in place of
9076
        _bfd_elf_create_got_section.
9077
 
9078
2002-05-07  Alan Modra  
9079
 
9080
        * elf-bfd.h (struct elf_backend_data): Add rela_normal.
9081
        * elfxx-target.h (elf_backend_rela_normal): Define.
9082
        (elfNN_bed): Init rela_normal.
9083
        * elflink.h (elf_link_input_bfd ): Handle adjustment
9084
        for section symbols here if rela_normal.  Simplify abs section test.
9085
        * elf-m10200.c (mn10200_elf_relocate_section): If relocatable,
9086
        return immediately.  Remove code handling relocatable linking.
9087
        * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
9088
        * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
9089
        * elf32-i370.c (i370_elf_relocate_section): Likewise.
9090
        * elf32-i860.c (elf32_i860_relocate_section): Likewise.
9091
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
9092
        * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
9093
        * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
9094
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
9095
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
9096
        * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
9097
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
9098
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
9099
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
9100
        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
9101
        * elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL.
9102
        * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
9103
        * elf-m10200.c (elf_backend_rela_normal): Define.
9104
        * elf-m10300.c (elf_backend_rela_normal): Define.
9105
        * elf32-fr30.c (elf_backend_rela_normal): Define.
9106
        * elf32-i370.c (elf_backend_rela_normal): Define.
9107
        * elf32-i860.c (elf_backend_rela_normal): Define.
9108
        * elf32-m68k.c (elf_backend_rela_normal): Define.
9109
        * elf32-mcore.c (elf_backend_rela_normal): Define.
9110
        * elf32-openrisc.c (elf_backend_rela_normal): Define.
9111
        * elf32-ppc.c (elf_backend_rela_normal): Define.
9112
        * elf32-s390.c (elf_backend_rela_normal): Define.
9113
        * elf32-xstormy16.c (elf_backend_rela_normal): Define.
9114
        * elf64-ppc.c (elf_backend_rela_normal): Define.
9115
        * elf64-s390.c (elf_backend_rela_normal): Define.
9116
        * elf64-x86-64.c (elf_backend_rela_normal): Define.
9117
        * elfxx-ia64.c (elf_backend_rela_normal): Define.
9118
        * elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL.
9119
        * elf32-m32r.c (elf_backend_rela_normal): Likewise.
9120
 
9121
2002-05-06  Nick Clifton  
9122
 
9123
        * elf32-arm.h (elf32_arm_final_link_relocate): Convert
9124
        'reloc_signed_max' and 'reloc_signed_min' into half-word offsets.
9125
 
9126
2002-05-06  Alan Modra  
9127
 
9128
        * elflink.h (elf_link_input_bfd ): Adjust r_offset
9129
        when not relocatable.  Fix reloc_emitter call for K&R.
9130
 
9131
2002-05-04  Alan Modra  
9132
 
9133
        * elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code
9134
        reloading local sym addend mistakenly removed in 2002-05-01 change.
9135
 
9136
        * dwarf2.c (struct line_head): Make prologue_length a bfd_vma.
9137
        (read_abbrevs): Change "offset" param to bfd_vma.
9138
        (parse_comp_unit): Change "version" and addr_size to unsigned ints.
9139
        Change "abbrev_offset" to bfd_vma.
9140
        (read_indirect_string): Use correct conversion chars in error
9141
        message format string, cast bfd_vma's to unsigned long.
9142
        (read_abbrevs): Likewise.
9143
        (read_attribute_value): Likewise.
9144
        (decode_line_info): Likewise.
9145
        (scan_unit_for_functions): Likewise.
9146
        (parse_comp_unit): Likewise.
9147
 
9148
2002-05-04  Tom Rix  
9149
 
9150
        * coffswap.h (coff_swap_reloc_in): Remove XCOFF support.
9151
        (coff_swap_reloc_out): Same.
9152
        * coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h.
9153
        (xcoff_swap_reloc_out): Same.
9154
        (xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special
9155
        case some 16 bit relocs. Add reloc value to output.
9156
        (xcoff_howto_table): Remove 64 bit R_POS, add 16 bit
9157
        R_RBR. Improve names.
9158
        (_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS.
9159
        (bfd_xcoff_backend_data): Update with new reloc swap names.
9160
        (bfd_pmac_xcoff_backend_data) : Same.
9161
        * coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h.
9162
        (xcoff64_swap_reloc_out): Same.
9163
        (xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit
9164
        R_POS. Add reloc value to output.
9165
        (xcoff64_howto_table): Move 64 bit R_POS to first entry.  Add 16
9166
        bit R_RBR. Improve names, masks.
9167
        (xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS.
9168
        (bfd_xcoff_backend_data): Update with new reloc swap names.
9169
        (bfd_xcoff_aix5_backend_data) : Same.
9170
 
9171
2002-05-04  Alan Modra  
9172
 
9173
        * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add
9174
        bfd_count top_index, input_list, all_local_syms.
9175
        (elf32_hppa_setup_section_lists): New function, split from
9176
        elf32_hppa_size_stubs.
9177
        (elf32_hppa_next_input_section): Likewise.
9178
        (group_sections): Likewise.
9179
        (get_local_syms): Likewise.
9180
        (elf32_hppa_size_stubs): Adjust for split out functions.  Look for
9181
        stubs on undefined syms too.
9182
        (elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*.
9183
        Only access htab elf fields when we have an elf hash table.
9184
        * elf32-hppa.h (elf32_hppa_setup_section_lists): Declare.
9185
        (elf32_hppa_next_input_section): Declare.
9186
 
9187
2002-05-04  Bob Byrnes  
9188
 
9189
        * opncls.c (_bfd_new_bfd_contained_in): Check return value of
9190
        _bfd_new_bfd.
9191
 
9192
2002-05-03  H.J. Lu  (hjl@gnu.org)
9193
 
9194
        * elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local.
9195
        (mips_elf_link_hash_newfunc): Initialize forced_local to false.
9196
        (mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol
9197
        to hide a global symbol.
9198
        (_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set
9199
        forced_local to true.
9200
 
9201
2002-05-02  Richard Henderson  
9202
 
9203
        * elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs
9204
        vs SHN_UNDEF to zero.
9205
 
9206
2002-05-02  Alan Modra  
9207
 
9208
        * elf64-ppc.c (ppc64_elf_howto_raw ): Change to a
9209
        16 bit reloc.
9210
        : Likewise.
9211
        (ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
9212
        SECTOFF reloc.
9213
        * elf32-ppc.c (ppc_elf_howto_raw ): Correct.
9214
        (ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
9215
        SECTOFF reloc.
9216
 
9217
        * elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete.
9218
        (ppc64_elf_ha_reloc): New function.
9219
        (ppc64_elf_brtaken_reloc): New function.
9220
        (ppc64_elf_sectoff_reloc): New function.
9221
        (ppc64_elf_sectoff_ha_reloc): New function.
9222
        (ppc64_elf_toc_reloc): New function.
9223
        (ppc64_elf_toc_ha_reloc): New function.
9224
        (ppc64_elf_toc64_reloc): New function.
9225
        (ppc64_elf_unhandled_reloc): New function.
9226
        (ppc64_elf_howto_raw): Use the above.
9227
        : Mark pc_relative, pcrel_offset.
9228
        : Not pc_relative or pcrel_offset.  Fix dst_mask.
9229
        : Likewise.
9230
        (IS_ABSOLUTE_RELOC): Update.
9231
        (struct ppc_link_hash_table): Add have_undefweak.
9232
        (ppc64_elf_link_hash_table_create): Init.
9233
        (func_desc_adjust): Set have_undefweak.
9234
        (ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier.  Only
9235
        add the .sfpr blr when have_undefweak.
9236
        (ppc64_elf_setup_section_lists): Check hash table flavour.
9237
        (ppc64_elf_next_input_section): Move output_section->owner test to
9238
        ppc64elf.em.
9239
        (ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param
9240
        and relocatable test.  Return TOCstart and don't set elf_gp.
9241
        (ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch
9242
        offset calculation.  Add assert on weak sym branch tweaks.
9243
        * elf64-ppc.h (ppc64_elf_set_toc): Delete.
9244
        (ppc64_elf_toc): Declare.
9245
        (ppc64_elf_next_input_section): Update.
9246
 
9247
2002-05-01  Alan Modra  
9248
 
9249
        * syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL
9250
        file_name.
9251
 
9252
2002-05-01  Alan Modra  
9253
 
9254
        * elf64-ppc.c (CROR_151515, CROR_313131): Define.
9255
        (ppc64_elf_relocate_section): Use them.  Don't look for plt calls
9256
        on R_PPC64_ADDR24 relocs.  Require a nop or no link reg on plt
9257
        call branches.  Correct undefined weak destination.
9258
        (ppc64_elf_func_desc_adjust): Always create at least one blr in
9259
        .sfpr, and correct case where either only savef* or restf* is
9260
        needed.
9261
 
9262
        Long branch stubs, multiple stub sections.
9263
        * elf64-ppc.h (ppc64_elf_setup_section_lists): Declare.
9264
        (ppc64_elf_next_input_section): Declare.
9265
        * elf64-ppc.c: Move linker-only prototypes.
9266
        (STUB_SUFFIX): Define.
9267
        (enum ppc_stub_type): New.
9268
        (struct ppc_stub_hash_entry): New.
9269
        (struct ppc_branch_hash_entry): New.
9270
        (struct ppc_link_hash_entry): Add stub_cache, oh.
9271
        (struct ppc_link_hash_table): Add stub_hash_table etc.  Remove
9272
        sstub.  Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration.
9273
        Rename plt_overflow to stub_error.
9274
        (ppc_stub_hash_lookup): Define.
9275
        (ppc_branch_hash_lookup): Define.
9276
        (stub_hash_newfunc): New function.
9277
        (branch_hash_newfunc): New function.
9278
        (link_hash_newfunc): Init new fields.
9279
        (ppc64_elf_link_hash_table_create): Likewise.
9280
        (ppc64_elf_link_hash_table_free): New function.
9281
        (ppc_stub_name): New function.
9282
        (ppc_get_stub_entry): New function.
9283
        (ppc_add_stub): New function.
9284
        (create_linkage_sections): Use bfd_make_section_anyway.  Create
9285
        .branch_lt and .rela.branch_lt sections.  Don't create .stub.
9286
        (ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*,
9287
        and set up for plt call stubs.  Link func and func desc syms.
9288
        (ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24.
9289
        (func_desc_adjust): Avoid hash lookup when func desc sym available
9290
        via shortcut, and set links when processing.
9291
        (ppc64_elf_hide_symbol): Likewise.
9292
        (allocate_dynrelocs): Don't allocate stub section here.
9293
        (ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt.
9294
        Remove sstub code.
9295
        (ppc_type_of_stub): New function.
9296
        (build_one_stub): Delete.
9297
        (ppc_build_one_stub): New function.
9298
        (ppc_size_one_stub): New function.
9299
        (ppc64_elf_setup_section_lists): New function.
9300
        (ppc64_elf_next_input_section): New function.
9301
        (group_sections): New function.
9302
        (get_local_syms): New function.
9303
        (ppc64_elf_size_stubs): Rewrite.
9304
        (ppc64_elf_build_stubs): Rewrite.
9305
        (ppc64_elf_relocate_section): Look up stub entry for REL24
9306
        relocs.  Don't propagate REL14* to dynamic objects.  Look for long
9307
        branch stubs if REL14* or REL24 relocs won't reach.
9308
        (bfd_elf64_bfd_link_hash_table_free): Define.
9309
 
9310
2002-04-30  Mark Mitchell  
9311
 
9312
        * config.bfd: Add support for powerpc-*-windiss.
9313
 
9314
2002-04-30  Tom Rix  
9315
 
9316
        * xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT
9317
        symbol names into the hash table.
9318
 
9319
2002-04-28  Tom Rix  
9320
 
9321
        * coff-rs6000.c (xcoff_calculate_relocation) : Function table for
9322
        calulating relocations.
9323
        (xcoff_complain_overflow) : Function table for relocation errors.
9324
        (xcoff_ppc_relocate_section): Use relocation and complain function
9325
        tables.
9326
        (xcoff_complain_overflow_unsigned_func): New complain function.
9327
        (xcoff_complain_overflow_signed_func): Same.
9328
        (xcoff_complain_overflow_bitfield_func): Same.
9329
        (xcoff_complain_overflow_dont_func): Same.
9330
        (xcoff_reloc_type_crel): New recot function.
9331
        (xcoff_reloc_type_br): Same.
9332
        (xcoff_reloc_type_ba): Same.
9333
        (xcoff_reloc_type_toc): Same.
9334
        (xcoff_reloc_type_rel): Same.
9335
        (xcoff_reloc_type_neg): Same.
9336
        (xcoff_reloc_type_pos): Same.
9337
        (xcoff_reloc_type_fail): Same.
9338
        (xcoff_reloc_type_noop): Same.
9339
        * libxcoff.h : Declare common parts for xcoff64.
9340
        * coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation
9341
        and complain function tables.
9342
 
9343
2002-04-28  Alan Modra  
9344
 
9345
        * elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo.
9346
        * elf32-hppa.c (elf32_hppa_final_link): Formatting.
9347
 
9348
2002-04-26  Alan Modra  
9349
 
9350
        * opncls.c (bfd_make_readable): Call bfd_section_list_clear.
9351
        * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise.
9352
 
9353
        * elflink.h (elf_bfd_final_link): Ensure input bfd class is the
9354
        same as the output before calling elf_link_input_bfd.
9355
 
9356
        * coffcode.h (coff_compute_section_file_positions): Set
9357
        section_tail after shuffling section list.
9358
 
9359
2002-04-24  Christian Groessler 
9360
 
9361
        * coff-z8k.c (extra_case): Fix R_IMM32 relocations: The
9362
        addresses are 23bit with a special layout, not plain 32bit
9363
        values.  Prevent relocation of immediate values.
9364
 
9365
2002-04-24  Chris G. Demetriou  
9366
 
9367
        * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or
9368
        MIPS-16 ASE flags are set, print something to indicate that.
9369
 
9370
2002-04-23  Alan Modra  
9371
 
9372
        * elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition
9373
        under which a plt call stub is used.
9374
        (final_link_relocate): Similarly.
9375
        (allocate_plt_static): Clear h-plabel except when plt entry is
9376
        exclusively used for a plabel.
9377
        (allocate_dynrelocs): Use the above to simplify plt sizing.
9378
        (struct elf32_hppa_link_hash_table): Add has_22bit_branch.
9379
        (elf32_hppa_link_hash_table_create): Init.
9380
        (BL22_RP): Define.
9381
        (hppa_build_one_stub): Use BL22_RP if has_22bit_branch.
9382
        (elf32_hppa_check_relocs): Set has_22bit_branch.
9383
 
9384
        * elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message.
9385
        (final_link_relocate): Likewise.
9386
 
9387
2002-04-22  Jakub Jelinek  
9388
 
9389
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build
9390
        search table if some FDE is DW_EH_PE_aligned encoded either.
9391
        (_bfd_elf_write_section_eh_frame): Handle terminating FDE specially.
9392
 
9393
2002-04-22  Richard Smith  
9394
            Jakub Jelinek  
9395
 
9396
        * elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative.
9397
        (_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel
9398
        encoded personality.
9399
        (_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality
9400
        for CIE/FDE removal.
9401
 
9402
2002-04-20  Tom Rix  
9403
 
9404
        * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent.
9405
 
9406
2002-04-20  Alan Modra  
9407
 
9408
        * archures.c (bfd_lookup_arch): Move the list order comment..
9409
        (struct bfd_arch_info): ..to where it belongs.
9410
        * bfd-in2.h: Regenerate.
9411
 
9412
        * archures.c (bfd_lookup_arch): Add comment on list order.
9413
        (bfd_default_set_arch_mach): Use bfd_lookup_arch.
9414
        * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
9415
        is always at head of list.
9416
 
9417
2002-04-18  Nick Clifton  
9418
 
9419
        * coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
9420
        insert_thumb_branch, record_thumb_to_arm_glue): Suppress
9421
        definition of these functions for ARM_WINCE builds as they are
9422
        not used.
9423
        (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define
9424
        for ARM_WINCE builds.
9425
 
9426
2002-04-18  Nick Clifton  
9427
 
9428
        * coff-arm.c (bfd_arm_process_before_allocation):
9429
 
9430
2002-04-17  J"orn Rennecke 
9431
 
9432
        * cpu-sh.c (scan_mach): Delete.
9433
        (arch_info_struct): Replace scan_mach with bfd_default_scan.
9434
        (bfd_sh_arch): Likewise.
9435
 
9436
2002-04-16  Nick Clifton  
9437
 
9438
        * ihex.c (ihex_write_object_contents): Fix check for records
9439
        crossing 64K boundaries.
9440
 
9441
2002-04-16  Alan Modra  
9442
 
9443
        * elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table
9444
        type rather than just assuming entries are ELF.
9445
        * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
9446
        * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
9447
        * elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise.
9448
        * elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry
9449
        rather than elf_link_hash_entry.
9450
 
9451
2002-04-15  Richard Henderson  
9452
 
9453
        * elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow
9454
        n32 binaries.
9455
 
9456
2002-04-15  Michael Snyder  
9457
 
9458
        * opncls.c (bfd_close): Write contents if writeable.
9459
        Minor formatting tidy-ups.
9460
 
9461
2002-04-15  Alan Modra  
9462
 
9463
        * elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type.
9464
 
9465
2002-04-12  Michael Snyder  
9466
 
9467
        * bfd-in.h (bfd_get_section_lma): New access macro.
9468
        Minor white-space fix-up.
9469
 
9470
2002-04-12  Alan Modra  
9471
 
9472
        * elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or
9473
        header pad.
9474
 
9475
2002-04-09  DJ Delorie  
9476
 
9477
        * elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks.
9478
 
9479
2002-04-09  Casper S. Hornstrup 
9480
 
9481
        * coffcode.h (coff_read_word): New.
9482
        (coff_compute_checksum): New.
9483
        (coff_apply_checksum): New.
9484
        (coff_write_object_contents): Call coff_apply_checksum () to
9485
        apply checksum to PE image.
9486
 
9487
2002-04-08  Randolph Chung  
9488
 
9489
        * elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h.
9490
        (elf32_hppa_final_link): Split out sorting logic to..
9491
        * elf-hppa.h (elf_hppa_sort_unwind): ..here.
9492
        (elf_hppa_final_link): Call elf_hppa_sort_unwind.
9493
 
9494
2002-04-07  Andrew Cagney  
9495
 
9496
        * configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]*
9497
        pattern.
9498
        * configure: Re-generate.
9499
 
9500
2002-04-07  Andrew Cagney  
9501
 
9502
        * configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version
9503
        is greater or equal to 4.3.3.
9504
        * configure: Regenerate.
9505
        Fix PR gdb/344.
9506
 
9507
2002-04-05  Hans-Peter Nilsson  
9508
 
9509
        * elf32-cris.c (cris_elf_howto_table) 
9510
        R_CRIS_32_PCREL>: Fix typo in name.
9511
        (cris_elf_check_relocs): Always create .rela.got here when
9512
        R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen.
9513
        (elf_cris_adjust_gotplt_to_got): Don't create .rela.got here;
9514
        assume it's created.
9515
 
9516
2002-04-04  Daniel Jacobowitz  
9517
 
9518
        * aout-adobe.c (aout_32_bfd_link_hash_table_free): Define.
9519
        * aout-target.h (MY_bfd_link_hash_table_free): Conditionally
9520
        define.
9521
        * aout-tic30.c (MY_bfd_link_hash_table_free): Likewise.
9522
        * bfd.c (bfd_link_hash_table_free): Define.
9523
        * binary.c (binary_bfd_link_hash_table_free): Define.
9524
        * bout.c (b_out_bfd_link_hash_table_free): Define.
9525
        * coff-rs6000.c (rs6000coff_vec): Include
9526
        _bfd_generic_link_hash_table_free.
9527
        (pmac_xcoff_vec): Likewise.
9528
        * coff64-rs6000.c (rs6000coff64_vec): Likewise.
9529
        (aix5coff64_vec): Likewise.
9530
        * coffcode.h (coff_bfd_link_hash_table_free): Conditionally define.
9531
        * elf-m10300.c (elf32_mn10300_link_hash_table_free): New function.
9532
        (bfd_elf32_bfd_link_hash_table_free): Define.
9533
        * elf32-hppa.c (elf32_hppa_link_hash_table_free): New function.
9534
        (bfd_elf32_bfd_link_hash_table_free): Define.
9535
        * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally
9536
        define.
9537
        * i386msdos.c (msdos_bfd_link_hash_table_free): Define.
9538
        * i386os9k.c (os9k_bfd_link_hash_table_free): Define.
9539
        * ieee.c (ieee_bfd_link_hash_table_free): Define.
9540
        * ihex.c (ihex_bfd_link_hash_table_free): Define.
9541
        * libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define.
9542
        (_bfd_generic_link_hash_table_free): Add prototype.
9543
        * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype.
9544
        * libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define.
9545
        * linker.c (_bfd_generic_link_hash_table_free): New function.
9546
        * mmo.c (mmo_bfd_link_hash_table_free): Define.
9547
        * nlm-target.h (nlm_bfd_link_hash_table_free): Define.
9548
        * oasys.c (oasys_bfd_link_hash_table_free): Define.
9549
        * ppcboot.c (ppcboot_bfd_link_hash_table_free): Define.
9550
        * som.c (som_bfd_link_hash_table_free): Define.
9551
        * srec.c (srec_bfd_link_hash_table_free): Define.
9552
        * tekhex.c (tekhex_bfd_link_hash_table_free): Define.
9553
        * versados.c (versados_bfd_link_hash_table_free): Define.
9554
        * vms.c (vms_bfd_link_hash_table_free): New function.
9555
        * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function.
9556
 
9557
        * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc
9558
        instead of bfd_alloc.
9559
        * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
9560
        * coff-mcore.c (coff_mcore_link_hash_table_create): Likewise.
9561
        * coff-ppc.c (ppc_coff_link_hash_table_create): Likewise.
9562
        * cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
9563
        * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
9564
        * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
9565
        * elf.c (_bfd_elf_link_hash_table_create): Likewise.
9566
        * elf32-arm.h (elf32_arm_link_hash_table_create): Likewise.
9567
        * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
9568
        * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
9569
        * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
9570
        * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
9571
        * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
9572
        * elf32-sh.c (sh_elf_link_hash_table_create): Likewise.
9573
        * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise.
9574
        * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
9575
        * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
9576
        * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
9577
        * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise.
9578
        * elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise.
9579
        * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
9580
        * linker.c (_bfd_generic_link_hash_table_create): Likewise.
9581
        * m68klinux.c (linux_link_hash_table_create): Likewise.
9582
        * sparclinux.c (linux_link_hash_table_create): Likewise.
9583
        * sunos.c (sunos_link_hash_table_create): Likewise.
9584
        * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
9585
 
9586
        * targets.c: Add _bfd_link_hash_table_free to xvec.
9587
 
9588
        * bfd-in2.h: Regenerate.
9589
        * libbfd.h: Regenerate.
9590
        * libcoff.h: Regenerate.
9591
 
9592
2002-04-04  Alan Modra  
9593
 
9594
        * dep-in.sed: Cope with absolute paths.
9595
        * Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR.
9596
        Run "make dep-am".
9597
        * Makefile.in: Regenerate.
9598
        * coff-arm.c: Fix copyright date.
9599
        * cpu-h8300.c: Likewise.
9600
        * cpu-i370.c: Likewise.
9601
        * cpu-s390.c: Likewise.
9602
        * cpu-mips.c: Likewise.
9603
        * po/SRC-POTFILES.in: Regenerate.
9604
 
9605
2002-04-04  Thiemo Seufer 
9606
 
9607
        * Makefile.am: Add elfxx-mips.c to the known backends.
9608
        (elf32-mips.lo): remove dependency to coff/external.h.
9609
        * Makefile.in: Regenerate.
9610
        * configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo
9611
        Remove elf32-mips.lo from 64 bit vectors. Update dependencies
9612
        accordingly.
9613
        * configure: Regenerate.
9614
        * elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h.
9615
        (irix_compat_t): IRIX compatibility level, moved from elf32-mips.c.
9616
        (elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New
9617
        MIPS specific backend functions.
9618
        * elf32-mips.c: Moved most code to elfxx-mips.c.
9619
        (mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make
9620
        static.
9621
        (mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc.
9622
        (mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc.
9623
        (mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc.
9624
        (mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed
9625
        interface to allow selection of the right REL or RELA howto table.
9626
        (mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made
9627
        static. Let it refuse n32 objects.
9628
        (elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus.
9629
        (elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo.
9630
        (elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info.
9631
        (elf32_mips_ignore_discarded_relocs): Rename from
9632
        _bfd_elf32_mips_ignore_discarded_relocs.
9633
        (elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section.
9634
        (elf32_mips_irix_compat): New function, replaces IRIX_COMPAT.
9635
        (elf_mips_howto_table_rela): Remove.
9636
        * elf64-mips.c: Moved most code to elfxx-mips.c.
9637
        (bfd_elf64_bfd_reloc_type_lookup): Make static.
9638
        (mips_elf64_rtype_to_howto): New function.
9639
        (mips_elf64_object_p): Likewise.
9640
        (elf64_mips_irix_compat): Likewise.
9641
        * elfxx-mips.c: New file containing common code merged together from
9642
        elf32-mips.c and elf64-mips.c.
9643
        * elfxx-mips.h: New file containing MIPS specific prototypes from
9644
        elf-bfd.h.
9645
        * elfxx-target.h: Add handling for elf_backend_mips_irix_compat and
9646
        elf_backend_mips_rtype_to_howto.
9647
 
9648
2002-04-04  Alan Modra  
9649
 
9650
        * srec.c (MAXCHUNK, Chunk): Revise comments.
9651
        (srec_write_record): Correct buffer size.
9652
        (srec_write_header): Do without intermediate buffer.
9653
        (srec_write_section): Validate Chunk.
9654
        (srec_write_terminator): Pass NULL instead of dummy buffer.
9655
        (srec_write_symbols): Pass file and symbol names directly to
9656
        bfd_bwrite so sprintf won't overflow buffer.
9657
 
9658
2002-04-03  Jakub Jelinek  
9659
 
9660
        * elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic
9661
        PC relative relocs against hidden symbols.
9662
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
9663
 
9664
2002-04-03  Alan Modra  
9665
 
9666
        * elf.c (_bfd_elf_make_section_from_shdr): When setting section
9667
        LMAs, loop over segments until p_vaddr and p_memsz specify an
9668
        extent enclosing the section.
9669
 
9670
2002-04-02  Nick Clifton  
9671
 
9672
        * ihex.c (ihex_write_object_contents): Do not allow records to
9673
        cross a 64K boundary - wrap if necessary.
9674
 
9675
2002-04-01  Nathan Williams  
9676
 
9677
        * elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error
9678
        which caused the returned LWP ID to always be 0.
9679
 
9680
2002-04-01  Richard Henderson  
9681
 
9682
        * elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
9683
        (elf32_sparc_relocate_section): Use it to figure out when to
9684
        initialize .got entries.
9685
        * elf64-sparc.c: Similarly.
9686
 
9687
2002-03-28  Alan Modra  
9688
 
9689
        * linker.c (link_action): Ignore duplicate warning syms.
9690
        (_bfd_generic_link_write_global_symbol): Follow warning symbol link.
9691
        * elflink.h (elf_adjust_dynstr_offsets): Likewise.
9692
        (elf_adjust_dynamic_symbol): Likewise.
9693
        (elf_export_symbol): Likewise.
9694
        (elf_link_find_version_dependencies): Likewise.
9695
        (elf_link_assign_sym_version): Likewise.
9696
        (elf_link_sec_merge_syms): Likewise.
9697
        (elf_link_output_extsym): Likewise.
9698
        (elf_gc_sweep_symbol): Likewise.
9699
        (elf_gc_propagate_vtable_entries_used): Likewise.
9700
        (elf_gc_smash_unused_vtentry_relocs): Likewise.
9701
        (elf_gc_allocate_got_offsets): Likewise.
9702
        (elf_collect_hash_codes): Likewise.
9703
        * elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise.
9704
        * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
9705
        (elf_hppa_remark_useless_dynamic_symbols): Likewise.
9706
        * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
9707
        * elf32-arm.h (elf32_arm_discard_copies): Likewise.
9708
        * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise.
9709
        (elf_cris_discard_excess_dso_dynamics): Likewise.
9710
        * elf32-hppa.c (clobber_millicode_symbols): Likewise.
9711
        (mark_PIC_calls): Likewise.
9712
        (allocate_plt_static): Likewise.
9713
        (allocate_dynrelocs): Likewise.
9714
        (readonly_dynrelocs): Likewise.
9715
        * elf32-i386.c (allocate_dynrelocs): Likewise.
9716
        (readonly_dynrelocs): Likewise.
9717
        * elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
9718
        * elf32-m68k.c (elf_m68k_discard_copies): Likewise.
9719
        * elf32-mips.c (mips_elf_output_extsym): Likewise.
9720
        (mips_elf_sort_hash_table_f): Likewise.
9721
        (mips_elf_check_mips16_stubs): Likewise.
9722
        * elf32-s390.c (allocate_dynrelocs): Likewise.
9723
        (readonly_dynrelocs): Likewise.
9724
        * elf32-sh.c (sh_elf_discard_copies): Likewise.
9725
        * elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise.
9726
        (xstormy16_relax_plt_realloc): Likewise.
9727
        * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
9728
        (elf64_alpha_output_extsym): Likewise.
9729
        * elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise.
9730
        * elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise.
9731
        (mips_elf64_check_mips16_stubs): Likewise.
9732
        (mips_elf64_output_extsym): Likewise.
9733
        * elf64-ppc.c (func_desc_adjust): Likewise.
9734
        (allocate_dynrelocs): Likewise.
9735
        (readonly_dynrelocs): Likewise.
9736
        * elf64-s390.c (allocate_dynrelocs): Likewise.
9737
        (readonly_dynrelocs): Likewise.
9738
        * elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
9739
        * elf64-x86-64.c (allocate_dynrelocs): Likewise.
9740
        (readonly_dynrelocs): Likewise.
9741
        * elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise.
9742
        * aoutx.h (aout_link_write_other_symbol): Likewise.
9743
        * cofflink.c (_bfd_coff_write_task_globals): Likewise.
9744
        (_bfd_coff_write_global_sym): Likewise.
9745
        * i386linux.c (linux_tally_symbols): Likewise.
9746
        * m68klinux.c (linux_tally_symbols): Likewise.
9747
        * sparclinux.c (linux_tally_symbols): Likewise.
9748
        * pdp11.c (aout_link_write_other_symbol): Likewise.
9749
        * sunos.c (sunos_scan_dynamic_symbol): Likewise.
9750
        * xcofflink.c (xcoff_build_ldsyms): Likewise.
9751
        (xcoff_write_global_symbol): Likewise.
9752
 
9753
        * cofflink.c (_bfd_coff_final_link): Formatting.
9754
        * cpu-mips.c (mips_compatible): Make static, prototype.
9755
        * elf32-i386.c (elf_i386_check_relocs): Formatting.
9756
        * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
9757
        * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
9758
        * elf64-mips.c (mips_elf64_sort_hash_table): Likewise.
9759
        (mips_elf64_final_link): Likewise.
9760
        * elflink.h (elf_link_find_version_dependencies): Remove duplicate
9761
        prototype.
9762
 
9763
2002-03-27  Nick Clifton  
9764
 
9765
        * coff-arm.c (SWAP_IN_RELOC_OFFSET): Define.
9766
        (SWAP_OUT_RELOC_OFFSET): Define.
9767
 
9768
2002-03-27  Gregory Steuck 
9769
 
9770
        * elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for
9771
        terminating NULL if empty symbol table.
9772
        (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise.
9773
 
9774
2002-03-26  H.J. Lu  (hjl@gnu.org)
9775
 
9776
        * elflink.h (elf_link_input_bfd): Revert the last change since
9777
        the gcc exception handling isn't fixed yet.
9778
 
9779
2002-03-26  H.J. Lu  (hjl@gnu.org)
9780
 
9781
        * elflink.h (elf_link_input_bfd): Complain about relocations
9782
        against local symbols in discarded sections.
9783
 
9784
2002-03-26  Alan Modra  
9785
 
9786
        * elflink.h (elf_gc_mark): Don't recurse into non-ELF sections.
9787
 
9788
2002-03-23  Alan Modra  
9789
 
9790
        * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
9791
        section file offset for !SEC_LOAD sections.
9792
 
9793
2002-03-21  Richard Earnshaw  
9794
 
9795
        * elf32-arm.h (elf32_arm_final_link_relocate ,
9796
        ): Handle relocations to Thumb functions.
9797
 
9798
2002-03-21  Alan Modra  
9799
 
9800
        * coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype.
9801
        Whitespace changes.
9802
        * archive.c: Update copyright date.
9803
        * bfd-in2.h: Regenerate.
9804
        * libbfd.h: Regenerate.
9805
        * Makefile.am: Run "make dep-am"
9806
        * Makefile.in: Regenerate.
9807
        * po/SRC-POTFILES.in: Regenerate.
9808
 
9809
2002-03-20  Daniel Jacobowitz  
9810
 
9811
        * dwarf2.c (struct funcinfo): Move up.
9812
        (lookup_address_in_function_table): New argument function_ptr.
9813
        Set it.
9814
        (lookup_address_in_line_table): New argument function.  If function
9815
        is non-NULL, use it to handle ``addr'' before the first line note of
9816
        the function.
9817
        (comp_unit_find_nearest_line): Update and swap calls to
9818
        lookup_address_in_function_table and lookup_address_in_line_table.
9819
        * syms.c (_bfd_stab_section_find_nearest_line): Use the first
9820
        N_SLINE encountered if we see an N_FUN before any N_SLINE.
9821
 
9822
2002-03-20  Tom Rix  
9823
 
9824
        * coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from
9825
        _bfd_xcoff_generic_stat_arch_elt.  Fix format check.
9826
        * coff64-rs6000.c : Use _bfd_xcoff_stat_arch_elt.
9827
 
9828
2002-03-19  Tom Rix  
9829
 
9830
        * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all
9831
        dynamic objects in archives.
9832
 
9833
2002-03-19  Hans-Peter Nilsson  
9834
 
9835
        * elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set
9836
        STT_NOTYPE symbols to STT_OBJECT.
9837
 
9838
2002-03-18  Jan Hubicka  
9839
 
9840
        * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"
9841
 
9842
2002-03-18  Tom Rix  
9843
 
9844
        * aix5ppc.core.c : New file for AIX 5 64 bit core support.
9845
        * bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration.
9846
        * coff-rs6000 (do_pad) : New function for archive padding.
9847
        (do_copy) : New function for object file copying in archives.
9848
        (do_shared_object_padding) : New function for padding shared
9849
        objects to their text section alignment in archives.
9850
        (bfd_xcoff_ar_achive_set_magic) : Stub.
9851
        (xcoff_write_armap_big) : Use do_copy and do_pad.
9852
        (xcoff_write_archive_contents_big) : Use do_shared_object_padding,
9853
        do_copy and do_pad.
9854
        * coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use
9855
        bfd_xcoff_magic_number.
9856
        (xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook
9857
        fop.
9858
        (xcoff_backend_data_r) : Use xcoff64_bad_format_hook.
9859
        (bfd_xcoff_aix5_backend_data) : New Aix 5 backend data.
9860
        (aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000.
9861
        * rs6000-core.c : Update copyright date.
9862
        * xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL
9863
        csectpp.
9864
        * coffcode.h (coff_new_section_hook) : Use new accessor macros.
9865
        (coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #.
9866
        (coff_set_flags) : Use bfd_xcoff_magic_number.
9867
        * libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC.
9868
        * configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support.
9869
        * Makefile.am : Same.
9870
        * config.bfd : Same.
9871
        * targets.c : Same.
9872
        * configure : Regnerate.
9873
        * Makefile.in : Same.
9874
        * bfd-in2.h : Same.
9875
 
9876
2002-03-18  Nick Clifton  
9877
 
9878
        * po/fr.po: Updated version.
9879
 
9880
2002-03-18  Alan Modra  
9881
 
9882
        * libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success.
9883
        * libbfd.h: Regenerate.
9884
        * archive.c (coff_write_armap): Pass on failures from
9885
        bfd_write_bigendian_4byte_int.
9886
 
9887
2002-03-14  H.J. Lu 
9888
 
9889
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD
9890
        error to bfd_error_nonrepresentable_section for reinit_array
9891
        section in DSO.
9892
 
9893
2002-03-14  Nick Clifton  
9894
 
9895
        * coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag,
9896
        OR it in rather than replacing previously selected flags.
9897
 
9898
        * elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15.
9899
        (TARGET_LITTLE_SYM): Set ar_max_namelen to 15.
9900
 
9901
2002-03-14  Alan Modra  
9902
 
9903
        * cpu-mips.c (mips_compatible): New.  Don't check bits_per_word.
9904
        (N): Use the above.
9905
        * elflink.h (elf_bfd_final_link): Revert last change.  Instead,
9906
        ensure reloc size matches before calling elf_link_input_bfd.
9907
        Add an assert to check reloc size when counting output relocs.
9908
 
9909
2002-03-14  Nick Clifton  
9910
 
9911
        * mmo.c (mmo_get_loc): Return NULL rather than false.
9912
 
9913
2002-03-13  Nick Clifton  
9914
 
9915
        * po/fr.po: Updated version.
9916
 
9917
2002-03-13  Alan Modra  
9918
 
9919
        * archures.c (bfd_default_compatible): Test bits_per_word.
9920
        * cpu-i386.c (i386_compatible): Remove.  Replace occurrences with
9921
        bfd_default_compatible.
9922
        * cpu-i370.c (i370_compatible): Likewise.
9923
        * cpu-sparc.c (sparc_compatible): Likewise.
9924
        * cpu-h8300.c (compatible): Test in->arch == out->arch.
9925
 
9926
        * elflink.h: Formatting fixes.
9927
        (elf_link_output_extsym): Merge undefined and undef weak cases.
9928
 
9929
        * elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd
9930
        when word size of input matches output word size.
9931
 
9932
2002-03-12  Andreas Jaeger  
9933
 
9934
        * cpu-i386.c (i386_compatible): New.  Use it instead of
9935
        bfd_default_compatible.
9936
 
9937
2002-03-07  H.J. Lu  (hjl@gnu.org)
9938
 
9939
        * coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type
9940
        as the type for bfd_reloc_val.
9941
 
9942
2002-03-05  John David Anglin  
9943
 
9944
        * elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function.
9945
        (elf_hppa_relocate_section): Ignore undefined dynamic loader symbols.
9946
        (elf_hppa_final_link_relocate): Correct relocations for indirect
9947
        references to local data through the DLT.  Fix .opd creation for
9948
        local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64
9949
        relocations.  Use e_lsel selector for R_PARISC_DLTIND21L,
9950
        R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per
9951
        "Processor-Specific ELF for PA_RISC, Version 1.43" document.
9952
        Similarly, use e_rsel for DLT and LTOFF 'R' relocations.
9953
        * elf32-hppa.c (final_link_relocate): Revise relocation selectors
9954
        as per "Processor-Specific ELF for PA_RISC, Version 1.43" document.
9955
 
9956
2002-03-05  Jakub Jelinek  
9957
 
9958
        * merge.c (_bfd_merge_sections): Don't segfault if there
9959
        is nothing to merge due to GC.
9960
 
9961
2002-03-05  Alan Modra  
9962
 
9963
        * elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep
9964
        symbols that have been forced local.
9965
 
9966
        * elflink.h (elf_bfd_final_link): Call elf_link_output_extsym
9967
        to output forced local syms for non-shared link.
9968
        (elf_link_output_extsym): Tweak condition for calling backend
9969
        adjust_dynamic_symbol so that previous behaviour is kept.
9970
        Whitespace changes throughout file.
9971
 
9972
2002-03-04  H.J. Lu 
9973
 
9974
        * elf.c (bfd_section_from_shdr): Handle special sections,
9975
        .init_array, .fini_array and .preinit_array.
9976
        (elf_fake_sections): Likewise.
9977
 
9978
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the
9979
        DT entry only if the section is in output for .init_array,
9980
        .fini_array and .preinit_array. Complain about .preinit_array
9981
        section in DSO.
9982
        (elf_bfd_final_link): Warn zero size for .init_array,
9983
        .fini_array and .preinit_array sections.
9984
 
9985
        * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove
9986
        SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY.
9987
        (elfNN_ia64_fake_sections): Remove .init_array, .fini_array and
9988
        .preinit_array.
9989
 
9990
2002-03-04  Alan Modra  
9991
 
9992
        * configure.in (WIN32LIBADD): Don't eval PICFLAG assignment.
9993
        * configure: Regenerate.
9994
 
9995
2002-03-02  Tom Rix  
9996
 
9997
        * coff64-rs6000.c (xcoff64_howto_table): Replace howto types with
9998
        symbolic equiv.
9999
        * coff-rs6000.c (xcoff_howto_table): Same.
10000
 
10001
2002-03-01  David Mosberger  
10002
 
10003
        * elflink.h (size_dynamic_sections): If section named
10004
        ".preinit_array" exists, create DT_PREINIT_ARRAY and
10005
        DT_PREINIT_ARRAYSZ entries in dynamic table.  Analogously for
10006
        ".init_array" and ".fini_array".
10007
        (elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ,
10008
        DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and
10009
        DT_FINI_ARRAY.
10010
 
10011
2002-02-26  Andrew Macleod  
10012
 
10013
        * elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local
10014
        dynsyms.
10015
 
10016
2002-02-25  Alan Modra  
10017
 
10018
        * elf64-hppa.h: Update copyright date.
10019
 
10020
        * elf64-ppc.c (ppc64_elf_check_relocs): Warning fix.
10021
        (ppc64_elf_relocate_section): Don't generate power4 style branch
10022
        hints for *_BRTAKEN and *_BRNTAKEN relocs.
10023
 
10024
2002-02-22  Jakub Jelinek  
10025
 
10026
        * elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my
10027
        last patch.
10028
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
10029
 
10030
2002-02-21  Andreas Jaeger  
10031
 
10032
        * elf64-x86-64.c: Major rework that introduces all recent changes
10033
        to the x86-64 backend.  Get a closer match to elf32-i386.
10034
        (struct elf64_x86_64_dyn_relocs): Rename from
10035
        elf64_x86_64_pcrel_relocs_copied, add additional fields.  Change
10036
        all users.
10037
        (struct elf64_x86_64_link_hash_table): Add short cuts to some
10038
        sections.
10039
        (link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc,
10040
        remove casts, initialize new hash members.
10041
        (create_got_section): New.
10042
        (elf64_x86_64_create_dynamic_sections): New.
10043
        (elf64_x86_64_copy_indirect_symbol): New.
10044
        (elf64_x86_64_check_relocs): Don't allocate space for dynamic
10045
        relocs, .got or .relgot here but do it in allocate_dynrelocs.
10046
        Reference count possible .plt and .got entries.  Don't test input
10047
        section SEC_READONLY here to try to avoid copy relocs, and keep
10048
        dyn_relocs regardless of ELF_LINK_NON_GOT_REF.  Don't set
10049
        DF_TEXTREL here.  Delay setting of variables until needed.  Cache
10050
        pointer to "sreloc" section in elf_section_data. Tweak condition
10051
        under which .got created.  Report files with bad relocation
10052
        section names.
10053
        (elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
10054
        Reference count possible .plt entries.  Don't deallocate .got and
10055
        .relgot space here.
10056
        (elf64_x86_64_adjust_dynamic_symbol): Handle nocopyreloc.  Don't
10057
        do copy reloc processing for weakdefs.  Remove redundant casts and
10058
        aborts.  Delay setting of vars until needed.  Move creation of
10059
        dynamic symbols and allocation of .plt and .rela.plt to
10060
        allocate_dynrelocs.  Replace BFD_ASSERT with abort.
10061
        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
10062
        (allocate_dynrelocs): New.
10063
        (readonly_dynrelocs): New.
10064
        (elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs.
10065
        Allocate space for dyn relocs.  Replace BFD_ASSERT with abort.
10066
        Zero out the dynamic allocated content space.
10067
        (elf64_x86_64_discard_copies): Removed.
10068
        (elf64_x86_64_relocate_section): Make use of dynamic section
10069
        short-cuts.  Localise vars, and delay setting.  Better error
10070
        reporting, replace BFD_ASSERT with abort.  Check
10071
        ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the
10072
        regular object file and tread the weak definition as the normal
10073
        one.  Don't discard relocs for undefweak or undefined symbols and
10074
        check !DEF_REGULAR as well as DEF_DYNAMIC in test for avoided copy
10075
        relocs.
10076
        (elf64_x86_64_finish_dynamic_symbol): Don't copy relocs for
10077
        symbols that have been forced local.  Use same test to decide if
10078
        we can use a relative reloc for got as relocate_section.  Expand
10079
        SHN_UNDEF comment.  Move expressions out of function calls.
10080
        Replace BFD_ASSERT with abort.
10081
        (bfd_elf64_bfd_final_link): Removed.
10082
        (elf_backend_copy_indirect_symbol): Define.
10083
 
10084
2002-02-20  Tom Rix  
10085
 
10086
        * coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA.
10087
        (_bfd_xcoff_reloc_type_lookup): Use it.
10088
        * coff64-rs6000.c (xcoff64_howto_table): Same.
10089
        (xcoff64_reloc_type_lookup): Same.
10090
 
10091
2002-02-20  Peter Schauer  
10092
 
10093
        * osf-core.c (osf_core_vec): OSF/1 (Digital Unix) core files are
10094
        little endian.
10095
 
10096
2002-02-19  Martin Schwidefsky  
10097
 
10098
        * archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31.
10099
        (bfd_mach_s390_esame): Rename to bfd_mach_s390_64.
10100
        * bfd-in2.h: Regenerate.
10101
        * cpu-s390.c (arch_info_struct): Use renamed architecture defines.
10102
        Replace architecture name "s390" with "s390:31-bit" and "s390:esame"
10103
        with "s390:64-bit".
10104
        * elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations.
10105
        (elf_s390_reloc_type_lookup): Likewise.
10106
        (elf_s390_check_relocs): Likewise.
10107
        (elf_s390_gc_sweep_hook): Likewise.
10108
        (elf_s390_relocate_section): Likewise.
10109
        (elf_s390_object_p): Use renamed architecture define.
10110
        * elf64-s390.c (elf_s390_object_p): Use renamed architecture define.
10111
 
10112
2002-02-19  Frank Ch. Eigler  
10113
 
10114
        * syms.c (stt[]): Sorted.  Added .init/.fini -> "t" mapping.
10115
 
10116
2002-02-19  Jakub Jelinek  
10117
 
10118
        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable
10119
        absptr -> pcrel optimization for shared libs.
10120
        Only create minimal .eh_frame_hdr if absptr FDE encoding in shared
10121
        library cannot be converted to pcrel.
10122
        (_bfd_elf_eh_frame_section_offset): Return -2 if making absptr
10123
        relative.
10124
        * elf32-i386.c (elf_i386_relocate_section): If
10125
        _bfd_elf_section_offset returned -2, skip, but make sure the
10126
        relocation is installed.
10127
        * elf32-arm.h (elf32_arm_final_link_relocate): Likewise.
10128
        * elf32-cris.c (cris_elf_relocate_section): Likewise.
10129
        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
10130
        * elf32-i370.c (i370_elf_relocate_section): Likewise.
10131
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
10132
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
10133
        * elf32-s390.c (elf_s390_relocate_section): Likewise.
10134
        * elf32-sh.c (sh_elf_relocate_section): Likewise.
10135
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
10136
        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
10137
        * elf64-s390.c (elf_s390_relocate_section): Likewise.
10138
        * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
10139
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
10140
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
10141
        * elf64-alpha.c (elf64_alpha_relocate_section): Handle
10142
        _bfd_elf_section_offset returning -2 the same way as -1.
10143
        * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise.
10144
        * elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME
10145
        and BFD_ASSERT.
10146
        * elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise.
10147
 
10148
2002-02-18  Tom Rix  
10149
 
10150
        * xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support.
10151
        (bfd_xcoff_size_dynamic_sections): Same.
10152
        * bfd-in.h (bfd_xcoff_link_generate_rtinit): Same.
10153
        (bfd_xcoff_size_dynamic_sections): Same.
10154
        * coff-rs6000.c (xcoff_generate_rtinit): Same.
10155
        * coff-rs646000.c (xcoff64_generate_rtinit): Same.
10156
        * libxcoff.h (struct xcoff_backend_data_rec): Same.
10157
        * xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean.
10158
        * bfd-in2.h: Regenerate.
10159
 
10160
2002-02-18  Alan Modra  
10161
 
10162
        * elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define.
10163
        (struct ppc_link_hash_table): Add sfpr.
10164
        (ppc64_elf_link_hash_table_create): Init it.
10165
        (ppc64_elf_create_dynamic_sections): Split creation of .stub and
10166
        .glink out to..
10167
        (create_linkage_sections): ..here.  Make .sfpr too.
10168
        (ppc64_elf_check_relocs): Call create_linkage_sections, and set
10169
        dynobj early.
10170
        (MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
10171
        (ppc64_elf_func_desc_adjust): Look for missing ._savef* and
10172
        ._restf* functions, and create as needed.
10173
        (func_desc_adjust): Only force_local for shared libs.
10174
 
10175
2002-02-18  David O'Brien  
10176
 
10177
        * configure.in: Bump version number post 2.12 branching.
10178
        * configure: Regenerate.
10179
 
10180
2002-02-17  Hans-Peter Nilsson  
10181
 
10182
        * mmo.c: Correct and improve comments.
10183
        (mmo_write_chunk): Store trailing byte in bfd buffer; don't
10184
        zero-pad.  Use input to fill up non-empty bfd buffer.
10185
        (mmo_flush_chunk): New function.
10186
        (mmo_write_loc_chunk): Add parameter last_vmap, all callers
10187
        changed.  Don't emit location specifier if VMA is same as
10188
        *LAST_VMAP after omitting leading zero contents.  Call
10189
        mmo_flush_chunk before emitting location specifier.
10190
        (mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished
10191
        with mmo_write_loc_chunk calls.
10192
        (mmo_internal_write_section): Call mmo_flush_chunk after
10193
        mmo_write_chunk.
10194
        (mmo_write_symbols_and_terminator): Move :Main to first position
10195
        in symbol array.  Add faked one if it does not exist if there are
10196
        other symbols.  Don't add it if there are no symbols at all.  Move
10197
        out test for value of :Main from symbol loop.  Rename table
10198
        fakemain to maintable and variable mainsym to fakemain.
10199
 
10200
2002-02-15  Richard Henderson  
10201
 
10202
        * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target
10203
        section with no got matches any got.  Simplify error generaion.
10204
 
10205
2002-02-15  Alan Modra  
10206
 
10207
        Support arbitrary length fill patterns.
10208
        * linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc.
10209
        (_bfd_default_link_order): Remove bfd_fill_link_order code.
10210
        Call default_data_link_order.
10211
        (default_fill_link_order): Delete.
10212
        (default_data_link_order): New function.
10213
        * elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences
10214
        of bfd_fill_link_order with bfd_data_link_order.
10215
        * elf64-alpha.c (elf64_alpha_final_link): Likewise.
10216
        * elf64-mips.c (mips_elf64_final_link): Likewise.
10217
 
10218
        * bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value.
10219
        Correct value returned in "end" for "0x".
10220
 
10221
2002-02-14  Nick Clifton  
10222
 
10223
        * cpu-arm.c (processors): Replace 'arch' field with 'mach'.
10224
        (scan): Test against 'mach' field in info structure.
10225
 
10226
2002-02-14  Alan Modra  
10227
 
10228
        * elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD.
10229
 
10230
2002-02-14  Matt Fredette  
10231
 
10232
        * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize
10233
        EF_M68000.
10234
 
10235
2002-02-13  Nick Clifton  
10236
 
10237
        * elf.c (_bfd_elf_make_section_from_shdr): Do not insist on
10238
        non-zero physical addresses when adjusting the LMAs of new
10239
        sections.
10240
 
10241
2002-02-12  John David Anglin  
10242
 
10243
        * elf-hppa.h (elf_hppa_reloc_final_type): New function stripped
10244
        from _bfd_elf_hppa_gen_reloc_type.
10245
        (_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype.
10246
        * elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype.
10247
        * elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h.
10248
        * elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype.
10249
 
10250
2002-02-12  Alexandre Oliva  
10251
 
10252
        * elf-m10300.c (mn10300_elf_relax_section): Skip section before
10253
        loading its contents if there's nothing to do in it.
10254
 
10255
2002-02-12  Alan Modra  
10256
 
10257
        * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing
10258
        64k boundary.
10259
 
10260
        * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic
10261
        DT_PPC64_OPD and DT_PPC64_OPDSZ tags.
10262
        (ppc64_elf_finish_dynamic_sections): Set values for them.
10263
 
10264
2002-02-11  Michael Snyder  
10265
 
10266
        * elf-bfd.h (elfcore_write_lwpstatus): Add prototype.
10267
        * elf.c (elfcore_grok_pstatus): Add prototype.
10268
        (elfcore_grok_lwpstatus): Add prototype.
10269
        (elfcore_write_lwpstatus): New function.
10270
        (elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy.
10271
 
10272
2002-02-11  Alexandre Oliva  
10273
 
10274
        * elf32-sh.c: Added missing prototypes.
10275
        * elf32-sh64.c: Likewise.
10276
        (sh_elf_align_loads): Mark unused args as such.
10277
        * elf64-sh64.c: Added missing prototypes.
10278
        (struct elf_sh64_link_hash_entry): Fix typo.
10279
        (sh_elf64_relocate_section): Fix info argument passed to
10280
        _bfd_elf_section_offset.
10281
 
10282
2002-02-11  Alan Modra  
10283
 
10284
        * Makefile.am: "make dep-am".
10285
        * Makefile.in: Regenerate.
10286
        * aclocal.m4: Regenerate.
10287
        * config.in: Regenerate.
10288
        * configure: Regenerate.
10289
 
10290
2002-02-10  Daniel Jacobowitz  
10291
 
10292
        * coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized
10293
        variable warnings.
10294
        * elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned
10295
        comparison warning.
10296
        * trad-core.c (trad_unix_core_file_p): Silence pointer/integer
10297
        cast warnings for the common case.
10298
 
10299
2002-02-10  Hans-Peter Nilsson  
10300
 
10301
        * config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64
10302
        vectors.
10303
        (sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64
10304
        vectors.
10305
 
10306
2002-02-09  Richard Henderson  
10307
 
10308
        * elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP.
10309
        (elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise.
10310
        (elf64_alpha_relocate_section): Likewise.
10311
        * reloc.c (BFD_RELOC_ALPHA_BRSGP): New.
10312
        * bfd-in2.h, libbfd.h: Rebuild.
10313
 
10314
2002-02-09  Hans-Peter Nilsson  
10315
 
10316
        * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check
10317
        that base-plus-offset reloc accounting is consistent.
10318
        (mmix_elf_relax_section): Keep base-plus-offset reloc accounting
10319
        up to date for undefined symbols.
10320
 
10321
2002-02-08  Eric Christopher  
10322
 
10323
        From Rainer Orth  
10324
 
10325
        * elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela
10326
        sections for the O32 ABI.
10327
 
10328
2002-02-08  Chris Demetriou  
10329
 
10330
        * elf32-arm.h: Fix formatting of _("...").
10331
        * elf32-d10v.c: Likewise.
10332
        * elf32-m68k.c: Likewise.
10333
        * elf32-mips.c: Likewise.
10334
 
10335
2002-02-08  Ivan Guzvinec 
10336
 
10337
        * coff-or32.c: Fix compile time warning messages.
10338
 
10339
2002-02-08  Alexandre Oliva  
10340
 
10341
        Contribute sh64-elf.
10342
        2002-01-23  Alexandre Oliva  
10343
        * reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16,
10344
        R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16,
10345
        R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16,
10346
        R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16,
10347
        R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16,
10348
        R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16,
10349
        R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16,
10350
        R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8,
10351
        R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64):
10352
        New relocs.
10353
        * libbfd.h, bfd-in2.h: Rebuilt.
10354
        * elf32-sh.c (sh_elf_howto_table): Define new relocs.
10355
        (sh_reloc_map): Map them.
10356
        (PLT_ENTRY_SIZE, elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
10357
        elf_sh_plt_entry_be, elf_sh_plt_entry_le, elf_sh_pic_plt_entry_be,
10358
        elf_sh_pic_plt_entry_le, elf_sh_plt0_entry, elf_sh_plt_entry,
10359
        elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
10360
        elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset,
10361
        elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset,
10362
        movi_shori_putval) [INCLUDE_SHMEDIA]: New.
10363
        (elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add
10364
        datalabel_got_offset.
10365
        (sh_elf_link_hash_newfunc): Initialize it.
10366
        (sh_elf_relocate_section): Augment the scope of
10367
        seen_stt_datalabel.  Introduce GOTPLT support.  Extend GOTPC, PLT,
10368
        GOT and GOTOFF handling to new SHmedia relocation types.  Support
10369
        GOT_BIAS.
10370
        (sh_elf_check_relocs): Likewise.
10371
        (sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in
10372
        PLT entries using movi_shori_putval.  Support GOT_BIAS.
10373
        (sh_elf_finish_dynamic_sections): Likewise.
10374
        * elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to
10375
        relocation, it's now done by the caller.
10376
        (GOT_BIAS): New.
10377
        * elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt,
10378
        elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset,
10379
        elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset,
10380
        elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER,
10381
        elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry,
10382
        elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse,
10383
        sh64_elf64_hash_table): New.
10384
        (sh_elf64_howto_table): Introduce new relocs.
10385
        (sh_elf64_info_to_howto): Accept new PIC relocs.
10386
        (sh_elf64_relocate_section): Augment the scope of
10387
        seen_stt_datalabel.  Support new PIC relocs.
10388
        (sh_elf64_check_relocs): Support new PIC relocs.
10389
        (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le,
10390
        elf_sh64_plt_entry_be, elf_sh64_plt_entry_le,
10391
        elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le,
10392
        elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry,
10393
        sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create,
10394
        movi_shori_putval, movi_3shori_putval,
10395
        sh64_elf64_create_dynamic_sections,
10396
        sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies,
10397
        sh64_elf64_size_dynamic_sections,
10398
        sh64_elf64_finish_dynamic_symbol,
10399
        sh64_elf64_finish_dynamic_sections): New.
10400
        (elf_backend_create_dynamic-sections,
10401
        bfd_elf64_bfd_link_hash_table_create,
10402
        elf_backend_adjust_dynamic_symbol,
10403
        elf_backend_size_dynamic_sections,
10404
        elf_backend_finish_dynamic_symbol,
10405
        elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
10406
        elf_backend_plt_readonly, elf_backend_want_plt_sym,
10407
        elf_backend_got_header_size, elf_backend_plt_header_size):
10408
        Define.
10409
        2001-05-16  Alexandre Oliva  
10410
        * elf32-sh.c: Renumbered and renamed some SH5 relocations to
10411
        match official numbers and names; moved unmaching ones to the
10412
        range 0xf2-0xff.
10413
        * elf32-sh64.c, elf64-sh64.c: Likewise.
10414
        2001-03-12  DJ Delorie  
10415
        * elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia
10416
        sections.
10417
        2001-03-12  DJ Delorie  
10418
        * elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must
10419
        be aligned.
10420
        * elf64-sh64.c (sh_elf64_relocate_section): Ditto.
10421
        2001-01-14  Hans-Peter Nilsson  
10422
        * elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define.
10423
        (sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a
10424
        .cranges section with SEC_SORT_ENTRIES set.
10425
        (sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an
10426
        incoming sorted .cranges section.
10427
        (sh64_bfd_elf_copy_private_section_data): New.
10428
        (sh64_elf_final_write_processing): Only sort .cranges and modify
10429
        start address if called by linker.
10430
        2001-01-08  Ben Elliston  
10431
        * elf32-sh64.c (sh64_elf_final_write_processing): Activate
10432
        Hans-Peter Nilsson's set bit 0 patch from 2001-01-06.
10433
        * elf64-sh64.c (sh64_elf64_final_write_processing): Ditto.
10434
        2001-01-06  Hans-Peter Nilsson  
10435
        * elf64-sh64.c (sh_elf64_howto_table): No open brace at start of
10436
        line.  Add comments before all entries.
10437
        : Correct and clarify describing
10438
        comment.
10439
        (sh_elf64_reloc): Correct head comment.
10440
        (sh_elf64_relocate_section): Correct spacing.
10441
        : Do not honour STO_SH5_ISA32;
10442
        instead call reloc_dangerous callback.
10443
        : New case.
10444
        (sh_elf64_gc_mark_hook): Correct spacing.
10445
        (sh_elf64_check_relocs): Ditto.
10446
        * elf32-sh64.c (shmedia_prepare_reloc) :
10447
        New case.
10448
        * elf32-sh.c: Correct #endif comments for #ifndef-wrapped
10449
        functions.
10450
        (sh_elf_howto_table) : Correct,
10451
        clarify describing comment.  Add comments before all entries.
10452
        (sh_elf_relocate_section) : Do not
10453
        honour STO_SH5_ISA32; instead call reloc_dangerous callback.
10454
        2001-01-06  Hans-Peter Nilsson  
10455
        Sort .cranges section in final link.  Prepare to set bit 0 on
10456
        entry address.
10457
        * elf32-sh64.c (struct sh64_find_section_vma_data): New.
10458
        (sh64_elf_link_output_symbol_hook): Fix typo in prototype.
10459
        (sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming
10460
        .cranges section.
10461
        (sh64_backend_section_from_shdr): New, to recognize
10462
        SHT_SH5_CR_SORTED on incoming .cranges section.
10463
        (elf_backend_section_from_shdr): Define.
10464
        (sh64_elf_final_write_processing): Sort outgoing .cranges
10465
        section.  (New, temporarily disabled:) Set bit 0 on entry address
10466
        according to ISA type.
10467
        (sh64_find_section_for_address): New.
10468
        (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
10469
        crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c.
10470
        (sh64_address_in_cranges): Move here from opcodes/sh64-dis.c.  Use
10471
        bfd_malloc, not xmalloc.
10472
        (sh64_get_contents_type): Move here from opcodes/sh64-dis.c.  Make
10473
        global.
10474
        * elf32-sh64.c (sh64_elf64_final_write_processing): New, (but
10475
        temporarily disabled) setting bit 0 on entry address.
10476
        (elf_backend_final_write_processing): Define.
10477
        2001-01-05  Hans-Peter Nilsson  
10478
        * elf32-sh.c (sh_elf_howto_table) : Adjust fields to
10479
        be a proper relocation for PTA and PTB rather than a marker.
10480
        
10481
        R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16,
10482
        R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16,
10483
        R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL,
10484
        R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL>:
10485
        Zero src_mask.
10486
        * elf64-sh64.c: Ditto.
10487
        (sh_elf64_relocate_section) : New case.
10488
        * elf32-sh64.c: Include opcodes/sh64-opc.h
10489
        (shmedia_prepare_reloc): Take a bfd_link_info pointer as first
10490
        argument.  Drop const qualifiers from "bfd *" and "bfd_byte *"
10491
        parameters.  No unused parameters.  Caller changed.
10492
        : New case.
10493
        * Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h.
10494
        * Makefile.in: Regenerate.
10495
        2000-12-30  Hans-Peter Nilsson  
10496
        * elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for
10497
        all code sections.
10498
        (sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
10499
        (sh64_elf_merge_private_data): Ditto.
10500
        * elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data
10501
        to access stored section flags.
10502
        (sh64_elf_final_write_processing): Return immediately unless
10503
        called by linker.  Use sh64_elf_section_data (cranges) to get size
10504
        of linker-generated cranges entries.
10505
        (sh64_elf_copy_private_data): Add missing "return true".
10506
        (sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
10507
        (sh_elf64_merge_private_data): Ditto.
10508
        2000-12-19  Hans-Peter Nilsson  
10509
        * elf64-sh64.c (sh64_elf64_fake_sections): New, copy of
10510
        elf64-sh64.c:sh64_elf_fake_sections.
10511
        (elf_backend_fake_sections): Define as sh64_elf64_fake_sections.
10512
        2000-12-18  Hans-Peter Nilsson  
10513
        * elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete.
10514
        (sh64_elf_final_write_processing): New.
10515
        (elf_backend_final_write_processing): Define.
10516
        (sh64_elf_fake_sections): Get header flags from tdata field.
10517
        (sh64_elf_copy_private_data): Do not call
10518
        sh64_elf_copy_private_data_internal, just copy e_flags field.
10519
        (sh64_elf_merge_private_data): Do not call
10520
        sh64_elf_copy_private_data_internal.
10521
        2000-12-12  Hans-Peter Nilsson  
10522
        Remove EF_SH64_ABI64, let ELF size make difference.
10523
        Remove SH64-specific BFD section flag.
10524
        * elf32-sh64.c (sh64_elf_fake_sections): Recognize section as
10525
        containing SHmedia through elf_section_data (asect)->tdata
10526
        non-zero, not using a BFD section flag.
10527
        (sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64.
10528
        (sh64_elf_merge_private_data): Similar.
10529
        (elf_backend_section_flags): Don't define.
10530
        (sh64_elf_backend_section_flags): Delete.
10531
        * elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64,
10532
        not EF_SH64_ABI64.
10533
        (sh_elf64_merge_private_data): Similar.
10534
        * section.c (Section flags definitions): Don't define
10535
        SEC_SH_ISA_SHMEDIA.
10536
        (bfd-in2.h): Regenerate.
10537
        2000-12-09  Hans-Peter Nilsson  
10538
        Make DataLabel references work with partial linking.
10539
        * elf32-sh64.c: Fix formatting.
10540
        (sh64_elf_link_output_symbol_hook): New.
10541
        (elf_backend_link_output_symbol_hook): Define to
10542
        sh64_elf_link_output_symbol_hook.
10543
        (sh64_elf_add_symbol_hook): Make DataLabel symbol just global
10544
        undefined if partial linking.  Adjust sanity check.
10545
        * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New.
10546
        (elf_backend_link_output_symbol_hook): Define to
10547
        sh64_elf64_link_output_symbol_hook.
10548
        (sh64_elf64_add_symbol_hook): Make DataLabel symbol just global
10549
        undefined if partial linking.  Adjust sanity check.
10550
        2000-12-07  Hans-Peter Nilsson  
10551
        Implement semantics for inter-file DataLabel references.
10552
        * elf64-sh64.c (DATALABEL_SUFFIX): Define.
10553
        (sh64_elf64_add_symbol_hook): New.
10554
        (sh_elf64_relocate_section): If passing an indirect symbol with
10555
        st_type STT_DATALABEL on the way to a symbol with st_other
10556
        STO_SH5_ISA32, do not bitor 1 to the relocation.
10557
        (elf_backend_add_symbol_hook): Define to
10558
        sh64_elf64_add_symbol_hook.
10559
        * elf64-sh32.c: Tweak comments.
10560
        (DATALABEL_SUFFIX): Define.
10561
        (sh64_elf_add_symbol_hook): New.
10562
        (elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook.
10563
        * elf32-sh.c (sh_elf_relocate_section): If passing an indirect
10564
        symbol with st_type STT_DATALABEL on the way to a symbol with
10565
        st_other STO_SH5_ISA32, do not bitor 1 to the relocation.
10566
        2000-12-05  Hans-Peter Nilsson  
10567
        Pass through STT_DATALABEL.
10568
        * elf32-sh64.c (sh64_elf_get_symbol_type): New.
10569
        (elf_backend_get_symbol_type): Define.
10570
        * elf64-sh64.c (sh64_elf64_get_symbol_type): New.
10571
        (elf_backend_get_symbol_type): Define.
10572
        2000-11-30  Hans-Peter Nilsson  
10573
        * elf32-sh64.c: Tweak comments.
10574
        (sh64_elf_copy_private_data_internal): Add prototype.
10575
        (bfd_elf32_bfd_set_private_flags): Define.
10576
        (sh64_elf_copy_private_data_internal): Compare machine name, not
10577
        textual BFD target name, to check whether to copy section flag
10578
        SHF_SH5_ISA32.
10579
        (sh64_elf_merge_private_data): Validize bfd_get_arch_size.
10580
        Tweak section-contents-type-mismatch message.
10581
        (shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers.
10582
        Validize reloc-types.
10583
        * elf64-sh64.c: New file.
10584
        * targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare.
10585
        * Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo.
10586
        (BFD64_BACKENDS_CFILES): Add elf64-sh64.c.
10587
        Regenerate dependencies.
10588
        * Makefile.in: Regenerate.
10589
        * config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and
10590
        bfd_elf64_sh64l_vec.
10591
        * configure.in: Handle bfd_elf64_sh64_vec and
10592
        bfd_elf64_sh64l_vec.
10593
        * configure: Regenerate.
10594
        * po/POTFILES.in: Regenerate.
10595
        * po/bfd.pot: Regenerate.
10596
        2000-11-29  Hans-Peter Nilsson  
10597
        * elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize
10598
        anything else but EF_SH64 and EF_SH64_ABI64.
10599
        (sh64_elf_merge_private_data): Emit error for anything else but
10600
        EF_SH64 and EF_SH64_ABI64.
10601
        * config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec
10602
        from targ_selvecs.
10603
        * configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and
10604
        bfd_elf32_sh64l_vec as a temporary measure.
10605
        * configure: Regenerate.
10606
        2000-11-27  Hans-Peter Nilsson  
10607
        * cpu-sh.c (arch_info_struct): Include sh5 item
10608
        unconditionalized.
10609
        * config.bfd (sh64-*-elf*): Do not set targ_cflags.
10610
        Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec,
10611
        bfd_elf32_shblin_vec and bfd_elf32_shlin_vec.
10612
        * elf32-sh64.c: Tweak comments.
10613
        (sh64_elf_set_mach_from_flags): Recognize all machine flags that
10614
        are proper subsets of SH64 as bfd_mach_sh5.  Add EF_SH64_ABI64.
10615
        (sh64_elf_copy_private_data_internal): Wrap long line.
10616
        (sh64_elf_merge_private_data): Rewrite to allow objects from
10617
        SH64 subsets to be linked together.
10618
        (INCLUDE_SHMEDIA): Define.
10619
        * elf32-sh.c (sh_elf_relocate_section) :
10620
        Parenthesize plus-expression inside or-expression.
10621
        : Ditto.
10622
        (sh_elf_set_mach_from_flags): Remove code refusing
10623
        deleted EF_SH64_32BIT_ABI flag.
10624
        2000-11-26  Hans-Peter Nilsson  
10625
        * elf32-sh.c (sh_elf_howto_table) 
10626
        R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16_PCREL,
10627
        R_SH_IMM_HI16_PCREL, R_SH_64_PCREL>: Set pcrel_offset to true.
10628
        (sh_elf_relocate_section) : Or 1 in
10629
        calculation of relocation if sym->st_other & STO_SH5_ISA32.
10630
        : Ditto if h->other & STO_SH5_ISA32.
10631
        * elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to
10632
        relocation.
10633
        2000-11-24  Hans-Peter Nilsson  
10634
        * Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo.
10635
        (BFD32_BACKENDS_CFILES): Add elf32-sh64.c.
10636
        Regenerate dependencies.
10637
        * Makefile.in: Regenerate.
10638
        * archures.c: Add bfd_mach_sh5.
10639
        * config.bfd: Map targ_cpu sh* to bfd_sh_arch.
10640
        Handle sh64-*-elf*.  Set targ_cflags to -DINCLUDE_SHMEDIA.
10641
        * configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec.
10642
        * configure: Regenerate.
10643
        * reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5,
10644
        BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6,
10645
        BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
10646
        BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8,
10647
        BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16,
10648
        BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16,
10649
        BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16,
10650
        BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16,
10651
        BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations.
10652
        * cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link
10653
        in item for SH5.
10654
        * elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items
10655
        for SHmedia relocs.
10656
        [INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs.
10657
        [INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call
10658
        shmedia_prepare_reloc, goto final_link_relocate if it returns
10659
        non-zero, else fail as before.
10660
        (sh_elf_set_mach_from_flags): Provide function only if not defined
10661
        as macro.  Do not recognize objects with EF_SH64_32BIT_ABI set.
10662
        (sh_elf_set_private_flags): Provide function only if not defined
10663
        as a macro.
10664
        (sh_elf_copy_private_data): Similar.
10665
        (sh_elf_merge_private_data): Similar.
10666
        * section.c (SEC_SH_ISA_SHMEDIA): New.
10667
        * targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare.
10668
        * elf32-sh64.c: New file.
10669
        * libbfd.h: Regenerate.
10670
        * bfd-in2.h: Regenerate.
10671
        * po/POTFILES.in: Regenerate.
10672
        * po/bfd.pot: Regenerate.
10673
        * bfd-in2.h: Regenerate.
10674
        * libbfd.h: Regenerate.
10675
 
10676
2002-02-07  Daniel Jacobowitz  
10677
 
10678
        * bfd-in.h: Update  check to only see if  has
10679
        been included, not drag it in.
10680
        * bfd-in2.h: Regenerate.
10681
 
10682
2002-02-06  H.J. Lu  (hjl@gnu.org)
10683
 
10684
        * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update
10685
        the mach and ISA fields if necessary.
10686
 
10687
2002-02-06  Nick Clifton  
10688
 
10689
        * coffcode.h (coff_set_arch_mach_hook): Select the highest known
10690
        ARM architecture when an F_ARM_5 flag is detected, since we cannot
10691
        be sure exactly which architecture this represents.
10692
 
10693
2002-02-05  Nick Clifton  
10694
 
10695
        * po/tr.po: Updated translation.
10696
 
10697
2002-02-05  Alan Modra  
10698
 
10699
        From Jimi X 
10700
        * archures (bfd_mach_ppc64): Define.
10701
        (bfd_powerpc_arch): Rename to bfd_powerpc_archs.
10702
        (bfd_powerpc_arch): Define.
10703
        * bfd-in2.h: Regenerate.
10704
        * cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs.
10705
        (bfd_powerpc_arch): Move to tail of bfd_powerpc_archs.
10706
        (bfd_powerpc_archs): Add default powerpc64 arch.
10707
 
10708
2002-02-05  Alan Modra  
10709
 
10710
        * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs
10711
        against section syms in readonly sections.  Don't do the global
10712
        sym check if we find one.
10713
        * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
10714
        * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
10715
        * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
10716
        * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
10717
        (elf_s390_grok_prstatus): Add missing prototype.
10718
 
10719
2002-02-04  Hans-Peter Nilsson  
10720
 
10721
        * elf64-mmix.c (mmix_dump_bpo_gregs): New function.
10722
        (mmix_elf_check_common_relocs) :
10723
        Call bfd_get_section_by_name only once.  Initialize
10724
        bpodata->n_bpo_relocs_this_section.
10725
        (_bfd_mmix_prepare_linker_allocated_gregs): Remove comment
10726
        referring to DSOs.
10727
        (bpo_reloc_request_sort_fn): Don't use difference of values as
10728
        return-value.
10729
 
10730
2002-02-02  David O'Brien  
10731
 
10732
        * configure.in: Tweak the FreeBSD 4.x recognition more.  Only treat
10733
        version 4.5 and later the same as 5-CURRENT.
10734
        * configure: Re-generate.
10735
 
10736
2002-02-02  Jason Thorpe  
10737
 
10738
        * config.bfd (hppa*-*-netbsd*): New target.
10739
 
10740
2002-01-31  Philipp Thomas  
10741
 
10742
        * coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR
10743
        to front of message. Unify messages with elf32-arm.h. Use
10744
        commas where neccessary.
10745
        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase
10746
        ERROR in messages. Unify messages with coff-arm.c. Correct
10747
        VFP/FPA error message.
10748
        (elf32_arm_print_private_bfd_data): Don't mark APCS-26 and
10749
        APCS-32 for translation.
10750
 
10751
2002-02-01  Hans-Peter Nilsson  
10752
 
10753
        Perform on-demand global register allocation from
10754
        R_MMIX_BASE_PLUS_OFFSET relocs.
10755
        * elf64-mmix.c (struct bpo_reloc_section_info, struct
10756
        bpo_reloc_request, struct bpo_greg_section_info): New.
10757
        (mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook,
10758
        bpo_reloc_request_sort_fn, mmix_elf_relax_section,
10759
        _bfd_mmix_check_all_relocs,
10760
        _bfd_mmix_prepare_linker_allocated_gregs,
10761
        _bfd_mmix_finalize_linker_allocated_gregs): New functions.
10762
        (elf_mmix_howto_table): Correct src_mask for most relocs.
10763
        (mmix_elf_perform_relocation) : New
10764
        case.
10765
        (mmix_final_link_relocate) : New
10766
        case.  Fix typo in comment.  New label do_mmix_reloc.
10767
        (mmix_elf_check_relocs): Abuse bfd_link_info member base_file to
10768
        store first object file with a base-plus-offset reloc.  Call
10769
        mmix_elf_check_common_relocs for the part common with mmo.
10770
        (mmix_elf_final_link): Write out linker-allocated register
10771
        contents section.
10772
        (elf_backend_gc_sweep_hook): Define.
10773
        (bfd_elf64_bfd_relax_section): Define.
10774
 
10775
        * mmo.c: Don't include 
10776
        (mmo_init): Correct init-once logic.
10777
 
10778
2002-02-01  Tom Rix  
10779
 
10780
        * config.bfd: Conditionally support  for pre AIX 4.3.
10781
 
10782
2002-02-01  Alan Modra  
10783
 
10784
        * Makefile.am: Run "make dep-am"
10785
        * Makefile.in: Regenerate.
10786
 
10787
2002-01-31  David O'Brien  
10788
 
10789
        * configure.in: Recognize the differences in core files from FreeBSD
10790
        4.{0,1} and later versions of 4.x.  This treats 4.2+ the same as
10791
        5-CURRENT.
10792
        * configure: Regenerate.
10793
 
10794
2002-01-31  Ivan Guzvinec  
10795
 
10796
        * coff-or32.c: New file.
10797
        * cpu-or32.c: New file.
10798
        * elf32-or32.c: New file.
10799
        * archures.c: Add support for or32.
10800
        * targets.c: Add support for or32.
10801
        * bfd-in2.h: Regenerate.
10802
        * coffcode.h (coff_set_arch_mach_hook, coff_set_flags,
10803
        coff_write_object_contents): Add support for or32.
10804
        * config.bfd: Add target.
10805
        * configure.in: Add support for or32.
10806
        * configure: Regenerate.
10807
        * Makefile.am: Add support for or32.
10808
        * Makefile.in: Regenerate.
10809
        * po/SRC-POTFILES.in: Add or32 files.
10810
        * po/bfd.pot: Regenerate.
10811
 
10812
2002-01-31  Nick Clifton  
10813
            Don Lindsay  
10814
 
10815
        * elf32-mips.c (mips_elf_calculate_relocation): Replace 'return
10816
        false' with a return of a bfd_reloc_ error code.
10817
 
10818
2002-01-31  Hans-Peter Nilsson  
10819
 
10820
        * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
10821
        unexport unreferenced symbols when --export-dynamic.  Call
10822
        _bfd_elf_strtab_delref when unexporting.
10823
 
10824
2002-01-30  Daniel Jacobowitz  
10825
 
10826
        * bfd-in.h: Include  if it is available.
10827
        * bfd-in2.h: Regenerated.
10828
 
10829
2002-01-31  Alan Modra  
10830
 
10831
        * elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should
10832
        not go via the plt.
10833
 
10834
2002-01-30  Nick Clifton  
10835
 
10836
        * archures.c: Tidy up formatting of embedded comments.
10837
        * bfd.c: Tidy up formatting of embedded comments.
10838
        * bfd-in.h: Fix formatting of comments.
10839
        * reloc.c: Tidy up formatting of ordinary & embedded comments.
10840
        * section.c: Tidy up formatting of embedded comments.
10841
        * syms.c: Tidy up formatting of embedded comments.
10842
        * targets.c: Tidy up formatting of embedded comments.
10843
 
10844
        * bfd-in2.h: Regenerate.
10845
 
10846
2002-01-30  Nick Clifton  
10847
 
10848
        * vms-tir.c (cmd_name): New function.
10849
        (tir_cmd_name): New function.
10850
        (etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name().
10851
        (tir_opr, tir_ctl, tir_cmd): use tir_cmd_name().
10852
        Fix formatting.
10853
 
10854
        * peXXigen.c (pe_print_idata): Rearrange message to aid in
10855
        translation.
10856
        (pe_print_pdata): Rearrange message to aid in translation.
10857
 
10858
        * libbfd.c (warn_deprecated): Rearrange error message to aid in
10859
        translation.
10860
 
10861
        * ihex.c (ihex_write_object_contents): Fix spelling typo.
10862
 
10863
        * ieee.c (ieee_slurp_external_symbols): Remove spurious space.
10864
 
10865
        * elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error
10866
        message to aid in translation.
10867
 
10868
        * elf64-mmix.c (mmix_final_link_relocate): Rearrange error message
10869
        to aid in translation.
10870
 
10871
        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo.
10872
 
10873
2002-01-30  Philipp Thomas  
10874
 
10875
        * coff-arm.c, elf32-elf.h: Unify messages.
10876
 
10877
2002-01-30  Nick Clifton 
10878
 
10879
        * po/sv.po: Updated translation.
10880
 
10881
2002-01-30  Philipp Thomas  
10882
 
10883
        * dwarf2.c (read_abbrev): Use full section name in error message.
10884
        (decode_line_info): Likewise.
10885
 
10886
        * elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging
10887
        message.
10888
 
10889
2002-01-30  Alan Modra  
10890
 
10891
        * elf64-ppc.c (func_desc_adjust): Only provide missing function
10892
        descriptor symbols for undefined function code syms.  Clear
10893
        ELF_LINK_NON_ELF so that they can stay weak.
10894
 
10895
2002-01-29  Chris Demetriou  
10896
            Mitch Lichtenberg  
10897
 
10898
        * bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype.
10899
        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function
10900
        to handle 32-bit ELF embedded reloc (ld --embedded-relocs)
10901
        generation.
10902
        * bfd-in2.h: Regenerate.
10903
 
10904
2002-01-29  Chris Demetriou  
10905
 
10906
        * elf32-mips.c: Add additional comments about HI16 relocation
10907
        processing.
10908
        (_bfd_mips_elf_hi16_reloc): Don't subtract address here for
10909
        pc-relative relocations.  (Reverts change made on 2001-10-31.)
10910
        (_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here
10911
        for pc-relative relocations.
10912
        (mips_elf_calculate_relocation): Add a comment about a kludge
10913
        in the R_MIPS_GNU_REL_HI16 handling.
10914
        (_bfd_mips_elf_relocate_section): Implement that kludge;
10915
        adjust pc-relative HI16 relocation for difference in HI16 and
10916
        LO16 addresses, since it can't easily be done in
10917
        mips_elf_calculate_relocation.
10918
 
10919
2002-01-29  Martin Schwidefsky  
10920
 
10921
        * elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32
10922
        relocations with PC32 relocations for undefined or weak symbols.
10923
        * elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise.
10924
        * elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise.
10925
 
10926
2002-01-28  Jason Thorpe  
10927
 
10928
        * elfcore.h (elf_core_file_p): Improve comment for last change.
10929
 
10930
2002-01-27  Daniel Jacobowitz  
10931
 
10932
        * configure: Regenerated.
10933
 
10934
2002-01-27  Jason Thorpe  
10935
 
10936
        * elfcore.h (elf_core_file_p): Set the machine architecture
10937
        before processing the program headers.
10938
 
10939
2002-01-26  Hans-Peter Nilsson  
10940
 
10941
        * configure.in <64-bit configuration>: If using gcc, check and
10942
        emit error for egcs-1.1.2.
10943
        * configure: Regenerate.
10944
 
10945
2002-01-26  Egor Duda  
10946
 
10947
        * elf.c (elfcore_grok_win32pstatus): Copy only as much information
10948
        as possible to avoid stack corruption.
10949
 
10950
2002-01-26  Richard Henderson  
10951
 
10952
        * elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext
10953
        for non-allocated sections.
10954
 
10955
2002-01-25  Mark Kettenis  
10956
 
10957
        * elf.c (elfcore_write_prstatus): Make sure we pass the address of
10958
        prstat.pr_reg even if it is a struct.
10959
 
10960
2002-01-25  Steve Ellcey 
10961
 
10962
        * elfxx-ia64.c: Reset AIX vector function overrides for HP-UX.
10963
 
10964
2002-01-25  Philipp Thomas  
10965
 
10966
        * coffgen.c (coff_print_symbol): Don't mark info message
10967
        for translation.
10968
 
10969
2002-01-25  Nick Clifton 
10970
 
10971
        * po/fr.po: Updated translation.
10972
        * po/es.po: Updated translation.
10973
 
10974
2002-01-25  Philipp Thomas  
10975
 
10976
        * coff-alpha.c (alpha_relocate_section): Unify warning message
10977
        for GP relative relocations without GP defined.
10978
        * coff-mips.c (mips_relocate_section): Likewise.
10979
 
10980
2002-01-25  Alan Modra  
10981
 
10982
        * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
10983
        unsigned overflow when new_offset < old_offset.
10984
 
10985
2002-01-24  Philipp Thomas  
10986
 
10987
        * bfd.c (_bfd_abort): Fix typo.
10988
 
10989
2002-01-23  Richard Henderson  
10990
 
10991
        * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress
10992
        plt entries for undefweak symbols.
10993
 
10994
2002-01-23  Steve Ellcey 
10995
 
10996
        * targets.c (bfd_elf32_ia64_hpux_big_vec): Add to DEFAULT_VECTOR.
10997
        (bfd_elf64_ia64_hpux_big_vec): Ditto.
10998
        (bfd_elf32_h8300_vec): Ditto.
10999
 
11000
2002-01-23  Alan Modra  
11001
 
11002
        * elf64-ppc.c: Remove stale part of ABI comment.
11003
        (NO_OPD_RELOCS): Define.
11004
        (ppc64_elf_check_relocs): Use it.
11005
        (ppc64_elf_relocate_section): Here too.
11006
        (build_one_stub): Don't point function syms at the stub.  Instead,
11007
        hijack plt.offset.
11008
        (ppc64_elf_relocate_section): Check whether REL24 relocs should
11009
        really go to the stub.  Make all dynamic relocs in opd against
11010
        locals.
11011
        (ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
11012
        plt.offset.
11013
 
11014
2002-01-22  Richard Henderson  
11015
 
11016
        * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp.
11017
 
11018
2002-01-22  Alan Modra  
11019
 
11020
        * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of
11021
        TOC_BASE_OFF adjustment.
11022
 
11023
        * Makefile.am: Run "make dep-am".
11024
        * Makefile.in: Regenerate.
11025
        * po/SRC-POTFILES.in: Regenerate.
11026
 
11027
2002-01-22  John David Anglin  
11028
 
11029
        * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new
11030
        host defines.
11031
 
11032
2002-01-21  Hans-Peter Nilsson  
11033
 
11034
        * elf32-cris.c (cris_elf_relocate_section) :
11035
        Check for and emit error if sgot is NULL at this point.
11036
 
11037
2002-01-21  Jason Thorpe  
11038
 
11039
        * config.bfd (ia64*-*-netbsd*): New target.
11040
 
11041
2002-01-21  Thomas Klausner 
11042
 
11043
        * som.c (som_write_space_strings): Comment typo fix.
11044
 
11045
2002-01-21  Alan Modra  
11046
 
11047
        * elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and
11048
        is_func_descriptor fields.
11049
        (link_hash_newfunc): Init them.
11050
        (ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
11051
        dot are candidates for plt entries.  When processing .opd relocs,
11052
        set function descriptor strings to point inside function code
11053
        string, and set new ppc_link_hash_entry fields.
11054
        (ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
11055
        (ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
11056
        function descriptors.  It's now done in..
11057
        (func_desc_adjust): New.
11058
        (ppc64_elf_func_desc_adjust): New.
11059
        (define elf_backend_always_size_sections): Define.
11060
        (ppc64_elf_hide_symbol): New.
11061
        (define elf_backend_hide_symbol): Define.
11062
        (allocate_dynrelocs): Remove code looking up function descriptors
11063
        as that has been done earlier.
11064
        (ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
11065
        table.
11066
        (ppc64_elf_finish_dynamic_symbol): Likewise.  Remove code looking
11067
        up function descriptor.
11068
        (build_one_stub): Look up the function code sym.  Check for
11069
        invalid plt offsets.
11070
        (ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
11071
        Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.
11072
 
11073
        * elf-bfd.h (elf_backend_data ): Add
11074
        boolean param.
11075
        (_bfd_elf_link_hash_hide_symbol): Likewise.
11076
        * elflink.h (elf_link_add_object_symbols): Adjust call to
11077
        elf_backend_hide_symbol.
11078
        (elf_fix_symbol_flags): Likewise.
11079
        (elf_link_assign_sym_version): Likewise. Use bfd_malloc rather
11080
        than bfd_alloc.
11081
        * elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param.
11082
        Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref.
11083
        * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
11084
        (clobber_millicode_symbols): Adjust to suit new hide_symbol.
11085
        * elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param
11086
        and adjust to suit.
11087
        * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call
11088
        _bfd_elf_link_hash_hide_symbol rather than duplicating code.
11089
        * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
11090
 
11091
2002-01-18  Alan Modra  
11092
 
11093
        * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a
11094
        dynamic function descriptor symbol, not the associated function
11095
        symbol.
11096
 
11097
2002-01-17  Eric Christopher  
11098
 
11099
        * elf32-mips.c (mips_elf_calculate_relocation): Fix typo.
11100
 
11101
2002-01-17  Nick Clifton  
11102
 
11103
        * po/bfd.pot: Regenerate.
11104
        * po/fr.po: Regenerate.
11105
 
11106
2002-01-17  Alan Modra  
11107
 
11108
        * elf-bfd.h (elf_backend_data ):
11109
        Remove "Elf_Internal_Shdr *" param.
11110
        (_bfd_mips_elf_section_from_bfd_section): Ditto.
11111
        * elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto.
11112
        * elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto.
11113
        * elf32-v850.c (v850_elf_section_from_bfd_section): Ditto.
11114
        * elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto.
11115
        * elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto.
11116
        * elf.c (_bfd_elf_section_from_bfd_section): Allow backend
11117
        function to override special sections.  Remove hdr arg from
11118
        backend call, and don't loop.
11119
 
11120
2002-01-16  Eric Christopher  
11121
 
11122
        * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
11123
        on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
11124
        relocations requiring gp0 and gp.
11125
 
11126
2002-01-16  Richard Earnshaw  
11127
 
11128
        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
11129
        EF_ARM_VFP_FLOAT.
11130
        (elf32_arm_print_private_bfd_data): Likewise.
11131
 
11132
2002-01-16  Nick Clifton  
11133
 
11134
        * po/tr.po: Import new version.
11135
 
11136
2002-01-16  Alan Modra  
11137
 
11138
        * elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs.
11139
        (ppc64_elf_reloc_type_lookup): Use proper CTOR reloc.
11140
        (ORI_R0_R0_0): Correct.
11141
 
11142
2002-01-16  Alan Modra  
11143
 
11144
        * elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE
11145
        when plt_not_loaded.
11146
        * elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to
11147
        clear .plt SEC_CODE here.  Create .stub and correct .glink flags.
11148
        (PLT_INITIAL_ENTRY_SIZE): Set to 24.
11149
        (ppc64_elf_glink_code): Delete.
11150
        (PPC64_ELF_GLINK_SIZE): Delete.
11151
        (ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11,
11152
        BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0,
11153
        ORI_R0_R0_0): Define.
11154
        (PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define.
11155
        (struct ppc_link_hash_table): Add sstub and plt_overflow.
11156
        (ppc64_elf_link_hash_table_create): Init them.
11157
        (ppc64_elf_check_relocs ): Refcount .plt entry.
11158
        Don't copy to shared lib.
11159
        (ppc64_elf_check_relocs): Call bfd_set_error on errors.
11160
        (ppc64_elf_gc_sweep_hook ): Sweep plt refcount.
11161
        (allocate_dynrelocs ): Don't change function sym here.  Make
11162
        room for .stub and .glink code.
11163
        (ppc64_elf_size_dynamic_sections): Handle .stub.  Make entry for
11164
        DT_PPC64_GLINK.
11165
        (ppc64_elf_final_link): Rename to ppc64_elf_set_toc.  Don't call
11166
        bfd_elf64_bfd_final_link.
11167
        (bfd_elf64_bfd_final_link): Don't define.
11168
        (ppc64_elf_size_stubs): New.
11169
        (build_plt_stub): New.
11170
        (build_one_stub): New.
11171
        (ppc64_elf_build_stubs): New.
11172
        (ppc64_elf_relocate_section ): Remove assert.
11173
        (ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs.
11174
        (ppc64_elf_finish_dynamic_symbol): Don't build stubs here.  Set
11175
        DT_PPC64_GLINK entry.  Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in
11176
        case output sections not separate.  Adjust DT_RELASZ to not
11177
        include plt relocs.  Set reserved got entry.  Set got and plt
11178
        entry size.
11179
        (elf_backend_got_header_size): Set to 8.
11180
        * elf64-ppc.h: New file.
11181
 
11182
2002-01-16  Alan Modra  
11183
 
11184
        * elf32-arm.h (elf32_arm_size_dynamic_sections): When removing
11185
        sections, use bfd_section_list_remove.
11186
        * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
11187
        * elflink.h (elf_link_add_object_symbols): When removing all
11188
        sections, use bfd_section_list_clear.
11189
 
11190
2002-01-15  Nick Clifton  
11191
 
11192
        * po/sv.po: New file: Swedish translation.
11193
        * configure.in (ALL_LINGUAS): Add sv.
11194
        * configure: Regenerate.
11195
 
11196
2002-01-15  Jakub Jelinek  
11197
 
11198
        * elflink.h (elf_link_input_bfd): Back out 2002-01-07 change.
11199
        * elf.c (merge_sections_remove_hook): New function.
11200
        (_bfd_elf_merge_sections): Pass it as 3rd argument to
11201
        _bfd_merge_sections.
11202
        * libbfd-in.h (_bfd_merge_sections): Add 3rd argument.
11203
        * libbfd.h: Rebuilt.
11204
        * merge.c (_bfd_merge_sections): Add remove_hook argument.
11205
        Call remove_hook if a SEC_EXCLUDE section is encountered.
11206
 
11207
2002-01-15  Nick Clifton  
11208
 
11209
        * elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'.
11210
        (xstormy16_reloc_map): Initialise new field with correct howto
11211
        table.
11212
        (xstormy16_reloc_type_lookup): Use 'table' field to locate correct
11213
        howto entry.
11214
 
11215
2002-01-10  Michael Snyder  
11216
 
11217
        * elf.c (elfcore_write_prstatus): Use long instead of pid_t;
11218
        (elfcore_write_pstatus): Use long instead of pid_t;
11219
        * elf-bfd.h: Change prototypes to use long instead of pid_t;
11220
 
11221
2002-01-09  Jason Thorpe  
11222
 
11223
        * elf.c: Update copyright years.
11224
        (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
11225
        and NT_NETBSDCORE_FIRSTMACH.  Improve a comment.
11226
 
11227
2002-01-08  Michael Snyder  
11228
 
11229
        Add capability to write corefile note sections, for gdb.
11230
        * elf.c (elfcore_write_note): New function.
11231
        (elfcore_write_prpsinfo): New function.
11232
        (elfcore_write_prstatus): New function.
11233
        (elfcore_write_pstatus): New function.
11234
        (elfcore_write_prfpreg): New function.
11235
        (elfcore_write_prxfpreg): New function.
11236
        * elf-bfd.h: Add prototypes for above functions.
11237
 
11238
2002-01-08  Alexandre Oliva  
11239
 
11240
        * elf.c (elf_fake_sections): Propagate errors from
11241
        elf_backend_fake_section.
11242
 
11243
2002-01-07  Jason Thorpe  
11244
 
11245
        * Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
11246
        (BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
11247
        (elf32-sh-nbsd.lo): New rule.
11248
        * Makefile.in: Regenerate.
11249
        * config.bfd (sh*le-*-netbsdelf*): New target.
11250
        (sh*-*-netbsdelf*): New target.
11251
        * configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
11252
        (bfd_elf32_shnbsd_vec): New vector.
11253
        (bfd_elf32_shlnbsd_vec): New vector.
11254
        * configure: Regenerate.
11255
        * elf32-sh-nbsd.c: New file.
11256
        * targets.c: Update copyright years.
11257
        (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
11258
        bfd_elf32_shnbsd_vec.
11259
 
11260
2002-01-07  Aldy Hernandez  
11261
 
11262
        * coff-rs6000.c (READ20): Use bfd_scan_vma.
11263
 
11264
2002-01-07  Geoffrey Keating  
11265
 
11266
        * elflink.h (elf_link_input_bfd): Don't ask for the merged offset
11267
        of a symbol in a section that will be deleted.
11268
 
11269
2002-01-07  Nick Clifton  
11270
 
11271
        * po/es.po: New file: Spanish translation.
11272
        * configure.in (ALL_LINGUAS): Add es.
11273
        * configure: Regenerate.
11274
 
11275
2002-01-06  Steve Ellcey  
11276
 
11277
        * elfxx-ia64.c (is_unwind_section_name): Add target vector as
11278
        argument so we can handle HP-UX specially.
11279
        (elfNN_ia64_hpux_vec): New for use in is_unwind_section_name.
11280
        (elfNN_hpux_backend_section_from_bfd_section): New for support
11281
        of SHN_IA_64_ANSI_COMMON.
11282
        (elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON.
11283
        (is_unwind_section_name): Add special HP-UX support.
11284
        (elfNN_ia64_section_from_shdr): Add support for more sections.
11285
        (elfNN_ia64_fake_sections): Modify is_unwind_section_name call and
11286
        add support for more sections.
11287
        (elfNN_ia64_additional_program_headers): Modify
11288
        is_unwind_section_name call.
11289
        (elfNN_ia64_modify_segment_map): Remove assumption that there is
11290
        only one unwind section in segment.
11291
 
11292
2002-01-06  Alan Modra  
11293
 
11294
        * syms.c (_bfd_generic_make_empty_symbol): New function.
11295
        * libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as
11296
        _bfd_generic_make_empty_symbol.
11297
        * libbfd.h: Regenerate.
11298
        * bfd-in2.h: Regenerate.
11299
        * hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function.
11300
        (hppabsd_core_get_symtab_upper_bound): Don't define.
11301
        (hppabsd_core_get_symtab): Likewise.
11302
        (hppabsd_core_print_symbol): Likewise.
11303
        (hppabsd_core_get_symbol_info): Likewise.
11304
        (hppabsd_core_bfd_is_local_label_name): Likewise.
11305
        (hppabsd_core_get_lineno): Likewise.
11306
        (hppabsd_core_find_nearest_line): Likewise.
11307
        (hppabsd_core_bfd_make_debug_symbol): Likewise.
11308
        (hppabsd_core_read_minisymbols): Likewise.
11309
        (hppabsd_core_minisymbol_to_symbol): Likewise.
11310
        (hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).
11311
        Formatting fixes.
11312
        * hpux-core.c: Similarly.
11313
        * irix-core.c: Similarly.
11314
        * osf-core.c: Similarly.
11315
        * sco5-core.c: Similarly.
11316
        * binary.c (binary_make_empty_symbol): Remove function, define as
11317
        _bfd_generic_make_empty_symbol.
11318
        * ihex.c (ihex_make_empty_symbol): Likewise.
11319
        * mmo.c (mmo_make_empty_symbol): Likewise.
11320
        * ppcboot.c (ppcboot_make_empty_symbol): Likewise.
11321
        * srec.c (srec_make_empty_symbol): Likewise.
11322
        * versados.c (versados_make_empty_symbol): Likewise.
11323
        * vms.c (_bfd_vms_make_empty_symbol): Remove.
11324
        (vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol.
11325
        * vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol
11326
        rather than _bfd_vms_make_empty_symbol.
11327
        * vms-misc.c (new_symbol): Likewise.
11328
 
11329
2002-01-05  Alan Modra  
11330
 
11331
        * section.c (bfd_section_init): Remove unnecessary initialisations.
11332
        (bfd_section_list_clear): New function.
11333
        (bfd_section_list_remove, bfd_section_list_insert): New macros.
11334
        (_bfd_strip_section_from_output): Use them.
11335
        * coffcode.h (coff_set_alignment_hook): Likewise.
11336
        * elf32-mips.c (_bfd_mips_elf_final_link): Likewise.
11337
        * elf64-mips.c (mips_elf64_final_link): Likewise.
11338
        * elf64-mmix.c (mmix_elf_final_link): Likewise.
11339
        * sunos.c (sunos_add_dynamic_symbols): Likewise.
11340
        * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
11341
        * bfd-in2.h: Regenerate.
11342
 
11343
        * netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway
11344
        rather than doing our own section handling.  Clean up after errors
11345
        with bfd_release and bfd_section_list_clear.  Handle unexpected
11346
        flags.
11347
        * aoutf1.h (sunos4_core_file_p): Likewise.
11348
        * aix386-core.c (aix386_core_file_p): Likewise.
11349
        * cisco-core.c (cisco_core_file_validate): Likewise.
11350
        * ptrace-core.c (ptrace_unix_core_file_p): Likewise.
11351
        * trad-core.c (trad_unix_core_file_p): Likewise.
11352
 
11353
        * hppabsd-core.c (hppabsd_core_core_file_p): Clean up after errors
11354
        with bfd_release and bfd_section_list_clear.
11355
        * hpux-core.c (hpux_core_core_file_p): Likewise.
11356
        * irix-core.c (irix_core_core_file_p): Likewise.
11357
        * lynx-core.c (lynx_core_file_p): Likewise.
11358
        * osf-core.c (osf_core_core_file_p): Likewise.
11359
        * rs6000-core.c (rs6000coff_core_p): Likewise.
11360
        * sco5-core.c (sco5_core_file_p): Likewise.
11361
 
11362
        * elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform
11363
        sign extension adjustments without conditionals.
11364
 
11365
2002-01-04  Jakub Jelinek  
11366
 
11367
        * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
11368
        CIE at .eh_frame start is removed due to no FDEs referencing it.
11369
 
11370
2002-01-04  Jason Thorpe  
11371
 
11372
        * config.bfd (x86_64-*-netbsd*): New target.
11373
        * configure.in (x86_64-*-netbsd*): Set COREFILE
11374
        to netbsd-core.lo.
11375
        * configure: Regenerated.
11376
 
11377
2002-01-03  Tom Rix  
11378
 
11379
        * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering
11380
        for recent bfd_make_section_anyway change.
11381
 
11382
2002-01-03  Nick Clifton  
11383
 
11384
        * elf32-arm.h (elf32_arm_final_link_relocate): Handle
11385
        R_ARM_THM_PC11 reloc.
11386
 
11387
2002-01-02  Nick Clifton  
11388
 
11389
        * configure.in (LINGUAS): Add ja.
11390
        * configure: Regenerate.
11391
        * po/ja.po: Import from translation project's web site.
11392
 
11393
2002-01-02  Nick Clifton  
11394
 
11395
        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error
11396
        messages to ease translation into other languages.
11397
 
11398
For older changes see ChangeLog-0001
11399
 
11400
Local Variables:
11401
mode: change-log
11402
left-margin: 8
11403
fill-column: 74
11404
version-control: never
11405
End:

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.