Commit | Line | Data |
---|---|---|
9f296da3 AM |
1 | 2012-01-23 Alan Modra <amodra@gmail.com> |
2 | ||
3 | * elf-bfd.h: Formatting. | |
4 | (struct elf_backend_data): Add "maybe_function_sym". | |
5 | (_bfd_elf_maybe_function_sym): Declare. | |
6 | * elfxx-target.h (elf_backend_maybe_function_sym): Define. | |
7 | (elfNN_bed): Init new field. | |
8 | * elf.c (elf_find_function): Use maybe_function_sym. | |
9 | (_bfd_elf_maybe_function_sym): New function. | |
10 | * elf64-ppc.c (elf_backend_maybe_function_sym): Define. | |
11 | (ppc64_elf_maybe_function_sym): New function. | |
12 | ||
f1bb16f8 NC |
13 | 2012-01-20 Francois Gouget <fgouget@codeweavers.com> |
14 | ||
15 | PR binutils/13534 | |
16 | * archive.c (_bfd_ar_sizepad): New function. Correctly install and | |
17 | pad the size field in an archive header. | |
18 | (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan | |
19 | function for the archive size field. | |
20 | (bfd_generic_openr_next_archived_file): Likewise. | |
21 | (do_slurp_coff_armap): Likewise. | |
22 | (_bfd_write_archive_contents): Likewise. | |
23 | (_bfd_bsd44_write_ar_hdr): Use the new function. | |
24 | (bfd_ar_hdr_from_filesystem): Likewise. | |
25 | (_bfd_write_archive_contents): Likewise. | |
26 | (bsd_write_armap): Likewise. | |
27 | (coff_write_armap): Likewise. | |
28 | * archive64.c (bfd_elf64_archive_write_armap): Likewise. | |
29 | * bfdio.c (bfd_bread): Use correct type for archive element | |
30 | sizes. | |
31 | * ar.c (open_inarch): Likewise. | |
32 | (extract_file): Likewise. | |
33 | * libbfd-in.h (struct areltdata): Use correct types for | |
34 | parsed_size and extra_size fields. | |
35 | Prototype _bfd_ar_sizepad function. | |
36 | * libbfd.h: Regenerate. | |
37 | ||
1f20dca5 UW |
38 | 2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org> |
39 | ||
40 | * elf.c (elfcore_write_prpsinfo): Provide unconditionally. | |
41 | Return NULL if core file generation is unsupported. | |
42 | (elfcore_write_prstatus): Likewise. | |
43 | * elf32-arm.c (elf32_arm_nabi_write_core_note): New function. | |
44 | (elf_backend_write_core_note): Define. | |
45 | ||
100fc767 TG |
46 | 2012-01-19 Tristan Gingold <gingold@adacore.com> |
47 | ||
48 | * pef.c: Add a comment. | |
49 | * xsym.c: Likewise. | |
50 | ||
75cd47ed AM |
51 | 2012-01-17 Alan Modra <amodra@gmail.com> |
52 | ||
53 | * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave | |
54 | trailing garbage in the note. | |
55 | * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise. | |
56 | ||
8a5dcf53 AM |
57 | 2012-01-16 Daniel Green <venix1@gmail.com> |
58 | ||
59 | PR ld/13491 | |
60 | * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test | |
61 | h->root.type not h->type. | |
62 | * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise. | |
63 | ||
bb76d940 IS |
64 | 2012-01-13 Iain Sandoe <idsandoe@googlemail.com> |
65 | ||
8a5dcf53 AM |
66 | * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute |
67 | indirect symbols. | |
687be931 IS |
68 | |
69 | 2012-01-13 Iain Sandoe <idsandoe@googlemail.com> | |
70 | ||
71 | * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file | |
bb76d940 IS |
72 | position from here... to (bfd_mach_o_build_seg_command): Here. |
73 | ||
50d10658 IS |
74 | 2012-01-12 Iain Sandoe <idsandoe@googlemail.com> |
75 | ||
76 | * mach-o.c (bfd_mach_o_count_indirect_symbols): New. | |
77 | (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table. | |
78 | * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the | |
79 | file. (bfd_mach_o_section): Add indirect_syms field. | |
80 | ||
e5081f2f IS |
81 | 2012-01-11 Iain Sandoe <idsandoe@googlemail.com> |
82 | ||
83 | * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of | |
84 | vmsize from filesize. Don't compute offsets or file sizes for | |
85 | zerofill sections. | |
86 | ||
bbd56171 IS |
87 | 2012-01-11 Iain Sandoe <idsandoe@googlemail.com> |
88 | ||
89 | * mach-o.c (bfd_mach_o_build_commands): Make the building of each | |
90 | command type independent. | |
91 | ||
794e51c0 AM |
92 | 2012-01-11 Alan Modra <amodra@gmail.com> |
93 | ||
94 | * elf64-ppc.c: Define more insns used in plt call stubs. | |
95 | (ppc64_elf_brtaken_reloc): Assume isa version 2 or above. | |
96 | (ppc64_elf_relocate_section): Likewise. | |
97 | (enum ppc_stub_type): Add ppc_stub_plt_call_r2save. | |
98 | (struct ppc_link_hash_table): Increase size of stub_count array. | |
99 | Add plt_stub_align and plt_thread_safe. | |
100 | (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define. | |
101 | (plt_stub_size, plt_stub_pad): New functions. | |
102 | (build_plt_stub): Emit barriers for power7 thread safety. Don't | |
103 | emit needless save of r2. | |
104 | (build_tls_get_addr_stub): Adjust params. | |
105 | (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning | |
106 | plt stubs. Adjust build_*plt_stub calls. | |
107 | (ppc_size_one_stub): Similarly. | |
108 | (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align | |
109 | params. Choose default for plt_thread_safe based on existence of | |
110 | calls to thread creation functions. Modify plt_call to | |
111 | plt_call_r2save when no tocsave reloc found. Align tail of stub | |
112 | sections. | |
113 | (ppc64_elf_build_stubs): Align tail of stub sections. Adjust | |
114 | output of stub statistics. | |
115 | (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save. | |
116 | * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype. | |
117 | ||
df4f9443 L |
118 | 2012-01-10 H.J. Lu <hongjiu.lu@intel.com> |
119 | ||
120 | PR ld/13581 | |
121 | * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P | |
122 | check on R_X86_64_PCXX. | |
123 | ||
2a65a88e TG |
124 | 2012-01-10 Tristan Gingold <gingold@adacore.com> |
125 | ||
126 | * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false | |
127 | warning. | |
128 | ||
660722b0 TG |
129 | 2012-01-10 Tristan Gingold <gingold@adacore.com> |
130 | ||
131 | * bfdio.c (bfd_tell): Handle nested archives. | |
132 | (bfd_seek): Ditto. | |
133 | * cache.c (bfd_cache_lookup_worker): Ditto. | |
134 | * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with | |
135 | nested archives. | |
136 | (bfd_generic_openr_next_archived_file): Likewise. | |
137 | ||
b22161d6 IS |
138 | 2012-01-09 Iain Sandoe <idsandoe@googlemail.com> |
139 | ||
140 | * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement. | |
141 | (bfd_mach_o_write_symtab): Remove handling for indirect syms. | |
142 | (bfd_mach_o_primary_symbol_sort_key): Likewise. | |
143 | (bfd_mach_o_cf_symbols): Likewise. | |
144 | (bfd_mach_o_sort_symbol_table): Remove. | |
145 | (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling | |
146 | for indirect and dysymtab counts. Do the symbol sorting here. | |
147 | (bfd_mach_o_build_dysymtab_command): Count the symbol types here. | |
148 | Make the indirect symbols a TODO. | |
149 | (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols. | |
150 | (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with | |
151 | a non-zero value. | |
152 | (bfd_mach_o_read_symtab_symbol): Record the symbol index. | |
153 | (bfd_mach_o_read_symtab_symbol): Adjust recording of global status. | |
154 | * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries. | |
155 | (IS_MACHO_INDIRECT): Remove. | |
156 | (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New. | |
157 | ||
28a1b4f8 NC |
158 | 2012-01-06 Nick Clifton <nickc@redhat.com> |
159 | ||
160 | PR binutils/13121 | |
161 | * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to | |
162 | 'flaginfo' to avoid conflicts with AIX system headers. | |
163 | ||
36f0a48f TG |
164 | 2012-01-06 Tristan Gingold <gingold@adacore.com> |
165 | ||
166 | * bfdio.c (bfd_bread): Use arelt_size macro. | |
167 | ||
76d4c1cb TG |
168 | 2012-01-06 Tristan Gingold <gingold@adacore.com> |
169 | ||
170 | * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs. | |
171 | ||
a1c7aafb NC |
172 | 2012-01-05 Nick Clifton <nickc@redhat.com> |
173 | ||
174 | PR ld/12161 | |
175 | * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if | |
176 | necessary. | |
177 | ||
e85c6a70 JK |
178 | 2012-01-05 Jan Kratochvil <jan.kratochvil@redhat.com> |
179 | ||
180 | Fix zero registers core files when built by gcc-4.7. | |
181 | * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and | |
182 | size. Call elfcore_write_note for the local variables. Remove the | |
183 | final elfcore_write_note call. Add NOTREACHED comments. | |
184 | ||
15bbba8d TG |
185 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
186 | ||
187 | * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function. | |
188 | (bfd_mach_o_generic_stat_arch_elt): Adjust. | |
189 | ||
a4e241ca TG |
190 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
191 | ||
192 | * mach-o.c (bfd_mach_o_fat_member_init): New function. | |
193 | (bfd_mach_o_openr_next_archived_file): Reindent. | |
194 | Adjust to call bfd_mach_o_fat_member_init. | |
195 | (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init. | |
196 | ||
71141310 TG |
197 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
198 | ||
199 | * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle | |
200 | BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1, | |
201 | BFD_RELOC_MACH_O_X86_64_PCREL32_2, | |
202 | BFD_RELOC_MACH_O_X86_64_PCREL32_4, | |
203 | BFD_RELOC_MACH_O_X86_64_BRANCH32, | |
204 | BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32, | |
205 | BFD_RELOC_MACH_O_X86_64_GOT. | |
206 | ||
9f4a5bd1 TG |
207 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
208 | ||
209 | * mach-o.h (bfd_mach_o_fvmlib_command): New structure. | |
210 | (bfd_mach_o_load_command): Add fvmlib field. | |
211 | ||
212 | * mach-o.c (bfd_mach_o_read_fvmlib): New function. | |
213 | (bfd_mach_o_read_command): Handle fvmlib. | |
214 | ||
0b2de107 TG |
215 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
216 | ||
217 | * mach-o.c (bfd_mach_o_convert_architecture): Reindent. | |
218 | Decode msubtype for ARM. | |
219 | ||
aeefa1c9 TG |
220 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
221 | ||
222 | * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments. | |
223 | ||
fc55a902 TG |
224 | 2012-01-04 Tristan Gingold <gingold@adacore.com> |
225 | ||
226 | * mach-o.h: Reindent header. | |
227 | (bfd_mach_o_encryption_info_command): New structure. | |
228 | (bfd_mach_o_load_command): Add encryption_info field. | |
229 | ||
230 | * mach-o.c (bfd_mach_o_read_encryption_info): New function. | |
231 | (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO. | |
232 | (bfd_mach_o_read_command): Adjust error message. | |
233 | ||
2ca7691a TG |
234 | 2012-01-04 Shinichiro Hamaji <shinichiro.hamaji@gmail.com> |
235 | ||
236 | * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part | |
237 | which reads DWARF2 and stores in stash from find_line. | |
238 | (find_line) Call _bfd_dwarf2_slurp_debug_info. | |
239 | * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration. | |
240 | * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate. | |
241 | * mach-o.c (dsym_subdir): The name of subdir where debug | |
242 | information may be stored. | |
243 | (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose | |
244 | type is UUID. | |
245 | (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is | |
246 | corresponding to the executable. | |
247 | (bfd_mach_o_find_dsym): New. Find a debug information BFD in the | |
248 | specified binary file. | |
249 | (bfd_mach_o_follow_dsym): New. Find a debug information BFD for | |
250 | the original BFD. | |
251 | (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O | |
252 | executables, dylibs, and bundles. | |
253 | (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file. | |
254 | * mach-o.h (dsym_bfd): The BFD of the dSYM file. | |
255 | ||
68588f95 IS |
256 | 2012-01-03 Iain Sandoe <idsandoe@googlemail.com> |
257 | ||
258 | * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index | |
259 | for stabd symbols. | |
260 | (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs. | |
261 | (bfd_mach_o_cf_symbols): Likewise. | |
262 | ||
f2b324f1 IS |
263 | 2012-01-03 Iain Sandoe <idsandoe@googlemail.com> |
264 | ||
265 | * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo. | |
266 | ||
7f307238 IS |
267 | 2012-01-03 Iain Sandoe <idsandoe@googlemail.com> |
268 | ||
269 | * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index | |
270 | as the value of an indirect symbol. Keep the string table index in | |
271 | non-indirect syms for reference. | |
272 | (bfd_mach_o_write_dysymtab): New. | |
273 | (bfd_mach_o_primary_symbol_sort_key): New. | |
274 | (bfd_mach_o_cf_symbols): New. | |
275 | (bfd_mach_o_sort_symbol_table): New. | |
276 | (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols. | |
277 | If we are emitting a dysymtab, process indirect symbols and count the | |
278 | number of each other kind. | |
279 | (bfd_mach_o_mangle_sections): New. | |
280 | (bfd_mach_o_write_contents): Split out some pre-requisite code into | |
281 | the command builder. Write dysymtab if the command is present. | |
282 | (bfd_mach_o_count_sections_for_seg): New. | |
283 | (bfd_mach_o_build_seg_command): New. | |
284 | (bfd_mach_o_build_dysymtab_command): New. | |
285 | (bfd_mach_o_build_commands): Reorganize to support the fact that some | |
286 | commands are optional and should not be emitted if there are no | |
287 | sections or symbols. | |
288 | (bfd_mach_o_set_section_contents): Amend comment. | |
23e1d329 | 289 | * mach-o.h: Amend and add to comments. |
7f307238 IS |
290 | (mach_o_data_struct): Add fields for dysymtab symbols counts and a |
291 | pointer to the indirects, when present. | |
292 | (bfd_mach_o_should_emit_dysymtab): New macro. | |
293 | (IS_MACHO_INDIRECT): Likewise. | |
294 | ||
23e1d329 | 295 | For older changes see ChangeLog-2011 |
56882138 AM |
296 | \f |
297 | Local Variables: | |
298 | mode: change-log | |
299 | left-margin: 8 | |
300 | fill-column: 74 | |
301 | version-control: never | |
302 | End: |