Commit | Line | Data |
---|---|---|
87458ed2 KK |
1 | 2012-04-17 Kaz Kojima <kkojima@rr.iij4u.or.jp> |
2 | ||
3 | * elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic | |
4 | relocations when LE conversion happens on the IE tls symbol. | |
5 | ||
ea2d813e RM |
6 | 2012-04-17 Roland McGrath <mcgrathr@google.com> |
7 | ||
8 | * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding | |
9 | so that 32-byte boundary is a proper instruction boundary. | |
10 | ||
da03bf4d TG |
11 | 2012-04-17 Tristan Gingold <gingold@adacore.com> |
12 | ||
13 | * vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to | |
14 | member of an object archive.< | |
15 | ||
d2226024 TG |
16 | 2012-04-17 Tristan Gingold <gingold@adacore.com> |
17 | ||
18 | * vms-lib.c (MAX_EKEYLEN): Define. | |
19 | (MAX_KEYLEN): Fix value. | |
20 | (vms_write_index): Add comments and fix indentation. | |
21 | Adjust comparaison. Add assertions. Free kbn_blk. | |
22 | (_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN. | |
23 | Compense MAX_KEYLEN adjustment. | |
24 | ||
cb4437b8 MR |
25 | 2012-04-16 Maciej W. Rozycki <macro@linux-mips.org> |
26 | ||
27 | * elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs. | |
28 | (_bfd_mips_elf_check_relocs): Update accordingly. | |
29 | ||
aed64b35 L |
30 | 2012-04-13 Alan Modra <amodra@gmail.com> |
31 | ||
32 | PR ld/13947 | |
33 | * elflink.c (bfd_elf_final_link): Set reloc_count to 0 for | |
34 | reloc sections. | |
35 | ||
2615994e DM |
36 | 2012-04-12 David S. Miller <davem@davemloft.net> |
37 | ||
38 | * reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32, | |
39 | BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs. | |
40 | * libbfd.h: Regenerate. | |
41 | * bfd-in2.h: Likewise. | |
42 | * elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function. | |
43 | (_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34, | |
44 | R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10. | |
45 | (_bfd_sparc_elf_reloc_type_lookup): Handle new relocs. | |
46 | (_bfd_sparc_elf_check_relocs): Likewise. | |
47 | (_bfd_sparc_elf_gc_sweep_hook): Likewise. | |
48 | (_bfd_sparc_elf_relocate_section): Likewise. | |
49 | ||
b38cadfb NC |
50 | 2012-04-12 Roland McGrath <mcgrathr@google.com> |
51 | ||
52 | * elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry): | |
53 | New variables. | |
54 | (struct elf32_arm_link_hash_table): New member `nacl_p'. | |
55 | (elf32_arm_link_hash_table_create): Initialize it. | |
56 | (elf32_arm_nacl_link_hash_table_create): New function. | |
57 | (arm_movw_immediate, arm_movt_immediate): New functions. | |
58 | (elf32_arm_populate_plt_entry): Test HTAB->nacl_p. | |
59 | (elf32_arm_finish_dynamic_sections): Likewise. | |
60 | (elf32_arm_output_plt_map_1): Likewise. | |
61 | (bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec): | |
62 | New backend vector stanza. | |
63 | (elf32_arm_nacl_modify_segment_map): New function. | |
64 | * config.bfd: Handle arm-*-nacl*, armeb-*-nacl*. | |
65 | * targets.c: Support bfd_elf32_{big,little}_nacl_vec. | |
66 | * configure.in: Likewise. | |
67 | (bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here. | |
68 | (bfd_elf32_littlearm_nacl_vec): Likewise. | |
69 | (bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise. | |
70 | (bfd_elf32_bigarm_symbian_vec): Likewise. | |
71 | (bfd_elf32_littlearm_symbian_vec): Likewise. | |
72 | (bfd_elf32_bigarm_vxworks_vec): Likewise. | |
73 | (bfd_elf32_littlearm_vxworks_vec): Likewise. | |
74 | * configure: Regenerated. | |
75 | ||
202e2356 NC |
76 | 2012-04-12 Tristan Gingold <gingold@adacore.com> |
77 | ||
78 | * elflink.c (elf_link_output_extsym): Add a guard. | |
79 | (bfd_elf_final_link): Remove assertion. | |
80 | (bfd_elf_final_link): Add a guard. | |
81 | * elfnn-ia64.c (INCLUDE_IA64_VMS): Removed. | |
82 | (elfNN_vms_section_from_shdr, elfNN_vms_object_p) | |
83 | (elfNN_vms_post_process_headers, elfNN_vms_section_processing) | |
84 | (elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup): | |
85 | Remove. | |
86 | (elfNN-ia64-vms target): Move to ... | |
87 | * elf64-ia64-vms.c: New file. | |
88 | * configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo | |
89 | * Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo. | |
90 | (BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c. | |
91 | * configure: Regenerate. | |
92 | * Makefile.in: Regenerate. | |
93 | ||
4841cf0c NC |
94 | 2012-04-11 Nick Clifton <nickc@redhat.com> |
95 | ||
96 | PR binutils/13897 | |
97 | * elf64-ppc.c (opd_entry_value): When dealing with sections | |
98 | without relocs, keep the last section loaded in order to avoid | |
99 | unnecessary reloads. | |
100 | ||
d324f6d6 RM |
101 | 2012-04-09 Roland McGrath <mcgrathr@google.com> |
102 | ||
103 | * elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs. | |
104 | * elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs. | |
105 | (nacl_modify_program_headers): Likewise. | |
106 | ||
5a68afcf RM |
107 | 2012-04-03 Roland McGrath <mcgrathr@google.com> |
108 | ||
109 | * elf-nacl.c: New file. | |
110 | * elf-nacl.h: New file. | |
111 | * elf32-i386.c (elf_backend_modify_segment_map): Define for | |
112 | bfd_elf32_i386_nacl_vec. | |
113 | (elf_backend_modify_program_headers): Likewise. | |
114 | * elf64-x86-64.c (elf_backend_modify_segment_map): Define for | |
115 | bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec. | |
116 | (elf_backend_modify_program_headers): Likewise. | |
117 | * Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here. | |
118 | (BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here. | |
119 | * Makefile.in: Regenerated. | |
120 | * configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here. | |
121 | (bfd_elf32_x86_64_nacl_vec): Likewise. | |
122 | (bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise. | |
123 | (bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise. | |
124 | (bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise. | |
125 | (bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise. | |
126 | (bfd_elf32_i386_nacl_vec): Likewise. | |
127 | (bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise. | |
128 | (bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise. | |
129 | * configure: Regenerated. | |
130 | ||
3a4ae681 AS |
131 | 2012-03-31 Andreas Schwab <schwab@linux-m68k.org> |
132 | ||
133 | * elf32-m68k.c (elf_m68k_relocate_section): Allow | |
134 | R_68K_TLS_LE{8,16,32} for PIE. | |
135 | ||
a7e28bbe AK |
136 | 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
137 | ||
138 | * elf64-s390.c: Fix several comments regarding PLT entry | |
139 | description. | |
140 | * elf32-s390.c: Likewise. | |
141 | ||
f41345a7 AK |
142 | 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
143 | ||
144 | * elf64-s390.c: Use the section pointer shortcuts in | |
145 | elf_link_hash_table and remove them from the target specific | |
146 | variant. | |
147 | * elf32-s390.c: Likewise. | |
148 | ||
9aa17453 AK |
149 | 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
150 | ||
151 | * elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry): | |
152 | New definitions. | |
153 | (PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove. | |
154 | (elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32. | |
155 | (elf_s390_finish_dynamic_sections): Likewise. | |
156 | * elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry) | |
157 | (elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry) | |
158 | (elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions. | |
159 | (PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*) | |
160 | (PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove. | |
161 | ||
00d8c7a9 AK |
162 | 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
163 | ||
164 | * elf32-s390.c (struct elf_s390_dyn_relocs): Remove. | |
165 | Rename all occurrences in the file to elf_dyn_relocs. | |
166 | * elf64-s390.c: Likewise. | |
167 | ||
a66eed7a AM |
168 | 2012-03-30 Alan Modra <amodra@gmail.com> |
169 | ||
170 | * elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic | |
171 | libraries. | |
172 | ||
f67f98b5 AM |
173 | 2012-03-29 Alan Modra <amodra@gmail.com> |
174 | ||
175 | * bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete. | |
176 | * bfd-in2.h: Regenerate. | |
177 | ||
e8d2ba53 AM |
178 | 2012-03-23 Alan Modra <amodra@gmail.com> |
179 | ||
180 | * elf.c (assign_file_positions_for_non_load_sections): Don't warn | |
181 | on empty alloc sections. | |
182 | ||
051d833a AM |
183 | 2012-03-23 Alan Modra <amodra@gmail.com> |
184 | ||
185 | * linker.c (_bfd_nearby_section): New function, split out from.. | |
186 | (fix_syms): ..here. | |
187 | * bfd-in.h (_bfd_nearby_section): Declare. | |
188 | * bfd-in2.h: Regenerate. | |
189 | * elflink.c (elf_link_input_bfd): Don't use text_index_section or | |
190 | data_index_section with ld -q or ld -r output relocs against | |
191 | stripped output sections. Instead use _bfd_nearby_section. | |
192 | ||
62599110 AM |
193 | 2012-03-23 Alan Modra <amodra@gmail.com> |
194 | ||
195 | PR binutils/13894 | |
196 | * elf64-ppc.c (opd_entry_value): Read full symbol table when | |
197 | sym hashes unavailable. | |
198 | ||
b781d74f JM |
199 | 2012-03-21 Eliot Dresselhaus <eliot@sonic.net> |
200 | ||
201 | * elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE | |
202 | for non-C6X objects. | |
203 | ||
17d5dae2 KT |
204 | 2012-03-20 Kai Tietz <ktietz@redhat.com> |
205 | ||
206 | PR ld/12742 | |
207 | * configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h. | |
208 | * plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined. | |
209 | Add windows.h header include if HAVE_WINDOWS_H is defined. | |
210 | (dlerror): New static function if windows variant is used instead | |
211 | of dlfcn.h. | |
212 | (dlclose): Likewise. | |
213 | (dlopen): Likewise. | |
214 | (dlsym): Likewise. | |
215 | * configure: Regenerated. | |
216 | * config.in: Regenerated. | |
217 | ||
bdb892b9 L |
218 | 2012-03-20 H.J. Lu <hongjiu.lu@intel.com> |
219 | ||
220 | PR ld/13880 | |
221 | * elf32-i386.c (elf_i386_relocate_section): Don't issue an error | |
222 | for R_386_GOTOFF relocation against protected function if | |
223 | SYMBOLIC_BIND is true. | |
224 | ||
225 | * elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an | |
226 | error for R_X86_64_GOTOFF64 relocation against protected function | |
227 | when building executable or SYMBOLIC_BIND is true. | |
228 | ||
8059fb19 RM |
229 | 2012-03-16 Roland McGrath <mcgrathr@google.com> |
230 | ||
231 | * config.bfd: Handle x86_64-*-nacl*. | |
232 | * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza. | |
233 | (bfd_elf32_x86_64_nacl_vec): Likewise. | |
234 | * targets.c: Support them. | |
235 | * configure.in: Likewise. | |
236 | * configure: Regenerated. | |
237 | ||
ac56ee8f MGD |
238 | 2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> |
239 | ||
240 | * elf32-arm.c (elf32_arm_attributes_accept_div): New function. | |
241 | (elf32_arm_attributes_forbid_div): Likewise. | |
242 | (elf32_arm_merge_eabi_attributes): Correct handling of | |
243 | Tag_DIV_use. | |
244 | ||
eed180f8 RM |
245 | 2012-03-15 Roland McGrath <mcgrathr@google.com> |
246 | ||
a4456d24 RM |
247 | * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use |
248 | elf_x86_64_backend_data parameters for plt_eh_frame. | |
249 | ||
eed180f8 RM |
250 | * elf64-x86-64.c (struct elf_x86_64_backend_data): New type. |
251 | (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros. | |
252 | (elf_x86_64_arch_bed): New variable. | |
253 | (elf_backend_arch_data): New macro. | |
254 | (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE. | |
255 | (elf_x86_64_allocate_dynrelocs): Likewise. | |
256 | (elf_x86_64_relocate_section): Likewise. | |
257 | (elf_x86_64_plt_sym_val): Likewise. | |
258 | (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data | |
259 | parameters for PLT details. | |
260 | (elf_x86_64_finish_dynamic_sections): Likewise. | |
261 | ||
caa0075c RM |
262 | 2012-03-14 Roland McGrath <mcgrathr@google.com> |
263 | ||
264 | * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up | |
265 | to the full size, padding out with nop instructions. | |
266 | ||
1d7e9d18 AM |
267 | 2012-03-12 Alan Modra <amodra@gmail.com> |
268 | ||
269 | * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn | |
270 | on zero size dynbss symbol. | |
271 | * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. | |
272 | * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise. | |
273 | * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. | |
274 | * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. | |
275 | * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. | |
276 | * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise. | |
277 | * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise. | |
278 | * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. | |
279 | * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. | |
280 | * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. | |
281 | * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. | |
282 | * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. | |
283 | * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise. | |
284 | * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise. | |
285 | * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. | |
286 | * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. | |
287 | * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. | |
288 | * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. | |
289 | * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. | |
290 | * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. | |
291 | * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise. | |
292 | ||
aea77599 AM |
293 | 2012-03-10 Edmar Wienskoski <edmar@freescale.com> |
294 | ||
295 | * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500. | |
296 | * bfd-in2.h: Regenerate. | |
297 | * cpu-powerpc.c (bfd_powerpc_archs): Add entries for | |
298 | bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500. | |
299 | ||
56b8aada L |
300 | 2012-03-09 H.J. Lu <hongjiu.lu@intel.com> |
301 | ||
302 | PR ld/13817 | |
303 | * bfd/elf32-i386.c (elf_i386_relocate_section): Restore | |
304 | R_386_IRELATIVE. | |
305 | ||
306 | * * elf64-x86-64.c (elf_x86_64_relocate_section): Restore | |
307 | R_X86_64_IRELATIVE. | |
308 | ||
460f1cdc TG |
309 | 2012-03-08 Tristan Gingold <gingold@adacore.com> |
310 | ||
311 | * vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum | |
312 | keylen according to archive kind. Set nextvbn and nextrfa lhd | |
313 | fields. Add comments. | |
314 | ||
0a22ae8e NC |
315 | 2012-03-07 Nick Clifton <nickc@redhat.com> |
316 | ||
317 | * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type | |
318 | field. | |
319 | (elf32_mn10300_link_hash_table): Add tls_ldm_got entry; | |
320 | (elf_mn10300_tdata): Define. | |
321 | (elf_mn10300_local_got_tls_type): Define. | |
322 | (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD, | |
323 | R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE, | |
324 | R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD, | |
325 | R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs. | |
326 | (mn10300_reloc_map): Likewise. | |
327 | (elf_mn10300_tls_transition): New function. | |
328 | (dtpoff, tpoff, mn10300_do_tls_transition): New functions. | |
329 | (mn10300_elf_check_relocs): Add TLS support. | |
330 | (mn10300_elf_final_link_relocate): Likewise. | |
331 | (mn10300_elf_relocate_section): Likewise. | |
332 | (mn10300_elf_relax_section): Likewise. | |
333 | (elf32_mn10300_link_hash_newfunc): Initialise new field. | |
334 | (_bfd_mn10300_copy_indirect_symbol): New function. | |
335 | (elf32_mn10300_link_hash_table_create): Initialise new fields. | |
336 | (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support. | |
337 | (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise. | |
338 | (_bfd_mn10300_elf_reloc_type_class): Allocate an | |
339 | elf_mn10300_obj_tdata structure. | |
340 | (elf_backend_copy_indirect_symbol): Define. | |
341 | * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD, | |
342 | BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE, | |
343 | BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD, | |
344 | BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations. | |
345 | (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to | |
346 | alongside other MN10300 relocations. | |
347 | * bfd-in2.h: Regenerate. | |
348 | * libbfd.h: Regenerate. | |
349 | ||
3ce231f8 JJ |
350 | 2012-03-06 Jakub Jelinek <jakub@redhat.com> |
351 | ||
352 | * elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE | |
353 | set relocate to TRUE. | |
354 | ||
0bef263a RO |
355 | 2012-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
356 | ||
357 | PR ld/12152 | |
358 | * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore | |
359 | overflows for R_SPARC_UA32 in .stab sections. | |
360 | ||
84abc003 AM |
361 | 2012-03-01 Alan Modra <amodra@gmail.com> |
362 | ||
363 | * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning. | |
364 | ||
3d301fdc AM |
365 | 2012-02-27 Alan Modra <amodra@gmail.com> |
366 | ||
367 | * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd | |
368 | before calling elf specific function. | |
369 | (sh_elf_osec_readonly_p): Test for error return from above. | |
370 | ||
cb83c803 AM |
371 | 2012-02-27 Alan Modra <amodra@gmail.com> |
372 | ||
373 | * elf32-spu.c (build_stub): Fix malloc under-allocation. | |
374 | ||
6f7be959 WL |
375 | 2012-02-25 Walter Lee <walt@tilera.com> |
376 | * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL, | |
377 | BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD, | |
378 | BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD, | |
379 | BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD, | |
380 | BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD, | |
381 | BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE, | |
382 | BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE, | |
383 | BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO, | |
384 | BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO, | |
385 | BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI, | |
386 | BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI, | |
387 | BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA, | |
388 | BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA, | |
389 | BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE, | |
390 | BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE, | |
391 | BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE, | |
392 | BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE, | |
393 | BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE, | |
394 | BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE, | |
395 | BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD, | |
396 | BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD, | |
397 | BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD, | |
398 | BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD, | |
399 | BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD, | |
400 | BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD, | |
401 | BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD. | |
402 | Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT, | |
403 | BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT, | |
404 | BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT, | |
405 | BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT, | |
406 | BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT, | |
407 | BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT, | |
408 | BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT, | |
409 | BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT, | |
410 | BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD, | |
411 | BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD, | |
412 | BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD, | |
413 | BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD, | |
414 | BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD, | |
415 | BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD, | |
416 | BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD, | |
417 | BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD, | |
418 | BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE, | |
419 | BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE, | |
420 | BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE, | |
421 | BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE, | |
422 | BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE, | |
423 | BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE, | |
424 | BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE, | |
425 | BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE. | |
426 | * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro | |
427 | relocations. | |
428 | (tilepro_reloc_map): Ditto. | |
429 | (tilepro_info_to_howto_rela): Ditto. | |
430 | (reloc_to_create_func): Ditto. | |
431 | (tilepro_tls_translate_to_le): New. | |
432 | (tilepro_tls_translate_to_ie): New. | |
433 | (tilepro_elf_tls_transition): New. | |
434 | (tilepro_elf_check_relocs): Handle new tls relocations. | |
435 | (tilepro_elf_gc_sweep_hook): Ditto. | |
436 | (allocate_dynrelocs): Ditto. | |
437 | (tilepro_elf_relocate_section): Ditto. | |
438 | (tilepro_replace_insn): New. | |
439 | (insn_mask_X1): New. | |
440 | (insn_mask_X0_no_dest_no_srca): New | |
441 | (insn_mask_X1_no_dest_no_srca): New | |
442 | (insn_mask_Y0_no_dest_no_srca): New | |
443 | (insn_mask_Y1_no_dest_no_srca): New | |
444 | (srca_mask_X0): New | |
445 | (srca_mask_X1): New | |
446 | (insn_tls_le_move_X1): New | |
447 | (insn_tls_le_move_zero_X0X1): New | |
448 | (insn_tls_ie_lw_X1): New | |
449 | (insn_tls_ie_add_X0X1): New | |
450 | (insn_tls_ie_add_Y0Y1): New | |
451 | (insn_tls_gd_add_X0X1): New | |
452 | (insn_tls_gd_add_Y0Y1): New | |
453 | * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx | |
454 | relocations. | |
455 | (tilegx_reloc_map): Ditto. | |
456 | (tilegx_info_to_howto_rela): Ditto. | |
457 | (reloc_to_create_func): Ditto. | |
458 | (tilegx_elf_link_hash_table): New field disable_le_transition. | |
459 | (tilegx_tls_translate_to_le): New. | |
460 | (tilegx_tls_translate_to_ie): New. | |
461 | (tilegx_elf_tls_transition): New. | |
462 | (tilegx_elf_check_relocs): Handle new tls relocations. | |
463 | (tilegx_elf_gc_sweep_hook): Ditto. | |
464 | (allocate_dynrelocs): Ditto. | |
465 | (tilegx_elf_relocate_section): Ditto. | |
466 | (tilegx_copy_bits): New. | |
467 | (tilegx_replace_insn): New. | |
468 | (insn_mask_X1): New. | |
469 | (insn_mask_X0_no_dest_no_srca): New. | |
470 | (insn_mask_X1_no_dest_no_srca): New. | |
471 | (insn_mask_Y0_no_dest_no_srca): New. | |
472 | (insn_mask_Y1_no_dest_no_srca): New. | |
473 | (insn_mask_X0_no_operand): New. | |
474 | (insn_mask_X1_no_operand): New. | |
475 | (insn_mask_Y0_no_operand): New. | |
476 | (insn_mask_Y1_no_operand): New. | |
477 | (insn_tls_ie_ld_X1): New. | |
478 | (insn_tls_ie_ld4s_X1): New. | |
479 | (insn_tls_ie_add_X0X1): New. | |
480 | (insn_tls_ie_add_Y0Y1): New. | |
481 | (insn_tls_ie_addx_X0X1): New. | |
482 | (insn_tls_ie_addx_Y0Y1): New. | |
483 | (insn_tls_gd_add_X0X1): New. | |
484 | (insn_tls_gd_add_Y0Y1): New. | |
485 | (insn_move_X0X1): New. | |
486 | (insn_move_Y0Y1): New. | |
487 | (insn_add_X0X1): New. | |
488 | (insn_add_Y0Y1): New. | |
489 | (insn_addx_X0X1): New. | |
490 | (insn_addx_Y0Y1): New. | |
491 | * libbfd.h: Regenerate. | |
492 | * bfd-in2.h: Regenerate. | |
493 | ||
82590249 WL |
494 | 2012-02-25 Walter Lee <walt@tilera.com> |
495 | ||
fb6cedde WL |
496 | * config.bfd (tilegx-*-*): rename little endian vector; add big |
497 | endian vector. | |
498 | (tilegxbe-*-*): New case. | |
499 | * configure.in (bfd_elf32_tilegx_vec): Rename... | |
500 | (bfd_elf32_tilegx_le_vec): ... to this. | |
501 | (bfd_elf32_tilegx_be_vec): New vector. | |
502 | (bfd_elf64_tilegx_vec): Rename... | |
503 | (bfd_elf64_tilegx_le_vec): ... to this. | |
504 | (bfd_elf64_tilegx_be_vec): New vector. | |
505 | * configure: Regenerate. | |
506 | * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename. | |
507 | (TARGET_LITTLE_NAME): Ditto. | |
508 | (TARGET_BIG_SYM): Define. | |
509 | (TARGET_BIG_NAME): Define. | |
510 | * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename. | |
511 | (TARGET_LITTLE_NAME): Ditto. | |
512 | (TARGET_BIG_SYM): Define. | |
513 | (TARGET_BIG_NAME): Define. | |
514 | * targets.c (bfd_elf32_tilegx_vec): Rename... | |
515 | (bfd_elf32_tilegx_le_vec): ... to this. | |
516 | (bfd_elf32_tilegx_be_vec): Declare. | |
517 | (bfd_elf64_tilegx_vec): Rename... | |
518 | (bfd_elf64_tilegx_le_vec): ... to this. | |
519 | (bfd_elf64_tilegx_be_vec): Declare. | |
520 | (_bfd_target_vector): Add / rename above vectors. | |
82590249 WL |
521 | * arctures.c (bfd_architecture): Define bfd_mach_tilegx32. |
522 | * bfd-in2.h: Regenerate. | |
523 | * cpu-tilegx.c (bfd_tilegx32_arch): define. | |
fb6cedde | 524 | (bfd_tilegx_arch): link to bfd_tilegx32_arch. |
82590249 | 525 | |
4115917d NC |
526 | 2012-02-24 Nick Clifton <nickc@redhat.com> |
527 | ||
528 | PR ld/13730 | |
529 | * reloc.c (bfd_generic_get_relocated_section_contents): Issue an | |
530 | error message instead of aborting, when an outofrange reloc is | |
531 | encountered. | |
532 | ||
19765f52 IS |
533 | 2012-02-23 Iain Sandoe <idsandoe@googlemail.com> |
534 | ||
535 | * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New. | |
536 | (bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc | |
537 | bit-fields when target and host differ in endian-ness. When | |
538 | PAIRs are non-scattered find the 'symbol' from the preceding | |
539 | reloc. Add FIXME re. reloc symbols on section boundaries. | |
540 | (bfd_mach_o_swap_out_non_scattered_reloc): New. | |
541 | (bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc. | |
542 | ||
6639d37a IS |
543 | 2012-02-17 Iain Sandoe <idsandoe@googlemail.com> |
544 | ||
545 | * mach-o-i386.c (i386_howto_table): Add support for 16 bit | |
546 | sect-diffs. | |
547 | (bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs. | |
548 | (bfd_mach_o_i386_swap_reloc_out): Likewise. | |
549 | ||
e1e81ed3 IS |
550 | 2012-02-17 Tristan Gingold <gingold@adacore.com> |
551 | ||
552 | * reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF): | |
553 | * libbfd.h: Regenerated. | |
554 | * bfd-in2.h: Likewise. | |
555 | * mach-o-i386.c (i386_howto_table): Include local sectdiff. | |
556 | (bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff. | |
557 | (bfd_mach_o_i386_swap_reloc_out): Likewise. | |
558 | ||
d0ddfe27 AK |
559 | 2012-02-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
560 | ||
561 | * elf32-s390.c (elf_s390_relocate_section): Support basr in the | |
562 | GD->LE and LD->LE optimizations. | |
563 | ||
eb8c5f3f AM |
564 | 2012-02-16 Alan Modra <amodra@gmail.com> |
565 | ||
566 | PR binutils/13355 | |
567 | * elf32-rx.c (elf32_rx_relax_section): Correct width check. | |
568 | ||
e1741a1e RH |
569 | 2012-02-13 Richard Henderson <rth@redhat.com> |
570 | ||
571 | PR ld/13621 | |
572 | * linker.c (fix_syms): Force symbols outside any section into | |
573 | bfd_abs_section_ptr. | |
574 | ||
5efbbc43 AM |
575 | 2012-02-13 Alan Modra <amodra@gmail.com> |
576 | ||
577 | * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function. | |
578 | * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare. | |
579 | * elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define. | |
580 | * elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define. | |
581 | ||
3e3c397d JK |
582 | 2012-02-11 Jan Kratochvil <jan.kratochvil@redhat.com> |
583 | Nick Clifton <nickc@redhat.com> | |
584 | ||
585 | * oasys.c (oasys_write_header): Fix compilation warning on zero-sized | |
586 | memset. | |
587 | ||
09903f4b IS |
588 | 2012-02-10 Iain Sandoe <idsandoe@googlemail.com> |
589 | ||
590 | * mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section | |
591 | vma additions in their logical, rather than physical order. | |
592 | ||
632039e0 IS |
593 | 2012-02-10 Iain Sandoe <idsandoe@googlemail.com> |
594 | ||
595 | * mach-o.c (mach_o_section_name_xlat): Correct eh-frame section | |
596 | parameters. | |
597 | * mach-o-x86-64.c (text_section_names_xlat): New. | |
598 | (mach_o_x86_64_segsec_names_xlat): New. | |
599 | (bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat. | |
600 | * mach-o-i386.c (text_section_names_xlat): Correct section parameters. | |
601 | ||
565a6476 TG |
602 | 2012-02-10 Tristan Gingold <gingold@adacore.com> |
603 | ||
604 | * elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator | |
605 | to avoid infinite loop. Add comments. | |
606 | ||
923f257f L |
607 | 2012-02-09 H.J. Lu <hongjiu.lu@intel.com> |
608 | ||
609 | PR ld/13675 | |
610 | * cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte | |
611 | nop instructions. | |
612 | (bfd_arch_i386_short_nop_fill): New. | |
613 | (bfd_arch_i386_long_nop_fill): Likewise. | |
614 | Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info | |
615 | initializers. Use bfd_arch_i386_long_nop_fill on 64bit | |
616 | bfd_arch_info initializers. | |
617 | ||
618 | * cpu-k1om.c (bfd_arch_i386_fill): Renamed to ... | |
619 | (bfd_arch_i386_short_nop_fill): This. | |
620 | Update bfd_arch_info initializers. | |
621 | * cpu-l1om.c: Likewise. | |
622 | ||
4e6b54a6 AM |
623 | 2012-02-08 Alan Modra <amodra@gmail.com> |
624 | ||
625 | * elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too. | |
626 | (_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear | |
627 | the correct h->u.weakdef. | |
628 | ||
ff9e0f5b AM |
629 | 2012-02-07 Alan Modra <amodra@gmail.com> |
630 | ||
631 | * elf.c (elf_find_function): Don't use internal_elf_sym. | |
632 | (_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type | |
633 | parameter with asymbol. | |
634 | * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise. | |
635 | * elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype. | |
636 | (struct elf_backend_data <maybe_function_sym>): Likewise. | |
637 | ||
526f25b2 EW |
638 | 2012-02-02 Vidya Praveen (vidya.praveen@atmel.com) |
639 | ||
640 | PR bfd/13410 | |
ff9e0f5b | 641 | * bfd/elf32-avr.c (elf32_avr_relax_section): Correct the |
526f25b2 EW |
642 | condition that qualifies the candidates for relaxation. |
643 | ||
7c4f9963 TG |
644 | 2012-02-02 Tristan Gingold <gingold@adacore.com> |
645 | ||
646 | * bfdio.c (real_fopen): Remove unused vms_modes variable. | |
647 | ||
facf03f2 TG |
648 | 2012-02-02 Tristan Gingold <gingold@adacore.com> |
649 | ||
650 | * mach-o.c (bfd_mach_o_read_header): Silent uninitialized | |
651 | variable warning. | |
652 | ||
cd99171c TG |
653 | 2012-02-02 Tristan Gingold <gingold@adacore.com> |
654 | ||
655 | * archive.c (bfd_slurp_armap): Fix thinko in cast. | |
656 | ||
b7761f11 L |
657 | 2012-01-31 H.J. Lu <hongjiu.lu@intel.com> |
658 | ||
659 | PR ld/13616 | |
660 | * archures.c (bfd_arch_info): Add fill. | |
661 | (bfd_default_arch_struct): Add bfd_arch_default_fill. | |
662 | (bfd_arch_default_fill): New. | |
663 | ||
664 | * configure.in: Set bfd version to 2.22.52. | |
665 | * configure: Regenerated. | |
666 | ||
667 | * cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info | |
668 | initializer. | |
669 | * cpu-arc.c: Likewise. | |
670 | * cpu-arm.c: Likewise. | |
671 | * cpu-avr.c: Likewise. | |
672 | * cpu-bfin.c: Likewise. | |
673 | * cpu-cr16.c: Likewise. | |
674 | * cpu-cr16c.c: Likewise. | |
675 | * cpu-cris.c: Likewise. | |
676 | * cpu-crx.c: Likewise. | |
677 | * cpu-d10v.c: Likewise. | |
678 | * cpu-d30v.c: Likewise. | |
679 | * cpu-dlx.c: Likewise. | |
680 | * cpu-epiphany.c: Likewise. | |
681 | * cpu-fr30.c: Likewise. | |
682 | * cpu-frv.c: Likewise. | |
683 | * cpu-h8300.c: Likewise. | |
684 | * cpu-h8500.c: Likewise. | |
685 | * cpu-hppa.c: Likewise. | |
686 | * cpu-i370.c: Likewise. | |
687 | * cpu-i860.c: Likewise. | |
688 | * cpu-i960.c: Likewise. | |
689 | * cpu-ia64.c: Likewise. | |
690 | * cpu-ip2k.c: Likewise. | |
691 | * cpu-iq2000.c: Likewise. | |
692 | * cpu-lm32.c: Likewise. | |
693 | * cpu-m10200.c: Likewise. | |
694 | * cpu-m10300.c: Likewise. | |
695 | * cpu-m32c.c: Likewise. | |
696 | * cpu-m32r.c: Likewise. | |
697 | * cpu-m68hc11.c: Likewise. | |
698 | * cpu-m68hc12.c: Likewise. | |
699 | * cpu-m68k.c: Likewise. | |
700 | * cpu-m88k.c: Likewise. | |
701 | * cpu-mcore.c: Likewise. | |
702 | * cpu-mep.c: Likewise. | |
703 | * cpu-microblaze.c: Likewise. | |
704 | * cpu-mips.c: Likewise. | |
705 | * cpu-mmix.c: Likewise. | |
706 | * cpu-moxie.c: Likewise. | |
707 | * cpu-msp430.c: Likewise. | |
708 | * cpu-mt.c: Likewise. | |
709 | * cpu-ns32k.c: Likewise. | |
710 | * cpu-openrisc.c: Likewise. | |
711 | * cpu-or32.c: Likewise. | |
712 | * cpu-pdp11.c: Likewise. | |
713 | * cpu-pj.c: Likewise. | |
714 | * cpu-plugin.c: Likewise. | |
715 | * cpu-powerpc.c: Likewise. | |
716 | * cpu-rl78.c: Likewise. | |
717 | * cpu-rs6000.c: Likewise. | |
718 | * cpu-rx.c: Likewise. | |
719 | * cpu-s390.c: Likewise. | |
720 | * cpu-score.c: Likewise. | |
721 | * cpu-sh.c: Likewise. | |
722 | * cpu-sparc.c: Likewise. | |
723 | * cpu-spu.c: Likewise. | |
724 | * cpu-tic30.c: Likewise. | |
725 | * cpu-tic4x.c: Likewise. | |
726 | * cpu-tic54x.c: Likewise. | |
727 | * cpu-tic6x.c: Likewise. | |
728 | * cpu-tic80.c: Likewise. | |
729 | * cpu-tilegx.c: Likewise. | |
730 | * cpu-tilepro.c: Likewise. | |
731 | * cpu-v850.c: Likewise. | |
732 | * cpu-vax.c: Likewise. | |
733 | * cpu-w65.c: Likewise. | |
734 | * cpu-we32k.c: Likewise. | |
735 | * cpu-xc16x.c: Likewise. | |
736 | * cpu-xstormy16.c: Likewise. | |
737 | * cpu-xtensa.c: Likewise. | |
738 | * cpu-z80.c: Likewise. | |
739 | * cpu-z8k.c: Likewise. | |
740 | ||
741 | * cpu-i386.c: Include "libiberty.h". | |
ff9e0f5b | 742 | (bfd_arch_i386_fill): New. |
b7761f11 L |
743 | Add bfd_arch_i386_fill to bfd_arch_info initializer. |
744 | ||
745 | * cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer. | |
746 | * cpu-l1om.c: Likewise. | |
747 | ||
ff9e0f5b | 748 | * linker.c (default_data_link_order): Call abfd->arch_info->fill |
b7761f11 L |
749 | if fill size is 0. |
750 | ||
751 | * bfd-in2.h: Regenerated. | |
752 | ||
0d048da3 ME |
753 | 2012-01-27 Michael Eager <eager@eagercon.com> |
754 | ||
755 | * bfd/elf32-microblaze.c (create_got_section): | |
756 | Reuse existing .rela.got section. | |
757 | ||
9f296da3 AM |
758 | 2012-01-23 Alan Modra <amodra@gmail.com> |
759 | ||
760 | * elf-bfd.h: Formatting. | |
761 | (struct elf_backend_data): Add "maybe_function_sym". | |
762 | (_bfd_elf_maybe_function_sym): Declare. | |
763 | * elfxx-target.h (elf_backend_maybe_function_sym): Define. | |
764 | (elfNN_bed): Init new field. | |
765 | * elf.c (elf_find_function): Use maybe_function_sym. | |
766 | (_bfd_elf_maybe_function_sym): New function. | |
767 | * elf64-ppc.c (elf_backend_maybe_function_sym): Define. | |
768 | (ppc64_elf_maybe_function_sym): New function. | |
769 | ||
f1bb16f8 NC |
770 | 2012-01-20 Francois Gouget <fgouget@codeweavers.com> |
771 | ||
772 | PR binutils/13534 | |
773 | * archive.c (_bfd_ar_sizepad): New function. Correctly install and | |
774 | pad the size field in an archive header. | |
775 | (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan | |
776 | function for the archive size field. | |
777 | (bfd_generic_openr_next_archived_file): Likewise. | |
778 | (do_slurp_coff_armap): Likewise. | |
779 | (_bfd_write_archive_contents): Likewise. | |
780 | (_bfd_bsd44_write_ar_hdr): Use the new function. | |
781 | (bfd_ar_hdr_from_filesystem): Likewise. | |
782 | (_bfd_write_archive_contents): Likewise. | |
783 | (bsd_write_armap): Likewise. | |
784 | (coff_write_armap): Likewise. | |
785 | * archive64.c (bfd_elf64_archive_write_armap): Likewise. | |
786 | * bfdio.c (bfd_bread): Use correct type for archive element | |
787 | sizes. | |
788 | * ar.c (open_inarch): Likewise. | |
789 | (extract_file): Likewise. | |
790 | * libbfd-in.h (struct areltdata): Use correct types for | |
791 | parsed_size and extra_size fields. | |
792 | Prototype _bfd_ar_sizepad function. | |
793 | * libbfd.h: Regenerate. | |
794 | ||
1f20dca5 UW |
795 | 2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org> |
796 | ||
797 | * elf.c (elfcore_write_prpsinfo): Provide unconditionally. | |
798 | Return NULL if core file generation is unsupported. | |
799 | (elfcore_write_prstatus): Likewise. | |
800 | * elf32-arm.c (elf32_arm_nabi_write_core_note): New function. | |
801 | (elf_backend_write_core_note): Define. | |
802 | ||
100fc767 TG |
803 | 2012-01-19 Tristan Gingold <gingold@adacore.com> |
804 | ||
805 | * pef.c: Add a comment. | |
806 | * xsym.c: Likewise. | |
807 | ||
75cd47ed AM |
808 | 2012-01-17 Alan Modra <amodra@gmail.com> |
809 | ||
810 | * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave | |
811 | trailing garbage in the note. | |
812 | * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise. | |
813 | ||
8a5dcf53 AM |
814 | 2012-01-16 Daniel Green <venix1@gmail.com> |
815 | ||
816 | PR ld/13491 | |
817 | * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test | |
818 | h->root.type not h->type. | |
819 | * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise. | |
820 | ||
bb76d940 IS |
821 | 2012-01-13 Iain Sandoe <idsandoe@googlemail.com> |
822 | ||
8a5dcf53 AM |
823 | * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute |
824 | indirect symbols. | |
687be931 IS |
825 | |
826 | 2012-01-13 Iain Sandoe <idsandoe@googlemail.com> | |
827 | ||
828 | * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file | |
bb76d940 IS |
829 | position from here... to (bfd_mach_o_build_seg_command): Here. |
830 | ||
50d10658 IS |
831 | 2012-01-12 Iain Sandoe <idsandoe@googlemail.com> |
832 | ||
833 | * mach-o.c (bfd_mach_o_count_indirect_symbols): New. | |
834 | (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table. | |
835 | * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the | |
836 | file. (bfd_mach_o_section): Add indirect_syms field. | |
837 | ||
e5081f2f IS |
838 | 2012-01-11 Iain Sandoe <idsandoe@googlemail.com> |
839 | ||
840 | * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of | |
841 | vmsize from filesize. Don't compute offsets or file sizes for | |
842 | zerofill sections. | |
843 | ||
bbd56171 IS |
844 | 2012-01-11 Iain Sandoe <idsandoe@googlemail.com> |
845 | ||
846 | * mach-o.c (bfd_mach_o_build_commands): Make the building of each | |
847 | command type independent. | |
848 | ||
794e51c0 AM |
849 | 2012-01-11 Alan Modra <amodra@gmail.com> |
850 | ||
851 | * elf64-ppc.c: Define more insns used in plt call stubs. | |
852 | (ppc64_elf_brtaken_reloc): Assume isa version 2 or above. | |
853 | (ppc64_elf_relocate_section): Likewise. | |
854 | (enum ppc_stub_type): Add ppc_stub_plt_call_r2save. | |
855 | (struct ppc_link_hash_table): Increase size of stub_count array. | |
856 | Add plt_stub_align and plt_thread_safe. | |
857 | (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define. | |
858 | (plt_stub_size, plt_stub_pad): New functions. | |
859 | (build_plt_stub): Emit barriers for power7 thread safety. Don't | |
860 | emit needless save of r2. | |
861 | (build_tls_get_addr_stub): Adjust params. | |
862 | (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning | |
863 | plt stubs. Adjust build_*plt_stub calls. | |
864 | (ppc_size_one_stub): Similarly. | |
865 | (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align | |
866 | params. Choose default for plt_thread_safe based on existence of | |
867 | calls to thread creation functions. Modify plt_call to | |
868 | plt_call_r2save when no tocsave reloc found. Align tail of stub | |
869 | sections. | |
870 | (ppc64_elf_build_stubs): Align tail of stub sections. Adjust | |
871 | output of stub statistics. | |
872 | (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save. | |
873 | * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype. | |
874 | ||
df4f9443 L |
875 | 2012-01-10 H.J. Lu <hongjiu.lu@intel.com> |
876 | ||
877 | PR ld/13581 | |
878 | * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P | |
879 | check on R_X86_64_PCXX. | |
880 | ||
2a65a88e TG |
881 | 2012-01-10 Tristan Gingold <gingold@adacore.com> |
882 | ||
883 | * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false | |
884 | warning. | |
885 | ||
660722b0 TG |
886 | 2012-01-10 Tristan Gingold <gingold@adacore.com> |
887 | ||
888 | * bfdio.c (bfd_tell): Handle nested archives. | |
889 | (bfd_seek): Ditto. | |
890 | * cache.c (bfd_cache_lookup_worker): Ditto. | |
891 | * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with | |
892 | nested archives. | |
893 | (bfd_generic_openr_next_archived_file): Likewise. | |
894 | ||
b22161d6 IS |
895 | 2012-01-09 Iain Sandoe <idsandoe@googlemail.com> |
896 | ||
897 | * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement. | |
898 | (bfd_mach_o_write_symtab): Remove handling for indirect syms. | |
899 | (bfd_mach_o_primary_symbol_sort_key): Likewise. | |
900 | (bfd_mach_o_cf_symbols): Likewise. | |
901 | (bfd_mach_o_sort_symbol_table): Remove. | |
902 | (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling | |
903 | for indirect and dysymtab counts. Do the symbol sorting here. | |
904 | (bfd_mach_o_build_dysymtab_command): Count the symbol types here. | |
905 | Make the indirect symbols a TODO. | |
906 | (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols. | |
907 | (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with | |
908 | a non-zero value. | |
909 | (bfd_mach_o_read_symtab_symbol): Record the symbol index. | |
910 | (bfd_mach_o_read_symtab_symbol): Adjust recording of global status. | |
911 | * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries. | |
912 | (IS_MACHO_INDIRECT): Remove. | |
913 | (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New. | |
914 | ||
28a1b4f8 NC |
915 | 2012-01-06 Nick Clifton <nickc@redhat.com> |
916 | ||
917 | PR binutils/13121 | |
918 | * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to | |
919 | 'flaginfo' to avoid conflicts with AIX system headers. | |
920 | ||
36f0a48f TG |
921 | 2012-01-06 Tristan Gingold <gingold@adacore.com> |
922 | ||
923 | * bfdio.c (bfd_bread): Use arelt_size macro. | |
924 | ||
76d4c1cb TG |
925 | 2012-01-06 Tristan Gingold <gingold@adacore.com> |
926 | ||
927 | * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs. | |
928 | ||
a1c7aafb NC |
929 | 2012-01-05 Nick Clifton <nickc@redhat.com> |
930 | ||
931 | PR ld/12161 | |
932 | * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if | |
933 | necessary. | |
934 | ||
e85c6a70 JK |
935 | 2012-01-05 Jan Kratochvil <jan.kratochvil@redhat.com> |
936 | ||
937 | Fix zero registers core files when built by gcc-4.7. | |
938 | * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and | |
939 | size. Call elfcore_write_note for the local variables. Remove the | |
940 | final elfcore_write_note call. Add NOTREACHED comments. | |
941 | ||
15bbba8d TG |
942 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
943 | ||
944 | * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function. | |
945 | (bfd_mach_o_generic_stat_arch_elt): Adjust. | |
946 | ||
a4e241ca TG |
947 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
948 | ||
949 | * mach-o.c (bfd_mach_o_fat_member_init): New function. | |
950 | (bfd_mach_o_openr_next_archived_file): Reindent. | |
951 | Adjust to call bfd_mach_o_fat_member_init. | |
952 | (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init. | |
953 | ||
71141310 TG |
954 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
955 | ||
956 | * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle | |
957 | BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1, | |
958 | BFD_RELOC_MACH_O_X86_64_PCREL32_2, | |
959 | BFD_RELOC_MACH_O_X86_64_PCREL32_4, | |
960 | BFD_RELOC_MACH_O_X86_64_BRANCH32, | |
961 | BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32, | |
962 | BFD_RELOC_MACH_O_X86_64_GOT. | |
963 | ||
9f4a5bd1 TG |
964 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
965 | ||
966 | * mach-o.h (bfd_mach_o_fvmlib_command): New structure. | |
967 | (bfd_mach_o_load_command): Add fvmlib field. | |
968 | ||
969 | * mach-o.c (bfd_mach_o_read_fvmlib): New function. | |
970 | (bfd_mach_o_read_command): Handle fvmlib. | |
971 | ||
0b2de107 TG |
972 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
973 | ||
974 | * mach-o.c (bfd_mach_o_convert_architecture): Reindent. | |
975 | Decode msubtype for ARM. | |
976 | ||
aeefa1c9 TG |
977 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
978 | ||
979 | * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments. | |
980 | ||
fc55a902 TG |
981 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
982 | ||
983 | * mach-o.h: Reindent header. | |
984 | (bfd_mach_o_encryption_info_command): New structure. | |
985 | (bfd_mach_o_load_command): Add encryption_info field. | |
986 | ||
987 | * mach-o.c (bfd_mach_o_read_encryption_info): New function. | |
988 | (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO. | |
989 | (bfd_mach_o_read_command): Adjust error message. | |
990 | ||
2ca7691a TG |
991 | 2012-01-04 Shinichiro Hamaji <shinichiro.hamaji@gmail.com> |
992 | ||
993 | * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part | |
994 | which reads DWARF2 and stores in stash from find_line. | |
995 | (find_line) Call _bfd_dwarf2_slurp_debug_info. | |
996 | * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration. | |
997 | * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate. | |
998 | * mach-o.c (dsym_subdir): The name of subdir where debug | |
999 | information may be stored. | |
1000 | (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose | |
1001 | type is UUID. | |
1002 | (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is | |
1003 | corresponding to the executable. | |
1004 | (bfd_mach_o_find_dsym): New. Find a debug information BFD in the | |
1005 | specified binary file. | |
1006 | (bfd_mach_o_follow_dsym): New. Find a debug information BFD for | |
1007 | the original BFD. | |
1008 | (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O | |
1009 | executables, dylibs, and bundles. | |
1010 | (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file. | |
1011 | * mach-o.h (dsym_bfd): The BFD of the dSYM file. | |
1012 | ||
68588f95 IS |
1013 | 2012-01-03 Iain Sandoe <idsandoe@googlemail.com> |
1014 | ||
1015 | * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index | |
1016 | for stabd symbols. | |
1017 | (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs. | |
1018 | (bfd_mach_o_cf_symbols): Likewise. | |
1019 | ||
f2b324f1 IS |
1020 | 2012-01-03 Iain Sandoe <idsandoe@googlemail.com> |
1021 | ||
1022 | * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo. | |
1023 | ||
7f307238 IS |
1024 | 2012-01-03 Iain Sandoe <idsandoe@googlemail.com> |
1025 | ||
1026 | * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index | |
1027 | as the value of an indirect symbol. Keep the string table index in | |
1028 | non-indirect syms for reference. | |
1029 | (bfd_mach_o_write_dysymtab): New. | |
1030 | (bfd_mach_o_primary_symbol_sort_key): New. | |
1031 | (bfd_mach_o_cf_symbols): New. | |
1032 | (bfd_mach_o_sort_symbol_table): New. | |
1033 | (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols. | |
1034 | If we are emitting a dysymtab, process indirect symbols and count the | |
1035 | number of each other kind. | |
1036 | (bfd_mach_o_mangle_sections): New. | |
1037 | (bfd_mach_o_write_contents): Split out some pre-requisite code into | |
1038 | the command builder. Write dysymtab if the command is present. | |
1039 | (bfd_mach_o_count_sections_for_seg): New. | |
1040 | (bfd_mach_o_build_seg_command): New. | |
1041 | (bfd_mach_o_build_dysymtab_command): New. | |
1042 | (bfd_mach_o_build_commands): Reorganize to support the fact that some | |
1043 | commands are optional and should not be emitted if there are no | |
1044 | sections or symbols. | |
1045 | (bfd_mach_o_set_section_contents): Amend comment. | |
23e1d329 | 1046 | * mach-o.h: Amend and add to comments. |
7f307238 IS |
1047 | (mach_o_data_struct): Add fields for dysymtab symbols counts and a |
1048 | pointer to the indirects, when present. | |
1049 | (bfd_mach_o_should_emit_dysymtab): New macro. | |
1050 | (IS_MACHO_INDIRECT): Likewise. | |
1051 | ||
23e1d329 | 1052 | For older changes see ChangeLog-2011 |
56882138 AM |
1053 | \f |
1054 | Local Variables: | |
1055 | mode: change-log | |
1056 | left-margin: 8 | |
1057 | fill-column: 74 | |
1058 | version-control: never | |
1059 | End: |