* bfd-in.h (bfd_int64_t, bfd_uint64_t): New types.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
8ce8c090
AM
12004-03-15 Alan Modra <amodra@bigpond.net.au>
2
3 * bfd-in.h (bfd_int64_t, bfd_uint64_t): New types.
4 (BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Don't define here.
5 (bfd_getb64, bfd_getl64, bfd_get_bits): Return bfd_uint64_t.
6 (bfd_getb_signed_64, bfd_getl_signed_64): Return bfd_int64_t.
7 (bfd_putb64, bfd_putl64, bfd_put_bits): Accept bfd_uint64_t.
8 * configure.in (HOST_U_64BIT_TYPE): Set when sizeof long is 8.
9 (BFD_HOST_64_BIT_DEFINED, BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Set
10 when using long.
11 * libbfd.c (EIGHT_GAZILLION, COERCE64): Use bfd_int64_t.
12 (bfd_getb64): Return bfd_uint64_t. Enable when BFD_HOST_64_BIT.
13 (bfd_getl64, bfd_getb_signed_64, bfd_getl_signed_64): Likewise.
14 (bfd_putb64): Accept bfd_uint64_t. Enable when BFD_HOST_64_BIT.
15 (bfd_putl64, bfd_put_bits, bfd_get_bits): Likewise.
16 * dwarf2.c (struct attribute): Use bfd_int64_t and bfd_uint64_t.
17 (read_8_bytes, read_indirect_string, read_address): Likewise.
18 (read_abbrevs, parse_comp_unit): Likewise.
19 * targets.c (struct bfd_target): Likewise.
20 * aix386-core.c (NO_GET64, NO_PUT64, NO_GETS64): Define and use.
21 * hppabsd-core.c: Likewise. Formatting.
22 * hpux-core.c: Likewise.
23 * irix-core.c: Likewise.
24 * netbsd-core.c: Likewise.
25 * osf-core.c: Likewise.
26 * ptrace-core.c: Likewise.
27 * sco5-core.c: Likewise.
28 * trad-core.c: Likewise.
29 * configure: Regenerate.
30 * bfd-in2.h: Regenerate.
31
edeb6e24
AM
322004-03-15 Alan Modra <amodra@bigpond.net.au>
33
34 * bfd-in.h (bfd_getb64, bfd_getl64): Replace bfd_byte* with void*.
35 (bfd_getb32, bfd_getl32, bfd_getb16, bfd_getl16): Likewise.
36 (bfd_getb_signed_64, bfd_getl_signed_64): Likewise.
37 (bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
38 (bfd_getb_signed_16, bfd_getl_signed_16): Likewise.
39 (bfd_putb64, bfd_putl64, bfd_putb32, bfd_putl32): Likewise.
40 (bfd_putb16, bfd_putl16, bfd_get_bits, bfd_put_bits): Likewise.
41 * libbfd.c: Likewise in function definitions.
42 (bfd_put_8): Mask with 0xff rather than casting to char.
43 (bfd_putb16, bfd_putl16, bfd_putb32, bfd_putl32): Likewise.
44 (bfd_putb64, bfd_putl64, bfd_put_bits): Likewise.
45 (H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8): Remove casts, simplify.
46 (H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8): Likewise.
47 (H_GET_64, H_GET_32, H_GET_16, H_GET_8): Likewise.
48 (H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Likewise.
49 * libaout.h (H_PUT_64 H_PUT_32, H_PUT_16): Remove casts, simplify.
50 (H_PUT_S64, H_PUT_S32, H_PUT_S16): Likewise.
51 (H_GET_64, H_GET_32, H_GET_16): Likewise.
52 (H_GET_S64, H_GET_S32, H_GET_S16): Likewise.
53 * archive.c (do_slurp_coff_armap): Update swap prototype.
54 * coff-tic54x.c (tic54x_getl32): Replace bfd_byte* with void*.
55 (tic54x_getl_signed_32): Likewise.
56 (tic54x_putl32): Likewise. Mask with 0xff rather than casting to char.
57 * mach-o.c (bfd_mach_o_read_header): Update get32 prototype.
58 * pdp11.c (bfd_getp32): Make static, replace bfd_byte* with void*.
59 (bfd_getp_signed_32, bfd_putp32): Likewise.
60 * targets.c (struct bfd_target): Use void* in place of bfd_byte* for
61 bfd_getx64, bfd_getx_signed_64, bfd_putx64, bfd_getx32,
62 bfd_getx_signed_32, bfd_putx32, bfd_getx16, bfd_getx_signed_16,
63 bfd_putx16, bfd_h_getx64, bfd_h_getx_signed_64, bfd_h_putx64,
64 bfd_h_getx32, bfd_h_getx_signed_32, bfd_h_putx32, bfd_h_getx16,
65 bfd_h_getx_signed_16, bfd_h_putx16.
66 * aix386-core.c (NO_GET, NO_GETS, NO_PUT): Update prototypes.
67 * hppabsd-core.c: Similarly. Rename NO_SIGNED_GET to NO_GETS.
68 * hpux-core.c: Likewise.
69 * irix-core.c: Likewise.
70 * netbsd-core.c: Likewise.
71 * osf-core.c: Likewise.
72 * ptrace-core.c: Likewise.
73 * sco5-core.c: Likewise.
74 * trad-core.c: Likewise.
75 * bfd-in2.h: Regenerate.
76
c1b954e2
AM
772004-03-15 Matt Thomas <matt@3am-software.com>
78
79 * config.bfd: Add x86-64 vector to NetBSD/i386 if 64bit BFD is
80 selected.
81
85cfd8d3
MK
822004-03-13 Mark Kettenis <kettenis@gnu.org>
83
84 * config.bfd: Add x86_64-*-openbsd*.
85 * configure.in (x86_64-*-openbsd*): Set COREFILE to
86 netbsd-core.lo.
87 * configure: Regenerate.
88
d1f161ea
NC
892004-03-12 Nick Clifton <nickc@redhat.com>
90 Dave Murphy <wintermute2k4@ntlworld.com>
c1b954e2 91
d1f161ea
NC
92 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Skip most checks
93 if the input bfd does not contain any code.
94
8b6f2683
JW
952004-03-09 Steve Ellcey <sje@cup.hp.com>
96
97 * elfxx-ia64.c (plt_full_entry): Change ld8 to ld8.acq.
98
79cda7cf
FF
992004-03-05 Fred Fish <fnf@redhat.com>
100
101 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Just force
102 mips16 symbols to be even rather than testing first for even/odd.
103 (_bfd_mips_elf_link_output_symbol_hook): Ditto.
104
e5caec89
NS
1052004-03-05 Nathan Sidwell <nathan@codesourcery.com>
106
107 * elf.c (map_sections_to_segments): Ignore .tbss sections for
108 layout purposes.
109
02bb6eae
AO
1102004-03-03 Alexandre Oliva <aoliva@redhat.com>
111
112 * elflink.c (bfd_elf_record_link_assignment): Mark undefweak and
113 undefined symbols as hash_new.
114
ae51a426
JR
1152003-03-03 Andrew Stubbs <andrew.stubbs@superh.com>
116
117 * archures.c: Add bfd_mach_sh4_nommu_nofpu.
118 * cpu-sh.c: Ditto.
119 * elf32-sh.c: Ditto.
120 * bfd-in2.h: Regenerate.
121
3b712a1a
AO
1222004-03-02 Alexandre Oliva <aoliva@redhat.com>
123
124 * elf32-frv.c (struct frv_pic_relocs_info): Added fixups and
125 dynrelocs.
126 (_frv_count_got_plt_entries): Initialize them.
127 (frv_pic_relocs_info_find): Add insert argument. Adjust all
128 callers.
129 (frv_pic_relocs_info_for_global): Likewise.
130 (frv_pic_relocs_info_for_local): Likewise.
131 (frv_pic_merge_early_relocs_info): New.
132 (_frv_resolve_final_relocs_info): Use it in case one entry maps to
133 another.
134 (_frv_add_dyn_reloc): Add entry argument. Adjust all callers.
135 Check that we don't exceed the allocated count for entry.
136 (_frv_add_rofixup): Likewise.
137 (_frv_emit_got_relocs_plt_entries): Adjust for coding standards.
138 (elf32_frv_finish_dynamic_sections): Improve error message in case
139 we emit too few rofixup entries.
140
676a64f4
RS
1412004-03-01 Richard Sandiford <rsandifo@redhat.com>
142
143 * archures.c (bfd_mach_fr450): New.
144 * bfd-in2.h: Regenerate.
145 * cpu-frv.c (arch_info_450): New bfd_arch_info_type.
146 (arch_info_500): Link to it.
147 * elf32-frv.c (elf32_frv_machine, frv_elf_merge_private_bfd_data)
148 (frv_elf_print_private_bfd_data): Handle fr405 and fr450 header flags.
149 (frv_elf_arch_extension_p): New function.
150 (frv_elf_merge_private_bfd_data): Use it.
151
0ad989f9
L
1522004-02-28 H.J. Lu <hongjiu.lu@intel.com>
153
154 * elf-bfd.h (_bfd_elf_link_add_archive_symbols): New prototype.
155
156 * elflink.h (is_global_data_symbol_definition): Moved to
157 elflink.c.
158 (elf_link_is_defined_archive_symbol): Likewise.
159 (elf_link_add_archive_symbols): Likewise. Renamed to
160 _bfd_elf_link_add_archive_symbols.
161
162 * elflink.c (elf_link_is_defined_archive_symbol): Get the size
163 of ELF symbol table entry from backend.
164 (_bfd_elf_link_add_archive_symbols): Call bfd_link_add_symbols
165 instead of elf_link_add_object_symbols.
166
ec3391e7
AO
1672004-02-27 Alexandre Oliva <aoliva@redhat.com>
168
169 * elf-bfd.h (struct elf_backend_data): Added
170 elf_backend_can_make_relative_eh_frame,
171 elf_backend_can_make_lsda_relative_eh_frame and
172 elf_backend_encode_eh_address.
173 (_bfd_elf_encode_eh_address): Declare.
174 (_bfd_elf_can_make_relative): Declare.
175 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use new
176 hooks to decide whether to attempt to make_relative and
177 make_lsda_relative.
178 (_bfd_elf_write_section_eh_frame_hdr): Call encode_eh_address.
179 (_bfd_elf_can_make_relative): New.
180 (_bfd_elf_encode_eh_address): New.
181 * elf32-frv.c (frv_elf_use_relative_eh_frame): New.
182 (frv_elf_encode_eh_address): New.
183 (elf_backend_can_make_relative_eh_frame): Define.
184 (elf_backend_can_make_lsda_relative_eh_frame): Define.
185 (elf_backend_encode_eh_address): Define.
186 * elfxx-target.h
187 (elf_backend_can_make_relative_eh_frame): Define.
188 (elf_backend_can_make_lsda_relative_eh_frame): Define.
189 (elf_backend_encode_eh_address): Define.
190 (elfNN_bed): Add them.
191
e6deed0a
AO
1922004-02-27 Alexandre Oliva <aoliva@redhat.com>
193
194 * elf32-frv.c (elf32_frv_howto_table) <R_FRV_LABEL16>: Set
195 complain_on_overflow to signed.
196
b60d7a1a
L
1972004-02-27 H.J. Lu <hongjiu.lu@intel.com>
198
199 * elflink.h (sort_symbol): New.
200 (elf_link_add_object_symbols): Use a sorted symbol array for
201 weakdef.
202
1c3ff0f2
MS
2032004-02-27 Jakub Jelinek <jakub@redhat.com>
204
205 * elf32-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL
206 for pc relative relocs.
207 (elf_s390_relocate_section): Likewise.
208 * elf64-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL
209 for pc relative relocs.
210 (elf_s390_relocate_section): Likewise.
211
de9811af
L
2122004-02-26 H.J. Lu <hongjiu.lu@intel.com>
213
214 * elfxx-ia64.c (elfNN_ia64_check_relocs): Fix call to
215 count_dyn_reloc.
216
ac33696c
L
2172004-02-25 H.J. Lu <hongjiu.lu@intel.com>
218
219 * elfxx-ia64.c (elfNN_ia64_dyn_reloc_entry): Add the reltext.
220 field to track if a relocation is against readonly section.
221 (count_dyn_reloc): Take a new argument for rent->reltext.
222 (elfNN_ia64_check_relocs): Adjust call to count_dyn_reloc.
223 (get_reloc_section): Don't set ia64_info->reltext here.
224 (allocate_dynrel_entries): Set ia64_info->reltext here.
225
072c8903
AO
2262004-02-24 Alexandre Oliva <aoliva@redhat.com>
227
228 * elf32-frv.c (FRV_SYM_LOCAL): Weak undefined doesn't imply local.
229 (_frv_emit_got_relocs_plt_entries): Decay relocation to protected
230 function's descriptor to symbol+offset, and map local undefweak
231 symbol to NULL function descriptor.
232 (elf32_frv_relocate_section): Likewise.
233
aca305d9
NC
2342004-02-23 Mark Kettenis <kettenis@gnu.org>
235
236 * libaout.h (enum machine_type): Add M_SPARC64_NETBSD and
237 M_X86_64_NETBSD.
238 * netbsd-core.c (M_SPARC64_OPENBSD): Define.
239 (netbsd_core_file_p): Set architecture from machine ID for
240 selected machines.
241
646411fb
JJ
2422004-02-23 Jakub Jelinek <jakub@redhat.com>
243
244 * elflink.h (size_dynamic_sections): If not adding DT_FLAGS and
245 DF_BIND_NOW is set in info->flags, create DT_BIND_NOW dynamic entry.
246
1de1a317
L
2472004-02-21 H.J. Lu <hongjiu.lu@intel.com>
248
249 * elflink.c (_bfd_elf_merge_symbol): Properly handle undefined
250 symbols with non-default visibility.
251
3c9d0484
DS
2522004-02-21 Danny Smith <daanysmith@users.sourceforge.net>
253
254 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Clear
255 IMAGE_SCN_MEM_WRITE on known sections only.
256
a876ecf9
JJ
2572004-02-20 Jakub Jelinek <jakub@redhat.com>
258
259 * elf32-ppc.c (allocate_dynrelocs): Create dynsym for undef weak
260 symbols used in PIE relocs.
261
a8a6d7ce
JJ
2622004-02-19 Jakub Jelinek <jakub@redhat.com>
263
264 * elf32-sparc.c (elf32_sparc_finish_dynamic_sections): Clear
265 .plt sh_entsize.
266
d080fcd2
DJ
2672004-02-18 Daniel Jacobowitz <drow@mvista.com>
268
269 * configure.in: Update version to 2.15.90.
270 * configure: Regenerate.
271
d25aed71 2722004-02-17 Daniel Jacobowitz <drow@mvista.com>
c1b954e2 273 Richard Sandiford <rsandifo@redhat.com>
d25aed71
RS
274
275 * elfxx-mips.c (mips_elf_calculate_relocation): Use
276 _bfd_elf_symbol_refs_local_p to decide whether to decay
277 a GOT_PAGE/GOT_OFST pair to GOT_DISP/addend.
278 (_bfd_mips_elf_check_relocs): Add a global GOT entry for GOT_PAGE
279 relocs if the symbol wasn't defined by a regular object file.
280 Don't check the symbol's dynindx.
281
d7ce59e3
AC
2822004-02-16 Andrew Cagney <cagney@redhat.com>
283
284 * bfd-in.h (file_ptr, ufile_ptr): Configure type using
285 @bfd_file_ptr@.
286 * bfd-in2.h: Re-generate.
287
ca0b7686
AC
2882004-02-14 Andrew Cagney <cagney@redhat.com>
289
290 * configure.host (HDEFINES): When hppa*-*-hpux*, define
291 _LARGEFILE64_SOURCE.
292
340b6d91
AC
2932004-02-13 Andrew Cagney <cagney@redhat.com>
294
295 * elf.c (vma_page_aligned_bias): New function.
296 (assign_file_positions_except_relocs)
297 (assign_file_positions_for_segments): Replace broken modulo
298 arithmetic with call to vma_page_aligned_bias.
299
1012372a
AC
3002004-02-11 Andrew Cagney <cagney@redhat.com>
301
7c192733
AC
302 * bfd-in.h: Update copyright.
303 (bfd_tell): Change return type to file_ptr.
304 * bfd-in2.h: Re-generate.
305 * cache.c: Update copyright.
306 (bfd_cache_lookup_worker): Use real_fseek, do not cast offset
307 parameter.
308 (close_one): Use real_ftell.
309 * bfdio.c: Update copyright.
310 (real_ftell, real_fseek): New functions.
311 (bfd_tell): Use real_fseek and real_ftell, change return type to
312 file_ptr.
313 (bfd_seek): Use real_ftell and real_fseek, change type of
314 file_position to a file_ptr.
315 * libbfd-in.h: Update copyright.
316 (real_ftell, real_fseek): Declare.
317 * libbfd.h: Re-generate.
318
1012372a
AC
319 * configure.in (AC_CHECK_FUNCS): Check for ftello, ftello64,
320 fseeko and fseeko64. Determine bfd_file_ptr.
321 * configure: Re-generate.
c1ea0c09 322 * config.in: Re-generate.
c1b954e2 323
3255318a
NC
3242004-02-09 Anil Paranjpe <anilp1@KPITCummins.com>
325
326 * coff-h8300.c: Added comments about relaxation for ldc.w and stc.w.
327 * elf32-h8300.c: Likewise.
328
0d5f9994
NC
3292004-02-09 Christian Vogel <vogelchr@vogel.cx>
330 Nick Clifton <nickc@redhat.com>
331
332 * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Catch
333 GOT entries with no associated GOT subsection.
334
174fd7f9
RS
3352004-02-09 Richard Sandiford <rsandifo@redhat.com>
336
337 * bfd-elf.h (elf_backend_name_local_section_symbols): New hook.
338 * elf.c (swap_out_syms): Use it to decide whether local section
339 symbols should be named.
340 * elfxx-target.h (elf_backend_name_local_section_symbols): New macro.
341 * elfxx-mips.h (_bfd_mips_elf_name_local_section_symbols): Declare.
342 (elf_backend_name_local_section_symbols): Define.
343 * elfxx-mips.c (_bfd_mips_elf_name_local_section_symbols): New.
344
03609792
L
3452004-01-30 H.J. Lu <hongjiu.lu@intel.com>
346
347 * elfxx-ia64.c (elfNN_ia64_relax_brl): New function.
348 (elfNN_ia64_relax_section): Optimize brl to br during the relax
349 finalize pass.
350
ea01195e
AO
3512004-01-30 Alexandre Oliva <aoliva@redhat.com>
352
353 * elf32-frv.c (elf32_frv_always_size_sections): Initialize pointer
354 to bfd_link_hash_entry passed by reference to
355 _bfd_generic_link_add_one_symbol.
356
838e70c5
L
3572004-01-25 H.J. Lu <hongjiu.lu@intel.com>
358
359 * elfxx-ia64.c (elfNN_ia64_relocate_section): Disallow imm
360 relocations against dynamic symbols.
361
4f199be3
DJ
3622004-01-23 Daniel Jacobowitz <drow@mvista.com>
363
364 * elf32-arm.h (elf32_arm_check_relocs): Revert part of 2004-01-13
365 change.
366
28d39d1a
NC
3672004-01-21 Tom Rix <tcrix@worldnet.att.net>
368
369 * reloc.c: New 5 bit reloc, BFD_RELOC_M68HC12_5B, for m68hc12 movb/movw.
370 * bfd-in2.h, libbfd.h: Rebuilt.
371
66bed356
DS
3722004-01-20 Danny Smith <dannysmith@users.sourceforge.net>
373
374 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Don't remove
375 IMAGE_SCN_MEM_WRITE flag from .text section if WP_TEXT
376 flag has been cleared.
377
7e89635a
KH
3782004-01-19 Kazu Hirata <kazu@cs.umass.edu>
379
380 * coff-h8300.c: Add and adjust comments about relaxation.
381 * elf32-h8300.c: Likewise.
382
e804e836
KH
3832004-01-16 Kazu Hirata <kazu@cs.umass.edu>
384
385 * coff-h8300.c: Fix comment typos.
386 * elf32-h8300.c: Likewise.
387
630a7b0a
KH
3882004-01-16 Kazu Hirata <kazu@cs.umass.edu>
389
390 * coff-h8300.c: Add comments about relaxation.
391 * elf32-h8300.c: Likewise.
392
f8b73030
MR
3932004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
394
395 * acinclude.m4: Quote names of macros to be defined by AC_DEFUN
396 throughout.
397 * aclocal.m4: Regenerate.
398 * configure: Regenerate.
399
32159579
ILT
4002004-01-13 Ian Lance Taylor <ian@wasabisystems.com>
401
402 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Call
403 mips_elf64_rtype_to_howto instead of using howto_table.
404
c84cd8ee
DJ
4052004-01-13 Daniel Jacobowitz <drow@mvista.com>
406
407 * elf32-arm.h (elf32_arm_final_link_relocate): Check that we created
408 the .plt section.
409 (elf32_arm_check_relocs): Don't increment the PLT refcount for
410 relocs which would not use the PLT.
411
680a3378
AM
4122004-01-13 Alan Modra <amodra@bigpond.net.au>
413
414 * elf64-ppc.c (ppc64_elf_check_relocs): Ignore !SEC_ALLOC relocs.
415 (ppc64_elf_gc_sweep_hook): Likewise.
416 (ppc64_elf_size_dynamic_sections): Test for .plt directly.
417
faca21e5
NC
4182004-01-12 Anil Paranjpe <anilp1@KPITCummins.com>
419
420 Adds linker relaxation support for bit manipulation insns like
680a3378 421 band, bclr, biand, bild, bior, bist, bixor, bld, bnot, bor, bset,
faca21e5 422 bst, btst, bxor.
680a3378 423 * elf32-h8300.c: Opcode for bit manipulation insn is checked in
faca21e5 424 elf32_h8_relax_section function while relxation for aa:16 and aa:32.
680a3378 425 * coff-h8300.c: Opcode for bit manipulation insn is checked in
faca21e5
NC
426 h8300_reloc16_extra_cases function while relxation for aa:16 and aa:32.
427
818a27ac
AM
4282004-01-12 Alan Modra <amodra@bigpond.net.au>
429
430 * dwarf2.c: Convert to C90, remove unneeded casts and prototypes.
431
96ef1419
KH
4322004-01-11 Kazu Hirata <kazu@cs.umass.edu>
433
434 * elf32-h8300.c: Fix formatting.
435
babfd660
KH
4362004-01-11 Kazu Hirata <kazu@cs.umass.edu>
437
438 * elf32-cris.c (cris_elf_gc_sweep_hook): Return early if no
439 dynamic object is present. Declare r_symndx and h in an inner
440 scope.
441 * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
442
7359ea65
DJ
4432004-01-09 Daniel Jacobowitz <drow@mvista.com>
444
445 * elf32-arm.h (struct elf32_arm_relocs_copied): Remove pc_count.
446 (elf32_arm_copy_indirect_symbol): Don't copy pc_count.
447 (elf32_arm_final_link_relocate): Handle PLT32 and PC24 relocs
448 identically. Do not emit PC24 relocations for shared libraries.
449 (elf32_arm_gc_sweep_hook): Handle PLT32 and PC24 relocs
450 identically. Don't adjust pc_count.
451 (elf32_arm_check_relocs): Handle PLT32 and PC24 relocs identically.
452 Set ELF_LINK_HASH_NEEDS_PLT for both. Don't adjust pc_count; don't
453 adjust count for branch relocations.
454 (allocate_dynrelocs): Correct typo in call to
455 WILL_CALL_FINISH_DYNAMIC_SYMBOL. Never allocate space for
456 PC24 or PLT32 relocs when linking.
457
44e88952
NC
4582004-01-09 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru>
459
460 * coff-arm.c (aoutarm_std_reloc_howto): [ARM_WINCE] Synchronize ARM_26D
461 relocation howto with ARM_26 one for consistency.
462 (coff_arm_relocate_section): Set partial_inplace for ARM_26 relocations
463 that will be converted to ARM_26D ones, since we always want 'done'
464 relocations to be reflected in section's data.
465 (coff_arm_relocate_section): [ARM_WINCE] Quick fix for BL instruction
466 offset.
467 (_bfd_final_link_relocate): Do not modify "inplace" data, if not
468 requested.
469
1e7fef1d
NC
4702004-01-08 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru>
471
472 * coff-arm.c (coff_arm_relocate_section): Do not alter relocs that
473 are not partial_inplace during a relocatable link.
474
4f075348
KH
4752004-01-08 Kazu Hirata <kazu@cs.umass.edu>
476
babfd660 477 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return early
4f075348
KH
478 if no dynamic object is present. Declare r_symndx and h in an
479 inner scope.
480
de0d9f33
L
4812004-01-07 H.J. Lu <hongjiu.lu@intel.com>
482
483 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't install
484 trampoline if it is known out of range.
485
51532845
AO
4862004-01-06 Alexandre Oliva <aoliva@redhat.com>
487
488 2003-12-17 Alexandre Oliva <aoliva@redhat.com>
489 * elf32-frv.c (_frv_osec_readonly_p): New.
490 (_frv_emit_got_relocs_plt_entries): Don't emit rofixup for
491 undefweak symbol.
492 (_frv_count_got_plt_entries): Adjust expected count accordingly.
493 (elf32_frv_relocate_section): Likewise. Error out if attempting
494 to emit rofixups or dynamic relocs in read-only segments. Use
495 _bfd_elf_section_offset to adjust r_offsets in rofixups and
496 dynamic relocations.
497 2003-12-12 Alexandre Oliva <aoliva@redhat.com>
498 * elf32-frv.c (elf32_frv_relocate_section): Compute dynamic
499 relocations or fixups involving merged sections correctly. Avoid
500 crash when undefined symbol is referenced by R_FRV_32 or
501 R_FRV_FUNCDESC_VALUE.
502 2003-12-02 Alexandre Oliva <aoliva@redhat.com>
503 * elf32-frv.c (elf32_frv_relocate_section): Add output_offset of
504 input section holding local symbol to addend of R_FRV_32 or
505 R_FRV_FUNCDESC_VALUE dynamic relocation.
506 2003-11-27 Alexandre Oliva <aoliva@redhat.com>
507 * elf32-frv.c (elf32_frv_modify_segment_map): Add link info arg.
508 (elf32_frv_always_size_sections): Don't store pointer to
509 __stacksize symbol in sec_info.
510 (elf32_frv_modify_segment_map): Look it up here.
511 2003-11-26 Alexandre Oliva <aoliva@redhat.com>
512 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Emit the address
513 of the lazy PLT entry, not only its offset, as the low word of a
514 function descriptor.
515 2003-11-10 Alexandre Oliva <aoliva@redhat.com>
516 * elf32-frv.c (elf32_frv_always_size_sections): Define __stacksize
517 if a hash table entry already exists but is not a definition.
518 2003-11-05 Alexandre Oliva <aoliva@redhat.com>
519 * elf32-frv.c (frv_elf_link_hash_table_create): Use bfd_zalloc.
520 (_frv_add_rofixup): Don't inline.
521 (_frv_emit_got_relocs_plt_entries): Use NULL as funcdesc address
522 for undefweak symbols.
523 (elf32_frv_relocate_section): Avoid crash while computing
524 relocation when linking with shared library. Only emit rofixups
525 and dynamic relocations for alloc&load sections. Mark binaries
526 with inter-segment relocations for relocation as a unit.
527 (_frv_create_got_section): Rename .rofixup.got to .rofixup.
528 (DEFAULT_STACK_SIZE): New.
529 (_frv_count_got_plt_entries): Fix thinko in deciding whether to
530 emit rofixups or dynamic relocs when linking dynamic non-PIE
531 executables.
532 (elf32_frv_size_dynamic_sections): Generate rofixup on PIEs and
533 shared libs too. Reserve the last entry for the GOT pointer.
534 (elf32_frv_finish_dynamic_sections): Emit it.
535 (elf32_frv_always_size_sections): New.
536 (elf32_frv_modify_segment_map): New.
537 (elf32_frv_check_relocs): Reserve relocs32 space only in ALLOC
538 sections.
539 (frv_elf_merge_private_bfd_data): Clear PIC bit if FDPIC is set.
540 (frv_elf_print_private_bfd_data): Handle FDPIC and LIBPIC.
541 (elf_backend_always_size_sections): New.
542 (elf_backend_modify_segment_map): New.
543 2003-10-31 Alexandre Oliva <aoliva@redhat.com>
544 * config.bfd: Added frv-*-*linux*.
545 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Use idx 0 for
546 ABS section, instead of crashing.
547 (elf32_frv_relocate_section): Don't crash before warning about
548 different segments in non-PIC relocation.
549 2003-10-17 Alexandre Oliva <aoliva@redhat.com>
550 * elf32-frv.c (elf32_frv_relocate_section): Don't warn on LABEL24
551 relocs to undefweak symbols.
552 (elf32_frv_relocate_section): Ditto for undefined symbols.
553 2003-10-06 Alexandre Oliva <aoliva@redhat.com>
554 * elf32-frv.c (elf32_frv_create_dynamic_sections): Make sure
555 gotfixup section was created.
556 2003-09-30 Alexandre Oliva <aoliva@redhat.com>
557 * elf32-frv.c (elf32_frv_howto_table): Change GOT12,
558 FUNCDESC_GOT12, GOTOFF12 and FUNCDESC_GOTOFF12 to
559 complain_overflow_signed.
560 * elf32-frv.c (_frv_add_rofixup): Do not error out if contents
561 have not been allocated.
562 (_frv_emit_got_relocs_plt_entries): Return non-void. Assert
563 privfd only if dynamic sections were created.
564 (elf32_frv_relocate_section): Compute gprel_segment, and use it
565 for GPREL relocs. When linking relocatable FDPIC executables,
566 emit warnings for relocations that would be illegal on PIE or
567 shared libraries. Emit rofixup for R_FRV_32 only if input object
568 is not FDPIC.
569 (_frv_create_got_section): Define _gp symbol in the rofixup
570 section.
571 (elf32_frv_finish_dynamic_sections): If rofixups needed but
572 dynamic sections missing, error out requesting -melf32frvfd.
573 2003-09-19 Alexandre Oliva <aoliva@redhat.com>
574 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Rearrange
575 computation of addends from section and global or local symbol
576 value. Change return type to bfd_boolean, and return a failure if
577 a dynamic FUNCDESC or FUNCDESC_VALUE relocation that requires a
578 nonzero addend is required.
579 (elf32_frv_relocate_section): Likewise. Print error for
580 unsupported nonzero addends.
581 2003-09-18 Alexandre Oliva <aoliva@redhat.com>
582 * elf32-frv.c (FRV_SYM_LOCAL): In the absence of dynamic sections,
583 force everything local.
584 (_frv_emit_got_relocs_plt_entries): Cope with NULL sec.
585 * elf32-frv.c (struct frv_elf_link_hash_table): Added sgotfixup.
586 (frv_gotfixup_section): New.
587 (FRV_SYM_LOCAL): Accept undefweak and local common symbols.
588 (struct frv_pic_relocs_info): Split relocs into relocs32, relocsfd
589 and relocsfdv.
590 (_frv_add_rofixup): New.
591 (_frv_emit_got_relocs_plt_entries): Generate fixups for non-PIE
592 fdpic executables. Use FRV_SYM_LOCAL more widely to simplify and
593 improve some ugly conditions.
594 (elf32_frv_relocate_section): Likewise. Reject inter-segment
595 relocations in fdpic.
596 (_frv_create_got_section): Create .rofixup.got section.
597 (struct _frv_dynamic_got_info): Added fixups.
598 (_frv_count_got_plt_entries): Account in-GOT relocations into
599 relocs32, relocsfd and relocsfdv. Account them into relocs or
600 fixups, as appropriate.
601 (elf32_frv_size_dynamic_sections): Size rofixup section. Simplify
602 sizing of gotrel.
603 (elf32_frv_finish_dynamic_sections): Verify that the right number
604 of relocations and fixups was generated.
605 (elf32_frv_check_relocs): Compute relocs32, relocsfd and
606 relocsfdv.
607 * elf32-frv.c (FRV_SYM_LOCAL): New macro, used instead of
608 SYMBOL_CALLS_LOCAL and SYMBOL_REFERENCES_LOCAL.
609 (FRV_FUNCDESC_LOCAL): New macro, used to decide whether a function
610 descriptor of a (formerly-)global symbol is local.
611 (struct frv_pic_relocs_info): Adjust comments.
612 (_frv_emit_got_relocs_plt_entries): Adjust.
613 (elf32_frv_relocate_section): Likewise.
614 (_frv_count_got_plt_entries): Likewise.
615 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Don't add global
616 symbol's value to addend in the common preamble. Decay dynamic
617 symbols to section+offset if they bind or call locally, for GOT
618 and FUNCDESC_VALUE, respectively.
619 (elf32_frv_relocate_section): Likewise.
620 (elf32_frv_check_relocs): Don't register as dynamic symbols of
621 internal or hidden visibility.
622 2003-09-17 Alexandre Oliva <aoliva@redhat.com>
623 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Get addend as
624 argument, so as to not call _bfd_elf_rel_local_sym to compute it.
625 (elf32_frv_relocate_section): Pass relocation addend in. Use
626 original relocation addend to look up the got relocs/plt entries
627 table. Do not call _bfd_elf_rel_local_sym. Don't error out when
628 processing relocations that reference .scommon symbols.
629 2003-09-15 Alexandre Oliva <aoliva@redhat.com>
630 Introduce support for dynamic linking.
631 * elf32-frv.c (R_FRV_FUNCDESC_VALUE): Mark it as 64 bits.
632 (elf32_frv_rel_32_howto, elf32_frv_rel_funcdesc_howto,
633 elf32_frv_rel_funcdesc_value_howto): New REL descriptors.
634 (frv_reloc_type_lookup): Return REL howtos for executables and
635 dynamic libraries.
636 (frv_info_to_howto_rel): New.
637 (struct frv_elf_link_hash_table): New.
638 (frv_hash_table, frv_got_section, frv_gotrel_section,
639 frv_plt_section, frv_pltrel_section, frv_relocs_info,
640 frv_got_initial_offset, frv_plt_initial_offset): New macros.
641 (frv_elf_link_hash_table_create): New.
642 (struct frv_pic_relocs_info): New.
643 (frv_pic_relocs_info_hash, frv_pic_relocs_info_eq): New.
644 (frv_pic_relocs_info_find): New.
645 (frv_pic_relocs_info_for_global, frv_pic_relocs_info_for_local):
646 New.
647 (FRV_LZPLT_BLOCK_SIZE, FRV_LZPLT_RESOLVE_LOC): New.
648 (_frv_add_dyn_reloc, _frv_osec_to_segment): New.
649 (_frv_emit_got_relocs_plt_entries): New.
650 (elf32_frv_relocate_section): Add support for dynamic linking.
651 Handle new relocations.
652 (_frv_create_got_section): New.
653 (elf32_frv_create_dynamic_sections): New.
654 (ELF_DYNAMIC_INTERPRETER): New.
655 (struct _frv_dynamic_got_info): New.
656 (_frv_count_got_plt_entries): New.
657 (struct _frv_dynamic_got_plt_info): New.
658 (_frv_compute_got_alloc_data): New.
659 (_frv_get_got_entry, _frv_get_fd_entry): New.
660 (_frv_assign_got_entries, _frv_assign_plt_entries): New.
661 (_frv_resolve_final_relocs_info): New.
662 (elf32_frv_size_dynamic_sections): New.
663 (elf32_frv_finish_dynamic_sections): New.
664 (elf32_frv_adjust_dynamic_symbol): New.
665 (elf32_frv_finish_dynamic_symbol): New.
666 (elf32_frv_check_relocs): Handle new relocs. Explain how the
667 whole thing works.
668 (elf_info_to_howto_rel): Define.
669 (bfd_elf32_bfd_link_hash_table_create): Define.
670 (elf_backend_create_dynamic_sections): Define.
671 (elf_backend_adjust_dynamic_symbol): Define.
672 (elf_backend_size_dynamic_sections): Define.
673 (elf_backend_finish_dynamic_symbol): Define.
674 (elf_backend_finish_dynamic_sections): Define.
675 (elf_backend_want_got_sym): Define.
676 (elf_backend_got_header_size): Define.
677 (elf_backend_want_got_plt): Define.
678 (elf_backend_plt_readonly): Define.
679 (elf_backend_want_plt_sym): Define.
680 (elf_backend_plt_header_size): Define.
681 (elf_backend_may_use_rel_p): Define.
682 (elf_backend_may_use_rela_p): Define.
683 (elf_backend_default_use_rela_p): Define.
684 2003-08-08 Alexandre Oliva <aoliva@redhat.com>
685 * elf32-frv.c (R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12,
686 R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12,
687 R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New.
688 (frv_reloc_map): Map the corresponding BFD relocs to them.
689 (frv_reloc_type_lookup): ... and back to BFD relocs.
690 * reloc.c: New relocs.
691 * bfd-in2.h, libbfd.h: Rebuilt.
692 2003-08-04 Alexandre Oliva <aoliva@redhat.com>
693 * elf32-frv.c (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO,
694 R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI,
695 R_FRV_FUNCDESC_GOTLO): New.
696 (frv_reloc_map): Map the corresponding BFD relocs to them.
697 (frv_reloc_type_lookup): ... and back to BFD relocs.
698 * reloc.c: New relocs.
699 * bfd-in2.h, libbfd.h: Rebuilt.
700
4301eeb1
MR
7012004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
702
703 * elf32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
704 targets to support pages of up to 64kB.
705 (elf32_bed): Redefine to get a separate backend data structure for
706 traditional targets.
707 * elf64-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
708 targets to support pages of up to 64kB.
709 (elf64_bed): Redefine to get a separate backend data structure for
710 traditional targets.
711 * elfn32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
712 targets to support pages of up to 64kB.
713 (elf32_bed): Redefine to get a separate backend data structure for
714 traditional targets.
715
0647ed71
MK
7162004-01-04 Mark Kettenis <kettenis@gnu.org>
717
718 * elf32-sparc.c (elf32_sparc_grok_psinfo): New function.
719
61adc1a4
NC
7202004-01-02 Mark Kettenis <kettenis@gnu.org>
721
722 * elf32-i386.c (elf_i386_grok_prstatus): Add support for FreeBSD.
723 (elf_i386_grok_psinfo): Likewise.
724
b50c15dc
NC
7252004-01-02 Bernardo Innocenti <bernie@develer.com>
726
727 * config.bfd: Add m68k-uClinux target.
728
2627de83
AM
7292004-01-01 Grant Edwards <grante@visi.com>
730
731 * elflink.h (elf_gc_sections): Warn when gc-sections option is ignored.
732 * elf32-h8300.c (elf32_h8_gc_mark_hook): New function.
733 (elf32_h8_gc_sweep_hook): New function.
734 (elf_backend_gc_mark_hook): Define.
735 (elf_backend_gc_sweep_hook): Define.
736 (elf_backend_can_gc_sections): Define.
737
c9e214e5 738For older changes see ChangeLog-0203
56882138
AM
739\f
740Local Variables:
741mode: change-log
742left-margin: 8
743fill-column: 74
744version-control: never
745End:
This page took 0.288781 seconds and 4 git commands to generate.