1 2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
3 * elf.c (elfcore_write_prpsinfo): Provide unconditionally.
4 Return NULL if core file generation is unsupported.
5 (elfcore_write_prstatus): Likewise.
6 * elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
7 (elf_backend_write_core_note): Define.
9 2012-01-19 Tristan Gingold <gingold@adacore.com>
11 * pef.c: Add a comment.
14 2012-01-17 Alan Modra <amodra@gmail.com>
16 * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
17 trailing garbage in the note.
18 * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
20 2012-01-16 Daniel Green <venix1@gmail.com>
23 * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
24 h->root.type not h->type.
25 * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
27 2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
29 * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute
32 2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
34 * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file
35 position from here... to (bfd_mach_o_build_seg_command): Here.
37 2012-01-12 Iain Sandoe <idsandoe@googlemail.com>
39 * mach-o.c (bfd_mach_o_count_indirect_symbols): New.
40 (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
41 * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
42 file. (bfd_mach_o_section): Add indirect_syms field.
44 2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
46 * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of
47 vmsize from filesize. Don't compute offsets or file sizes for
50 2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
52 * mach-o.c (bfd_mach_o_build_commands): Make the building of each
53 command type independent.
55 2012-01-11 Alan Modra <amodra@gmail.com>
57 * elf64-ppc.c: Define more insns used in plt call stubs.
58 (ppc64_elf_brtaken_reloc): Assume isa version 2 or above.
59 (ppc64_elf_relocate_section): Likewise.
60 (enum ppc_stub_type): Add ppc_stub_plt_call_r2save.
61 (struct ppc_link_hash_table): Increase size of stub_count array.
62 Add plt_stub_align and plt_thread_safe.
63 (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define.
64 (plt_stub_size, plt_stub_pad): New functions.
65 (build_plt_stub): Emit barriers for power7 thread safety. Don't
66 emit needless save of r2.
67 (build_tls_get_addr_stub): Adjust params.
68 (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning
69 plt stubs. Adjust build_*plt_stub calls.
70 (ppc_size_one_stub): Similarly.
71 (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align
72 params. Choose default for plt_thread_safe based on existence of
73 calls to thread creation functions. Modify plt_call to
74 plt_call_r2save when no tocsave reloc found. Align tail of stub
76 (ppc64_elf_build_stubs): Align tail of stub sections. Adjust
77 output of stub statistics.
78 (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save.
79 * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
81 2012-01-10 H.J. Lu <hongjiu.lu@intel.com>
84 * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P
85 check on R_X86_64_PCXX.
87 2012-01-10 Tristan Gingold <gingold@adacore.com>
89 * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false
92 2012-01-10 Tristan Gingold <gingold@adacore.com>
94 * bfdio.c (bfd_tell): Handle nested archives.
96 * cache.c (bfd_cache_lookup_worker): Ditto.
97 * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with
99 (bfd_generic_openr_next_archived_file): Likewise.
101 2012-01-09 Iain Sandoe <idsandoe@googlemail.com>
103 * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement.
104 (bfd_mach_o_write_symtab): Remove handling for indirect syms.
105 (bfd_mach_o_primary_symbol_sort_key): Likewise.
106 (bfd_mach_o_cf_symbols): Likewise.
107 (bfd_mach_o_sort_symbol_table): Remove.
108 (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling
109 for indirect and dysymtab counts. Do the symbol sorting here.
110 (bfd_mach_o_build_dysymtab_command): Count the symbol types here.
111 Make the indirect symbols a TODO.
112 (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols.
113 (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with
115 (bfd_mach_o_read_symtab_symbol): Record the symbol index.
116 (bfd_mach_o_read_symtab_symbol): Adjust recording of global status.
117 * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries.
118 (IS_MACHO_INDIRECT): Remove.
119 (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New.
121 2012-01-06 Nick Clifton <nickc@redhat.com>
124 * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to
125 'flaginfo' to avoid conflicts with AIX system headers.
127 2012-01-06 Tristan Gingold <gingold@adacore.com>
129 * bfdio.c (bfd_bread): Use arelt_size macro.
131 2012-01-06 Tristan Gingold <gingold@adacore.com>
133 * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs.
135 2012-01-05 Nick Clifton <nickc@redhat.com>
138 * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if
141 2012-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
143 Fix zero registers core files when built by gcc-4.7.
144 * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and
145 size. Call elfcore_write_note for the local variables. Remove the
146 final elfcore_write_note call. Add NOTREACHED comments.
148 2012-01-04 Tristan Gingold <gingold@adacore.com>
150 * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function.
151 (bfd_mach_o_generic_stat_arch_elt): Adjust.
153 2012-01-04 Tristan Gingold <gingold@adacore.com>
155 * mach-o.c (bfd_mach_o_fat_member_init): New function.
156 (bfd_mach_o_openr_next_archived_file): Reindent.
157 Adjust to call bfd_mach_o_fat_member_init.
158 (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init.
160 2012-01-04 Tristan Gingold <gingold@adacore.com>
162 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle
163 BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1,
164 BFD_RELOC_MACH_O_X86_64_PCREL32_2,
165 BFD_RELOC_MACH_O_X86_64_PCREL32_4,
166 BFD_RELOC_MACH_O_X86_64_BRANCH32,
167 BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32,
168 BFD_RELOC_MACH_O_X86_64_GOT.
170 2012-01-04 Tristan Gingold <gingold@adacore.com>
172 * mach-o.h (bfd_mach_o_fvmlib_command): New structure.
173 (bfd_mach_o_load_command): Add fvmlib field.
175 * mach-o.c (bfd_mach_o_read_fvmlib): New function.
176 (bfd_mach_o_read_command): Handle fvmlib.
178 2012-01-04 Tristan Gingold <gingold@adacore.com>
180 * mach-o.c (bfd_mach_o_convert_architecture): Reindent.
181 Decode msubtype for ARM.
183 2012-01-04 Tristan Gingold <gingold@adacore.com>
185 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments.
187 2012-01-04 Tristan Gingold <gingold@adacore.com>
189 * mach-o.h: Reindent header.
190 (bfd_mach_o_encryption_info_command): New structure.
191 (bfd_mach_o_load_command): Add encryption_info field.
193 * mach-o.c (bfd_mach_o_read_encryption_info): New function.
194 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO.
195 (bfd_mach_o_read_command): Adjust error message.
197 2012-01-04 Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
199 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part
200 which reads DWARF2 and stores in stash from find_line.
201 (find_line) Call _bfd_dwarf2_slurp_debug_info.
202 * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration.
203 * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate.
204 * mach-o.c (dsym_subdir): The name of subdir where debug
205 information may be stored.
206 (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose
208 (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is
209 corresponding to the executable.
210 (bfd_mach_o_find_dsym): New. Find a debug information BFD in the
211 specified binary file.
212 (bfd_mach_o_follow_dsym): New. Find a debug information BFD for
214 (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O
215 executables, dylibs, and bundles.
216 (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file.
217 * mach-o.h (dsym_bfd): The BFD of the dSYM file.
219 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
221 * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index
223 (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs.
224 (bfd_mach_o_cf_symbols): Likewise.
226 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
228 * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo.
230 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
232 * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index
233 as the value of an indirect symbol. Keep the string table index in
234 non-indirect syms for reference.
235 (bfd_mach_o_write_dysymtab): New.
236 (bfd_mach_o_primary_symbol_sort_key): New.
237 (bfd_mach_o_cf_symbols): New.
238 (bfd_mach_o_sort_symbol_table): New.
239 (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols.
240 If we are emitting a dysymtab, process indirect symbols and count the
241 number of each other kind.
242 (bfd_mach_o_mangle_sections): New.
243 (bfd_mach_o_write_contents): Split out some pre-requisite code into
244 the command builder. Write dysymtab if the command is present.
245 (bfd_mach_o_count_sections_for_seg): New.
246 (bfd_mach_o_build_seg_command): New.
247 (bfd_mach_o_build_dysymtab_command): New.
248 (bfd_mach_o_build_commands): Reorganize to support the fact that some
249 commands are optional and should not be emitted if there are no
251 (bfd_mach_o_set_section_contents): Amend comment.
252 * mach-o.h: Amend and add to comments.
253 (mach_o_data_struct): Add fields for dysymtab symbols counts and a
254 pointer to the indirects, when present.
255 (bfd_mach_o_should_emit_dysymtab): New macro.
256 (IS_MACHO_INDIRECT): Likewise.
258 For older changes see ChangeLog-2011
264 version-control: never