* elf-hppa.h (elf_hppa_reloc_final_type): Handle selectors for
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
9992270f
DA
12004-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2
3 * elf-hppa.h (elf_hppa_reloc_final_type): Handle selectors for
4 R_PARISC_PCREL32 and R_PARISC_PCREL64 relocations.
5
05864e2a
AM
62004-03-19 Alan Modra <amodra@bigpond.net.au>
7
8 * Makefile.am: Run "make dep-am".
9 * Makefile.in: Regenerate.
10 * aclocal.m4: Regenerate.
11 * config.in: Regenerate.
12 * po/bfd.pot: Regenerate.
13
f218a464 142004-03-19 Alan Modra <amodra@bigpond.net.au>
0f8a2703
AM
15 H.J. Lu <hongjiu.lu@intel.com>
16
17 * elflink.c (_bfd_elf_merge_symbol): Revert last change. Move
18 type and size change code to where it was previously. Remove
19 dt_needed param. Treat old weak syms as strong if new sym is
20 from a shared lib, even when old sym is from another shared
21 lib. Remove unnecessary tests of oldweak and newweak. Correct
22 comments.
23 (_bfd_elf_add_default_symbol): Remove dt_needed param. Update
24 _bfd_elf_merge_symbol calls.
25 * elflink.h (elf_link_add_object_symbols): Update calls. Remove
26 dt_needed local var. Update comments.
27 * elf-bfd.h (_bfd_elf_merge_symbol): Update prototype.
28 (_bfd_elf_add_default_symbol): Likewise.
f218a464
AM
29
30 * elflink.c (_bfd_elf_merge_symbol): Reinstate code to handle
31 strong syms in one shared object overriding weak syms in another.
32
79349b09
AM
332004-03-18 Alan Modra <amodra@bigpond.net.au>
34
4a43e768
AM
35 * elf-bfd.h (struct elf_obj_tdata): Delete dt_soname field. Add
36 dyn_lib_class field. Rearrange for better packing.
37 (elf_dt_soname): Delete.
38 (elf_dyn_lib_class): Define.
39 * elf.c (bfd_elf_set_dt_needed_name): Update comment.
40 (bfd_elf_set_dt_needed_soname): Delete.
41 (bfd_elf_set_dyn_lib_class): New function.
42 * elflink.h (add_dt_needed_tag): New function. Split out from..
43 (elf_link_add_object_symbols): ..here. Rename "name" to "soname".
44 Use elf_dyn_lib_class to set dt_needed and add_needed. Move fallback
45 initialization of soname.
46 (elf_link_check_versioned_symbol): Test elf_dyn_lib_class instead of
47 elf_dt_soname.
48 * bfd-in.h (enum dynamic_lib_link_class): New.
49 (bfd_elf_set_dt_needed_soname): Delete.
50 (bfd_elf_set_dyn_lib_class): Declare.
51 * bfd-in2.h: Regenerate.
52
79349b09
AM
53 * elflink.c (_bfd_elf_merge_symbol): Rewrite weak symbol handling.
54 (_bfd_elf_add_default_symbol): Remove indirect BFD_ASSERTs.
55 * elflink.h (elf_link_add_object_symbols): Don't clear dt_needed in
56 symbol loop. Instead use add_needed to flag tag as written.
57
d13d89fa
NS
582004-03-17 Nathan Sidwell <nathan@codesourcery.com>
59
60 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
61 logic for null_input_bfd detection.
62
9183ed4b
AM
632004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
64
65 * config.bfd: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*.
66
021d7868
MK
672004-03-16 Mark Kettenis <kettenis@gnu.org>
68
69 * netbsd-core.c (netbsd_core_file_p) [CORE_FPU_OFFSET]: Remove
70 code.
71
51992aec
AM
722004-03-16 Alan Modra <amodra@bigpond.net.au>
73
74 * elflink.c (elf_link_read_relocs_from_section): Don't use
75 NUM_SHDR_ENTRIES in end of reloc calc. Move NULL shdr check..
76 (_bfd_elf_link_read_relocs): ..to here.
77 * elf32-ppc.c (ppc_elf_relax_section): Formatting.
78
ccba357f
AM
792004-03-16 Alan Modra <amodra@bigpond.net.au>
80
81 * configure.in (HOST_64BIT_TYPE, HOST_U_64BIT_TYPE): Don't override
82 values selected in configure.host. Require both to be defined
83 before setting BFD_HOST_64_BIT_DEFINED. Protect assignment to
84 corresponding BFD_HOST vars with quotes.
85 <${host64}-${target64}-${want64} in *true*>: Don't exempt gcc;
86 Always require BFD_HOST_64_BIT_DEFINED.
87 <file_ptr type>: Find off_t size before emitting message. Combine
88 off_t and ftello64 conditional.
89 * configure: Regenerate.
90
41978308
AM
912004-03-16 Alan Modra <amodra@bigpond.net.au>
92
93 * elf32-m32r.c (m32r_elf_create_dynamic_sections): Fix pointer
94 aliasing warning. Remove trailing whitespace throughout file.
95
d63b5ed9
DA
962004-03-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
97
98 * elf-hppa.h (elf_hppa_relocate_section): Pass input_bfd instead of
99 input_section in calls to get_dyn_name.
100 * elf64-hppa.c (get_dyn_name): Change type of first argument to "bfd *". Use section id of first section in input BFD to build dynamic name for
101 local symbols.
102 (elf64_hppa_check_relocs): Pass abfd in call to get_dyn_name.
103
8ce8c090
AM
1042004-03-15 Alan Modra <amodra@bigpond.net.au>
105
106 * bfd-in.h (bfd_int64_t, bfd_uint64_t): New types.
107 (BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Don't define here.
108 (bfd_getb64, bfd_getl64, bfd_get_bits): Return bfd_uint64_t.
109 (bfd_getb_signed_64, bfd_getl_signed_64): Return bfd_int64_t.
110 (bfd_putb64, bfd_putl64, bfd_put_bits): Accept bfd_uint64_t.
111 * configure.in (HOST_U_64BIT_TYPE): Set when sizeof long is 8.
112 (BFD_HOST_64_BIT_DEFINED, BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Set
113 when using long.
114 * libbfd.c (EIGHT_GAZILLION, COERCE64): Use bfd_int64_t.
115 (bfd_getb64): Return bfd_uint64_t. Enable when BFD_HOST_64_BIT.
116 (bfd_getl64, bfd_getb_signed_64, bfd_getl_signed_64): Likewise.
117 (bfd_putb64): Accept bfd_uint64_t. Enable when BFD_HOST_64_BIT.
118 (bfd_putl64, bfd_put_bits, bfd_get_bits): Likewise.
119 * dwarf2.c (struct attribute): Use bfd_int64_t and bfd_uint64_t.
120 (read_8_bytes, read_indirect_string, read_address): Likewise.
121 (read_abbrevs, parse_comp_unit): Likewise.
122 * targets.c (struct bfd_target): Likewise.
123 * aix386-core.c (NO_GET64, NO_PUT64, NO_GETS64): Define and use.
124 * hppabsd-core.c: Likewise. Formatting.
125 * hpux-core.c: Likewise.
126 * irix-core.c: Likewise.
127 * netbsd-core.c: Likewise.
128 * osf-core.c: Likewise.
129 * ptrace-core.c: Likewise.
130 * sco5-core.c: Likewise.
131 * trad-core.c: Likewise.
132 * configure: Regenerate.
133 * bfd-in2.h: Regenerate.
134
edeb6e24
AM
1352004-03-15 Alan Modra <amodra@bigpond.net.au>
136
137 * bfd-in.h (bfd_getb64, bfd_getl64): Replace bfd_byte* with void*.
138 (bfd_getb32, bfd_getl32, bfd_getb16, bfd_getl16): Likewise.
139 (bfd_getb_signed_64, bfd_getl_signed_64): Likewise.
140 (bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
141 (bfd_getb_signed_16, bfd_getl_signed_16): Likewise.
142 (bfd_putb64, bfd_putl64, bfd_putb32, bfd_putl32): Likewise.
143 (bfd_putb16, bfd_putl16, bfd_get_bits, bfd_put_bits): Likewise.
144 * libbfd.c: Likewise in function definitions.
145 (bfd_put_8): Mask with 0xff rather than casting to char.
146 (bfd_putb16, bfd_putl16, bfd_putb32, bfd_putl32): Likewise.
147 (bfd_putb64, bfd_putl64, bfd_put_bits): Likewise.
148 (H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8): Remove casts, simplify.
149 (H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8): Likewise.
150 (H_GET_64, H_GET_32, H_GET_16, H_GET_8): Likewise.
151 (H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Likewise.
152 * libaout.h (H_PUT_64 H_PUT_32, H_PUT_16): Remove casts, simplify.
153 (H_PUT_S64, H_PUT_S32, H_PUT_S16): Likewise.
154 (H_GET_64, H_GET_32, H_GET_16): Likewise.
155 (H_GET_S64, H_GET_S32, H_GET_S16): Likewise.
156 * archive.c (do_slurp_coff_armap): Update swap prototype.
157 * coff-tic54x.c (tic54x_getl32): Replace bfd_byte* with void*.
158 (tic54x_getl_signed_32): Likewise.
159 (tic54x_putl32): Likewise. Mask with 0xff rather than casting to char.
160 * mach-o.c (bfd_mach_o_read_header): Update get32 prototype.
161 * pdp11.c (bfd_getp32): Make static, replace bfd_byte* with void*.
162 (bfd_getp_signed_32, bfd_putp32): Likewise.
163 * targets.c (struct bfd_target): Use void* in place of bfd_byte* for
164 bfd_getx64, bfd_getx_signed_64, bfd_putx64, bfd_getx32,
165 bfd_getx_signed_32, bfd_putx32, bfd_getx16, bfd_getx_signed_16,
166 bfd_putx16, bfd_h_getx64, bfd_h_getx_signed_64, bfd_h_putx64,
167 bfd_h_getx32, bfd_h_getx_signed_32, bfd_h_putx32, bfd_h_getx16,
168 bfd_h_getx_signed_16, bfd_h_putx16.
169 * aix386-core.c (NO_GET, NO_GETS, NO_PUT): Update prototypes.
170 * hppabsd-core.c: Similarly. Rename NO_SIGNED_GET to NO_GETS.
171 * hpux-core.c: Likewise.
172 * irix-core.c: Likewise.
173 * netbsd-core.c: Likewise.
174 * osf-core.c: Likewise.
175 * ptrace-core.c: Likewise.
176 * sco5-core.c: Likewise.
177 * trad-core.c: Likewise.
178 * bfd-in2.h: Regenerate.
179
c1b954e2
AM
1802004-03-15 Matt Thomas <matt@3am-software.com>
181
182 * config.bfd: Add x86-64 vector to NetBSD/i386 if 64bit BFD is
183 selected.
184
85cfd8d3
MK
1852004-03-13 Mark Kettenis <kettenis@gnu.org>
186
187 * config.bfd: Add x86_64-*-openbsd*.
188 * configure.in (x86_64-*-openbsd*): Set COREFILE to
189 netbsd-core.lo.
190 * configure: Regenerate.
191
d1f161ea
NC
1922004-03-12 Nick Clifton <nickc@redhat.com>
193 Dave Murphy <wintermute2k4@ntlworld.com>
c1b954e2 194
d1f161ea
NC
195 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Skip most checks
196 if the input bfd does not contain any code.
197
8b6f2683
JW
1982004-03-09 Steve Ellcey <sje@cup.hp.com>
199
200 * elfxx-ia64.c (plt_full_entry): Change ld8 to ld8.acq.
201
79cda7cf
FF
2022004-03-05 Fred Fish <fnf@redhat.com>
203
204 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Just force
205 mips16 symbols to be even rather than testing first for even/odd.
206 (_bfd_mips_elf_link_output_symbol_hook): Ditto.
207
e5caec89
NS
2082004-03-05 Nathan Sidwell <nathan@codesourcery.com>
209
210 * elf.c (map_sections_to_segments): Ignore .tbss sections for
211 layout purposes.
212
02bb6eae
AO
2132004-03-03 Alexandre Oliva <aoliva@redhat.com>
214
215 * elflink.c (bfd_elf_record_link_assignment): Mark undefweak and
216 undefined symbols as hash_new.
217
ae51a426
JR
2182003-03-03 Andrew Stubbs <andrew.stubbs@superh.com>
219
220 * archures.c: Add bfd_mach_sh4_nommu_nofpu.
221 * cpu-sh.c: Ditto.
222 * elf32-sh.c: Ditto.
223 * bfd-in2.h: Regenerate.
224
3b712a1a
AO
2252004-03-02 Alexandre Oliva <aoliva@redhat.com>
226
227 * elf32-frv.c (struct frv_pic_relocs_info): Added fixups and
228 dynrelocs.
229 (_frv_count_got_plt_entries): Initialize them.
230 (frv_pic_relocs_info_find): Add insert argument. Adjust all
231 callers.
232 (frv_pic_relocs_info_for_global): Likewise.
233 (frv_pic_relocs_info_for_local): Likewise.
234 (frv_pic_merge_early_relocs_info): New.
235 (_frv_resolve_final_relocs_info): Use it in case one entry maps to
236 another.
237 (_frv_add_dyn_reloc): Add entry argument. Adjust all callers.
238 Check that we don't exceed the allocated count for entry.
239 (_frv_add_rofixup): Likewise.
240 (_frv_emit_got_relocs_plt_entries): Adjust for coding standards.
241 (elf32_frv_finish_dynamic_sections): Improve error message in case
242 we emit too few rofixup entries.
243
676a64f4
RS
2442004-03-01 Richard Sandiford <rsandifo@redhat.com>
245
246 * archures.c (bfd_mach_fr450): New.
247 * bfd-in2.h: Regenerate.
248 * cpu-frv.c (arch_info_450): New bfd_arch_info_type.
249 (arch_info_500): Link to it.
250 * elf32-frv.c (elf32_frv_machine, frv_elf_merge_private_bfd_data)
251 (frv_elf_print_private_bfd_data): Handle fr405 and fr450 header flags.
252 (frv_elf_arch_extension_p): New function.
253 (frv_elf_merge_private_bfd_data): Use it.
254
0ad989f9
L
2552004-02-28 H.J. Lu <hongjiu.lu@intel.com>
256
257 * elf-bfd.h (_bfd_elf_link_add_archive_symbols): New prototype.
258
259 * elflink.h (is_global_data_symbol_definition): Moved to
260 elflink.c.
261 (elf_link_is_defined_archive_symbol): Likewise.
262 (elf_link_add_archive_symbols): Likewise. Renamed to
263 _bfd_elf_link_add_archive_symbols.
264
265 * elflink.c (elf_link_is_defined_archive_symbol): Get the size
266 of ELF symbol table entry from backend.
267 (_bfd_elf_link_add_archive_symbols): Call bfd_link_add_symbols
268 instead of elf_link_add_object_symbols.
269
ec3391e7
AO
2702004-02-27 Alexandre Oliva <aoliva@redhat.com>
271
272 * elf-bfd.h (struct elf_backend_data): Added
273 elf_backend_can_make_relative_eh_frame,
274 elf_backend_can_make_lsda_relative_eh_frame and
275 elf_backend_encode_eh_address.
276 (_bfd_elf_encode_eh_address): Declare.
277 (_bfd_elf_can_make_relative): Declare.
278 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use new
279 hooks to decide whether to attempt to make_relative and
280 make_lsda_relative.
281 (_bfd_elf_write_section_eh_frame_hdr): Call encode_eh_address.
282 (_bfd_elf_can_make_relative): New.
283 (_bfd_elf_encode_eh_address): New.
284 * elf32-frv.c (frv_elf_use_relative_eh_frame): New.
285 (frv_elf_encode_eh_address): New.
286 (elf_backend_can_make_relative_eh_frame): Define.
287 (elf_backend_can_make_lsda_relative_eh_frame): Define.
288 (elf_backend_encode_eh_address): Define.
289 * elfxx-target.h
290 (elf_backend_can_make_relative_eh_frame): Define.
291 (elf_backend_can_make_lsda_relative_eh_frame): Define.
292 (elf_backend_encode_eh_address): Define.
293 (elfNN_bed): Add them.
294
e6deed0a
AO
2952004-02-27 Alexandre Oliva <aoliva@redhat.com>
296
297 * elf32-frv.c (elf32_frv_howto_table) <R_FRV_LABEL16>: Set
298 complain_on_overflow to signed.
299
b60d7a1a
L
3002004-02-27 H.J. Lu <hongjiu.lu@intel.com>
301
302 * elflink.h (sort_symbol): New.
303 (elf_link_add_object_symbols): Use a sorted symbol array for
304 weakdef.
305
1c3ff0f2
MS
3062004-02-27 Jakub Jelinek <jakub@redhat.com>
307
308 * elf32-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL
309 for pc relative relocs.
310 (elf_s390_relocate_section): Likewise.
311 * elf64-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL
312 for pc relative relocs.
313 (elf_s390_relocate_section): Likewise.
314
de9811af
L
3152004-02-26 H.J. Lu <hongjiu.lu@intel.com>
316
317 * elfxx-ia64.c (elfNN_ia64_check_relocs): Fix call to
318 count_dyn_reloc.
319
ac33696c
L
3202004-02-25 H.J. Lu <hongjiu.lu@intel.com>
321
322 * elfxx-ia64.c (elfNN_ia64_dyn_reloc_entry): Add the reltext.
323 field to track if a relocation is against readonly section.
324 (count_dyn_reloc): Take a new argument for rent->reltext.
325 (elfNN_ia64_check_relocs): Adjust call to count_dyn_reloc.
326 (get_reloc_section): Don't set ia64_info->reltext here.
327 (allocate_dynrel_entries): Set ia64_info->reltext here.
328
072c8903
AO
3292004-02-24 Alexandre Oliva <aoliva@redhat.com>
330
331 * elf32-frv.c (FRV_SYM_LOCAL): Weak undefined doesn't imply local.
332 (_frv_emit_got_relocs_plt_entries): Decay relocation to protected
333 function's descriptor to symbol+offset, and map local undefweak
334 symbol to NULL function descriptor.
335 (elf32_frv_relocate_section): Likewise.
336
aca305d9
NC
3372004-02-23 Mark Kettenis <kettenis@gnu.org>
338
339 * libaout.h (enum machine_type): Add M_SPARC64_NETBSD and
340 M_X86_64_NETBSD.
341 * netbsd-core.c (M_SPARC64_OPENBSD): Define.
342 (netbsd_core_file_p): Set architecture from machine ID for
343 selected machines.
344
646411fb
JJ
3452004-02-23 Jakub Jelinek <jakub@redhat.com>
346
347 * elflink.h (size_dynamic_sections): If not adding DT_FLAGS and
348 DF_BIND_NOW is set in info->flags, create DT_BIND_NOW dynamic entry.
349
1de1a317
L
3502004-02-21 H.J. Lu <hongjiu.lu@intel.com>
351
352 * elflink.c (_bfd_elf_merge_symbol): Properly handle undefined
353 symbols with non-default visibility.
354
3c9d0484
DS
3552004-02-21 Danny Smith <daanysmith@users.sourceforge.net>
356
357 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Clear
358 IMAGE_SCN_MEM_WRITE on known sections only.
359
a876ecf9
JJ
3602004-02-20 Jakub Jelinek <jakub@redhat.com>
361
362 * elf32-ppc.c (allocate_dynrelocs): Create dynsym for undef weak
363 symbols used in PIE relocs.
364
a8a6d7ce
JJ
3652004-02-19 Jakub Jelinek <jakub@redhat.com>
366
367 * elf32-sparc.c (elf32_sparc_finish_dynamic_sections): Clear
368 .plt sh_entsize.
369
d080fcd2
DJ
3702004-02-18 Daniel Jacobowitz <drow@mvista.com>
371
372 * configure.in: Update version to 2.15.90.
373 * configure: Regenerate.
374
d25aed71 3752004-02-17 Daniel Jacobowitz <drow@mvista.com>
c1b954e2 376 Richard Sandiford <rsandifo@redhat.com>
d25aed71
RS
377
378 * elfxx-mips.c (mips_elf_calculate_relocation): Use
379 _bfd_elf_symbol_refs_local_p to decide whether to decay
380 a GOT_PAGE/GOT_OFST pair to GOT_DISP/addend.
381 (_bfd_mips_elf_check_relocs): Add a global GOT entry for GOT_PAGE
382 relocs if the symbol wasn't defined by a regular object file.
383 Don't check the symbol's dynindx.
384
d7ce59e3
AC
3852004-02-16 Andrew Cagney <cagney@redhat.com>
386
387 * bfd-in.h (file_ptr, ufile_ptr): Configure type using
388 @bfd_file_ptr@.
389 * bfd-in2.h: Re-generate.
390
ca0b7686
AC
3912004-02-14 Andrew Cagney <cagney@redhat.com>
392
393 * configure.host (HDEFINES): When hppa*-*-hpux*, define
394 _LARGEFILE64_SOURCE.
395
340b6d91
AC
3962004-02-13 Andrew Cagney <cagney@redhat.com>
397
398 * elf.c (vma_page_aligned_bias): New function.
399 (assign_file_positions_except_relocs)
400 (assign_file_positions_for_segments): Replace broken modulo
401 arithmetic with call to vma_page_aligned_bias.
402
1012372a
AC
4032004-02-11 Andrew Cagney <cagney@redhat.com>
404
7c192733
AC
405 * bfd-in.h: Update copyright.
406 (bfd_tell): Change return type to file_ptr.
407 * bfd-in2.h: Re-generate.
408 * cache.c: Update copyright.
409 (bfd_cache_lookup_worker): Use real_fseek, do not cast offset
410 parameter.
411 (close_one): Use real_ftell.
412 * bfdio.c: Update copyright.
413 (real_ftell, real_fseek): New functions.
414 (bfd_tell): Use real_fseek and real_ftell, change return type to
415 file_ptr.
416 (bfd_seek): Use real_ftell and real_fseek, change type of
417 file_position to a file_ptr.
418 * libbfd-in.h: Update copyright.
419 (real_ftell, real_fseek): Declare.
420 * libbfd.h: Re-generate.
421
1012372a
AC
422 * configure.in (AC_CHECK_FUNCS): Check for ftello, ftello64,
423 fseeko and fseeko64. Determine bfd_file_ptr.
424 * configure: Re-generate.
c1ea0c09 425 * config.in: Re-generate.
c1b954e2 426
3255318a
NC
4272004-02-09 Anil Paranjpe <anilp1@KPITCummins.com>
428
429 * coff-h8300.c: Added comments about relaxation for ldc.w and stc.w.
430 * elf32-h8300.c: Likewise.
431
0d5f9994
NC
4322004-02-09 Christian Vogel <vogelchr@vogel.cx>
433 Nick Clifton <nickc@redhat.com>
434
435 * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Catch
436 GOT entries with no associated GOT subsection.
437
174fd7f9
RS
4382004-02-09 Richard Sandiford <rsandifo@redhat.com>
439
440 * bfd-elf.h (elf_backend_name_local_section_symbols): New hook.
441 * elf.c (swap_out_syms): Use it to decide whether local section
442 symbols should be named.
443 * elfxx-target.h (elf_backend_name_local_section_symbols): New macro.
444 * elfxx-mips.h (_bfd_mips_elf_name_local_section_symbols): Declare.
445 (elf_backend_name_local_section_symbols): Define.
446 * elfxx-mips.c (_bfd_mips_elf_name_local_section_symbols): New.
447
03609792
L
4482004-01-30 H.J. Lu <hongjiu.lu@intel.com>
449
450 * elfxx-ia64.c (elfNN_ia64_relax_brl): New function.
451 (elfNN_ia64_relax_section): Optimize brl to br during the relax
452 finalize pass.
453
ea01195e
AO
4542004-01-30 Alexandre Oliva <aoliva@redhat.com>
455
456 * elf32-frv.c (elf32_frv_always_size_sections): Initialize pointer
457 to bfd_link_hash_entry passed by reference to
458 _bfd_generic_link_add_one_symbol.
459
838e70c5
L
4602004-01-25 H.J. Lu <hongjiu.lu@intel.com>
461
462 * elfxx-ia64.c (elfNN_ia64_relocate_section): Disallow imm
463 relocations against dynamic symbols.
464
4f199be3
DJ
4652004-01-23 Daniel Jacobowitz <drow@mvista.com>
466
467 * elf32-arm.h (elf32_arm_check_relocs): Revert part of 2004-01-13
468 change.
469
28d39d1a
NC
4702004-01-21 Tom Rix <tcrix@worldnet.att.net>
471
472 * reloc.c: New 5 bit reloc, BFD_RELOC_M68HC12_5B, for m68hc12 movb/movw.
473 * bfd-in2.h, libbfd.h: Rebuilt.
474
66bed356
DS
4752004-01-20 Danny Smith <dannysmith@users.sourceforge.net>
476
477 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Don't remove
478 IMAGE_SCN_MEM_WRITE flag from .text section if WP_TEXT
479 flag has been cleared.
480
7e89635a
KH
4812004-01-19 Kazu Hirata <kazu@cs.umass.edu>
482
483 * coff-h8300.c: Add and adjust comments about relaxation.
484 * elf32-h8300.c: Likewise.
485
e804e836
KH
4862004-01-16 Kazu Hirata <kazu@cs.umass.edu>
487
488 * coff-h8300.c: Fix comment typos.
489 * elf32-h8300.c: Likewise.
490
630a7b0a
KH
4912004-01-16 Kazu Hirata <kazu@cs.umass.edu>
492
493 * coff-h8300.c: Add comments about relaxation.
494 * elf32-h8300.c: Likewise.
495
f8b73030
MR
4962004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
497
498 * acinclude.m4: Quote names of macros to be defined by AC_DEFUN
499 throughout.
500 * aclocal.m4: Regenerate.
501 * configure: Regenerate.
502
32159579
ILT
5032004-01-13 Ian Lance Taylor <ian@wasabisystems.com>
504
505 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Call
506 mips_elf64_rtype_to_howto instead of using howto_table.
507
c84cd8ee
DJ
5082004-01-13 Daniel Jacobowitz <drow@mvista.com>
509
510 * elf32-arm.h (elf32_arm_final_link_relocate): Check that we created
511 the .plt section.
512 (elf32_arm_check_relocs): Don't increment the PLT refcount for
513 relocs which would not use the PLT.
514
680a3378
AM
5152004-01-13 Alan Modra <amodra@bigpond.net.au>
516
517 * elf64-ppc.c (ppc64_elf_check_relocs): Ignore !SEC_ALLOC relocs.
518 (ppc64_elf_gc_sweep_hook): Likewise.
519 (ppc64_elf_size_dynamic_sections): Test for .plt directly.
520
faca21e5
NC
5212004-01-12 Anil Paranjpe <anilp1@KPITCummins.com>
522
523 Adds linker relaxation support for bit manipulation insns like
680a3378 524 band, bclr, biand, bild, bior, bist, bixor, bld, bnot, bor, bset,
faca21e5 525 bst, btst, bxor.
680a3378 526 * elf32-h8300.c: Opcode for bit manipulation insn is checked in
faca21e5 527 elf32_h8_relax_section function while relxation for aa:16 and aa:32.
680a3378 528 * coff-h8300.c: Opcode for bit manipulation insn is checked in
faca21e5
NC
529 h8300_reloc16_extra_cases function while relxation for aa:16 and aa:32.
530
818a27ac
AM
5312004-01-12 Alan Modra <amodra@bigpond.net.au>
532
533 * dwarf2.c: Convert to C90, remove unneeded casts and prototypes.
534
96ef1419
KH
5352004-01-11 Kazu Hirata <kazu@cs.umass.edu>
536
537 * elf32-h8300.c: Fix formatting.
538
babfd660
KH
5392004-01-11 Kazu Hirata <kazu@cs.umass.edu>
540
541 * elf32-cris.c (cris_elf_gc_sweep_hook): Return early if no
542 dynamic object is present. Declare r_symndx and h in an inner
543 scope.
544 * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
545
7359ea65
DJ
5462004-01-09 Daniel Jacobowitz <drow@mvista.com>
547
548 * elf32-arm.h (struct elf32_arm_relocs_copied): Remove pc_count.
549 (elf32_arm_copy_indirect_symbol): Don't copy pc_count.
550 (elf32_arm_final_link_relocate): Handle PLT32 and PC24 relocs
551 identically. Do not emit PC24 relocations for shared libraries.
552 (elf32_arm_gc_sweep_hook): Handle PLT32 and PC24 relocs
553 identically. Don't adjust pc_count.
554 (elf32_arm_check_relocs): Handle PLT32 and PC24 relocs identically.
555 Set ELF_LINK_HASH_NEEDS_PLT for both. Don't adjust pc_count; don't
556 adjust count for branch relocations.
557 (allocate_dynrelocs): Correct typo in call to
558 WILL_CALL_FINISH_DYNAMIC_SYMBOL. Never allocate space for
559 PC24 or PLT32 relocs when linking.
560
44e88952
NC
5612004-01-09 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru>
562
563 * coff-arm.c (aoutarm_std_reloc_howto): [ARM_WINCE] Synchronize ARM_26D
564 relocation howto with ARM_26 one for consistency.
565 (coff_arm_relocate_section): Set partial_inplace for ARM_26 relocations
566 that will be converted to ARM_26D ones, since we always want 'done'
567 relocations to be reflected in section's data.
568 (coff_arm_relocate_section): [ARM_WINCE] Quick fix for BL instruction
569 offset.
570 (_bfd_final_link_relocate): Do not modify "inplace" data, if not
571 requested.
572
1e7fef1d
NC
5732004-01-08 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru>
574
575 * coff-arm.c (coff_arm_relocate_section): Do not alter relocs that
576 are not partial_inplace during a relocatable link.
577
4f075348
KH
5782004-01-08 Kazu Hirata <kazu@cs.umass.edu>
579
babfd660 580 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return early
4f075348
KH
581 if no dynamic object is present. Declare r_symndx and h in an
582 inner scope.
583
de0d9f33
L
5842004-01-07 H.J. Lu <hongjiu.lu@intel.com>
585
586 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't install
587 trampoline if it is known out of range.
588
51532845
AO
5892004-01-06 Alexandre Oliva <aoliva@redhat.com>
590
591 2003-12-17 Alexandre Oliva <aoliva@redhat.com>
592 * elf32-frv.c (_frv_osec_readonly_p): New.
593 (_frv_emit_got_relocs_plt_entries): Don't emit rofixup for
594 undefweak symbol.
595 (_frv_count_got_plt_entries): Adjust expected count accordingly.
596 (elf32_frv_relocate_section): Likewise. Error out if attempting
597 to emit rofixups or dynamic relocs in read-only segments. Use
598 _bfd_elf_section_offset to adjust r_offsets in rofixups and
599 dynamic relocations.
600 2003-12-12 Alexandre Oliva <aoliva@redhat.com>
601 * elf32-frv.c (elf32_frv_relocate_section): Compute dynamic
602 relocations or fixups involving merged sections correctly. Avoid
603 crash when undefined symbol is referenced by R_FRV_32 or
604 R_FRV_FUNCDESC_VALUE.
605 2003-12-02 Alexandre Oliva <aoliva@redhat.com>
606 * elf32-frv.c (elf32_frv_relocate_section): Add output_offset of
607 input section holding local symbol to addend of R_FRV_32 or
608 R_FRV_FUNCDESC_VALUE dynamic relocation.
609 2003-11-27 Alexandre Oliva <aoliva@redhat.com>
610 * elf32-frv.c (elf32_frv_modify_segment_map): Add link info arg.
611 (elf32_frv_always_size_sections): Don't store pointer to
612 __stacksize symbol in sec_info.
613 (elf32_frv_modify_segment_map): Look it up here.
614 2003-11-26 Alexandre Oliva <aoliva@redhat.com>
615 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Emit the address
616 of the lazy PLT entry, not only its offset, as the low word of a
617 function descriptor.
618 2003-11-10 Alexandre Oliva <aoliva@redhat.com>
619 * elf32-frv.c (elf32_frv_always_size_sections): Define __stacksize
620 if a hash table entry already exists but is not a definition.
621 2003-11-05 Alexandre Oliva <aoliva@redhat.com>
622 * elf32-frv.c (frv_elf_link_hash_table_create): Use bfd_zalloc.
623 (_frv_add_rofixup): Don't inline.
624 (_frv_emit_got_relocs_plt_entries): Use NULL as funcdesc address
625 for undefweak symbols.
626 (elf32_frv_relocate_section): Avoid crash while computing
627 relocation when linking with shared library. Only emit rofixups
628 and dynamic relocations for alloc&load sections. Mark binaries
629 with inter-segment relocations for relocation as a unit.
630 (_frv_create_got_section): Rename .rofixup.got to .rofixup.
631 (DEFAULT_STACK_SIZE): New.
632 (_frv_count_got_plt_entries): Fix thinko in deciding whether to
633 emit rofixups or dynamic relocs when linking dynamic non-PIE
634 executables.
635 (elf32_frv_size_dynamic_sections): Generate rofixup on PIEs and
636 shared libs too. Reserve the last entry for the GOT pointer.
637 (elf32_frv_finish_dynamic_sections): Emit it.
638 (elf32_frv_always_size_sections): New.
639 (elf32_frv_modify_segment_map): New.
640 (elf32_frv_check_relocs): Reserve relocs32 space only in ALLOC
641 sections.
642 (frv_elf_merge_private_bfd_data): Clear PIC bit if FDPIC is set.
643 (frv_elf_print_private_bfd_data): Handle FDPIC and LIBPIC.
644 (elf_backend_always_size_sections): New.
645 (elf_backend_modify_segment_map): New.
646 2003-10-31 Alexandre Oliva <aoliva@redhat.com>
647 * config.bfd: Added frv-*-*linux*.
648 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Use idx 0 for
649 ABS section, instead of crashing.
650 (elf32_frv_relocate_section): Don't crash before warning about
651 different segments in non-PIC relocation.
652 2003-10-17 Alexandre Oliva <aoliva@redhat.com>
653 * elf32-frv.c (elf32_frv_relocate_section): Don't warn on LABEL24
654 relocs to undefweak symbols.
655 (elf32_frv_relocate_section): Ditto for undefined symbols.
656 2003-10-06 Alexandre Oliva <aoliva@redhat.com>
657 * elf32-frv.c (elf32_frv_create_dynamic_sections): Make sure
658 gotfixup section was created.
659 2003-09-30 Alexandre Oliva <aoliva@redhat.com>
660 * elf32-frv.c (elf32_frv_howto_table): Change GOT12,
661 FUNCDESC_GOT12, GOTOFF12 and FUNCDESC_GOTOFF12 to
662 complain_overflow_signed.
663 * elf32-frv.c (_frv_add_rofixup): Do not error out if contents
664 have not been allocated.
665 (_frv_emit_got_relocs_plt_entries): Return non-void. Assert
666 privfd only if dynamic sections were created.
667 (elf32_frv_relocate_section): Compute gprel_segment, and use it
668 for GPREL relocs. When linking relocatable FDPIC executables,
669 emit warnings for relocations that would be illegal on PIE or
670 shared libraries. Emit rofixup for R_FRV_32 only if input object
671 is not FDPIC.
672 (_frv_create_got_section): Define _gp symbol in the rofixup
673 section.
674 (elf32_frv_finish_dynamic_sections): If rofixups needed but
675 dynamic sections missing, error out requesting -melf32frvfd.
676 2003-09-19 Alexandre Oliva <aoliva@redhat.com>
677 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Rearrange
678 computation of addends from section and global or local symbol
679 value. Change return type to bfd_boolean, and return a failure if
680 a dynamic FUNCDESC or FUNCDESC_VALUE relocation that requires a
681 nonzero addend is required.
682 (elf32_frv_relocate_section): Likewise. Print error for
683 unsupported nonzero addends.
684 2003-09-18 Alexandre Oliva <aoliva@redhat.com>
685 * elf32-frv.c (FRV_SYM_LOCAL): In the absence of dynamic sections,
686 force everything local.
687 (_frv_emit_got_relocs_plt_entries): Cope with NULL sec.
688 * elf32-frv.c (struct frv_elf_link_hash_table): Added sgotfixup.
689 (frv_gotfixup_section): New.
690 (FRV_SYM_LOCAL): Accept undefweak and local common symbols.
691 (struct frv_pic_relocs_info): Split relocs into relocs32, relocsfd
692 and relocsfdv.
693 (_frv_add_rofixup): New.
694 (_frv_emit_got_relocs_plt_entries): Generate fixups for non-PIE
695 fdpic executables. Use FRV_SYM_LOCAL more widely to simplify and
696 improve some ugly conditions.
697 (elf32_frv_relocate_section): Likewise. Reject inter-segment
698 relocations in fdpic.
699 (_frv_create_got_section): Create .rofixup.got section.
700 (struct _frv_dynamic_got_info): Added fixups.
701 (_frv_count_got_plt_entries): Account in-GOT relocations into
702 relocs32, relocsfd and relocsfdv. Account them into relocs or
703 fixups, as appropriate.
704 (elf32_frv_size_dynamic_sections): Size rofixup section. Simplify
705 sizing of gotrel.
706 (elf32_frv_finish_dynamic_sections): Verify that the right number
707 of relocations and fixups was generated.
708 (elf32_frv_check_relocs): Compute relocs32, relocsfd and
709 relocsfdv.
710 * elf32-frv.c (FRV_SYM_LOCAL): New macro, used instead of
711 SYMBOL_CALLS_LOCAL and SYMBOL_REFERENCES_LOCAL.
712 (FRV_FUNCDESC_LOCAL): New macro, used to decide whether a function
713 descriptor of a (formerly-)global symbol is local.
714 (struct frv_pic_relocs_info): Adjust comments.
715 (_frv_emit_got_relocs_plt_entries): Adjust.
716 (elf32_frv_relocate_section): Likewise.
717 (_frv_count_got_plt_entries): Likewise.
718 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Don't add global
719 symbol's value to addend in the common preamble. Decay dynamic
720 symbols to section+offset if they bind or call locally, for GOT
721 and FUNCDESC_VALUE, respectively.
722 (elf32_frv_relocate_section): Likewise.
723 (elf32_frv_check_relocs): Don't register as dynamic symbols of
724 internal or hidden visibility.
725 2003-09-17 Alexandre Oliva <aoliva@redhat.com>
726 * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Get addend as
727 argument, so as to not call _bfd_elf_rel_local_sym to compute it.
728 (elf32_frv_relocate_section): Pass relocation addend in. Use
729 original relocation addend to look up the got relocs/plt entries
730 table. Do not call _bfd_elf_rel_local_sym. Don't error out when
731 processing relocations that reference .scommon symbols.
732 2003-09-15 Alexandre Oliva <aoliva@redhat.com>
733 Introduce support for dynamic linking.
734 * elf32-frv.c (R_FRV_FUNCDESC_VALUE): Mark it as 64 bits.
735 (elf32_frv_rel_32_howto, elf32_frv_rel_funcdesc_howto,
736 elf32_frv_rel_funcdesc_value_howto): New REL descriptors.
737 (frv_reloc_type_lookup): Return REL howtos for executables and
738 dynamic libraries.
739 (frv_info_to_howto_rel): New.
740 (struct frv_elf_link_hash_table): New.
741 (frv_hash_table, frv_got_section, frv_gotrel_section,
742 frv_plt_section, frv_pltrel_section, frv_relocs_info,
743 frv_got_initial_offset, frv_plt_initial_offset): New macros.
744 (frv_elf_link_hash_table_create): New.
745 (struct frv_pic_relocs_info): New.
746 (frv_pic_relocs_info_hash, frv_pic_relocs_info_eq): New.
747 (frv_pic_relocs_info_find): New.
748 (frv_pic_relocs_info_for_global, frv_pic_relocs_info_for_local):
749 New.
750 (FRV_LZPLT_BLOCK_SIZE, FRV_LZPLT_RESOLVE_LOC): New.
751 (_frv_add_dyn_reloc, _frv_osec_to_segment): New.
752 (_frv_emit_got_relocs_plt_entries): New.
753 (elf32_frv_relocate_section): Add support for dynamic linking.
754 Handle new relocations.
755 (_frv_create_got_section): New.
756 (elf32_frv_create_dynamic_sections): New.
757 (ELF_DYNAMIC_INTERPRETER): New.
758 (struct _frv_dynamic_got_info): New.
759 (_frv_count_got_plt_entries): New.
760 (struct _frv_dynamic_got_plt_info): New.
761 (_frv_compute_got_alloc_data): New.
762 (_frv_get_got_entry, _frv_get_fd_entry): New.
763 (_frv_assign_got_entries, _frv_assign_plt_entries): New.
764 (_frv_resolve_final_relocs_info): New.
765 (elf32_frv_size_dynamic_sections): New.
766 (elf32_frv_finish_dynamic_sections): New.
767 (elf32_frv_adjust_dynamic_symbol): New.
768 (elf32_frv_finish_dynamic_symbol): New.
769 (elf32_frv_check_relocs): Handle new relocs. Explain how the
770 whole thing works.
771 (elf_info_to_howto_rel): Define.
772 (bfd_elf32_bfd_link_hash_table_create): Define.
773 (elf_backend_create_dynamic_sections): Define.
774 (elf_backend_adjust_dynamic_symbol): Define.
775 (elf_backend_size_dynamic_sections): Define.
776 (elf_backend_finish_dynamic_symbol): Define.
777 (elf_backend_finish_dynamic_sections): Define.
778 (elf_backend_want_got_sym): Define.
779 (elf_backend_got_header_size): Define.
780 (elf_backend_want_got_plt): Define.
781 (elf_backend_plt_readonly): Define.
782 (elf_backend_want_plt_sym): Define.
783 (elf_backend_plt_header_size): Define.
784 (elf_backend_may_use_rel_p): Define.
785 (elf_backend_may_use_rela_p): Define.
786 (elf_backend_default_use_rela_p): Define.
787 2003-08-08 Alexandre Oliva <aoliva@redhat.com>
788 * elf32-frv.c (R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12,
789 R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12,
790 R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New.
791 (frv_reloc_map): Map the corresponding BFD relocs to them.
792 (frv_reloc_type_lookup): ... and back to BFD relocs.
793 * reloc.c: New relocs.
794 * bfd-in2.h, libbfd.h: Rebuilt.
795 2003-08-04 Alexandre Oliva <aoliva@redhat.com>
796 * elf32-frv.c (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO,
797 R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI,
798 R_FRV_FUNCDESC_GOTLO): New.
799 (frv_reloc_map): Map the corresponding BFD relocs to them.
800 (frv_reloc_type_lookup): ... and back to BFD relocs.
801 * reloc.c: New relocs.
802 * bfd-in2.h, libbfd.h: Rebuilt.
803
4301eeb1
MR
8042004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
805
806 * elf32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
807 targets to support pages of up to 64kB.
808 (elf32_bed): Redefine to get a separate backend data structure for
809 traditional targets.
810 * elf64-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
811 targets to support pages of up to 64kB.
812 (elf64_bed): Redefine to get a separate backend data structure for
813 traditional targets.
814 * elfn32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional
815 targets to support pages of up to 64kB.
816 (elf32_bed): Redefine to get a separate backend data structure for
817 traditional targets.
818
0647ed71
MK
8192004-01-04 Mark Kettenis <kettenis@gnu.org>
820
821 * elf32-sparc.c (elf32_sparc_grok_psinfo): New function.
822
61adc1a4
NC
8232004-01-02 Mark Kettenis <kettenis@gnu.org>
824
825 * elf32-i386.c (elf_i386_grok_prstatus): Add support for FreeBSD.
826 (elf_i386_grok_psinfo): Likewise.
827
b50c15dc
NC
8282004-01-02 Bernardo Innocenti <bernie@develer.com>
829
830 * config.bfd: Add m68k-uClinux target.
831
2627de83
AM
8322004-01-01 Grant Edwards <grante@visi.com>
833
834 * elflink.h (elf_gc_sections): Warn when gc-sections option is ignored.
835 * elf32-h8300.c (elf32_h8_gc_mark_hook): New function.
836 (elf32_h8_gc_sweep_hook): New function.
837 (elf_backend_gc_mark_hook): Define.
838 (elf_backend_gc_sweep_hook): Define.
839 (elf_backend_can_gc_sections): Define.
840
c9e214e5 841For older changes see ChangeLog-0203
56882138
AM
842\f
843Local Variables:
844mode: change-log
845left-margin: 8
846fill-column: 74
847version-control: never
848End:
This page took 0.252712 seconds and 4 git commands to generate.