PR ld/11217
[binutils-gdb.git] / bfd / ChangeLog
1 2010-01-27 Alan Modra <amodra@gmail.com>
2
3 PR ld/11217
4 * elf64-ppc.c (struct ppc_link_hash_table): Add toc_bfd, toc_first_sec.
5 (ppc64_elf_setup_section_lists): Init them.
6 (ppc64_elf_next_toc_section): Don't partition multi-toc between .got
7 and .toc on the same input file.
8 (ppc64_elf_relocate_section): Correct GOT entry offset.
9
10 2010-01-26 Tristan Gingold <gingold@adacore.com>
11
12 * targets.c (BFD_JUMP_TABLE_ARCHIVE): Add initializer for write_ar_hdr.
13 (bfd_target): Add _bfd_write_ar_hdr_fn field.
14 * archive.c (is_bsd44_extended_name): New macro.
15 (_bfd_generic_read_ar_hdr_mag): Use it. Add extra_size.
16 (bfd_slurp_armap): Also check for "__.SYMDEF" as a BSD4.4 extended
17 name.
18 (_bfd_archive_bsd44_construct_extended_name_table): New function.
19 (_bfd_generic_write_ar_hdr): Ditto.
20 (_bfd_bsd44_write_ar_hdr): Ditto.
21 (_bfd_write_archive_contents): Call _bfd_write_ar_hdr.
22 (bsd_write_armap): Adjust firstreal computation.
23 * libbfd-in.h (struct areltdata): Add extra_size field.
24 (_bfd_generic_write_ar_hdr): Add prototype.
25 (_bfd_bsd44_write_ar_hdr): Ditto.
26 (_bfd_write_ar_hdr): Define.
27 (_bfd_noarchive_write_ar_hdr): Ditto.
28 (_bfd_archive_bsd_write_ar_hdr): Ditto.
29 (_bfd_archive_coff_write_ar_hdr): Ditto.
30 (_bfd_archive_bsd44_slurp_armap): Ditto.
31 (_bfd_archive_bsd44_slurp_extended_name_table): Ditto.
32 (_bfd_archive_bsd44_construct_extended_name_table): New prototype.
33 (_bfd_archive_bsd44_truncate_arname): Ditto.
34 (_bfd_archive_bsd44_write_armap): Ditto.
35 (_bfd_archive_bsd44_read_ar_hdr): Ditto.
36 (_bfd_archive_bsd44_write_ar_hdr): Ditto.
37 (_bfd_archive_bsd44_openr_next_archived_file): Ditto.
38 (_bfd_archive_bsd44_get_elt_at_index): Ditto.
39 (_bfd_archive_bsd44_generic_stat_arch_elt): Ditto.
40 (_bfd_archive_bsd44_update_armap_timestamp): Ditto.
41 * libbfd.h: Regenerate.
42 * oasys.c (oasys_write_ar_hdr): Define.
43 * libecoff.h (_bfd_ecoff_write_ar_hdr): Define.
44 * ieee.c (ieee_write_ar_hdr): Define.
45 * elf64-mips.c (bfd_elf64_archive_write_ar_hdr): Define.
46 * coff-rs6000.c (rs6000coff_vec): Adjust for write_ar_hdr field.
47 (bfd_pmac_xcoff_backend_data): Ditto.
48 * coff64-rs6000.c (rs6000coff64_vec): Ditto.
49 (bfd_xcoff_aix5_backend_data): Ditto.
50 * coff-alpha.c (alpha_ecoff_write_ar_hdr): Define.
51 * aout-target.h (MY_write_ar_hdr): Define it if not defined.
52 * aout-tic30.c (MY_write_ar_hdr): Ditto.
53 * mach-o-target.c (TARGET_NAME): Use _bfd_archive_bsd44 archive.
54 (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr)
55 (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table)
56 (bfd_mach_o_construct_extended_name_table)
57 (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap)
58 (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt)
59 (bfd_mach_o_update_armap_timestamp): Moved to mach-o.c
60 * mach-o.c (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr)
61 (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table)
62 (bfd_mach_o_construct_extended_name_table)
63 (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap)
64 (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt)
65 (bfd_mach_o_update_armap_timestamp): Moved from mach-o-target.c
66 * bfd-in2.h: Regenerate.
67
68 2010-01-26 Alan Modra <amodra@gmail.com>
69 H.J. Lu <hongjiu.lu@intel.com>
70
71 PR ld/11218
72 * elflink.c (elf_link_output_extsym): Do not ignore undefined
73 symbols with ref_regular set when gc_sections is active.
74
75 2010-01-25 Alan Modra <amodra@gmail.com>
76
77 PR ld/11217
78 * elf64-ppc.c (ppc64_elf_tls_optimize): Optimize tls sequences
79 with relocations against undefined weak symbols.
80 (ppc64_elf_relocate_section): Don't optimize calls to undefined
81 weak functions if the symbol is dynamic.
82 (ppc64_elf_relocate_section): Edit tprel tls sequences.
83 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
84 (_bfd_elf_ppc_at_tprel_transform): New function.
85 * bfd-in.h (_bfd_elf_ppc_at_tprel_transform): Declare.
86 * bfd-in2.h: Regenerate.
87
88 2010-01-23 Richard Sandiford <r.sandiford@uk.ibm.com>
89
90 * coff-rs6000.c (xcoff_howto_table): Change size to 0 and bitsize to 1.
91 (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_NONE.
92 * coff64-rs6000.c (xcoff64_howto_table): Change size to 0 and
93 bitsize to 1.
94 (xcoff64_reloc_type_lookup): Handle BFD_RELOC_NONE.
95
96 2010-01-21 Nick Clifton <nickc@redhat.com>
97
98 * elflink.c (elf_link_add_object_symbols): Look up name of
99 undefined symbol both before and after versioning has been
100 applied. Do not bother with symbols that are weakly undefined.
101
102 2010-01-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
103
104 * elf32-s390.c (elf32_s390_merge_private_bfd_data): New function.
105 (bfd_elf32_bfd_merge_private_bfd_data): New macro definition.
106
107 2010-01-19 Cary Coutant <ccoutant@google.com>
108
109 * dwarf2.c (read_attribute_value): Add DW_FORM_ref_sig8.
110
111 2010-01-19 Daisuke Hatayama <d.hatayama@jp.fujitsu.com>
112 Alan Modra <amodra@gmail.com>
113
114 * elfcode.h (elf_swap_ehdr_out): Handle e_phnum > 0xffff.
115 (elf_object_p): Read e_phnum extension.
116 (elf_write_shdrs_and_ehdr): Write e_phnum extension.
117 * elfcore.h (elf_core_file_p): Read e_phnum extension. Sanity check
118 that we can read last program header.
119
120 2010-01-19 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
121
122 * elf32-arm.c (elf32_arm_howto_table_1): Correct bitsize of
123 R_ARM_THM_CALL entry.
124 (elf32_arm_final_link_relocate): Correct calculation of
125 reloc_signed_max when doing a R_ARM_THM_CALL, R_ARM_THM_XPC22,
126 or R_ARM_THM_JUMP24 relocation.
127
128 2010-01-18 Alan Modra <amodra@gmail.com>
129
130 PR 11168
131 * coffcode.h (coff_compute_section_file_positions): Move Rs6000COFF_C
132 block past vars in COFF_IMAGE_WITH_PE block. Report error on more
133 than 32k sections.
134
135 2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
136
137 Fix compilation warning on gcc-3.4.
138 * vms-tir.c (start_etir_record, sto_imm): Rename the prototype
139 parameter index to sec_index according to the function definition.
140
141 2010-01-13 Chao-ying Fu <fu@mips.com>
142
143 * elfxx-mips.c (JR_TO_B_P): New define to transform JR to B.
144 It is true for all CPUs.
145 (jal_reloc_p): New function.
146 (mips_elf_calculate_relocation): Rename require_jalxp to
147 cross_mode_jump_p.
148 Update comment for CROSS_MODE_JUMP_P.
149 Set up cross_mode_jump_p based on the mode change.
150 (mips_elf_perform_relocation): Rename require_jalx to cross_mode_jump_p.
151 Update comment for CROSS_MODE_JUMP_P.
152 Test cross_mode_jump_p and jal_reloc_p to turn jal to jalx.
153 Use !cross_mode_jump_p to guard conversion.
154 Convert "jr t9" to "b", if possible.
155 (_bfd_mips_elf_relocate_section): Rename require_jalx to
156 cross_mode_jump_p.
157 Pass &cross_mode_jump_p to call mips_elf_calculate_relocation.
158 Pass cross_mode_jump_p to call mips_elf_perform_relocation.
159
160 2010-01-13 Nick Clifton <nickc@redhat.com>
161
162 * cpu-m32c.c (m32c_scan): New function. Ensures that a scan for
163 "m32c" returns the m32c arch_info_struct and not the m16c
164 arch_info_struct.
165 (arch_info_struct): Use the new scan function.
166 (bfd_m32c_arch): Likewise.
167
168 2010-01-13 Tristan Gingold <gingold@adacore.com>
169
170 * config.bfd: Remove duplicated target vector for i386-*-darwin.
171 Appends new arch instead of overriding.
172 Use mach_o_x86_64_vec for x86_64-*-darwin.
173 * configure.in: Add mach_o_x86_64_vec.
174 * configure: Regenerate.
175 * targets.c: Declare mach_o_x86_64_vec, add it to _bfd_target_vector.
176 * Makefile.am (BFD64_BACKENDS): Add mach-o-x86-64.lo
177 (BFD64_BACKENDS_CFILES): Add mach-o-x86-64.c
178 * Makefile.in: Regenerate.
179 * mach-o-x86-64.c: New file.
180
181 2010-01-13 Tristan Gingold <gingold@adacore.com>
182
183 * reloc.c: Add MACH_O_X86_64 relocations.
184 * bfd-in2.h: Regenerate.
185 * libbfd.h: Regenerate.
186
187 2010-01-13 Tristan Gingold <gingold@adacore.com>
188
189 * archive.c (normalize): Use lbasename.
190 (bfd_bsd_truncate_arname): Ditto.
191 (bfd_gnu_truncate_arname): Ditto.
192
193 2010-01-12 Tristan Gingold <gingold@adacore.com>
194
195 * makefile.vms (CFLAGS): Turns warnings into informational messages.
196
197 2010-01-11 Tristan Gingold <gingold@adacore.com>
198
199 * mach-o.h: Add x86-64 relocation types.
200
201 2010-01-11 Tristan Gingold <gingold@adacore.com>
202
203 * mach-o.h (bfd_mach_o_backend_data): Add arch field.
204 (bfd_mach_o_set_arch_mach): New prototype.
205 * mach-o.c (bfd_mach_o_mkobject): Define with bfd_mach_o_gen_mkobject.
206 (bfd_mach_o_set_arch_mach): New function.
207 (bfd_mach_o_gen_mkobject): New function.
208 Set TARGET_ARCHITECTURE for the generic back-ends.
209 * mach-o-target.c (bfd_mach_o_set_arch_mach): Remove define.
210 Check that TARGET_ARCHITECTURE is defined.
211 Add TARGET_ARCHITECTURE in TARGET_NAME_BACKEND structure.
212 * mach-o-i386.c (TARGET_ARCHITECTURE): Define.
213
214 2010-01-11 Tristan Gingold <gingold@adacore.com>
215
216 * archive.c (bfd_slurp_armap): Also check for Mach-O sorted armap.
217
218 2010-01-11 Nick Clifton <nickc@redhat.com>
219
220 * elf32-v850.c (v850_elf_perform_relocation): Fix overflow
221 handling of R_V850_HI16_S relocation.
222
223 2010-01-11 Alan Modra <amodra@gmail.com>
224
225 PR 11103
226 * dwarf1.c (parse_die): Correct FORM_STRING data pointer increment.
227
228 2010-01-11 Alan Modra <amodra@gmail.com>
229
230 PR 6832
231 * dwarf2.c (struct comp_unit): Add sec_info_ptr.
232 (find_abstract_instance_name): Use it.
233 (parse_comp_unit): Set it.
234
235 2010-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
236
237 * Makefile.in: Regenerate.
238 * configure: Regenerate.
239
240 2010-01-08 Tristan Gingold <gingold@adacore.com>
241
242 * archive.c: Remove bfd_special_undocumented_glue.
243
244 2010-01-08 Alan Modra <amodra@gmail.com>
245
246 PR ld/11133
247 * elf32-cr16.c (elf32_cr16_gc_mark_hook): Call _bfd_elf_gc_mark_hook.
248 * elf32-microblaze.c (microblaze_elf_gc_mark_hook): Likewise.
249 * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
250
251 2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
252
253 PR ld/11138
254 * elflink.c (elf_link_check_versioned_symbol): Don't abort if
255 a symbol referenced by DSO is is defined in a non-shared object
256 and forced local.
257
258 2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
259
260 PR ld/11133
261 * elflink.c (_bfd_elf_gc_mark_hook): Check section XXX for
262 undefined __start_XXX/__stop_XXX in all input files and set
263 SEC_KEEP.
264
265 2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
266
267 PR ld/11143
268 * elflink.c (elf_gc_sweep): Keep SHT_NOTE section.
269
270 2010-01-04 Daniel Gutson <dgutson@codesourcery.com>
271
272 * bfd.m4 (BFD_HAVE_SYS_PROCFS_TYPE): Define _STRUCTURE_PROC
273 before including procfs.h.
274 (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise.
275 * configure.in: Added autoconf probe for the pr_fpreg member.
276 * configure: Regenerated.
277 * config.in: Regenerated.
278 * elf.c: Define _STRUCTURE_PROC before including procfs.h.
279
280 2010-01-04 Joel Brobecker <brobecker@adacore.com>
281
282 Fix -Wshadow warnings in dwarf2.c (seen on alpha-tru64).
283 * dwarf2.c (concat_filename): Rename dirname with dir_name
284 to void shadowing the dirname function.
285 Rename subdirname with subdir_name to stay consistent with
286 the new dir_name variable name.
287
288 2010-01-04 Edmar Wienskoski <edmar@freescale.com>
289
290 * archures.c: Add bfd_mach_ppc_e500mc64.
291 * bfd-in2.h: Regenerate.
292 * cpu-powerpc.c (bfd_powerpc_archs): Add entry for
293 bfd_mach_ppc_e500mc64.
294
295 2010-01-01 Joel Brobecker <brobecker@adacore.com>
296
297 Fix -Wshadow warnings (seen on ppc-aix)
298 * xcofflink.c: Replace finfo by flinfo throughout.
299
300 For older changes see ChangeLog-2009
301 \f
302 Local Variables:
303 mode: change-log
304 left-margin: 8
305 fill-column: 74
306 version-control: never
307 End: