2004-03-03 H.J. Lu <hongjiu.lu@intel.com>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
ae51a426
JR
12003-03-03 Andrew Stubbs <andrew.stubbs@superh.com>
2
3 * archures.c: Add bfd_mach_sh4_nommu_nofpu.
4 * cpu-sh.c: Ditto.
5 * elf32-sh.c: Ditto.
6 * bfd-in2.h: Regenerate.
7
3b712a1a
AO
82004-03-02 Alexandre Oliva <aoliva@redhat.com>
9
10 * elf32-frv.c (struct frv_pic_relocs_info): Added fixups and
11 dynrelocs.
12 (_frv_count_got_plt_entries): Initialize them.
13 (frv_pic_relocs_info_find): Add insert argument. Adjust all
14 callers.
15 (frv_pic_relocs_info_for_global): Likewise.
16 (frv_pic_relocs_info_for_local): Likewise.
17 (frv_pic_merge_early_relocs_info): New.
18 (_frv_resolve_final_relocs_info): Use it in case one entry maps to
19 another.
20 (_frv_add_dyn_reloc): Add entry argument. Adjust all callers.
21 Check that we don't exceed the allocated count for entry.
22 (_frv_add_rofixup): Likewise.
23 (_frv_emit_got_relocs_plt_entries): Adjust for coding standards.
24 (elf32_frv_finish_dynamic_sections): Improve error message in case
25 we emit too few rofixup entries.
26
676a64f4
RS
272004-03-01 Richard Sandiford <rsandifo@redhat.com>
28
29 * archures.c (bfd_mach_fr450): New.
30 * bfd-in2.h: Regenerate.
31 * cpu-frv.c (arch_info_450): New bfd_arch_info_type.
32 (arch_info_500): Link to it.
33 * elf32-frv.c (elf32_frv_machine, frv_elf_merge_private_bfd_data)
34 (frv_elf_print_private_bfd_data): Handle fr405 and fr450 header flags.
35 (frv_elf_arch_extension_p): New function.
36 (frv_elf_merge_private_bfd_data): Use it.
37
0ad989f9
L
382004-02-28 H.J. Lu <hongjiu.lu@intel.com>
39
40 * elf-bfd.h (_bfd_elf_link_add_archive_symbols): New prototype.
41
42 * elflink.h (is_global_data_symbol_definition): Moved to
43 elflink.c.
44 (elf_link_is_defined_archive_symbol): Likewise.
45 (elf_link_add_archive_symbols): Likewise. Renamed to
46 _bfd_elf_link_add_archive_symbols.
47
48 * elflink.c (elf_link_is_defined_archive_symbol): Get the size
49 of ELF symbol table entry from backend.
50 (_bfd_elf_link_add_archive_symbols): Call bfd_link_add_symbols
51 instead of elf_link_add_object_symbols.
52
ec3391e7
AO
532004-02-27 Alexandre Oliva <aoliva@redhat.com>
54
55 * elf-bfd.h (struct elf_backend_data): Added
56 elf_backend_can_make_relative_eh_frame,
57 elf_backend_can_make_lsda_relative_eh_frame and
58 elf_backend_encode_eh_address.
59 (_bfd_elf_encode_eh_address): Declare.
60 (_bfd_elf_can_make_relative): Declare.
61 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use new
62 hooks to decide whether to attempt to make_relative and
63 make_lsda_relative.
64 (_bfd_elf_write_section_eh_frame_hdr): Call encode_eh_address.
65 (_bfd_elf_can_make_relative): New.
66 (_bfd_elf_encode_eh_address): New.
67 * elf32-frv.c (frv_elf_use_relative_eh_frame): New.
68 (frv_elf_encode_eh_address): New.
69 (elf_backend_can_make_relative_eh_frame): Define.
70 (elf_backend_can_make_lsda_relative_eh_frame): Define.
71 (elf_backend_encode_eh_address): Define.
72 * elfxx-target.h
73 (elf_backend_can_make_relative_eh_frame): Define.
74 (elf_backend_can_make_lsda_relative_eh_frame): Define.
75 (elf_backend_encode_eh_address): Define.
76 (elfNN_bed): Add them.
77
e6deed0a
AO
782004-02-27 Alexandre Oliva <aoliva@redhat.com>
79
80 * elf32-frv.c (elf32_frv_howto_table) <R_FRV_LABEL16>: Set
81 complain_on_overflow to signed.
82
b60d7a1a
L
832004-02-27 H.J. Lu <hongjiu.lu@intel.com>
84
85 * elflink.h (sort_symbol): New.
86 (elf_link_add_object_symbols): Use a sorted symbol array for
87 weakdef.
88
1c3ff0f2
MS
892004-02-27 Jakub Jelinek <jakub@redhat.com>
90
91 * elf32-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL
92 for pc relative relocs.
93 (elf_s390_relocate_section): Likewise.
94 * elf64-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL
95 for pc relative relocs.
96 (elf_s390_relocate_section): Likewise.
97
de9811af
L
982004-02-26 H.J. Lu <hongjiu.lu@intel.com>
99
100 * elfxx-ia64.c (elfNN_ia64_check_relocs): Fix call to
101 count_dyn_reloc.
102
ac33696c
L
1032004-02-25 H.J. Lu <hongjiu.lu@intel.com>
104
105 * elfxx-ia64.c (elfNN_ia64_dyn_reloc_entry): Add the reltext.
106 field to track if a relocation is against readonly section.
107 (count_dyn_reloc): Take a new argument for rent->reltext.
108 (elfNN_ia64_check_relocs): Adjust call to count_dyn_reloc.
109 (get_reloc_section): Don't set ia64_info->reltext here.
110 (allocate_dynrel_entries): Set ia64_info->reltext here.
111
072c8903
AO
1122004-02-24 Alexandre Oliva <aoliva@redhat.com>
113
114 * elf32-frv.c (FRV_SYM_LOCAL): Weak undefined doesn't imply local.
115 (_frv_emit_got_relocs_plt_entries): Decay relocation to protected
116 function's descriptor to symbol+offset, and map local undefweak
117 symbol to NULL function descriptor.
118 (elf32_frv_relocate_section): Likewise.
119
aca305d9
NC
1202004-02-23 Mark Kettenis <kettenis@gnu.org>
121
122 * libaout.h (enum machine_type): Add M_SPARC64_NETBSD and
123 M_X86_64_NETBSD.
124 * netbsd-core.c (M_SPARC64_OPENBSD): Define.
125 (netbsd_core_file_p): Set architecture from machine ID for
126 selected machines.
127
646411fb
JJ
1282004-02-23 Jakub Jelinek <jakub@redhat.com>
129
130 * elflink.h (size_dynamic_sections): If not adding DT_FLAGS and
131 DF_BIND_NOW is set in info->flags, create DT_BIND_NOW dynamic entry.
132
1de1a317
L
1332004-02-21 H.J. Lu <hongjiu.lu@intel.com>
134
135 * elflink.c (_bfd_elf_merge_symbol): Properly handle undefined
136 symbols with non-default visibility.
137
3c9d0484
DS
1382004-02-21 Danny Smith <daanysmith@users.sourceforge.net>
139
140 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Clear
141 IMAGE_SCN_MEM_WRITE on known sections only.
142
a876ecf9
JJ
1432004-02-20 Jakub Jelinek <jakub@redhat.com>
144
145 * elf32-ppc.c (allocate_dynrelocs): Create dynsym for undef weak
146 symbols used in PIE relocs.
147
a8a6d7ce
JJ
1482004-02-19 Jakub Jelinek <jakub@redhat.com>
149
150 * elf32-sparc.c (elf32_sparc_finish_dynamic_sections): Clear
151 .plt sh_entsize.
152
d080fcd2
DJ
1532004-02-18 Daniel Jacobowitz <drow@mvista.com>
154
155 * configure.in: Update version to 2.15.90.
156 * configure: Regenerate.
157
d25aed71
RS
1582004-02-17 Daniel Jacobowitz <drow@mvista.com>
159 Richard Sandiford <rsandifo@redhat.com>
160
161 * elfxx-mips.c (mips_elf_calculate_relocation): Use
162 _bfd_elf_symbol_refs_local_p to decide whether to decay
163 a GOT_PAGE/GOT_OFST pair to GOT_DISP/addend.
164 (_bfd_mips_elf_check_relocs): Add a global GOT entry for GOT_PAGE
165 relocs if the symbol wasn't defined by a regular object file.
166 Don't check the symbol's dynindx.
167
d7ce59e3
AC
1682004-02-16 Andrew Cagney <cagney@redhat.com>
169
170 * bfd-in.h (file_ptr, ufile_ptr): Configure type using
171 @bfd_file_ptr@.
172 * bfd-in2.h: Re-generate.
173
ca0b7686
AC
1742004-02-14 Andrew Cagney <cagney@redhat.com>
175
176 * configure.host (HDEFINES): When hppa*-*-hpux*, define
177 _LARGEFILE64_SOURCE.
178
340b6d91
AC
1792004-02-13 Andrew Cagney <cagney@redhat.com>
180
181 * elf.c (vma_page_aligned_bias): New function.
182 (assign_file_positions_except_relocs)
183 (assign_file_positions_for_segments): Replace broken modulo
184 arithmetic with call to vma_page_aligned_bias.
185
1012372a
AC
1862004-02-11 Andrew Cagney <cagney@redhat.com>
187
7c192733
AC
188 * bfd-in.h: Update copyright.
189 (bfd_tell): Change return type to file_ptr.
190 * bfd-in2.h: Re-generate.
191 * cache.c: Update copyright.
192 (bfd_cache_lookup_worker): Use real_fseek, do not cast offset
193 parameter.
194 (close_one): Use real_ftell.
195 * bfdio.c: Update copyright.
196 (real_ftell, real_fseek): New functions.
197 (bfd_tell): Use real_fseek and real_ftell, change return type to
198 file_ptr.
199 (bfd_seek): Use real_ftell and real_fseek, change type of
200 file_position to a file_ptr.
201 * libbfd-in.h: Update copyright.
202 (real_ftell, real_fseek): Declare.
203 * libbfd.h: Re-generate.
204
1012372a
AC
205 * configure.in (AC_CHECK_FUNCS): Check for ftello, ftello64,
206 fseeko and fseeko64. Determine bfd_file_ptr.
207 * configure: Re-generate.
c1ea0c09 208 * config.in: Re-generate.
1012372a 209
3255318a
NC
2102004-02-09 Anil Paranjpe <anilp1@KPITCummins.com>
211
212 * coff-h8300.c: Added comments about relaxation for ldc.w and stc.w.
213 * elf32-h8300.c: Likewise.
214
0d5f9994
NC
2152004-02-09 Christian Vogel <vogelchr@vogel.cx>
216 Nick Clifton <nickc@redhat.com>
217
218 * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Catch
219 GOT entries with no associated GOT subsection.
220
174fd7f9
RS
2212004-02-09 Richard Sandiford <rsandifo@redhat.com>
222
223 * bfd-elf.h (elf_backend_name_local_section_symbols): New hook.
224 * elf.c (swap_out_syms): Use it to decide whether local section
225 symbols should be named.
226 * elfxx-target.h (elf_backend_name_local_section_symbols): New macro.
227 * elfxx-mips.h (_bfd_mips_elf_name_local_section_symbols): Declare.
228 (elf_backend_name_local_section_symbols): Define.
229 * elfxx-mips.c (_bfd_mips_elf_name_local_section_symbols): New.
230
03609792
L
2312004-01-30 H.J. Lu <hongjiu.lu@intel.com>
232
233 * elfxx-ia64.c (elfNN_ia64_relax_brl): New function.
234 (elfNN_ia64_relax_section): Optimize brl to br during the relax
235 finalize pass.
236
ea01195e
AO
2372004-01-30 Alexandre Oliva <aoliva@redhat.com>
238
239 * elf32-frv.c (elf32_frv_always_size_sections): Initialize pointer
240 to bfd_link_hash_entry passed by reference to
241 _bfd_generic_link_add_one_symbol.
242
838e70c5
L
2432004-01-25 H.J. Lu <hongjiu.lu@intel.com>
244
245 * elfxx-ia64.c (elfNN_ia64_relocate_section): Disallow imm
246 relocations against dynamic symbols.
247
4f199be3
DJ
2482004-01-23 Daniel Jacobowitz <drow@mvista.com>
249
250 * elf32-arm.h (elf32_arm_check_relocs): Revert part of 2004-01-13
251 change.
252
28d39d1a
NC
2532004-01-21 Tom Rix <tcrix@worldnet.att.net>
254
255 * reloc.c: New 5 bit reloc, BFD_RELOC_M68HC12_5B, for m68hc12 movb/movw.
256 * bfd-in2.h, libbfd.h: Rebuilt.
257
66bed356
DS
2582004-01-20 Danny Smith <dannysmith@users.sourceforge.net>
259
260 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Don't remove
261 IMAGE_SCN_MEM_WRITE flag from .text section if WP_TEXT
262 flag has been cleared.
263
7e89635a
KH
2642004-01-19 Kazu Hirata <kazu@cs.umass.edu>
265
266 * coff-h8300.c: Add and adjust comments about relaxation.
267 * elf32-h8300.c: Likewise.
268
e804e836
KH
2692004-01-16 Kazu Hirata <kazu@cs.umass.edu>
270
271 * coff-h8300.c: Fix comment typos.
272 * elf32-h8300.c: Likewise.
273
630a7b0a
KH
2742004-01-16 Kazu Hirata <kazu@cs.umass.edu>
275
276 * coff-h8300.c: Add comments about relaxation.
277 * elf32-h8300.c: Likewise.
278
f8b73030
MR
2792004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
280
281 * acinclude.m4: Quote names of macros to be defined by AC_DEFUN
282 throughout.
283 * aclocal.m4: Regenerate.
284 * configure: Regenerate.
285
32159579
ILT
2862004-01-13 Ian Lance Taylor <ian@wasabisystems.com>
287
288 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Call
289 mips_elf64_rtype_to_howto instead of using howto_table.
290
c84cd8ee
DJ
2912004-01-13 Daniel Jacobowitz <drow@mvista.com>
292
293 * elf32-arm.h (elf32_arm_final_link_relocate): Check that we created
294 the .plt section.
295 (elf32_arm_check_relocs): Don't increment the PLT refcount for
296 relocs which would not use the PLT.
297
680a3378
AM
2982004-01-13 Alan Modra <amodra@bigpond.net.au>
299
300 * elf64-ppc.c (ppc64_elf_check_relocs): Ignore !SEC_ALLOC relocs.
301 (ppc64_elf_gc_sweep_hook): Likewise.
302 (ppc64_elf_size_dynamic_sections): Test for .plt directly.
303
faca21e5
NC
3042004-01-12 Anil Paranjpe <anilp1@KPITCummins.com>
305
306 Adds linker relaxation support for bit manipulation insns like
680a3378 307 band, bclr, biand, bild, bior, bist, bixor, bld, bnot, bor, bset,
faca21e5 308 bst, btst, bxor.
680a3378 309 * elf32-h8300.c: Opcode for bit manipulation insn is checked in
faca21e5 310 elf32_h8_relax_section function while relxation for aa:16 and aa:32.
680a3378 311 * coff-h8300.c: Opcode for bit manipulation insn is checked in
faca21e5
NC
312 h8300_reloc16_extra_cases function while relxation for aa:16 and aa:32.
313
818a27ac
AM
3142004-01-12 Alan Modra <amodra@bigpond.net.au>
315
316 * dwarf2.c: Convert to C90, remove unneeded casts and prototypes.
317
96ef1419
KH
3182004-01-11 Kazu Hirata <kazu@cs.umass.edu>
319
320 * elf32-h8300.c: Fix formatting.
321
babfd660
KH
3222004-01-11 Kazu Hirata <kazu@cs.umass.edu>
323
324 * elf32-cris.c (cris_elf_gc_sweep_hook): Return early if no
325 dynamic object is present. Declare r_symndx and h in an inner
326 scope.
327 * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
328
7359ea65
DJ
3292004-01-09 Daniel Jacobowitz <drow@mvista.com>
330
331 * elf32-arm.h (struct elf32_arm_relocs_copied): Remove pc_count.
332 (elf32_arm_copy_indirect_symbol): Don't copy pc_count.
333 (elf32_arm_final_link_relocate): Handle PLT32 and PC24 relocs
334 identically. Do not emit PC24 relocations for shared libraries.
335 (elf32_arm_gc_sweep_hook): Handle PLT32 and PC24 relocs
336 identically. Don't adjust pc_count.
337 (elf32_arm_check_relocs): Handle PLT32 and PC24 relocs identically.
338 Set ELF_LINK_HASH_NEEDS_PLT for both. Don't adjust pc_count; don't
339 adjust count for branch relocations.
340 (allocate_dynrelocs): Correct typo in call to
341 WILL_CALL_FINISH_DYNAMIC_SYMBOL. Never allocate space for
342 PC24 or PLT32 relocs when linking.
343
44e88952
NC
3442004-01-09 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru>
345
346 * coff-arm.c (aoutarm_std_reloc_howto): [ARM_WINCE] Synchronize ARM_26D
347 relocation howto with ARM_26 one for consistency.
348 (coff_arm_relocate_section): Set partial_inplace for ARM_26 relocations
349 that will be converted to ARM_26D ones, since we always want 'done'
350 relocations to be reflected in section's data.
351 (coff_arm_relocate_section): [ARM_WINCE] Quick fix for BL instruction
352 offset.
353 (_bfd_final_link_relocate): Do not modify "inplace" data, if not
354 requested.
355
1e7fef1d
NC
3562004-01-08 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru>
357
358 * coff-arm.c (coff_arm_relocate_section): Do not alter relocs that
359 are not partial_inplace during a relocatable link.
360
4f075348
KH
3612004-01-08 Kazu Hirata <kazu@cs.umass.edu>
362
babfd660 363 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return early
4f075348
KH
364 if no dynamic object is present. Declare r_symndx and h in an
365 inner scope.
366
de0d9f33
L
3672004-01-07 H.J. Lu <hongjiu.lu@intel.com>
368
369 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't install
370 trampoline if it is known out of range.
371
51532845
AO
3722004-01-06 Alexandre Oliva <aoliva@redhat.com>
373
374 2003-12-17 Alexandre Oliva <aoliva@redhat.com>
375 * elf32-frv.c (_frv_osec_readonly_p): New.
376 (_frv_emit_got_relocs_plt_entries): Don't emit rofixup for
377 undefweak symbol.
378 (_frv_count_got_plt_entries): Adjust expected count accordingly.
379 (elf32_frv_relocate_section): Likewise. Error out if attempting
380 to emit rofixups or dynamic relocs in read-only segments. Use
381 _bfd_elf_section_offset to adjust r_offsets in rofixups and
382 dynamic relocations.
383 2003-12-12 Alexandre Oliva <aoliva@redhat.com>
384 * elf32-frv.c (elf32_frv_relocate_section): Compute dynamic
385 relocations or fixups involving merged sections correctly. Avoid
386 crash when undefined symbol is referenced by R_FRV_32 or
387 R_FRV_FUNCDESC_VALUE.
388 2003-12-02 Alexandre Oliva <aoliva@redhat.com>
389 * elf32-frv.c (elf32_frv_relocate_section): Add output_offset of
390 input section holding local symbol to addend of R_FRV_32 or
391 R_FRV_FUNCDESC_VALUE dynamic relocation.
392 2003-11-27 Alexandre Oliva <aoliva@redhat.com>
393 * elf32-frv.c (elf32_frv_modify_segment_map): Add link info arg.
394 (elf32_frv_always_size_sections): Don't store pointer to
395 __stacksize symbol in sec_info.
396 (elf32_frv_modify_segment_map): Look it up here.
397 2003-11-26 Alexandre Oliva <aoliva@redhat.com>
398 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Emit the address
399 of the lazy PLT entry, not only its offset, as the low word of a
400 function descriptor.
401 2003-11-10 Alexandre Oliva <aoliva@redhat.com>
402 * elf32-frv.c (elf32_frv_always_size_sections): Define __stacksize
403 if a hash table entry already exists but is not a definition.
404 2003-11-05 Alexandre Oliva <aoliva@redhat.com>
405 * elf32-frv.c (frv_elf_link_hash_table_create): Use bfd_zalloc.
406 (_frv_add_rofixup): Don't inline.
407 (_frv_emit_got_relocs_plt_entries): Use NULL as funcdesc address
408 for undefweak symbols.
409 (elf32_frv_relocate_section): Avoid crash while computing
410 relocation when linking with shared library. Only emit rofixups
411 and dynamic relocations for alloc&load sections. Mark binaries
412 with inter-segment relocations for relocation as a unit.
413 (_frv_create_got_section): Rename .rofixup.got to .rofixup.
414 (DEFAULT_STACK_SIZE): New.
415 (_frv_count_got_plt_entries): Fix thinko in deciding whether to
416 emit rofixups or dynamic relocs when linking dynamic non-PIE
417 executables.
418 (elf32_frv_size_dynamic_sections): Generate rofixup on PIEs and
419 shared libs too. Reserve the last entry for the GOT pointer.
420 (elf32_frv_finish_dynamic_sections): Emit it.
421 (elf32_frv_always_size_sections): New.
422 (elf32_frv_modify_segment_map): New.
423 (elf32_frv_check_relocs): Reserve relocs32 space only in ALLOC
424 sections.
425 (frv_elf_merge_private_bfd_data): Clear PIC bit if FDPIC is set.
426 (frv_elf_print_private_bfd_data): Handle FDPIC and LIBPIC.
427 (elf_backend_always_size_sections): New.
428 (elf_backend_modify_segment_map): New.
429 2003-10-31 Alexandre Oliva <aoliva@redhat.com>
430 * config.bfd: Added frv-*-*linux*.
431 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Use idx 0 for
432 ABS section, instead of crashing.
433 (elf32_frv_relocate_section): Don't crash before warning about
434 different segments in non-PIC relocation.
435 2003-10-17 Alexandre Oliva <aoliva@redhat.com>
436 * elf32-frv.c (elf32_frv_relocate_section): Don't warn on LABEL24
437 relocs to undefweak symbols.
438 (elf32_frv_relocate_section): Ditto for undefined symbols.
439 2003-10-06 Alexandre Oliva <aoliva@redhat.com>
440 * elf32-frv.c (elf32_frv_create_dynamic_sections): Make sure
441 gotfixup section was created.
442 2003-09-30 Alexandre Oliva <aoliva@redhat.com>
443 * elf32-frv.c (elf32_frv_howto_table): Change GOT12,
444 FUNCDESC_GOT12, GOTOFF12 and FUNCDESC_GOTOFF12 to
445 complain_overflow_signed.
446 * elf32-frv.c (_frv_add_rofixup): Do not error out if contents
447 have not been allocated.
448 (_frv_emit_got_relocs_plt_entries): Return non-void. Assert
449 privfd only if dynamic sections were created.
450 (elf32_frv_relocate_section): Compute gprel_segment, and use it
451 for GPREL relocs. When linking relocatable FDPIC executables,
452 emit warnings for relocations that would be illegal on PIE or
453 shared libraries. Emit rofixup for R_FRV_32 only if input object
454 is not FDPIC.
455 (_frv_create_got_section): Define _gp symbol in the rofixup
456 section.
457 (elf32_frv_finish_dynamic_sections): If rofixups needed but
458 dynamic sections missing, error out requesting -melf32frvfd.
459 2003-09-19 Alexandre Oliva <aoliva@redhat.com>
460 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Rearrange
461 computation of addends from section and global or local symbol
462 value. Change return type to bfd_boolean, and return a failure if
463 a dynamic FUNCDESC or FUNCDESC_VALUE relocation that requires a
464 nonzero addend is required.
465 (elf32_frv_relocate_section): Likewise. Print error for
466 unsupported nonzero addends.
467 2003-09-18 Alexandre Oliva <aoliva@redhat.com>
468 * elf32-frv.c (FRV_SYM_LOCAL): In the absence of dynamic sections,
469 force everything local.
470 (_frv_emit_got_relocs_plt_entries): Cope with NULL sec.
471 * elf32-frv.c (struct frv_elf_link_hash_table): Added sgotfixup.
472 (frv_gotfixup_section): New.
473 (FRV_SYM_LOCAL): Accept undefweak and local common symbols.
474 (struct frv_pic_relocs_info): Split relocs into relocs32, relocsfd
475 and relocsfdv.
476 (_frv_add_rofixup): New.
477 (_frv_emit_got_relocs_plt_entries): Generate fixups for non-PIE
478 fdpic executables. Use FRV_SYM_LOCAL more widely to simplify and
479 improve some ugly conditions.
480 (elf32_frv_relocate_section): Likewise. Reject inter-segment
481 relocations in fdpic.
482 (_frv_create_got_section): Create .rofixup.got section.
483 (struct _frv_dynamic_got_info): Added fixups.
484 (_frv_count_got_plt_entries): Account in-GOT relocations into
485 relocs32, relocsfd and relocsfdv. Account them into relocs or
486 fixups, as appropriate.
487 (elf32_frv_size_dynamic_sections): Size rofixup section. Simplify
488 sizing of gotrel.
489 (elf32_frv_finish_dynamic_sections): Verify that the right number
490 of relocations and fixups was generated.
491 (elf32_frv_check_relocs): Compute relocs32, relocsfd and
492 relocsfdv.
493 * elf32-frv.c (FRV_SYM_LOCAL): New macro, used instead of
494 SYMBOL_CALLS_LOCAL and SYMBOL_REFERENCES_LOCAL.
495 (FRV_FUNCDESC_LOCAL): New macro, used to decide whether a function
496 descriptor of a (formerly-)global symbol is local.
497 (struct frv_pic_relocs_info): Adjust comments.
498 (_frv_emit_got_relocs_plt_entries): Adjust.
499 (elf32_frv_relocate_section): Likewise.
500 (_frv_count_got_plt_entries): Likewise.
501 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Don't add global
502 symbol's value to addend in the common preamble. Decay dynamic
503 symbols to section+offset if they bind or call locally, for GOT
504 and FUNCDESC_VALUE, respectively.
505 (elf32_frv_relocate_section): Likewise.
506 (elf32_frv_check_relocs): Don't register as dynamic symbols of
507 internal or hidden visibility.
508 2003-09-17 Alexandre Oliva <aoliva@redhat.com>
509 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Get addend as
510 argument, so as to not call _bfd_elf_rel_local_sym to compute it.
511 (elf32_frv_relocate_section): Pass relocation addend in. Use
512 original relocation addend to look up the got relocs/plt entries
513 table. Do not call _bfd_elf_rel_local_sym. Don't error out when
514 processing relocations that reference .scommon symbols.
515 2003-09-15 Alexandre Oliva <aoliva@redhat.com>
516 Introduce support for dynamic linking.
517 * elf32-frv.c (R_FRV_FUNCDESC_VALUE): Mark it as 64 bits.
518 (elf32_frv_rel_32_howto, elf32_frv_rel_funcdesc_howto,
519 elf32_frv_rel_funcdesc_value_howto): New REL descriptors.
520 (frv_reloc_type_lookup): Return REL howtos for executables and
521 dynamic libraries.
522 (frv_info_to_howto_rel): New.
523 (struct frv_elf_link_hash_table): New.
524 (frv_hash_table, frv_got_section, frv_gotrel_section,
525 frv_plt_section, frv_pltrel_section, frv_relocs_info,
526 frv_got_initial_offset, frv_plt_initial_offset): New macros.
527 (frv_elf_link_hash_table_create): New.
528 (struct frv_pic_relocs_info): New.
529 (frv_pic_relocs_info_hash, frv_pic_relocs_info_eq): New.
530 (frv_pic_relocs_info_find): New.
531 (frv_pic_relocs_info_for_global, frv_pic_relocs_info_for_local):
532 New.
533 (FRV_LZPLT_BLOCK_SIZE, FRV_LZPLT_RESOLVE_LOC): New.
534 (_frv_add_dyn_reloc, _frv_osec_to_segment): New.
535 (_frv_emit_got_relocs_plt_entries): New.
536 (elf32_frv_relocate_section): Add support for dynamic linking.
537 Handle new relocations.
538 (_frv_create_got_section): New.
539 (elf32_frv_create_dynamic_sections): New.
540 (ELF_DYNAMIC_INTERPRETER): New.
541 (struct _frv_dynamic_got_info): New.
542 (_frv_count_got_plt_entries): New.
543 (struct _frv_dynamic_got_plt_info): New.
544 (_frv_compute_got_alloc_data): New.
545 (_frv_get_got_entry, _frv_get_fd_entry): New.
546 (_frv_assign_got_entries, _frv_assign_plt_entries): New.
547 (_frv_resolve_final_relocs_info): New.
548 (elf32_frv_size_dynamic_sections): New.
549 (elf32_frv_finish_dynamic_sections): New.
550 (elf32_frv_adjust_dynamic_symbol): New.
551 (elf32_frv_finish_dynamic_symbol): New.
552 (elf32_frv_check_relocs): Handle new relocs. Explain how the
553 whole thing works.
554 (elf_info_to_howto_rel): Define.
555 (bfd_elf32_bfd_link_hash_table_create): Define.
556 (elf_backend_create_dynamic_sections): Define.
557 (elf_backend_adjust_dynamic_symbol): Define.
558 (elf_backend_size_dynamic_sections): Define.
559 (elf_backend_finish_dynamic_symbol): Define.
560 (elf_backend_finish_dynamic_sections): Define.
561 (elf_backend_want_got_sym): Define.
562 (elf_backend_got_header_size): Define.
563 (elf_backend_want_got_plt): Define.
564 (elf_backend_plt_readonly): Define.
565 (elf_backend_want_plt_sym): Define.
566 (elf_backend_plt_header_size): Define.
567 (elf_backend_may_use_rel_p): Define.
568 (elf_backend_may_use_rela_p): Define.
569 (elf_backend_default_use_rela_p): Define.
570 2003-08-08 Alexandre Oliva <aoliva@redhat.com>
571 * elf32-frv.c (R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12,
572 R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12,
573 R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New.
574 (frv_reloc_map): Map the corresponding BFD relocs to them.
575 (frv_reloc_type_lookup): ... and back to BFD relocs.
576 * reloc.c: New relocs.
577 * bfd-in2.h, libbfd.h: Rebuilt.
578 2003-08-04 Alexandre Oliva <aoliva@redhat.com>
579 * elf32-frv.c (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO,
580 R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI,
581 R_FRV_FUNCDESC_GOTLO): New.
582 (frv_reloc_map): Map the corresponding BFD relocs to them.
583 (frv_reloc_type_lookup): ... and back to BFD relocs.
584 * reloc.c: New relocs.
585 * bfd-in2.h, libbfd.h: Rebuilt.
586
4301eeb1
MR
5872004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
588
589 * elf32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
590 targets to support pages of up to 64kB.
591 (elf32_bed): Redefine to get a separate backend data structure for
592 traditional targets.
593 * elf64-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
594 targets to support pages of up to 64kB.
595 (elf64_bed): Redefine to get a separate backend data structure for
596 traditional targets.
597 * elfn32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
598 targets to support pages of up to 64kB.
599 (elf32_bed): Redefine to get a separate backend data structure for
600 traditional targets.
601
0647ed71
MK
6022004-01-04 Mark Kettenis <kettenis@gnu.org>
603
604 * elf32-sparc.c (elf32_sparc_grok_psinfo): New function.
605
61adc1a4
NC
6062004-01-02 Mark Kettenis <kettenis@gnu.org>
607
608 * elf32-i386.c (elf_i386_grok_prstatus): Add support for FreeBSD.
609 (elf_i386_grok_psinfo): Likewise.
610
b50c15dc
NC
6112004-01-02 Bernardo Innocenti <bernie@develer.com>
612
613 * config.bfd: Add m68k-uClinux target.
614
2627de83
AM
6152004-01-01 Grant Edwards <grante@visi.com>
616
617 * elflink.h (elf_gc_sections): Warn when gc-sections option is ignored.
618 * elf32-h8300.c (elf32_h8_gc_mark_hook): New function.
619 (elf32_h8_gc_sweep_hook): New function.
620 (elf_backend_gc_mark_hook): Define.
621 (elf_backend_gc_sweep_hook): Define.
622 (elf_backend_can_gc_sections): Define.
623
c9e214e5 624For older changes see ChangeLog-0203
56882138
AM
625\f
626Local Variables:
627mode: change-log
628left-margin: 8
629fill-column: 74
630version-control: never
631End:
This page took 0.232284 seconds and 4 git commands to generate.