Commit | Line | Data |
---|---|---|
c9e214e5 AM |
1 | 2003-12-19 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> |
2 | ||
3 | Adfd m32r-linux and PIC support. Add new ABI that uses RELA. | |
4 | * config.bfd (m32r*-*-linux*, m32r*le-*-linux*, m32r*le-*-*): Added. | |
5 | * configure.in (bfd_elf32_m32rlin_vec, bfd_elf32_m32rlelin_vec, | |
6 | bfd_elf32_m32rle_vec): Added | |
7 | * configure: Regenerated. | |
8 | * elf32-m32r.c (m32r_info_to_howto, m32r_elf_adjust_dynamic_symbol, | |
9 | m32r_elf_size_dynamic_sections, m32r_elf_create_dynamic_sections, | |
10 | m32r_elf_finish_dynamic_sections, m32r_elf_finish_dynamic_symbol, | |
11 | allocate_dynrelocs, readonly_dynrelocs, m32r_elf_reloc_type_class, | |
12 | m32r_elf_fake_sections): Added. | |
13 | (m32r_elf_howto_table): Added | |
14 | R_M32R_16_RELA, R_M32R_32_RELA, R_M32R_24_RELA, | |
15 | R_M32R_10_PCREL_RELA, R_M32R_18_PCREL_RELA, | |
16 | R_M32R_26_PCREL_RELA, R_M32R_HI16_ULO_RELA, | |
17 | R_M32R_HI16_SLO_RELA, R_M32R_LO16_RELA, | |
18 | R_M32R_SDA16_RELA, R_M32R_RELA_GNU_VTINHERIT, | |
19 | R_M32R_RELA_GNU_VTENTRY, R_M32R_GOT24, | |
20 | R_M32R_26_PLTREL, R_M32R_COPY, R_M32R_GLOB_DAT, | |
21 | R_M32R_JMP_SLOT, R_M32R_RELATIVE, R_M32R_GOTOFF, | |
22 | R_M32R_GOTPC24, R_M32R_GOT16_HI_ULO, | |
23 | R_M32R_GOT16_HI_SLO, R_M32R_GOT16_LO, | |
24 | R_M32R_GOTPC_HI_ULO, R_M32R_GOTPC_HI_SLO, | |
25 | R_M32R_GOTPC_LO. | |
26 | (m32r_elf_relocate_section, m32r_elf_check_relocs): Changed for | |
27 | New ABI. | |
28 | * reloc.c: Add BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL, | |
29 | BFD_RELOC_M32R_COPY, BFD_RELOC_M32R_GLOB_DAT, | |
30 | BFD_RELOC_M32R_JMP_SLOT, BFD_RELOC_M32R_RELATIVE, | |
31 | BFD_RELOC_M32R_GOTOFF, BFD_RELOC_M32R_GOTPC24, | |
32 | BFD_RELOC_M32R_GOT16_HI_ULO, BFD_RELOC_M32R_GOT16_HI_SLO, | |
33 | BFD_RELOC_M32R_GOT16_LO, BFD_RELOC_M32R_GOTPC_HI_ULO, | |
34 | BFD_RELOC_M32R_GOTPC_HI_SLO, BFD_RELOC_M32R_GOTPC_LO. | |
35 | * targets.c (bfd_elf32_m32rlin_vec, bfd_elf32_m32rlelin_vec, | |
36 | bfd_elf32_m32rle_vec): Added. | |
37 | * bfd-in2.h: Regenerated. | |
38 | * libbfd.h: Regenerated. | |
39 | ||
40 | 2003-12-19 Danny Smith <dannysmith@users.sourceforge.net> | |
41 | ||
42 | * coffcode.h (styp_to_sec_flags): Don't treat .reloc section | |
43 | as SEC_DEBUGGING. | |
44 | ||
45 | 2003-12-18 Richard Sandiford <rsandifo@redhat.com> | |
46 | ||
47 | * elf32-mips.c (elf_mips_howto_table_rel): Replace all uses of | |
48 | mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc. Use | |
49 | _bfd_mips_elf_hi16_reloc for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16, | |
50 | _bfd_mips_elf_lo16_reloc for R_MIPS_LO16 and R_MIPS_GNU_REL_LO16, | |
51 | and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16. Change rightshift | |
52 | to 16 for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16. | |
53 | (mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc) | |
54 | (mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete. | |
55 | (_bfd_mips_elf32_gprel16_reloc): Remove special case. | |
56 | (mips_elf_gprel32_reloc, mips32_64bit_reloc): Likewise. | |
57 | ||
58 | * elf64-mips.c (mips_elf64_howto_table_rel): Replace all uses of | |
59 | mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc. Use | |
60 | _bfd_mips_elf_hi16_reloc for R_MIPS_HI16, _bfd_mips_elf_lo16_reloc | |
61 | for R_MIPS_LO16 and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16. | |
62 | Change R_MIPS_HI16's rightshift to 16. | |
63 | (mips_elf64_howto_table_rela): Replace all uses of | |
64 | mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc. | |
65 | Use _bfd_mips_elf_generic_reloc for R_MIPS_GOT16 as well. | |
66 | (mips_elf64_hi16_reloc, mips_elf64_got16_reloc): Delete. | |
67 | (mips_elf64_shift6_reloc): Remove special case. Use | |
68 | _bfd_mips_elf_generic_reloc instead of returning bfd_reloc_continue. | |
69 | ||
70 | * elfn32-mips.c (prev_reloc_section): Delete. | |
71 | (prev_reloc_address, prev_reloc_addend): Delete. | |
72 | (elf_mips_howto_table_rel, elf_mips_howto_table_rela): As for | |
73 | elf64-mips.c | |
74 | (GET_RELOC_ADDEND, SET_RELOC_ADDEND): Delete. | |
75 | (mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc) | |
76 | (mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete. | |
77 | (mips_elf_gprel16_reloc): Delete use of GET_RELOC_ADDEND. | |
78 | (mips_elf_literal_reloc, mips_elf_gprel32_reloc): Likewise. | |
79 | (mips16_jump_reloc, mips16_gprel_reloc): Likewise. | |
80 | (mips_elf_shift6_reloc): Likewise. Delete use of SET_RELOC_ADDEND. | |
81 | ||
82 | * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Use | |
83 | _bfd_relocate_contents to install an in-place addend. | |
84 | (mips_hi16): New structure. | |
85 | (mips_hi16_list): Moved from elf32-mips.c. | |
86 | (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_got16_reloc): New functions. | |
87 | (_bfd_mips_elf_lo16_reloc, _bfd_mips_elf_generic_reloc): New functions. | |
88 | (mips_elf_calculate_relocation): Assume addend is unshifted. | |
89 | (_bfd_mips_elf_relocate_section): Don't apply the howto rightshift | |
90 | on top of the usual high-part shift. Don't shift the addend right | |
91 | before calling mips_elf_calculate_relocation. | |
92 | ||
93 | * elfxx-mips.h (_bfd_mips_elf_hi16_reloc): Declare. | |
94 | (_bfd_mips_elf_got16_reloc, _bfd_mips_elf_lo16_reloc): Declare. | |
95 | (_bfd_mips_elf_generic_reloc): Declare. | |
96 | ||
97 | 2003-12-16 Eric Youngdale <eric@mkssoftware.com> | |
98 | Nick Clifton <nickc@redhat.com> | |
99 | ||
100 | * peicode.h (pe_ILF_build_a_bfd): Only skip one instance of each | |
101 | prefix character, if they are present. | |
102 | ||
103 | 2003-12-15 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> | |
104 | Nick Clifton <nickc@redhat.com> | |
105 | ||
106 | * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Ensure that correct flags | |
107 | are set on known section types. | |
108 | ||
109 | 2003-12-12 Nick Clifton <nickc@redhat.com> | |
110 | ||
111 | * po/ro.po: Updated translation. | |
112 | ||
113 | 2003-12-12 Alan Modra <amodra@bigpond.net.au> | |
114 | ||
115 | * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Check for | |
116 | NULL dyn_h. | |
117 | ||
118 | 2003-12-11 Nick Clifton <nickc@redhat.com> | |
119 | ||
120 | * elf.c (INCLUDE_SECTION_IN_SEGMENT): Skip PT_GNU_STACK segments. | |
121 | ||
122 | 2003-12-08 Richard Sandiford <rsandifo@redhat.com> | |
123 | ||
124 | * elfxx-mips.h, elfxx-mips.c, cpu-mips.c: Convert prototypes. | |
125 | Remove casts that were only needed for K&R compatibility. | |
126 | ||
127 | 2003-12-08 Alan Modra <amodra@bigpond.net.au> | |
128 | ||
129 | * elf-bfd.h (struct elf_backend_data): Remove "bfd *" and add | |
130 | "elflink_hash_entry *" param to elf_backend_link_output_symbol_hook. | |
131 | Add "elflink_hash_entry *" param to elf_backend_output_arch_syms. | |
132 | * elflink.h (elf_link_output_sym): Add "elflink_hash_entry *" param, | |
133 | and pass to output_symbol_hook. | |
134 | (elf_bfd_final_link): Adjust elf_link_output_sym calls. | |
135 | (elf_link_output_extsym): Likewise. | |
136 | (elf_link_input_bfd): Likewise. | |
137 | * elf32-sh64.c (sh64_elf_link_output_symbol_hook): Adjust. | |
138 | * elf32-v850.c (v850_elf_link_output_symbol_hook): Likewise. | |
139 | * elf64-mmix.c (mmix_elf_link_output_symbol_hook): Likewise. | |
140 | * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Likewise. | |
141 | * elfxx-mips.c (_bfd_mips_elf_link_output_symbol_hook): Likewise. | |
142 | * elfxx-mips.h (_bfd_mips_elf_link_output_symbol_hook): Likewise. | |
143 | * elf64-sparc.c (sparc64_elf_output_arch_syms): Likewise. | |
144 | * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Likewise. | |
145 | Validate dynh->h against h. | |
146 | * elf64-ppc.c (struct ppc_link_hash_entry): Add adjust_done bitfield. | |
147 | (link_hash_newfunc): Init it. | |
148 | (adjust_opd_syms): New function. | |
149 | (ppc64_elf_edit_opd): Set adjust_done when global .opd sym adjusted. | |
150 | Set opd.adjust for all .opd relocs. Call adjust_opd_syms. | |
151 | (ppc64_elf_tls_optimize): Adjust possible .opd sym values here. | |
152 | (ppc64_elf_relocate_section): Also adjust syms not a multiple of 24. | |
153 | (ppc64_elf_output_symbol_hook): New function. | |
154 | (elf_backend_link_output_symbol_hook): Define. | |
155 | ||
156 | 2003-12-07 Richard Sandiford <rsandifo@redhat.com> | |
157 | ||
158 | * elf32-mips.c, elfn32-mips.c, elf64-mips.c: Convert prototypes. | |
159 | Remove casts that were only needed for K&R compatibility. | |
160 | ||
161 | 2003-12-05 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> | |
162 | ||
163 | * coff-arm.c (aoutarm_std_reloc_howto [ARM_WINCE]): Set | |
164 | partial_inplace for these relocs to FALSE for comptability with | |
165 | the MS linker. | |
166 | Remap ARM_26D relocation from 5 to 0. This fixes "bad fixup" error | |
167 | generated by MS linker, and brings the relocation in line the MS | |
168 | PE documentation. | |
169 | ||
170 | 2003-12-04 H.J. Lu <hongjiu.lu@intel.com> | |
171 | ||
172 | * elf32-ppc.c (ppc_elf_relax_section): Don't check relax_finalizing. | |
173 | ||
174 | 2003-12-04 H.J. Lu <hongjiu.lu@intel.com> | |
175 | ||
176 | * elfxx-ia64.c (elfNN_ia64_relax_section): Use the | |
177 | need_relax_finalize field in link_info instead of | |
178 | relax_finalizing to check if the relax finalize pass is being | |
179 | done. | |
180 | ||
181 | 2003-12-04 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> | |
182 | ||
183 | * coff-arm.c (coff_arm_relocate_section, bfd_arm_process_before_allocation): | |
184 | Change ARM26* to ARM_26* in comments to match definitions. | |
185 | (coff_arm_adjust_symndx): Replace hard-coded constants with | |
186 | appropriate definitions (ARM_26*). | |
187 | ||
188 | 2003-12-04 Alan Modra <amodra@bigpond.net.au> | |
189 | ||
190 | * coff-i860.c (coff_i860_reloc_nyi): Return bfd_reloc_not_supported. | |
191 | * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Warning fixes. | |
192 | (mn10300_elf_relax_section): Likewise. | |
193 | * nlm32-alpha.c (ONES): Define. | |
194 | (nlm32_alpha_howto_table): Use it to avoid warnings. | |
195 | ||
196 | 2003-12-04 Alan Modra <amodra@bigpond.net.au> | |
197 | ||
198 | * elf32-i386.c (elf_i386_object_p): Delete. | |
199 | (elf_backend_object_p): Don't define. | |
200 | * elf32-s390.c (elf_s390_object_p): No need to alloc tdata here. | |
201 | * elf32-sh.c (sh_elf_object_p): Likewise. | |
202 | * elf32-sparc.c (elf32_sparc_object_p): Likewise. | |
203 | * elf64-alpha.c (elf64_alpha_object_p): Likewise. | |
204 | * elf64-s390.c (elf_s390_object_p): Likewise. | |
205 | * elf64-x86-64.c (elf64_x86_64_elf_object_p): Likewise. | |
206 | ||
207 | 2003-12-03 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> | |
208 | ||
209 | * archures.c (bfd_mach_m32r2): Add new machine type. | |
210 | * bfd-in2.h: Regenerate. | |
211 | * cpu-m32r.c : Add new machine type. | |
212 | * elf32-m32r.c (m32r_elf_object_p, m32r_elf_final_write_processing, | |
213 | m32r_elf_merge_private_bfd_data): Add support for new machine | |
214 | type. | |
215 | ||
216 | 2003-12-03 Dave Airlie <airlied@linux.ie> | |
217 | ||
218 | * config.bfd: Add vax-linux-gnu target. | |
219 | * configure.in: Likewise. | |
220 | * configure: Regenerate. | |
221 | ||
222 | 2003-12-03 Alan Modra <amodra@bigpond.net.au> | |
223 | ||
224 | * ecoff.c (ecoff_link_add_archive_symbols): Update for renamed | |
225 | bfd_link_hash_entry field "next" -> "und_next". | |
226 | * linker.c (_bfd_link_hash_newfunc): Likewise. | |
227 | (bfd_link_add_undef): Likewise. | |
228 | (_bfd_generic_link_add_archive_symbols): Likewise. | |
229 | (_bfd_generic_link_add_one_symbol): Likewise. | |
230 | * xcofflink.c (xcoff_link_add_symbols): Likewise. | |
231 | ||
232 | 2003-12-02 Nick Clifton <nickc@redhat.com> | |
233 | ||
234 | * configure.in (ALL_LINGUAS): Add ro. | |
235 | * po/ro.po: New Romanian translation. | |
236 | ||
237 | 2003-12-02 Alan Modra <amodra@bigpond.net.au> | |
238 | ||
239 | * Makefile.am: Run "make dep-am". | |
240 | * Makefile.in: Regenerate. | |
241 | ||
242 | 2003-12-01 Dmitry Semyonov <Dmitry.Semyonov@oktet.ru> | |
243 | ||
244 | * coffcode.h (coff_compute_section_file_positions): Set page_size | |
245 | to 1 instead of 0 in the case file alignment value is zero. | |
246 | ||
247 | 2003-12-01 Kazu Hirata <kazu@cs.umass.edu> | |
248 | ||
249 | * coff-rs6000.c: Remove ARGSUSED and VARARGS. | |
250 | * coff64-rs6000.c: Likewise. | |
251 | * coffcode.h: Likewise. | |
252 | * elf32-vax.c: Likewise. | |
253 | * hash.c: Likewise. | |
254 | * hppabsd-core.c: Likewise. | |
255 | * hpux-core.c: Likewise. | |
256 | * ihex.c: Likewise. | |
257 | * netbsd-core.c: Likewise. | |
258 | * osf-core.c: Likewise. | |
259 | * pdp11.c: Likewise. | |
260 | * ptrace-core.c: Likewise. | |
261 | * sco5-core.c: Likewise. | |
262 | * section.c: Likewise. | |
263 | * sunos.c: Likewise. | |
264 | * trad-core.c: Likewise. | |
265 | ||
266 | 2003-12-01 Alan Modra <amodra@bigpond.net.au> | |
267 | ||
268 | * elf-bfd.h (is_elf_hash_table): Take hash tab rather than info arg. | |
269 | * elf.c (_bfd_elf_merge_sections): Adjust to suit. | |
270 | (_bfd_elf_link_just_syms): Likewise. | |
271 | (bfd_elf_get_needed_list): Likewise. | |
272 | (bfd_elf_get_runpath_list): Likewise. | |
273 | (_bfd_elf_link_hash_copy_indirect): Remove unneeded parens. | |
274 | * elf32-hppa.c (elf32_hppa_setup_section_lists): Don't check hash tab | |
275 | creator flavour. | |
276 | (elf32_hppa_set_gp): Look up output sections rather than using htab. | |
277 | * elf32-i960.c: Comment fix. Formatting. | |
278 | * elf32-m32r.c (m32r_elf_add_symbol_hook): Use is_elf_hash_table | |
279 | rather than testing creator flavour. | |
280 | * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise. | |
281 | * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise. | |
282 | * elflink.c (_bfd_elf_link_create_dynamic_sections): Adjust for | |
283 | is_elf_hash_table change. Remove redundant test. | |
284 | (bfd_elf_record_link_assignment): Use is_elf_hash_table rather than | |
285 | testing creator flavour. | |
286 | (elf_link_record_local_dynamic_symbol): Adjust for is_elf_hash_table. | |
287 | (_bfd_elf_fix_symbol_flags): Likewise. | |
288 | (_bfd_elf_adjust_dynamic_symbol): Likewise. | |
289 | * elflink.h (elf_link_add_object_symbols): Likewise. Remove redundant | |
290 | checks. Use is_elf_hash_table rather than testing creator flavour. | |
291 | Use hash_table throughout in place of info->hash. | |
292 | (elf_add_dynamic_entry): Adjust for is_elf_hash_table change. | |
293 | (NAME(bfd_elf,size_dynamic_sections)): Likewise. Remove redundant | |
294 | check. | |
295 | (elf_bfd_final_link): Adjust for is_elf_hash_table change. | |
296 | (elf_link_check_versioned_symbol): Use is_elf_hash_table rather than | |
297 | testing creator flavour. | |
298 | (elf_gc_sections): Add is_elf_hash_table check. | |
299 | (elf_gc_common_finalize_got_offsets): Likewise. | |
300 | (elf_bfd_discard_info): Adjust for is_elf_hash_table change. Remove | |
301 | redundant check. | |
302 | * elfxx-ia64.c (elfNN_ia64_relax_section): Use is_elf_hash_table | |
303 | rather than testing creator flavour. | |
304 | ||
305 | 2003-11-28 Christian Groessler <chris@groessler.org> | |
306 | ||
307 | * cpu-z8k.c: Convert to ISO C90. | |
308 | * coff-z8k.c: Likewise. | |
309 | ||
310 | 2003-11-27 Alexandre Oliva <aoliva@redhat.com> | |
311 | ||
312 | * elf-bfd.h (elf_backend_data::elf_backend_modify_segment_map): | |
313 | Add link info argument. | |
314 | * elf32-i370.c (elf_backend_modify_segment_map): Likewise. | |
315 | * elf32-ppc.c (ppc_elf_modify_segment_map): Likewise. | |
316 | * elf32-xtensa.c (elf_xtensa_modify_segment_map): Likewise. | |
317 | * elf64-hppa.c (elf64_hppa_modify_segment_map): Likewise. | |
318 | * elfxx-ia64.c (elfNN_ia64_modify_segment_map): Likewise. | |
319 | * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Likewise. | |
320 | * elfxx-mips.h (_bfd_mips_elf_modify_segment_map): Likewise. | |
321 | * elf.c (assign_file_positions_except_relocs, | |
322 | assign_file_positions_for_segments): Likewise. Adjust calls. | |
323 | ||
324 | 2003-11-27 Mark Kettenis <kettenis@gnu.org> | |
325 | ||
326 | * elf.c (elfcore_grok_netbsd_procinfo): Make a pseudosection out | |
327 | of the note. | |
328 | ||
329 | 2003-11-26 Daniel Jacobowitz <drow@mvista.com> | |
330 | Richard Sandiford <rsandifo@redhat.com> | |
331 | ||
332 | * elfxx-mips.c (mips_elf_set_global_got_offset): Don't set no_fn_stub. | |
333 | (mips_elf_set_no_stub): New function. | |
334 | (mips_elf_multi_got): Call it. | |
335 | (_bfd_mips_elf_finish_dynamic_symbol): If a relocation is needed for | |
336 | a secondary GOT entry, create an R_MIPS_32 or R_MIPS_64 relocation and | |
337 | use mips_elf_create_dynamic_relocation to deal with any compatibility | |
338 | issues. Store the adjusted addend in the GOT slot. | |
339 |