Commit | Line | Data |
---|---|---|
555cd476 AM |
1 | 2004-03-26 Alan Modra <amodra@bigpond.net.au> |
2 | ||
3 | * elf64-ppc.c (elf_backend_add_symbol_hook): Define. | |
4 | (ppc64_elf_add_symbol_hook): New function. | |
5 | * elf-bfd.h (struct elf_backend_data <elf_add_symbol_hook>): Remove | |
6 | const from Elf_Internal_Sym param. | |
7 | * elflink.c (elf_link_add_object_symbols): Adjust. | |
8 | * elf-hppa.h (elf_hppa_add_symbol_hook): Adjust. | |
9 | * elf32-frv.c (elf32_frv_add_symbol_hook): Adjust. | |
10 | * elf32-i370.c (elf_backend_add_symbol_hook): Adjust. | |
11 | * elf32-m32r.c (m32r_elf_add_symbol_hook): Adjust. | |
12 | * elf32-m68hc1x.c (elf32_m68hc11_add_symbol_hook): Adjust. | |
13 | * elf32-m68hc1x.h (elf32_m68hc11_add_symbol_hook): Adjust. | |
14 | * elf32-ppc.c (ppc_elf_add_symbol_hook): Adjust. | |
15 | * elf32-sh64.c (sh64_elf_add_symbol_hook): Adjust. | |
16 | * elf32-v850.c (v850_elf_add_symbol_hook): Adjust. | |
17 | * elf64-alpha.c (elf64_alpha_add_symbol_hook): Adjust. | |
18 | * elf64-mmix.c (mmix_elf_add_symbol_hook): Adjust. | |
19 | * elf64-sh64.c (sh64_elf64_add_symbol_hook): Adjust. | |
20 | * elf64-sparc.c (sparc64_elf_add_symbol_hook): Adjust. | |
21 | * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Adjust. | |
22 | * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Adjust. | |
23 | * elfxx-mips.h (_bfd_mips_elf_add_symbol_hook): Adjust. | |
24 | ||
4ad4eba5 AM |
25 | 2004-03-26 Alan Modra <amodra@bigpond.net.au> |
26 | ||
27 | * elfxx-target.h (bfd_elfNN_bfd_link_add_symbols): Define. | |
28 | * elf-bfd.h (_bfd_elf_link_add_archive_symbols): Delete. | |
29 | (_bfd_elf_sort_symbol, _bfd_elf_add_dt_needed_tag): Delete. | |
30 | (_bfd_elf_finalize_dynstr, bfd_elf32_bfd_link_add_symbols): Delete. | |
31 | (bfd_elf64_bfd_link_add_symbols): Delete. | |
32 | (bfd_elf_link_add_symbols): Declare. | |
33 | * elfcode.h (elf_bfd_link_add_symbols): Delete. | |
34 | * elflink.c: Include safe-ctype.h. | |
35 | (elf_add_dt_needed_tag): Rename from _bfd_elf_add_dt_needed_tag, | |
36 | make static. | |
37 | (elf_sort_symbol): Rename from _bfd_elf_sort_symbol, make static. | |
38 | (elf_finalize_dynstr): Rename from _bfd_elf_finalize_dynstr, make | |
39 | static. | |
40 | (elf_link_add_archive_symbols): Rename from | |
41 | _bfd_elf_link_add_archive_symbols, make static. | |
42 | (elf_link_add_object_symbols): New function. Corresponding | |
43 | elflink.h function converted to use elf_size_info. | |
44 | (bfd_elf_link_add_symbols): Likewise. | |
45 | (bfd_elf_size_dynamic_sections): Adjust. | |
46 | * elflink.h (elf_bfd_link_add_symbols): Delete. | |
47 | (elf_link_add_object_symbols): Delete. | |
48 | * elf32-gen.c (elf32_generic_link_add_symbols): Call | |
49 | bfd_elf_link_add_symbols. | |
50 | * elf64-gen.c (elf64_generic_link_add_symbols): Likewise. | |
51 | ||
5a580b3a AM |
52 | 2004-03-25 Alan Modra <amodra@bigpond.net.au> |
53 | ||
54 | * elflink.h (elf_link_add_object_symbols): Add DT_NEEDED for as-needed | |
55 | and chained shared libs only if dynsym. Clear dynsym on forced-local. | |
56 | ||
57 | * elf-bfd.h (_bfd_elf_add_dynamic_entry): Declare. | |
58 | (bfd_elf32_add_dynamic_entry, bfd_elf64_add_dynamic_entry): Delete. | |
59 | (_bfd_elf_add_dt_needed_tag): Declare. | |
60 | (_bfd_elf_sort_symbol): Declare. | |
61 | (_bfd_elf_finalize_dynstr): Declare. | |
62 | (RELOC_FOR_GLOBAL_SYM): Formatting. | |
63 | * elfcode.h (elf_add_dynamic_entry): Delete. | |
64 | * elflink.c (_bfd_elf_add_dynamic_entry): New function. Corresponding | |
65 | elflink.h function converted to use elf_size_info. | |
66 | (_bfd_elf_add_dt_needed_tag): Likewise. | |
67 | (_bfd_elf_sort_symbol): Likewise. | |
68 | (_bfd_elf_finalize_dynstr): Likewise. | |
69 | (compute_bucket_count): Likewise. | |
70 | (bfd_elf_size_dynamic_sections): Likewise. Check result of | |
71 | _bfd_elf_strtab_add before calling _bfd_elf_strtab_addref. | |
72 | (elf_adjust_dynstr_offsets, elf_collect_hash_codes): Moved from.. | |
73 | * elflink.h: ..here. | |
74 | (sort_symbol, add_dt_needed_tag): Delete. | |
75 | (elf_add_dynamic_entry, elf_finalize_dynstr): Delete. | |
76 | (compute_bucket_count, NAME(bfd_elf,size_dynamic_sections)): Delete. | |
77 | Update all users. | |
78 | * elf32-arm.h (add_dynamic_entry): Update. Remove casts. | |
79 | * elf32-cris.c (add_dynamic_entry): Likewise. | |
80 | * elf32-hppa.c (add_dynamic_entry): Likewise. | |
81 | * elf32-i370.c (add_dynamic_entry): Likewise. | |
82 | * elf32-i386.c (add_dynamic_entry): Likewise. | |
83 | * elf32-m32r.c (add_dynamic_entry): Likewise. | |
84 | * elf32-m68k.c (add_dynamic_entry): Likewise. | |
85 | * elf32-ppc.c (add_dynamic_entry): Likewise. | |
86 | * elf32-s390.c (add_dynamic_entry): Likewise. | |
87 | * elf32-sh.c (add_dynamic_entry): Likewise. | |
88 | * elf32-sparc.c (add_dynamic_entry): Likewise. | |
89 | * elf32-vax.c (add_dynamic_entry): Likewise. | |
90 | * elf32-xtensa.c (add_dynamic_entry): Likewise. | |
91 | * elf64-alpha.c (add_dynamic_entry): Likewise. | |
92 | * elf64-hppa.c (add_dynamic_entry): Likewise. | |
93 | * elf64-ppc.c (add_dynamic_entry): Likewise. | |
94 | * elf64-s390.c (add_dynamic_entry): Likewise. | |
95 | * elf64-sparc.c (add_dynamic_entry): Likewise. | |
96 | * elf64-x86-64.c (add_dynamic_entry): Likewise. | |
97 | * elfxx-ia64.c (add_dynamic_entry): Likewise. | |
98 | * elfxx-mips.c (MIPS_ELF_ADD_DYNAMIC_ENTRY): Likewise. | |
99 | * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise. | |
100 | * elf32-frv.c (elf32_frv_size_dynamic_sections): Likewise. | |
101 | * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise. | |
102 | ||
d507cf36 PB |
103 | 2004-03-23 Paul Brook <paul@codesourcery.com> |
104 | ||
105 | * elf32-arm.h (arm_print_private_bfd_data): Add EABI v3. | |
106 | ||
88d65ad6 BW |
107 | 2004-03-22 Bob Wilson <bob.wilson@acm.org> |
108 | ||
109 | * elf32-xtensa.c (elf_xtensa_check_relocs): Remove code to read | |
110 | literal tables and check for relocs outside of literal pools. | |
111 | (elf_xtensa_make_sym_local): Don't clear ELF_LINK_NON_GOT_REF flag. | |
112 | (elf_xtensa_fix_refcounts): Don't check ELF_LINK_NON_GOT_REF or | |
113 | set DF_TEXTREL. | |
114 | (elf_xtensa_size_dynamic_sections): Don't add DT_TEXTREL entry. | |
115 | (elf_xtensa_relocate_section): Read literal tables and check for | |
116 | dynamic relocations in read-only sections and not in literal pools. | |
117 | ||
b9cf773d AM |
118 | 2004-03-23 Alan Modra <amodra@bigpond.net.au> |
119 | ||
120 | PR 51. | |
121 | * linker.c (bfd_wrapped_link_hash_lookup): Handle info->wrap_char. | |
122 | ||
e4a2175c HPN |
123 | 2004-03-22 Hans-Peter Nilsson <hp@axis.com> |
124 | ||
125 | * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOTPLT, | |
126 | R_CRIS_16_GOTPLT>: Also error if there's no PLT for a symbol | |
127 | not defined by the executable, or defined in a DSO. | |
128 | <eliding run-time relocation of .got>: Initialize GOT entry for a | |
129 | function symbol or ELF_LINK_HASH_NEEDS_PLT statically in an | |
130 | executable. | |
131 | (cris_elf_gc_sweep_hook): Improve fallthrough marking. | |
132 | (elf_cris_try_fold_plt_to_got): Improve head comment. Do not fold | |
133 | a PLT reloc to GOT for an executable. | |
134 | (elf_cris_adjust_dynamic_symbol): Only fold a .got.plt entry with | |
b9cf773d | 135 | .got for a DSO and explain why. |
e4a2175c HPN |
136 | (elf_cris_discard_excess_program_dynamics): Also lose GOT-relocs |
137 | and unreferenced symbols for which a PLT is defined. Adjust | |
138 | dynamic-symbol pruning correspondingly, to make sure we don't lose | |
139 | a dynamic symbol also defined by a DSO. | |
140 | ||
b2a8e766 AM |
141 | 2004-03-22 Alan Modra <amodra@bigpond.net.au> |
142 | ||
143 | * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): Add input_bfd, input_section | |
144 | and rel args. Group input and output args. Wrap to 80 columns. | |
145 | * elf-m10200.c, elf-m10300.c, elf32-arm.h, elf32-avr.c, | |
146 | elf32-cris.c, elf32-d10v.c, elf32-fr30.c, elf32-h8300.c, | |
147 | elf32-hppa.c, elf32-i386.c, elf32-i860.c, elf32-ip2k.c, | |
148 | elf32-iq2000.c, elf32-m68hc1x.c, elf32-m68k.c, elf32-mcore.c, | |
149 | elf32-msp430.c, elf32-openrisc.c, elf32-ppc.c, elf32-s390.c, | |
150 | elf32-sparc.c, elf32-v850.c, elf32-vax.c, elf32-xstormy16.c, | |
151 | elf32-xtensa.c, elf64-alpha.c, elf64-mmix.c, elf64-ppc.c, | |
152 | elf64-s390.c, elf64-sparc.c, elf64-x86-64.c, elfxx-ia64.c: Update | |
153 | RELOC_FOR_GLOBAL_SYMBOL invocation. | |
154 | ||
59c2e50f L |
155 | 2004-03-20 H.J. Lu <hongjiu.lu@intel.com> |
156 | ||
157 | * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): Report error if | |
158 | unresolved symbols in objects aren't allowed. | |
159 | ||
160 | * elf-hppa.h (elf_hppa_relocate_section): Properly handle | |
161 | unresolved symbols. | |
162 | (elf_hppa_remark_useless_dynamic_symbols): Likewise. | |
163 | (elf_hppa_unmark_useless_dynamic_symbols): | |
164 | * elf32-frv.c (elf32_frv_relocate_section): Likewise. | |
165 | * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. | |
166 | (elf32_hppa_relocate_section): Likewise. | |
167 | * elf32-i370.c (i370_elf_relocate_section): Likewise. | |
168 | * elf32-m32r.c (m32r_elf_relocate_section): Likewise. | |
169 | * elf32-sh.c (sh_elf_relocate_section): Likewise. | |
170 | * elf64-sh64.c (sh_elf64_relocate_section): Likewise. | |
171 | * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. | |
172 | ||
173 | * elf-m10200.c (mn10200_elf_relocate_section): Use | |
174 | RELOC_FOR_GLOBAL_SYMBOL. | |
175 | * elf32-avr.c (elf32_avr_relocate_section): Likewise. | |
176 | * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. | |
177 | * elf32-fr30.c (fr30_elf_relocate_section): Likewise. | |
178 | * elf32-h8300.c (elf32_h8_relocate_section): Likewise. | |
179 | * elf32-i860.c (elf32_i860_relocate_section): Likewise. | |
180 | * elf32-m68hc1x.c (m68hc11_get_relocation_value): Likewise. | |
181 | * elf32-mcore.c (mcore_elf_relocate_section): Likewise. | |
182 | * elf32-msp430.c (elf32_msp430_relocate_section): Likewise. | |
183 | * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. | |
184 | * elf32-v850.c (v850_elf_relocate_section): Likewise. | |
185 | * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. | |
186 | * elf64-mmix.c (mmix_elf_relocate_section): Likewise. | |
187 | ||
9992270f DA |
188 | 2004-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
189 | ||
36751eee DA |
190 | * elf32-hppa.c (elf32_hppa_check_relocs): Handle R_PARISC_PCREL32. |
191 | (final_link_relocate): Likewise. | |
9992270f DA |
192 | * elf-hppa.h (elf_hppa_reloc_final_type): Handle selectors for |
193 | R_PARISC_PCREL32 and R_PARISC_PCREL64 relocations. | |
194 | ||
05864e2a AM |
195 | 2004-03-19 Alan Modra <amodra@bigpond.net.au> |
196 | ||
197 | * Makefile.am: Run "make dep-am". | |
198 | * Makefile.in: Regenerate. | |
199 | * aclocal.m4: Regenerate. | |
200 | * config.in: Regenerate. | |
201 | * po/bfd.pot: Regenerate. | |
202 | ||
f218a464 | 203 | 2004-03-19 Alan Modra <amodra@bigpond.net.au> |
0f8a2703 AM |
204 | H.J. Lu <hongjiu.lu@intel.com> |
205 | ||
206 | * elflink.c (_bfd_elf_merge_symbol): Revert last change. Move | |
207 | type and size change code to where it was previously. Remove | |
208 | dt_needed param. Treat old weak syms as strong if new sym is | |
209 | from a shared lib, even when old sym is from another shared | |
210 | lib. Remove unnecessary tests of oldweak and newweak. Correct | |
211 | comments. | |
212 | (_bfd_elf_add_default_symbol): Remove dt_needed param. Update | |
213 | _bfd_elf_merge_symbol calls. | |
214 | * elflink.h (elf_link_add_object_symbols): Update calls. Remove | |
215 | dt_needed local var. Update comments. | |
216 | * elf-bfd.h (_bfd_elf_merge_symbol): Update prototype. | |
217 | (_bfd_elf_add_default_symbol): Likewise. | |
f218a464 AM |
218 | |
219 | * elflink.c (_bfd_elf_merge_symbol): Reinstate code to handle | |
220 | strong syms in one shared object overriding weak syms in another. | |
221 | ||
79349b09 AM |
222 | 2004-03-18 Alan Modra <amodra@bigpond.net.au> |
223 | ||
4a43e768 AM |
224 | * elf-bfd.h (struct elf_obj_tdata): Delete dt_soname field. Add |
225 | dyn_lib_class field. Rearrange for better packing. | |
226 | (elf_dt_soname): Delete. | |
227 | (elf_dyn_lib_class): Define. | |
228 | * elf.c (bfd_elf_set_dt_needed_name): Update comment. | |
229 | (bfd_elf_set_dt_needed_soname): Delete. | |
230 | (bfd_elf_set_dyn_lib_class): New function. | |
231 | * elflink.h (add_dt_needed_tag): New function. Split out from.. | |
232 | (elf_link_add_object_symbols): ..here. Rename "name" to "soname". | |
233 | Use elf_dyn_lib_class to set dt_needed and add_needed. Move fallback | |
234 | initialization of soname. | |
235 | (elf_link_check_versioned_symbol): Test elf_dyn_lib_class instead of | |
236 | elf_dt_soname. | |
237 | * bfd-in.h (enum dynamic_lib_link_class): New. | |
238 | (bfd_elf_set_dt_needed_soname): Delete. | |
239 | (bfd_elf_set_dyn_lib_class): Declare. | |
240 | * bfd-in2.h: Regenerate. | |
241 | ||
79349b09 AM |
242 | * elflink.c (_bfd_elf_merge_symbol): Rewrite weak symbol handling. |
243 | (_bfd_elf_add_default_symbol): Remove indirect BFD_ASSERTs. | |
244 | * elflink.h (elf_link_add_object_symbols): Don't clear dt_needed in | |
245 | symbol loop. Instead use add_needed to flag tag as written. | |
246 | ||
d13d89fa NS |
247 | 2004-03-17 Nathan Sidwell <nathan@codesourcery.com> |
248 | ||
249 | * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct | |
250 | logic for null_input_bfd detection. | |
251 | ||
9183ed4b AM |
252 | 2004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de> |
253 | ||
254 | * config.bfd: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*. | |
255 | ||
021d7868 MK |
256 | 2004-03-16 Mark Kettenis <kettenis@gnu.org> |
257 | ||
258 | * netbsd-core.c (netbsd_core_file_p) [CORE_FPU_OFFSET]: Remove | |
259 | code. | |
260 | ||
51992aec AM |
261 | 2004-03-16 Alan Modra <amodra@bigpond.net.au> |
262 | ||
263 | * elflink.c (elf_link_read_relocs_from_section): Don't use | |
264 | NUM_SHDR_ENTRIES in end of reloc calc. Move NULL shdr check.. | |
265 | (_bfd_elf_link_read_relocs): ..to here. | |
266 | * elf32-ppc.c (ppc_elf_relax_section): Formatting. | |
267 | ||
ccba357f AM |
268 | 2004-03-16 Alan Modra <amodra@bigpond.net.au> |
269 | ||
270 | * configure.in (HOST_64BIT_TYPE, HOST_U_64BIT_TYPE): Don't override | |
271 | values selected in configure.host. Require both to be defined | |
272 | before setting BFD_HOST_64_BIT_DEFINED. Protect assignment to | |
273 | corresponding BFD_HOST vars with quotes. | |
274 | <${host64}-${target64}-${want64} in *true*>: Don't exempt gcc; | |
275 | Always require BFD_HOST_64_BIT_DEFINED. | |
276 | <file_ptr type>: Find off_t size before emitting message. Combine | |
277 | off_t and ftello64 conditional. | |
278 | * configure: Regenerate. | |
279 | ||
41978308 AM |
280 | 2004-03-16 Alan Modra <amodra@bigpond.net.au> |
281 | ||
282 | * elf32-m32r.c (m32r_elf_create_dynamic_sections): Fix pointer | |
283 | aliasing warning. Remove trailing whitespace throughout file. | |
284 | ||
d63b5ed9 DA |
285 | 2004-03-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
286 | ||
287 | * elf-hppa.h (elf_hppa_relocate_section): Pass input_bfd instead of | |
288 | input_section in calls to get_dyn_name. | |
289 | * 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 | |
290 | local symbols. | |
291 | (elf64_hppa_check_relocs): Pass abfd in call to get_dyn_name. | |
292 | ||
8ce8c090 AM |
293 | 2004-03-15 Alan Modra <amodra@bigpond.net.au> |
294 | ||
295 | * bfd-in.h (bfd_int64_t, bfd_uint64_t): New types. | |
296 | (BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Don't define here. | |
297 | (bfd_getb64, bfd_getl64, bfd_get_bits): Return bfd_uint64_t. | |
298 | (bfd_getb_signed_64, bfd_getl_signed_64): Return bfd_int64_t. | |
299 | (bfd_putb64, bfd_putl64, bfd_put_bits): Accept bfd_uint64_t. | |
300 | * configure.in (HOST_U_64BIT_TYPE): Set when sizeof long is 8. | |
301 | (BFD_HOST_64_BIT_DEFINED, BFD_HOST_64_BIT, BFD_HOST_U_64_BIT): Set | |
302 | when using long. | |
303 | * libbfd.c (EIGHT_GAZILLION, COERCE64): Use bfd_int64_t. | |
304 | (bfd_getb64): Return bfd_uint64_t. Enable when BFD_HOST_64_BIT. | |
305 | (bfd_getl64, bfd_getb_signed_64, bfd_getl_signed_64): Likewise. | |
306 | (bfd_putb64): Accept bfd_uint64_t. Enable when BFD_HOST_64_BIT. | |
307 | (bfd_putl64, bfd_put_bits, bfd_get_bits): Likewise. | |
308 | * dwarf2.c (struct attribute): Use bfd_int64_t and bfd_uint64_t. | |
309 | (read_8_bytes, read_indirect_string, read_address): Likewise. | |
310 | (read_abbrevs, parse_comp_unit): Likewise. | |
311 | * targets.c (struct bfd_target): Likewise. | |
312 | * aix386-core.c (NO_GET64, NO_PUT64, NO_GETS64): Define and use. | |
313 | * hppabsd-core.c: Likewise. Formatting. | |
314 | * hpux-core.c: Likewise. | |
315 | * irix-core.c: Likewise. | |
316 | * netbsd-core.c: Likewise. | |
317 | * osf-core.c: Likewise. | |
318 | * ptrace-core.c: Likewise. | |
319 | * sco5-core.c: Likewise. | |
320 | * trad-core.c: Likewise. | |
321 | * configure: Regenerate. | |
322 | * bfd-in2.h: Regenerate. | |
323 | ||
edeb6e24 AM |
324 | 2004-03-15 Alan Modra <amodra@bigpond.net.au> |
325 | ||
326 | * bfd-in.h (bfd_getb64, bfd_getl64): Replace bfd_byte* with void*. | |
327 | (bfd_getb32, bfd_getl32, bfd_getb16, bfd_getl16): Likewise. | |
328 | (bfd_getb_signed_64, bfd_getl_signed_64): Likewise. | |
329 | (bfd_getb_signed_32, bfd_getl_signed_32): Likewise. | |
330 | (bfd_getb_signed_16, bfd_getl_signed_16): Likewise. | |
331 | (bfd_putb64, bfd_putl64, bfd_putb32, bfd_putl32): Likewise. | |
332 | (bfd_putb16, bfd_putl16, bfd_get_bits, bfd_put_bits): Likewise. | |
333 | * libbfd.c: Likewise in function definitions. | |
334 | (bfd_put_8): Mask with 0xff rather than casting to char. | |
335 | (bfd_putb16, bfd_putl16, bfd_putb32, bfd_putl32): Likewise. | |
336 | (bfd_putb64, bfd_putl64, bfd_put_bits): Likewise. | |
337 | (H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8): Remove casts, simplify. | |
338 | (H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8): Likewise. | |
339 | (H_GET_64, H_GET_32, H_GET_16, H_GET_8): Likewise. | |
340 | (H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Likewise. | |
341 | * libaout.h (H_PUT_64 H_PUT_32, H_PUT_16): Remove casts, simplify. | |
342 | (H_PUT_S64, H_PUT_S32, H_PUT_S16): Likewise. | |
343 | (H_GET_64, H_GET_32, H_GET_16): Likewise. | |
344 | (H_GET_S64, H_GET_S32, H_GET_S16): Likewise. | |
345 | * archive.c (do_slurp_coff_armap): Update swap prototype. | |
346 | * coff-tic54x.c (tic54x_getl32): Replace bfd_byte* with void*. | |
347 | (tic54x_getl_signed_32): Likewise. | |
348 | (tic54x_putl32): Likewise. Mask with 0xff rather than casting to char. | |
349 | * mach-o.c (bfd_mach_o_read_header): Update get32 prototype. | |
350 | * pdp11.c (bfd_getp32): Make static, replace bfd_byte* with void*. | |
351 | (bfd_getp_signed_32, bfd_putp32): Likewise. | |
352 | * targets.c (struct bfd_target): Use void* in place of bfd_byte* for | |
353 | bfd_getx64, bfd_getx_signed_64, bfd_putx64, bfd_getx32, | |
354 | bfd_getx_signed_32, bfd_putx32, bfd_getx16, bfd_getx_signed_16, | |
355 | bfd_putx16, bfd_h_getx64, bfd_h_getx_signed_64, bfd_h_putx64, | |
356 | bfd_h_getx32, bfd_h_getx_signed_32, bfd_h_putx32, bfd_h_getx16, | |
357 | bfd_h_getx_signed_16, bfd_h_putx16. | |
358 | * aix386-core.c (NO_GET, NO_GETS, NO_PUT): Update prototypes. | |
359 | * hppabsd-core.c: Similarly. Rename NO_SIGNED_GET to NO_GETS. | |
360 | * hpux-core.c: Likewise. | |
361 | * irix-core.c: Likewise. | |
362 | * netbsd-core.c: Likewise. | |
363 | * osf-core.c: Likewise. | |
364 | * ptrace-core.c: Likewise. | |
365 | * sco5-core.c: Likewise. | |
366 | * trad-core.c: Likewise. | |
367 | * bfd-in2.h: Regenerate. | |
368 | ||
c1b954e2 AM |
369 | 2004-03-15 Matt Thomas <matt@3am-software.com> |
370 | ||
371 | * config.bfd: Add x86-64 vector to NetBSD/i386 if 64bit BFD is | |
372 | selected. | |
373 | ||
85cfd8d3 MK |
374 | 2004-03-13 Mark Kettenis <kettenis@gnu.org> |
375 | ||
376 | * config.bfd: Add x86_64-*-openbsd*. | |
377 | * configure.in (x86_64-*-openbsd*): Set COREFILE to | |
378 | netbsd-core.lo. | |
379 | * configure: Regenerate. | |
380 | ||
d1f161ea NC |
381 | 2004-03-12 Nick Clifton <nickc@redhat.com> |
382 | Dave Murphy <wintermute2k4@ntlworld.com> | |
c1b954e2 | 383 | |
d1f161ea NC |
384 | * elf32-arm.h (elf32_arm_merge_private_bfd_data): Skip most checks |
385 | if the input bfd does not contain any code. | |
386 | ||
8b6f2683 JW |
387 | 2004-03-09 Steve Ellcey <sje@cup.hp.com> |
388 | ||
389 | * elfxx-ia64.c (plt_full_entry): Change ld8 to ld8.acq. | |
390 | ||
79cda7cf FF |
391 | 2004-03-05 Fred Fish <fnf@redhat.com> |
392 | ||
393 | * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Just force | |
394 | mips16 symbols to be even rather than testing first for even/odd. | |
395 | (_bfd_mips_elf_link_output_symbol_hook): Ditto. | |
396 | ||
e5caec89 NS |
397 | 2004-03-05 Nathan Sidwell <nathan@codesourcery.com> |
398 | ||
399 | * elf.c (map_sections_to_segments): Ignore .tbss sections for | |
400 | layout purposes. | |
401 | ||
02bb6eae AO |
402 | 2004-03-03 Alexandre Oliva <aoliva@redhat.com> |
403 | ||
404 | * elflink.c (bfd_elf_record_link_assignment): Mark undefweak and | |
405 | undefined symbols as hash_new. | |
406 | ||
ae51a426 JR |
407 | 2003-03-03 Andrew Stubbs <andrew.stubbs@superh.com> |
408 | ||
409 | * archures.c: Add bfd_mach_sh4_nommu_nofpu. | |
410 | * cpu-sh.c: Ditto. | |
411 | * elf32-sh.c: Ditto. | |
412 | * bfd-in2.h: Regenerate. | |
413 | ||
3b712a1a AO |
414 | 2004-03-02 Alexandre Oliva <aoliva@redhat.com> |
415 | ||
416 | * elf32-frv.c (struct frv_pic_relocs_info): Added fixups and | |
417 | dynrelocs. | |
418 | (_frv_count_got_plt_entries): Initialize them. | |
419 | (frv_pic_relocs_info_find): Add insert argument. Adjust all | |
420 | callers. | |
421 | (frv_pic_relocs_info_for_global): Likewise. | |
422 | (frv_pic_relocs_info_for_local): Likewise. | |
423 | (frv_pic_merge_early_relocs_info): New. | |
424 | (_frv_resolve_final_relocs_info): Use it in case one entry maps to | |
425 | another. | |
426 | (_frv_add_dyn_reloc): Add entry argument. Adjust all callers. | |
427 | Check that we don't exceed the allocated count for entry. | |
428 | (_frv_add_rofixup): Likewise. | |
429 | (_frv_emit_got_relocs_plt_entries): Adjust for coding standards. | |
430 | (elf32_frv_finish_dynamic_sections): Improve error message in case | |
431 | we emit too few rofixup entries. | |
432 | ||
676a64f4 RS |
433 | 2004-03-01 Richard Sandiford <rsandifo@redhat.com> |
434 | ||
435 | * archures.c (bfd_mach_fr450): New. | |
436 | * bfd-in2.h: Regenerate. | |
437 | * cpu-frv.c (arch_info_450): New bfd_arch_info_type. | |
438 | (arch_info_500): Link to it. | |
439 | * elf32-frv.c (elf32_frv_machine, frv_elf_merge_private_bfd_data) | |
440 | (frv_elf_print_private_bfd_data): Handle fr405 and fr450 header flags. | |
441 | (frv_elf_arch_extension_p): New function. | |
442 | (frv_elf_merge_private_bfd_data): Use it. | |
443 | ||
0ad989f9 L |
444 | 2004-02-28 H.J. Lu <hongjiu.lu@intel.com> |
445 | ||
446 | * elf-bfd.h (_bfd_elf_link_add_archive_symbols): New prototype. | |
447 | ||
448 | * elflink.h (is_global_data_symbol_definition): Moved to | |
449 | elflink.c. | |
450 | (elf_link_is_defined_archive_symbol): Likewise. | |
451 | (elf_link_add_archive_symbols): Likewise. Renamed to | |
452 | _bfd_elf_link_add_archive_symbols. | |
453 | ||
454 | * elflink.c (elf_link_is_defined_archive_symbol): Get the size | |
455 | of ELF symbol table entry from backend. | |
456 | (_bfd_elf_link_add_archive_symbols): Call bfd_link_add_symbols | |
457 | instead of elf_link_add_object_symbols. | |
458 | ||
ec3391e7 AO |
459 | 2004-02-27 Alexandre Oliva <aoliva@redhat.com> |
460 | ||
461 | * elf-bfd.h (struct elf_backend_data): Added | |
462 | elf_backend_can_make_relative_eh_frame, | |
463 | elf_backend_can_make_lsda_relative_eh_frame and | |
464 | elf_backend_encode_eh_address. | |
465 | (_bfd_elf_encode_eh_address): Declare. | |
466 | (_bfd_elf_can_make_relative): Declare. | |
467 | * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use new | |
468 | hooks to decide whether to attempt to make_relative and | |
469 | make_lsda_relative. | |
470 | (_bfd_elf_write_section_eh_frame_hdr): Call encode_eh_address. | |
471 | (_bfd_elf_can_make_relative): New. | |
472 | (_bfd_elf_encode_eh_address): New. | |
473 | * elf32-frv.c (frv_elf_use_relative_eh_frame): New. | |
474 | (frv_elf_encode_eh_address): New. | |
475 | (elf_backend_can_make_relative_eh_frame): Define. | |
476 | (elf_backend_can_make_lsda_relative_eh_frame): Define. | |
477 | (elf_backend_encode_eh_address): Define. | |
478 | * elfxx-target.h | |
479 | (elf_backend_can_make_relative_eh_frame): Define. | |
480 | (elf_backend_can_make_lsda_relative_eh_frame): Define. | |
481 | (elf_backend_encode_eh_address): Define. | |
482 | (elfNN_bed): Add them. | |
483 | ||
e6deed0a AO |
484 | 2004-02-27 Alexandre Oliva <aoliva@redhat.com> |
485 | ||
486 | * elf32-frv.c (elf32_frv_howto_table) <R_FRV_LABEL16>: Set | |
487 | complain_on_overflow to signed. | |
488 | ||
b60d7a1a L |
489 | 2004-02-27 H.J. Lu <hongjiu.lu@intel.com> |
490 | ||
491 | * elflink.h (sort_symbol): New. | |
492 | (elf_link_add_object_symbols): Use a sorted symbol array for | |
493 | weakdef. | |
494 | ||
1c3ff0f2 MS |
495 | 2004-02-27 Jakub Jelinek <jakub@redhat.com> |
496 | ||
497 | * elf32-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL | |
498 | for pc relative relocs. | |
499 | (elf_s390_relocate_section): Likewise. | |
500 | * elf64-s390.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL | |
501 | for pc relative relocs. | |
502 | (elf_s390_relocate_section): Likewise. | |
503 | ||
de9811af L |
504 | 2004-02-26 H.J. Lu <hongjiu.lu@intel.com> |
505 | ||
506 | * elfxx-ia64.c (elfNN_ia64_check_relocs): Fix call to | |
507 | count_dyn_reloc. | |
508 | ||
ac33696c L |
509 | 2004-02-25 H.J. Lu <hongjiu.lu@intel.com> |
510 | ||
511 | * elfxx-ia64.c (elfNN_ia64_dyn_reloc_entry): Add the reltext. | |
512 | field to track if a relocation is against readonly section. | |
513 | (count_dyn_reloc): Take a new argument for rent->reltext. | |
514 | (elfNN_ia64_check_relocs): Adjust call to count_dyn_reloc. | |
515 | (get_reloc_section): Don't set ia64_info->reltext here. | |
516 | (allocate_dynrel_entries): Set ia64_info->reltext here. | |
517 | ||
072c8903 AO |
518 | 2004-02-24 Alexandre Oliva <aoliva@redhat.com> |
519 | ||
520 | * elf32-frv.c (FRV_SYM_LOCAL): Weak undefined doesn't imply local. | |
521 | (_frv_emit_got_relocs_plt_entries): Decay relocation to protected | |
522 | function's descriptor to symbol+offset, and map local undefweak | |
523 | symbol to NULL function descriptor. | |
524 | (elf32_frv_relocate_section): Likewise. | |
525 | ||
aca305d9 NC |
526 | 2004-02-23 Mark Kettenis <kettenis@gnu.org> |
527 | ||
528 | * libaout.h (enum machine_type): Add M_SPARC64_NETBSD and | |
529 | M_X86_64_NETBSD. | |
530 | * netbsd-core.c (M_SPARC64_OPENBSD): Define. | |
531 | (netbsd_core_file_p): Set architecture from machine ID for | |
532 | selected machines. | |
533 | ||
646411fb JJ |
534 | 2004-02-23 Jakub Jelinek <jakub@redhat.com> |
535 | ||
536 | * elflink.h (size_dynamic_sections): If not adding DT_FLAGS and | |
537 | DF_BIND_NOW is set in info->flags, create DT_BIND_NOW dynamic entry. | |
538 | ||
1de1a317 L |
539 | 2004-02-21 H.J. Lu <hongjiu.lu@intel.com> |
540 | ||
541 | * elflink.c (_bfd_elf_merge_symbol): Properly handle undefined | |
542 | symbols with non-default visibility. | |
543 | ||
3c9d0484 DS |
544 | 2004-02-21 Danny Smith <daanysmith@users.sourceforge.net> |
545 | ||
546 | * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Clear | |
547 | IMAGE_SCN_MEM_WRITE on known sections only. | |
548 | ||
a876ecf9 JJ |
549 | 2004-02-20 Jakub Jelinek <jakub@redhat.com> |
550 | ||
551 | * elf32-ppc.c (allocate_dynrelocs): Create dynsym for undef weak | |
552 | symbols used in PIE relocs. | |
553 | ||
a8a6d7ce JJ |
554 | 2004-02-19 Jakub Jelinek <jakub@redhat.com> |
555 | ||
556 | * elf32-sparc.c (elf32_sparc_finish_dynamic_sections): Clear | |
557 | .plt sh_entsize. | |
558 | ||
d080fcd2 DJ |
559 | 2004-02-18 Daniel Jacobowitz <drow@mvista.com> |
560 | ||
561 | * configure.in: Update version to 2.15.90. | |
562 | * configure: Regenerate. | |
563 | ||
d25aed71 | 564 | 2004-02-17 Daniel Jacobowitz <drow@mvista.com> |
c1b954e2 | 565 | Richard Sandiford <rsandifo@redhat.com> |
d25aed71 RS |
566 | |
567 | * elfxx-mips.c (mips_elf_calculate_relocation): Use | |
568 | _bfd_elf_symbol_refs_local_p to decide whether to decay | |
569 | a GOT_PAGE/GOT_OFST pair to GOT_DISP/addend. | |
570 | (_bfd_mips_elf_check_relocs): Add a global GOT entry for GOT_PAGE | |
571 | relocs if the symbol wasn't defined by a regular object file. | |
572 | Don't check the symbol's dynindx. | |
573 | ||
d7ce59e3 AC |
574 | 2004-02-16 Andrew Cagney <cagney@redhat.com> |
575 | ||
576 | * bfd-in.h (file_ptr, ufile_ptr): Configure type using | |
577 | @bfd_file_ptr@. | |
578 | * bfd-in2.h: Re-generate. | |
579 | ||
ca0b7686 AC |
580 | 2004-02-14 Andrew Cagney <cagney@redhat.com> |
581 | ||
582 | * configure.host (HDEFINES): When hppa*-*-hpux*, define | |
583 | _LARGEFILE64_SOURCE. | |
584 | ||
340b6d91 AC |
585 | 2004-02-13 Andrew Cagney <cagney@redhat.com> |
586 | ||
587 | * elf.c (vma_page_aligned_bias): New function. | |
588 | (assign_file_positions_except_relocs) | |
589 | (assign_file_positions_for_segments): Replace broken modulo | |
590 | arithmetic with call to vma_page_aligned_bias. | |
591 | ||
1012372a AC |
592 | 2004-02-11 Andrew Cagney <cagney@redhat.com> |
593 | ||
7c192733 AC |
594 | * bfd-in.h: Update copyright. |
595 | (bfd_tell): Change return type to file_ptr. | |
596 | * bfd-in2.h: Re-generate. | |
597 | * cache.c: Update copyright. | |
598 | (bfd_cache_lookup_worker): Use real_fseek, do not cast offset | |
599 | parameter. | |
600 | (close_one): Use real_ftell. | |
601 | * bfdio.c: Update copyright. | |
602 | (real_ftell, real_fseek): New functions. | |
603 | (bfd_tell): Use real_fseek and real_ftell, change return type to | |
604 | file_ptr. | |
605 | (bfd_seek): Use real_ftell and real_fseek, change type of | |
606 | file_position to a file_ptr. | |
607 | * libbfd-in.h: Update copyright. | |
608 | (real_ftell, real_fseek): Declare. | |
609 | * libbfd.h: Re-generate. | |
610 | ||
1012372a AC |
611 | * configure.in (AC_CHECK_FUNCS): Check for ftello, ftello64, |
612 | fseeko and fseeko64. Determine bfd_file_ptr. | |
613 | * configure: Re-generate. | |
c1ea0c09 | 614 | * config.in: Re-generate. |
c1b954e2 | 615 | |
3255318a NC |
616 | 2004-02-09 Anil Paranjpe <anilp1@KPITCummins.com> |
617 | ||
618 | * coff-h8300.c: Added comments about relaxation for ldc.w and stc.w. | |
619 | * elf32-h8300.c: Likewise. | |
620 | ||
0d5f9994 NC |
621 | 2004-02-09 Christian Vogel <vogelchr@vogel.cx> |
622 | Nick Clifton <nickc@redhat.com> | |
623 | ||
624 | * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Catch | |
625 | GOT entries with no associated GOT subsection. | |
626 | ||
174fd7f9 RS |
627 | 2004-02-09 Richard Sandiford <rsandifo@redhat.com> |
628 | ||
629 | * bfd-elf.h (elf_backend_name_local_section_symbols): New hook. | |
630 | * elf.c (swap_out_syms): Use it to decide whether local section | |
631 | symbols should be named. | |
632 | * elfxx-target.h (elf_backend_name_local_section_symbols): New macro. | |
633 | * elfxx-mips.h (_bfd_mips_elf_name_local_section_symbols): Declare. | |
634 | (elf_backend_name_local_section_symbols): Define. | |
635 | * elfxx-mips.c (_bfd_mips_elf_name_local_section_symbols): New. | |
636 | ||
03609792 L |
637 | 2004-01-30 H.J. Lu <hongjiu.lu@intel.com> |
638 | ||
639 | * elfxx-ia64.c (elfNN_ia64_relax_brl): New function. | |
640 | (elfNN_ia64_relax_section): Optimize brl to br during the relax | |
641 | finalize pass. | |
642 | ||
ea01195e AO |
643 | 2004-01-30 Alexandre Oliva <aoliva@redhat.com> |
644 | ||
645 | * elf32-frv.c (elf32_frv_always_size_sections): Initialize pointer | |
646 | to bfd_link_hash_entry passed by reference to | |
647 | _bfd_generic_link_add_one_symbol. | |
648 | ||
838e70c5 L |
649 | 2004-01-25 H.J. Lu <hongjiu.lu@intel.com> |
650 | ||
651 | * elfxx-ia64.c (elfNN_ia64_relocate_section): Disallow imm | |
652 | relocations against dynamic symbols. | |
653 | ||
4f199be3 DJ |
654 | 2004-01-23 Daniel Jacobowitz <drow@mvista.com> |
655 | ||
656 | * elf32-arm.h (elf32_arm_check_relocs): Revert part of 2004-01-13 | |
657 | change. | |
658 | ||
28d39d1a NC |
659 | 2004-01-21 Tom Rix <tcrix@worldnet.att.net> |
660 | ||
661 | * reloc.c: New 5 bit reloc, BFD_RELOC_M68HC12_5B, for m68hc12 movb/movw. | |
662 | * bfd-in2.h, libbfd.h: Rebuilt. | |
663 | ||
66bed356 DS |
664 | 2004-01-20 Danny Smith <dannysmith@users.sourceforge.net> |
665 | ||
666 | * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Don't remove | |
667 | IMAGE_SCN_MEM_WRITE flag from .text section if WP_TEXT | |
668 | flag has been cleared. | |
669 | ||
7e89635a KH |
670 | 2004-01-19 Kazu Hirata <kazu@cs.umass.edu> |
671 | ||
672 | * coff-h8300.c: Add and adjust comments about relaxation. | |
673 | * elf32-h8300.c: Likewise. | |
674 | ||
e804e836 KH |
675 | 2004-01-16 Kazu Hirata <kazu@cs.umass.edu> |
676 | ||
677 | * coff-h8300.c: Fix comment typos. | |
678 | * elf32-h8300.c: Likewise. | |
679 | ||
630a7b0a KH |
680 | 2004-01-16 Kazu Hirata <kazu@cs.umass.edu> |
681 | ||
682 | * coff-h8300.c: Add comments about relaxation. | |
683 | * elf32-h8300.c: Likewise. | |
684 | ||
f8b73030 MR |
685 | 2004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
686 | ||
687 | * acinclude.m4: Quote names of macros to be defined by AC_DEFUN | |
688 | throughout. | |
689 | * aclocal.m4: Regenerate. | |
690 | * configure: Regenerate. | |
691 | ||
32159579 ILT |
692 | 2004-01-13 Ian Lance Taylor <ian@wasabisystems.com> |
693 | ||
694 | * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Call | |
695 | mips_elf64_rtype_to_howto instead of using howto_table. | |
696 | ||
c84cd8ee DJ |
697 | 2004-01-13 Daniel Jacobowitz <drow@mvista.com> |
698 | ||
699 | * elf32-arm.h (elf32_arm_final_link_relocate): Check that we created | |
700 | the .plt section. | |
701 | (elf32_arm_check_relocs): Don't increment the PLT refcount for | |
702 | relocs which would not use the PLT. | |
703 | ||
680a3378 AM |
704 | 2004-01-13 Alan Modra <amodra@bigpond.net.au> |
705 | ||
706 | * elf64-ppc.c (ppc64_elf_check_relocs): Ignore !SEC_ALLOC relocs. | |
707 | (ppc64_elf_gc_sweep_hook): Likewise. | |
708 | (ppc64_elf_size_dynamic_sections): Test for .plt directly. | |
709 | ||
faca21e5 NC |
710 | 2004-01-12 Anil Paranjpe <anilp1@KPITCummins.com> |
711 | ||
712 | Adds linker relaxation support for bit manipulation insns like | |
680a3378 | 713 | band, bclr, biand, bild, bior, bist, bixor, bld, bnot, bor, bset, |
faca21e5 | 714 | bst, btst, bxor. |
680a3378 | 715 | * elf32-h8300.c: Opcode for bit manipulation insn is checked in |
faca21e5 | 716 | elf32_h8_relax_section function while relxation for aa:16 and aa:32. |
680a3378 | 717 | * coff-h8300.c: Opcode for bit manipulation insn is checked in |
faca21e5 NC |
718 | h8300_reloc16_extra_cases function while relxation for aa:16 and aa:32. |
719 | ||
818a27ac AM |
720 | 2004-01-12 Alan Modra <amodra@bigpond.net.au> |
721 | ||
722 | * dwarf2.c: Convert to C90, remove unneeded casts and prototypes. | |
723 | ||
96ef1419 KH |
724 | 2004-01-11 Kazu Hirata <kazu@cs.umass.edu> |
725 | ||
726 | * elf32-h8300.c: Fix formatting. | |
727 | ||
babfd660 KH |
728 | 2004-01-11 Kazu Hirata <kazu@cs.umass.edu> |
729 | ||
730 | * elf32-cris.c (cris_elf_gc_sweep_hook): Return early if no | |
731 | dynamic object is present. Declare r_symndx and h in an inner | |
732 | scope. | |
733 | * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise. | |
734 | ||
7359ea65 DJ |
735 | 2004-01-09 Daniel Jacobowitz <drow@mvista.com> |
736 | ||
737 | * elf32-arm.h (struct elf32_arm_relocs_copied): Remove pc_count. | |
738 | (elf32_arm_copy_indirect_symbol): Don't copy pc_count. | |
739 | (elf32_arm_final_link_relocate): Handle PLT32 and PC24 relocs | |
740 | identically. Do not emit PC24 relocations for shared libraries. | |
741 | (elf32_arm_gc_sweep_hook): Handle PLT32 and PC24 relocs | |
742 | identically. Don't adjust pc_count. | |
743 | (elf32_arm_check_relocs): Handle PLT32 and PC24 relocs identically. | |
744 | Set ELF_LINK_HASH_NEEDS_PLT for both. Don't adjust pc_count; don't | |
745 | adjust count for branch relocations. | |
746 | (allocate_dynrelocs): Correct typo in call to | |
747 | WILL_CALL_FINISH_DYNAMIC_SYMBOL. Never allocate space for | |
748 | PC24 or PLT32 relocs when linking. | |
749 | ||
44e88952 NC |
750 | 2004-01-09 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> |
751 | ||
752 | * coff-arm.c (aoutarm_std_reloc_howto): [ARM_WINCE] Synchronize ARM_26D | |
753 | relocation howto with ARM_26 one for consistency. | |
754 | (coff_arm_relocate_section): Set partial_inplace for ARM_26 relocations | |
755 | that will be converted to ARM_26D ones, since we always want 'done' | |
756 | relocations to be reflected in section's data. | |
757 | (coff_arm_relocate_section): [ARM_WINCE] Quick fix for BL instruction | |
758 | offset. | |
759 | (_bfd_final_link_relocate): Do not modify "inplace" data, if not | |
760 | requested. | |
761 | ||
1e7fef1d NC |
762 | 2004-01-08 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> |
763 | ||
764 | * coff-arm.c (coff_arm_relocate_section): Do not alter relocs that | |
765 | are not partial_inplace during a relocatable link. | |
766 | ||
4f075348 KH |
767 | 2004-01-08 Kazu Hirata <kazu@cs.umass.edu> |
768 | ||
babfd660 | 769 | * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return early |
4f075348 KH |
770 | if no dynamic object is present. Declare r_symndx and h in an |
771 | inner scope. | |
772 | ||
de0d9f33 L |
773 | 2004-01-07 H.J. Lu <hongjiu.lu@intel.com> |
774 | ||
775 | * elfxx-ia64.c (elfNN_ia64_relax_section): Don't install | |
776 | trampoline if it is known out of range. | |
777 | ||
51532845 AO |
778 | 2004-01-06 Alexandre Oliva <aoliva@redhat.com> |
779 | ||
780 | 2003-12-17 Alexandre Oliva <aoliva@redhat.com> | |
781 | * elf32-frv.c (_frv_osec_readonly_p): New. | |
782 | (_frv_emit_got_relocs_plt_entries): Don't emit rofixup for | |
783 | undefweak symbol. | |
784 | (_frv_count_got_plt_entries): Adjust expected count accordingly. | |
785 | (elf32_frv_relocate_section): Likewise. Error out if attempting | |
786 | to emit rofixups or dynamic relocs in read-only segments. Use | |
787 | _bfd_elf_section_offset to adjust r_offsets in rofixups and | |
788 | dynamic relocations. | |
789 | 2003-12-12 Alexandre Oliva <aoliva@redhat.com> | |
790 | * elf32-frv.c (elf32_frv_relocate_section): Compute dynamic | |
791 | relocations or fixups involving merged sections correctly. Avoid | |
792 | crash when undefined symbol is referenced by R_FRV_32 or | |
793 | R_FRV_FUNCDESC_VALUE. | |
794 | 2003-12-02 Alexandre Oliva <aoliva@redhat.com> | |
795 | * elf32-frv.c (elf32_frv_relocate_section): Add output_offset of | |
796 | input section holding local symbol to addend of R_FRV_32 or | |
797 | R_FRV_FUNCDESC_VALUE dynamic relocation. | |
798 | 2003-11-27 Alexandre Oliva <aoliva@redhat.com> | |
799 | * elf32-frv.c (elf32_frv_modify_segment_map): Add link info arg. | |
800 | (elf32_frv_always_size_sections): Don't store pointer to | |
801 | __stacksize symbol in sec_info. | |
802 | (elf32_frv_modify_segment_map): Look it up here. | |
803 | 2003-11-26 Alexandre Oliva <aoliva@redhat.com> | |
804 | * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Emit the address | |
805 | of the lazy PLT entry, not only its offset, as the low word of a | |
806 | function descriptor. | |
807 | 2003-11-10 Alexandre Oliva <aoliva@redhat.com> | |
808 | * elf32-frv.c (elf32_frv_always_size_sections): Define __stacksize | |
809 | if a hash table entry already exists but is not a definition. | |
810 | 2003-11-05 Alexandre Oliva <aoliva@redhat.com> | |
811 | * elf32-frv.c (frv_elf_link_hash_table_create): Use bfd_zalloc. | |
812 | (_frv_add_rofixup): Don't inline. | |
813 | (_frv_emit_got_relocs_plt_entries): Use NULL as funcdesc address | |
814 | for undefweak symbols. | |
815 | (elf32_frv_relocate_section): Avoid crash while computing | |
816 | relocation when linking with shared library. Only emit rofixups | |
817 | and dynamic relocations for alloc&load sections. Mark binaries | |
818 | with inter-segment relocations for relocation as a unit. | |
819 | (_frv_create_got_section): Rename .rofixup.got to .rofixup. | |
820 | (DEFAULT_STACK_SIZE): New. | |
821 | (_frv_count_got_plt_entries): Fix thinko in deciding whether to | |
822 | emit rofixups or dynamic relocs when linking dynamic non-PIE | |
823 | executables. | |
824 | (elf32_frv_size_dynamic_sections): Generate rofixup on PIEs and | |
825 | shared libs too. Reserve the last entry for the GOT pointer. | |
826 | (elf32_frv_finish_dynamic_sections): Emit it. | |
827 | (elf32_frv_always_size_sections): New. | |
828 | (elf32_frv_modify_segment_map): New. | |
829 | (elf32_frv_check_relocs): Reserve relocs32 space only in ALLOC | |
830 | sections. | |
831 | (frv_elf_merge_private_bfd_data): Clear PIC bit if FDPIC is set. | |
832 | (frv_elf_print_private_bfd_data): Handle FDPIC and LIBPIC. | |
833 | (elf_backend_always_size_sections): New. | |
834 | (elf_backend_modify_segment_map): New. | |
835 | 2003-10-31 Alexandre Oliva <aoliva@redhat.com> | |
836 | * config.bfd: Added frv-*-*linux*. | |
837 | * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Use idx 0 for | |
838 | ABS section, instead of crashing. | |
839 | (elf32_frv_relocate_section): Don't crash before warning about | |
840 | different segments in non-PIC relocation. | |
841 | 2003-10-17 Alexandre Oliva <aoliva@redhat.com> | |
842 | * elf32-frv.c (elf32_frv_relocate_section): Don't warn on LABEL24 | |
843 | relocs to undefweak symbols. | |
844 | (elf32_frv_relocate_section): Ditto for undefined symbols. | |
845 | 2003-10-06 Alexandre Oliva <aoliva@redhat.com> | |
846 | * elf32-frv.c (elf32_frv_create_dynamic_sections): Make sure | |
847 | gotfixup section was created. | |
848 | 2003-09-30 Alexandre Oliva <aoliva@redhat.com> | |
849 | * elf32-frv.c (elf32_frv_howto_table): Change GOT12, | |
850 | FUNCDESC_GOT12, GOTOFF12 and FUNCDESC_GOTOFF12 to | |
851 | complain_overflow_signed. | |
852 | * elf32-frv.c (_frv_add_rofixup): Do not error out if contents | |
853 | have not been allocated. | |
854 | (_frv_emit_got_relocs_plt_entries): Return non-void. Assert | |
855 | privfd only if dynamic sections were created. | |
856 | (elf32_frv_relocate_section): Compute gprel_segment, and use it | |
857 | for GPREL relocs. When linking relocatable FDPIC executables, | |
858 | emit warnings for relocations that would be illegal on PIE or | |
859 | shared libraries. Emit rofixup for R_FRV_32 only if input object | |
860 | is not FDPIC. | |
861 | (_frv_create_got_section): Define _gp symbol in the rofixup | |
862 | section. | |
863 | (elf32_frv_finish_dynamic_sections): If rofixups needed but | |
864 | dynamic sections missing, error out requesting -melf32frvfd. | |
865 | 2003-09-19 Alexandre Oliva <aoliva@redhat.com> | |
866 | * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Rearrange | |
867 | computation of addends from section and global or local symbol | |
868 | value. Change return type to bfd_boolean, and return a failure if | |
869 | a dynamic FUNCDESC or FUNCDESC_VALUE relocation that requires a | |
870 | nonzero addend is required. | |
871 | (elf32_frv_relocate_section): Likewise. Print error for | |
872 | unsupported nonzero addends. | |
873 | 2003-09-18 Alexandre Oliva <aoliva@redhat.com> | |
874 | * elf32-frv.c (FRV_SYM_LOCAL): In the absence of dynamic sections, | |
875 | force everything local. | |
876 | (_frv_emit_got_relocs_plt_entries): Cope with NULL sec. | |
877 | * elf32-frv.c (struct frv_elf_link_hash_table): Added sgotfixup. | |
878 | (frv_gotfixup_section): New. | |
879 | (FRV_SYM_LOCAL): Accept undefweak and local common symbols. | |
880 | (struct frv_pic_relocs_info): Split relocs into relocs32, relocsfd | |
881 | and relocsfdv. | |
882 | (_frv_add_rofixup): New. | |
883 | (_frv_emit_got_relocs_plt_entries): Generate fixups for non-PIE | |
884 | fdpic executables. Use FRV_SYM_LOCAL more widely to simplify and | |
885 | improve some ugly conditions. | |
886 | (elf32_frv_relocate_section): Likewise. Reject inter-segment | |
887 | relocations in fdpic. | |
888 | (_frv_create_got_section): Create .rofixup.got section. | |
889 | (struct _frv_dynamic_got_info): Added fixups. | |
890 | (_frv_count_got_plt_entries): Account in-GOT relocations into | |
891 | relocs32, relocsfd and relocsfdv. Account them into relocs or | |
892 | fixups, as appropriate. | |
893 | (elf32_frv_size_dynamic_sections): Size rofixup section. Simplify | |
894 | sizing of gotrel. | |
895 | (elf32_frv_finish_dynamic_sections): Verify that the right number | |
896 | of relocations and fixups was generated. | |
897 | (elf32_frv_check_relocs): Compute relocs32, relocsfd and | |
898 | relocsfdv. | |
899 | * elf32-frv.c (FRV_SYM_LOCAL): New macro, used instead of | |
900 | SYMBOL_CALLS_LOCAL and SYMBOL_REFERENCES_LOCAL. | |
901 | (FRV_FUNCDESC_LOCAL): New macro, used to decide whether a function | |
902 | descriptor of a (formerly-)global symbol is local. | |
903 | (struct frv_pic_relocs_info): Adjust comments. | |
904 | (_frv_emit_got_relocs_plt_entries): Adjust. | |
905 | (elf32_frv_relocate_section): Likewise. | |
906 | (_frv_count_got_plt_entries): Likewise. | |
907 | * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Don't add global | |
908 | symbol's value to addend in the common preamble. Decay dynamic | |
909 | symbols to section+offset if they bind or call locally, for GOT | |
910 | and FUNCDESC_VALUE, respectively. | |
911 | (elf32_frv_relocate_section): Likewise. | |
912 | (elf32_frv_check_relocs): Don't register as dynamic symbols of | |
913 | internal or hidden visibility. | |
914 | 2003-09-17 Alexandre Oliva <aoliva@redhat.com> | |
915 | * elf32-frv.c (_frv_emit_got_relocs_plt_entries): Get addend as | |
916 | argument, so as to not call _bfd_elf_rel_local_sym to compute it. | |
917 | (elf32_frv_relocate_section): Pass relocation addend in. Use | |
918 | original relocation addend to look up the got relocs/plt entries | |
919 | table. Do not call _bfd_elf_rel_local_sym. Don't error out when | |
920 | processing relocations that reference .scommon symbols. | |
921 | 2003-09-15 Alexandre Oliva <aoliva@redhat.com> | |
922 | Introduce support for dynamic linking. | |
923 | * elf32-frv.c (R_FRV_FUNCDESC_VALUE): Mark it as 64 bits. | |
924 | (elf32_frv_rel_32_howto, elf32_frv_rel_funcdesc_howto, | |
925 | elf32_frv_rel_funcdesc_value_howto): New REL descriptors. | |
926 | (frv_reloc_type_lookup): Return REL howtos for executables and | |
927 | dynamic libraries. | |
928 | (frv_info_to_howto_rel): New. | |
929 | (struct frv_elf_link_hash_table): New. | |
930 | (frv_hash_table, frv_got_section, frv_gotrel_section, | |
931 | frv_plt_section, frv_pltrel_section, frv_relocs_info, | |
932 | frv_got_initial_offset, frv_plt_initial_offset): New macros. | |
933 | (frv_elf_link_hash_table_create): New. | |
934 | (struct frv_pic_relocs_info): New. | |
935 | (frv_pic_relocs_info_hash, frv_pic_relocs_info_eq): New. | |
936 | (frv_pic_relocs_info_find): New. | |
937 | (frv_pic_relocs_info_for_global, frv_pic_relocs_info_for_local): | |
938 | New. | |
939 | (FRV_LZPLT_BLOCK_SIZE, FRV_LZPLT_RESOLVE_LOC): New. | |
940 | (_frv_add_dyn_reloc, _frv_osec_to_segment): New. | |
941 | (_frv_emit_got_relocs_plt_entries): New. | |
942 | (elf32_frv_relocate_section): Add support for dynamic linking. | |
943 | Handle new relocations. | |
944 | (_frv_create_got_section): New. | |
945 | (elf32_frv_create_dynamic_sections): New. | |
946 | (ELF_DYNAMIC_INTERPRETER): New. | |
947 | (struct _frv_dynamic_got_info): New. | |
948 | (_frv_count_got_plt_entries): New. | |
949 | (struct _frv_dynamic_got_plt_info): New. | |
950 | (_frv_compute_got_alloc_data): New. | |
951 | (_frv_get_got_entry, _frv_get_fd_entry): New. | |
952 | (_frv_assign_got_entries, _frv_assign_plt_entries): New. | |
953 | (_frv_resolve_final_relocs_info): New. | |
954 | (elf32_frv_size_dynamic_sections): New. | |
955 | (elf32_frv_finish_dynamic_sections): New. | |
956 | (elf32_frv_adjust_dynamic_symbol): New. | |
957 | (elf32_frv_finish_dynamic_symbol): New. | |
958 | (elf32_frv_check_relocs): Handle new relocs. Explain how the | |
959 | whole thing works. | |
960 | (elf_info_to_howto_rel): Define. | |
961 | (bfd_elf32_bfd_link_hash_table_create): Define. | |
962 | (elf_backend_create_dynamic_sections): Define. | |
963 | (elf_backend_adjust_dynamic_symbol): Define. | |
964 | (elf_backend_size_dynamic_sections): Define. | |
965 | (elf_backend_finish_dynamic_symbol): Define. | |
966 | (elf_backend_finish_dynamic_sections): Define. | |
967 | (elf_backend_want_got_sym): Define. | |
968 | (elf_backend_got_header_size): Define. | |
969 | (elf_backend_want_got_plt): Define. | |
970 | (elf_backend_plt_readonly): Define. | |
971 | (elf_backend_want_plt_sym): Define. | |
972 | (elf_backend_plt_header_size): Define. | |
973 | (elf_backend_may_use_rel_p): Define. | |
974 | (elf_backend_may_use_rela_p): Define. | |
975 | (elf_backend_default_use_rela_p): Define. | |
976 | 2003-08-08 Alexandre Oliva <aoliva@redhat.com> | |
977 | * elf32-frv.c (R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12, | |
978 | R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, | |
979 | R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New. | |
980 | (frv_reloc_map): Map the corresponding BFD relocs to them. | |
981 | (frv_reloc_type_lookup): ... and back to BFD relocs. | |
982 | * reloc.c: New relocs. | |
983 | * bfd-in2.h, libbfd.h: Rebuilt. | |
984 | 2003-08-04 Alexandre Oliva <aoliva@redhat.com> | |
985 | * elf32-frv.c (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO, | |
986 | R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI, | |
987 | R_FRV_FUNCDESC_GOTLO): New. | |
988 | (frv_reloc_map): Map the corresponding BFD relocs to them. | |
989 | (frv_reloc_type_lookup): ... and back to BFD relocs. | |
990 | * reloc.c: New relocs. | |
991 | * bfd-in2.h, libbfd.h: Rebuilt. | |
992 | ||
4301eeb1 MR |
993 | 2004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
994 | ||
995 | * elf32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional | |
996 | targets to support pages of up to 64kB. | |
997 | (elf32_bed): Redefine to get a separate backend data structure for | |
998 | traditional targets. | |
999 | * elf64-mips.c (ELF_MAXPAGESIZE): Redefine for traditional | |
1000 | targets to support pages of up to 64kB. | |
1001 | (elf64_bed): Redefine to get a separate backend data structure for | |
1002 | traditional targets. | |
1003 | * elfn32-mips.c (ELF_MAXPAGESIZE): Redefine for traditional | |
1004 | targets to support pages of up to 64kB. | |
1005 | (elf32_bed): Redefine to get a separate backend data structure for | |
1006 | traditional targets. | |
1007 | ||
0647ed71 MK |
1008 | 2004-01-04 Mark Kettenis <kettenis@gnu.org> |
1009 | ||
1010 | * elf32-sparc.c (elf32_sparc_grok_psinfo): New function. | |
1011 | ||
61adc1a4 NC |
1012 | 2004-01-02 Mark Kettenis <kettenis@gnu.org> |
1013 | ||
1014 | * elf32-i386.c (elf_i386_grok_prstatus): Add support for FreeBSD. | |
1015 | (elf_i386_grok_psinfo): Likewise. | |
1016 | ||
b50c15dc NC |
1017 | 2004-01-02 Bernardo Innocenti <bernie@develer.com> |
1018 | ||
1019 | * config.bfd: Add m68k-uClinux target. | |
1020 | ||
2627de83 AM |
1021 | 2004-01-01 Grant Edwards <grante@visi.com> |
1022 | ||
1023 | * elflink.h (elf_gc_sections): Warn when gc-sections option is ignored. | |
1024 | * elf32-h8300.c (elf32_h8_gc_mark_hook): New function. | |
1025 | (elf32_h8_gc_sweep_hook): New function. | |
1026 | (elf_backend_gc_mark_hook): Define. | |
1027 | (elf_backend_gc_sweep_hook): Define. | |
1028 | (elf_backend_can_gc_sections): Define. | |
1029 | ||
c9e214e5 | 1030 | For older changes see ChangeLog-0203 |
56882138 AM |
1031 | \f |
1032 | Local Variables: | |
1033 | mode: change-log | |
1034 | left-margin: 8 | |
1035 | fill-column: 74 | |
1036 | version-control: never | |
1037 | End: |