| 1 | 2018-02-13 H.J. Lu <hongjiu.lu@intel.com> |
| 2 | |
| 3 | PR gas/22791 |
| 4 | * elf64-x86-64.c (is_32bit_relative_branch): Removed. |
| 5 | (elf_x86_64_relocate_section): Check PIC relocations in PIE. |
| 6 | Remove is_32bit_relative_branch usage. Disallow PC32 reloc |
| 7 | against protected function in shared object. |
| 8 | |
| 9 | 2018-02-13 Sergei Trofimovich <slyfox@inbox.ru> |
| 10 | |
| 11 | PR 22828 |
| 12 | * po/ru.po: Fix typo in Russian translation. |
| 13 | |
| 14 | 2018-02-13 Maciej W. Rozycki <macro@mips.com> |
| 15 | |
| 16 | * wasm-module.c (wasm_scan_name_function_section): Rename |
| 17 | `index' local variable to `idx'. |
| 18 | |
| 19 | 2018-02-13 Nick Clifton <nickc@redhat.com> |
| 20 | |
| 21 | PR 22823 |
| 22 | Fix compile time warnings generated by gcc version 8. |
| 23 | * libbfd-in.h: Remove extraneous text from prototypes. |
| 24 | Add prototypes for bfd_false_any, bfd_true_any, |
| 25 | bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any, |
| 26 | bfd_n1_any, bfd_void_any. |
| 27 | (_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy |
| 28 | function. |
| 29 | (_bfd_generic_bfd_merge_private_bfd_data): Likewise. |
| 30 | (_bfd_generic_bfd_set_private_flags): Likewise. |
| 31 | (_bfd_generic_bfd_copy_private_section_data): Likewise. |
| 32 | (_bfd_generic_bfd_copy_private_symbol_data): Likewise. |
| 33 | (_bfd_generic_bfd_copy_private_header_data): Likewise. |
| 34 | (_bfd_generic_bfd_print_private_bfd_data): Likewise. |
| 35 | (_bfd_noarchive_construct_extended_name_table): Likewise. |
| 36 | (_bfd_noarchive_truncate_arname): Likewise. |
| 37 | (_bfd_noarchive_write_ar_hdr): Likewise. |
| 38 | (_bfd_noarchive_get_elt_at_index): Likewise. |
| 39 | (_bfd_nosymbols_canonicalize_symtab): Likewise. |
| 40 | (_bfd_nosymbols_print_symbol): Likewise. |
| 41 | (_bfd_nosymbols_get_symbol_info): Likewise. |
| 42 | (_bfd_nosymbols_get_symbol_version_string): Likewise. |
| 43 | (_bfd_nosymbols_bfd_is_local_label_name): Likewise. |
| 44 | (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise. |
| 45 | (_bfd_nosymbols_get_lineno): Likewise. |
| 46 | (_bfd_nosymbols_find_nearest_line): Likewise. |
| 47 | (_bfd_nosymbols_find_line): Likewise. |
| 48 | (_bfd_nosymbols_find_inliner_info): Likewise. |
| 49 | (_bfd_nosymbols_bfd_make_debug_symbol): Likewise. |
| 50 | (_bfd_nosymbols_read_minisymbols): Likewise. |
| 51 | (_bfd_nosymbols_minisymbol_to_symbol): Likewise. |
| 52 | (_bfd_norelocs_bfd_reloc_type_lookup): Likewise. |
| 53 | (_bfd_norelocs_bfd_reloc_name_lookup): Likewise. |
| 54 | (_bfd_nowrite_set_arch_mach): Likewise. |
| 55 | (_bfd_nowrite_set_section_contents): Likewise. |
| 56 | (_bfd_nolink_sizeof_headers): Likewise. |
| 57 | (_bfd_nolink_bfd_get_relocated_section_contents): Likewise. |
| 58 | (_bfd_nolink_bfd_relax_section): Likewise. |
| 59 | (_bfd_nolink_bfd_gc_sections): Likewise. |
| 60 | (_bfd_nolink_bfd_lookup_section_flags): Likewise. |
| 61 | (_bfd_nolink_bfd_merge_sections): Likewise. |
| 62 | (_bfd_nolink_bfd_is_group_section): Likewise. |
| 63 | (_bfd_nolink_bfd_discard_group): Likewise. |
| 64 | (_bfd_nolink_bfd_link_hash_table_create): Likewise. |
| 65 | (_bfd_nolink_bfd_link_add_symbols): Likewise. |
| 66 | (_bfd_nolink_bfd_link_just_syms): Likewise. |
| 67 | (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise. |
| 68 | (_bfd_nolink_bfd_final_link): Likewise. |
| 69 | (_bfd_nolink_bfd_link_split_section): Likewise. |
| 70 | (_bfd_nolink_section_already_linked): Likewise. |
| 71 | (_bfd_nolink_bfd_define_common_symbol): Likewise. |
| 72 | (_bfd_nolink_bfd_define_start_stop): Likewise. |
| 73 | (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise. |
| 74 | (_bfd_nodynamic_get_synthetic_symtab): Likewise. |
| 75 | (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise. |
| 76 | (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise. |
| 77 | * libbfd.c (bfd_false_any): New function. Like bfd_false but |
| 78 | accepts one or more arguments. |
| 79 | (bfd_true_any): Likewise. |
| 80 | (bfd_nullvoidptr_any): Likewise. |
| 81 | (bfd_0_any): Likewise. |
| 82 | (bfd_0u_any): Likewise. |
| 83 | (bfd_0l_any): Likewise. |
| 84 | (_bfd_n1_any): Likewise. |
| 85 | (bfd_void_any): Likewise. |
| 86 | * libbfd.h (extern): Regenerate |
| 87 | * aout-target.h (MY_bfd_is_target_special_symbol): Use vararg |
| 88 | based dummy function. |
| 89 | * aout-tic30.c (tic30_aout_set_arch_mach): Likewise. |
| 90 | * binary.c (binary_get_symbol_info): Likewise. |
| 91 | * coff-alpha.c (alpha_ecoff_backend_data): Likewise. |
| 92 | * coff-mips.c (mips_ecoff_backend_data): Likewise. |
| 93 | * coffcode.h (coff_set_alignment_hook): Likewise. |
| 94 | (symname_in_debug_hook): Likewise. |
| 95 | (bfd_coff_backend_data bigobj_swap_table): Likewise. |
| 96 | * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise. |
| 97 | * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise. |
| 98 | * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise. |
| 99 | * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise. |
| 100 | * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise. |
| 101 | * elf32-score.c (elf_backend_omit_section_dynsym): Likewise. |
| 102 | * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise. |
| 103 | * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise. |
| 104 | * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise. |
| 105 | * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise. |
| 106 | * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise. |
| 107 | * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise. |
| 108 | * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise. |
| 109 | * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise. |
| 110 | * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise. |
| 111 | * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise. |
| 112 | (bfd_elfNN_bfd_make_debug_symbol): Likewise. |
| 113 | (bfd_elfNN_bfd_merge_private_bfd_data): Likewise. |
| 114 | (bfd_elfNN_bfd_set_private_flags): Likewise. |
| 115 | (bfd_elfNN_bfd_is_target_special_symbol): Likewise. |
| 116 | (elf_backend_init_index_section): Likewise. |
| 117 | (elf_backend_allow_non_load_phdr): Likewise. |
| 118 | * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise. |
| 119 | * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise. |
| 120 | * ieee.c (ieee_construct_extended_name_table): Likewise. |
| 121 | (ieee_write_armap): Likewise. |
| 122 | (ieee_write_ar_hdr): Likewise. |
| 123 | (ieee_bfd_is_target_special_symbol): Likewise. |
| 124 | * ihex.c (ihex_canonicalize_symtab): Likewise. |
| 125 | (ihex_bfd_is_target_special_symbol): Likewise. |
| 126 | * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise. |
| 127 | * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise. |
| 128 | (_bfd_ecoff_set_alignment_hook): Likewise. |
| 129 | * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise. |
| 130 | * mmo.c (mmo_bfd_is_target_special_symbol): Likewise. |
| 131 | * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise. |
| 132 | * oasys.c (oasys_construct_extended_name_table): Likewise. |
| 133 | (oasys_write_armap): Likewise. |
| 134 | (oasys_write_ar_hdr): Likewise. |
| 135 | (oasys_bfd_is_target_special_symbol): Likewise. |
| 136 | * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise. |
| 137 | * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise. |
| 138 | * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise. |
| 139 | * som.c (som_bfd_is_target_special_symbol): Likewise. |
| 140 | * srec.c (srec_bfd_is_target_special_symbol): Likewise. |
| 141 | * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise. |
| 142 | * verilog.c (verilog_bfd_is_target_special_symbol): Likewise. |
| 143 | * versados.c (versados_bfd_is_target_special_symbol): Likewise. |
| 144 | (versados_bfd_reloc_name_lookup): Likewise. |
| 145 | * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise. |
| 146 | (vms_bfd_define_start_stop): Likewise. |
| 147 | (alpha_vms_bfd_is_target_special_symbol): Likewise. |
| 148 | * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise. |
| 149 | * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise. |
| 150 | * elf32-arc.c (get_replace_function): Assign replacement function |
| 151 | to func pointer. |
| 152 | * elf32-i370.c (i370_noop): Update prototype. |
| 153 | |
| 154 | 2018-02-13 Alan Modra <amodra@gmail.com> |
| 155 | |
| 156 | PR 22836 |
| 157 | * elf.c (_bfd_elf_fixup_group_sections): Account for removed |
| 158 | relocation sections. If size reduces to just the flag word, |
| 159 | remove that too and mark with SEC_EXCLUDE. |
| 160 | * elflink.c (bfd_elf_final_link): Strip empty group sections. |
| 161 | |
| 162 | 2018-02-13 Alan Modra <amodra@gmail.com> |
| 163 | |
| 164 | PR 22829 |
| 165 | * elf.c (assign_file_positions_for_non_load_sections): Rewrite |
| 166 | PT_GNU_RELRO setup. |
| 167 | |
| 168 | 2018-02-12 Zebediah Figura <z.figura12@gmail.com> |
| 169 | |
| 170 | * i386msdos.c (msdos_mkobject); New function. |
| 171 | (msdos_object_p): New function. |
| 172 | (i386_msdos_vec): Use msdos_object_p as the check_format |
| 173 | function. |
| 174 | * peicode.h: Rename external_PEI_DOS_hdr, DOSMAGIC, and |
| 175 | NT_SIGNATURE to external_DOS_hdr, IMAGE_DOS_SIGNATURE, and |
| 176 | IMAGE_NT_SIGNATURE. |
| 177 | * peXXigen.c: Likewise. |
| 178 | * coff-ia64.c: Likewise. |
| 179 | |
| 180 | 2018-02-12 Nick Clifton <nickc@redhat.com> |
| 181 | |
| 182 | * elf32-nds32.c (nds32_elf_relax_longjump3): Remove redundant |
| 183 | assignment. |
| 184 | * elf32-arc.c (elf_arc_relocate_section): Likewise. |
| 185 | |
| 186 | 2018-02-09 Eric Botcazou <ebotcazou@adacore.com> |
| 187 | |
| 188 | * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Reorder conditions. |
| 189 | (sparc_elf_append_rela): Assert that there is enough room in section. |
| 190 | (_bfd_sparc_elf_copy_indirect_symbol): Fix formatting. |
| 191 | (_bfd_sparc_elf_adjust_dynamic_symbol): Minor tweak. |
| 192 | (allocate_dynrelocs): Remove outdated comments and reorder conditions. |
| 193 | For a symbol subject to a GOT relocation, reserve a slot in the |
| 194 | relocation section if the symbol isn't dynamic and we are in PIC mode. |
| 195 | (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: If relocation |
| 196 | is relaxed and a slot was reserved, generate a R_SPARC_NONE relocation. |
| 197 | <R_SPARC_GOTDATA_OP_HIX22>: Adjust comments. |
| 198 | <R_SPARC_PC10>: Reorder conditions. Remove always-false assertion. |
| 199 | (_bfd_sparc_elf_finish_dynamic_symbol): Rename local_undefweak into |
| 200 | resolved_to_zero. Do not generate a dynamic GOT relocation for an |
| 201 | undefined weak symbol with non-default visibility. Remove superfluous |
| 202 | 'else' and fix formatting. |
| 203 | |
| 204 | 2018-02-09 H.J. Lu <hongjiu.lu@intel.com> |
| 205 | |
| 206 | * elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle |
| 207 | is_solaris. |
| 208 | (i386_elf32_sol2_vec): Don't declare. |
| 209 | (elf_i386_link_setup_gnu_properties): Also handle is_solaris. |
| 210 | Don't set need_global_offset_table. |
| 211 | (elf_i386_solaris_arch_bed): New. |
| 212 | (elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for |
| 213 | Solaris. |
| 214 | * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check |
| 215 | target_os != is_nacl instead of target_os == is_normal. |
| 216 | (x86_64_elf64_sol2_vec): Don't declare. |
| 217 | (elf_x86_64_link_setup_gnu_properties): Check target_os != |
| 218 | is_nacl instead of target_os == is_normal. Don't set |
| 219 | need_global_offset_table. |
| 220 | (elf_x86_64_solaris_arch_bed): New. |
| 221 | (elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for |
| 222 | Solaris. |
| 223 | * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep |
| 224 | _GLOBAL_OFFSET_TABLE_ for Solaris. |
| 225 | (_bfd_x86_elf_link_setup_gnu_properties): Don't copy |
| 226 | need_global_offset_table. |
| 227 | * elfxx-x86.h (elf_x86_target_os): Add is_solaris. |
| 228 | (elf_x86_link_hash_table): Remove need_global_offset_table. |
| 229 | (elf_x86_init_table): Likewise. |
| 230 | |
| 231 | 2018-02-08 H.J. Lu <hongjiu.lu@intel.com> |
| 232 | |
| 233 | * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields): |
| 234 | Remove prototype. |
| 235 | (i386_elf32_sol2_vec): Declared. |
| 236 | (elf_i386_link_setup_gnu_properties): Set |
| 237 | need_global_offset_table with info->output_bfd->xvec. |
| 238 | * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields): |
| 239 | Remove prototype. |
| 240 | (x86_64_elf64_sol2_vec): Declared. |
| 241 | (elf_x86_64_link_setup_gnu_properties): Set |
| 242 | need_global_offset_table with info->output_bfd->xvec. |
| 243 | |
| 244 | 2018-02-08 H.J. Lu <hongjiu.lu@intel.com> |
| 245 | |
| 246 | * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields): |
| 247 | New prototype. |
| 248 | (elf_i386_link_setup_gnu_properties): Set need_global_offset_table |
| 249 | for Solaris. |
| 250 | * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields): |
| 251 | New prototype. |
| 252 | (elf_x86_64_link_setup_gnu_properties): Set |
| 253 | need_global_offset_table for Solaris. |
| 254 | * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the |
| 255 | unused _GLOBAL_OFFSET_TABLE_ for Solaris. |
| 256 | (_bfd_x86_elf_link_setup_gnu_properties): Copy |
| 257 | need_global_offset_table. |
| 258 | * elfxx-x86.h (elf_x86_link_hash_table): Add |
| 259 | need_global_offset_table. |
| 260 | (elf_x86_init_table): Likewise. |
| 261 | |
| 262 | 2018-02-08 Jim Wilson <jimw@sifive.com> |
| 263 | |
| 264 | * elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous |
| 265 | change. |
| 266 | |
| 267 | 2018-02-08 Nick Clifton <nickc@redhat.com> |
| 268 | |
| 269 | PR 22788 |
| 270 | * elf.c (elf_parse_notes): Reject notes with excessuively large |
| 271 | alignments. |
| 272 | |
| 273 | 2018-02-07 Alan Modra <amodra@gmail.com> |
| 274 | |
| 275 | Revert 2018-01-17 Alan Modra <amodra@gmail.com> |
| 276 | * elf32-ppc.c: Remove speculation barrier support. |
| 277 | * elf32-ppc.h: Likewise. |
| 278 | * elf64-ppc.c: Likewise. |
| 279 | * elf64-ppc.h: Likewise. |
| 280 | |
| 281 | 2018-02-06 Jim Wilson <jimw@sifive.com> |
| 282 | |
| 283 | * elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used |
| 284 | callback to report an error. |
| 285 | |
| 286 | 2018-02-06 Eric Botcazou <ebotcazou@adacore.com> |
| 287 | |
| 288 | PR ld/22263 |
| 289 | * elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic |
| 290 | into call to !bfd_link_executable and tidy up. |
| 291 | (_bfd_sparc_elf_check_relocs): Fix formatting and tidy up. |
| 292 | <R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to |
| 293 | !bfd_link_executable. |
| 294 | <R_SPARC_TLS_IE_HI22>: Likewise. |
| 295 | <GOT relocations>: Remove useless code, tidy and merge related blocks. |
| 296 | <R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to |
| 297 | !bfd_link_executable. |
| 298 | <R_SPARC_WPLT30>: Tidy up. |
| 299 | (_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call to |
| 300 | !bfd_link_executable. |
| 301 | (allocate_dynrelocs): Likewise. |
| 302 | (_bfd_sparc_elf_relocate_section): Fix formatting and tidy up. |
| 303 | <R_SPARC_TLS_GD_HI22>: Merge into... |
| 304 | <R_SPARC_TLS_GD_LO10>: ...this. Adjust 4th argument in call to |
| 305 | sparc_elf_tls_transition and remove redundant code. |
| 306 | <R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to |
| 307 | !bfd_link_executable. |
| 308 | <R_SPARC_TLS_LDO_HIX22>: Likewise. |
| 309 | <R_SPARC_TLS_LE_HIX22>: Likewise. Tidy up. |
| 310 | <R_SPARC_TLS_LDM_CALL>: Likewise. |
| 311 | <R_SPARC_TLS_GD_CALL>: Likewise. Tidy up. |
| 312 | <R_SPARC_TLS_GD_ADD>: Likewise. |
| 313 | <R_SPARC_TLS_LDM_ADD>: Likewise. |
| 314 | <R_SPARC_TLS_LDO_ADD>: Likewise. |
| 315 | <R_SPARC_TLS_IE_LD>: Likewise. |
| 316 | |
| 317 | 2018-02-06 Miloš Stojanović <milos.stojanovic@rt-rk.com> |
| 318 | |
| 319 | PR 22789 |
| 320 | * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf |
| 321 | functions failed to find the function name, try the generic elf |
| 322 | find function instead. |
| 323 | |
| 324 | 2018-02-06 Sergio Durigan Junior <sergiodj@redhat.com> |
| 325 | |
| 326 | * coff-rs6000.c (xcoff_write_archive_contents_old): Use |
| 327 | 'memcpy' instead of 'strncpy' when writing the magic number. |
| 328 | |
| 329 | 2018-02-06 Nick Clifton <nickc@redhat.com> |
| 330 | |
| 331 | PR 22794 |
| 332 | * opncls.c (bfd_get_debug_link_info_1): Check the size of the |
| 333 | section before attempting to read it in. |
| 334 | (bfd_get_alt_debug_link_info): Likewise. |
| 335 | |
| 336 | 2018-02-06 Paul Carroll <pcarroll@codesourcery.com> |
| 337 | |
| 338 | * bfd/dwarf2.c (find_abstract_name): Modified to return file and |
| 339 | line information in addition to name, if they can be found. |
| 340 | |
| 341 | 2018-02-05 Renlin Li <renlin.li@arm.com> |
| 342 | |
| 343 | PR ld/22764 |
| 344 | * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the |
| 345 | R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the |
| 346 | check for writeable section as well. |
| 347 | |
| 348 | 2018-02-05 H.J. Lu <hongjiu.lu@intel.com> |
| 349 | |
| 350 | PR ld/22782 |
| 351 | * elf32-i386.c (elf_i386_check_relocs): Set got_referenced if |
| 352 | _GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve |
| 353 | undefined weak symbol to 0. |
| 354 | * elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced |
| 355 | if _GLOBAL_OFFSET_TABLE_ is referenced. |
| 356 | * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check |
| 357 | got_referenced instead of ref_regular_nonweak. Remove the |
| 358 | unused _GLOBAL_OFFSET_TABLE_ from symbol table. |
| 359 | * elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced. |
| 360 | |
| 361 | 2018-02-05 Maciej W. Rozycki <macro@mips.com> |
| 362 | |
| 363 | * elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to |
| 364 | initialize `hi_reloc'. |
| 365 | |
| 366 | 2018-02-05 Maciej W. Rozycki <macro@mips.com> |
| 367 | |
| 368 | * elfxx-mips.c (_bfd_mips_elf_section_processing): For |
| 369 | SHT_MIPS_REGINFO sections don't assert the correct size and |
| 370 | report an error instead. |
| 371 | |
| 372 | 2018-02-05 Maciej W. Rozycki <macro@mips.com> |
| 373 | |
| 374 | * elf.c (_bfd_elf_write_object_contents): Propagate a failure |
| 375 | status from `->elf_backend_section_processing'. |
| 376 | |
| 377 | 2018-02-02 Jim Wilson <jimw@sifive.com> |
| 378 | |
| 379 | PR ld/22756 |
| 380 | * elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info. |
| 381 | If link_info->wrap_hash, check for a duplicate symbol and ignore. |
| 382 | (_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le): |
| 383 | Pass new argument to riscv_relax_delete_bytes. |
| 384 | (_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise. Remove |
| 385 | ATTRIBUTE_UNUSED from link_info parameter. |
| 386 | |
| 387 | 2018-02-02 Alan Modra <amodra@gmail.com> |
| 388 | |
| 389 | * elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops |
| 390 | emitted for toc sequence optimization. Set and use "howto" later. |
| 391 | |
| 392 | 2018-02-01 Simon Marchi <simon.marchi@ericsson.com> |
| 393 | |
| 394 | * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer |
| 395 | arithmetic on NULL pointer. |
| 396 | * elflink.c (_bfd_elf_archive_symbol_lookup, |
| 397 | elf_link_add_archive_symbols): Likewise. |
| 398 | |
| 399 | 2018-01-31 Michael Matz <matz@suse.de> |
| 400 | |
| 401 | * elflink.c (bfd_elf_define_start_stop): Fix check of |
| 402 | def_dynamic. |
| 403 | |
| 404 | 2018-01-31 H.J. Lu <hongjiu.lu@intel.com> |
| 405 | |
| 406 | PR ld/21964 |
| 407 | * elflink.c (bfd_elf_define_start_stop): Check if __start and |
| 408 | __stop symbols are referenced by shared objects. |
| 409 | |
| 410 | 2018-01-30 Alan Modra <amodra@gmail.com> |
| 411 | |
| 412 | PR 22758 |
| 413 | * elf.c (_bfd_elf_map_sections_to_segments): Don't start a new |
| 414 | segment when demand paged with lma on the same page. Test this |
| 415 | before load/non-load, executable/non-executable, |
| 416 | writable/non-writable tests and simplify. Delete bogus relro |
| 417 | condition in writable/non-writable test. Delete outdated |
| 418 | comment. Formatting. |
| 419 | |
| 420 | 2018-01-30 Alan Modra <amodra@gmail.com> |
| 421 | |
| 422 | * elflink.c (bfd_elf_define_start_stop): Make __start and __stop |
| 423 | symbols dynamic. |
| 424 | |
| 425 | 2018-01-29 Alan Modra <amodra@gmail.com> |
| 426 | |
| 427 | PR 22741 |
| 428 | * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in |
| 429 | range before converting to a symbol table pointer. |
| 430 | |
| 431 | 2018-01-27 Nick Clifton <nickc@redhat.com> |
| 432 | |
| 433 | * po/ru.po: Updated Russian translation. |
| 434 | |
| 435 | 2018-01-26 Alan Modra <amodra@gmail.com> |
| 436 | |
| 437 | * elflink.c (bfd_elf_define_start_stop): Override symbols when |
| 438 | they are defined dynamically. |
| 439 | |
| 440 | 2018-01-26 Alan Modra <amodra@gmail.com> |
| 441 | |
| 442 | * elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when |
| 443 | .branch_lt changes size. |
| 444 | |
| 445 | 2018-01-25 Alan Modra <amodra@gmail.com> |
| 446 | |
| 447 | PR 22746 |
| 448 | * elfcode.h (elf_object_p): Avoid integer overflow. |
| 449 | |
| 450 | 2018-01-25 Eric Botcazou <ebotcazou@adacore.com> |
| 451 | |
| 452 | PR ld/22727 |
| 453 | * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>: |
| 454 | Do a mere lookup of the __tls_get_addr symbol instead of adding it. |
| 455 | |
| 456 | Revert |
| 457 | 2017-10-19 H.J. Lu <hongjiu.lu@intel.com> |
| 458 | |
| 459 | PR ld/22263 |
| 460 | * elfxx-sparc.c (sparc_elf_tls_transition): Replace |
| 461 | bfd_link_pic with !bfd_link_executable, !bfd_link_pic with |
| 462 | bfd_link_executable for TLS check. |
| 463 | (_bfd_sparc_elf_check_relocs): Likewise. |
| 464 | (allocate_dynrelocs): Likewise. |
| 465 | (_bfd_sparc_elf_relocate_section): Likewise. |
| 466 | |
| 467 | 2018-01-24 Renlin Li <renlin.li@arm.com> |
| 468 | |
| 469 | * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for |
| 470 | BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, |
| 471 | BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, |
| 472 | BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, |
| 473 | BFD_RELOC_AARCH64_MOVW_PREL_G3. |
| 474 | * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise. |
| 475 | (_bfd_aarch64_elf_resolve_relocation): Likewise. |
| 476 | |
| 477 | 2018-01-24 Renlin Li <renlin.li@arm.com> |
| 478 | |
| 479 | * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0, |
| 480 | BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1, |
| 481 | BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2, |
| 482 | BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3. |
| 483 | * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for |
| 484 | BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, |
| 485 | BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, |
| 486 | BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, |
| 487 | BFD_RELOC_AARCH64_MOVW_PREL_G3. |
| 488 | * bfd-in2.h: Regenerate. |
| 489 | * libbfd.h: Regenerate. |
| 490 | |
| 491 | 2018-01-23 Maciej W. Rozycki <macro@mips.com> |
| 492 | |
| 493 | * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale |
| 494 | `mips_elf32_section_processing' comment reference. |
| 495 | |
| 496 | 2018-01-20 H.J. Lu <hongjiu.lu@intel.com> |
| 497 | |
| 498 | PR ld/22721 |
| 499 | * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the |
| 500 | versioned __tls_get_addr symbol. |
| 501 | |
| 502 | 2018-01-19 Nick Clifton <nickc@redhat.com> |
| 503 | |
| 504 | * po/fr.po: Updated French translation. |
| 505 | |
| 506 | 2018-01-18 Alan Modra <amodra@gmail.com> |
| 507 | |
| 508 | * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink. |
| 509 | * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align. |
| 510 | (ppc64_elf_build_stubs): Likewise. |
| 511 | |
| 512 | 2018-01-17 Nick Clifton <nickc@redhat.com> |
| 513 | |
| 514 | * po/ru.po: Updated Russian translation. |
| 515 | * po/uk/po: Updated Ukranian translation. |
| 516 | |
| 517 | 2018-01-17 Alan Modra <amodra@gmail.com> |
| 518 | |
| 519 | * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning. |
| 520 | |
| 521 | 2018-01-17 Alan Modra <amodra@gmail.com> |
| 522 | |
| 523 | * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier. |
| 524 | (CRSETEQ, BEQCTRM): Define. |
| 525 | (is_nonpic_glink_stub): Don't check bctr. |
| 526 | (ppc_elf_link_hash_table_create): Init new ppc_elf_params field. |
| 527 | (ppc_elf_relax_section): Size speculation barrier. |
| 528 | (output_bctr): New function. |
| 529 | (write_glink_stub): Use output_bctr. |
| 530 | (ppc_elf_relocate_section): Use output_bctr for long branch stub. |
| 531 | (ppc_elf_finish_dynamic_symbol): Likewise. |
| 532 | (ppc_elf_finish_dynamic_sections): Use output_bctr. |
| 533 | * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps. |
| 534 | * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define. |
| 535 | (GLINK_PLTRESOLVE_SIZE): Size speculation barrier. |
| 536 | (size_global_entry_stubs): Handle speculation barrier sizing. |
| 537 | (plt_stub_size): Likewise. |
| 538 | (output_bctr): New function. |
| 539 | (build_plt_stub, build_tls_get_addr_stub): Output speculation |
| 540 | barrier. |
| 541 | (ppc_build_one_stub): Likewise for ppc_stub_plt_branch. |
| 542 | (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch. |
| 543 | (build_global_entry_stubs): Output speculation barrier. |
| 544 | (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub. |
| 545 | * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps. |
| 546 | |
| 547 | 2018-01-17 Alan Modra <amodra@gmail.com> |
| 548 | |
| 549 | * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle |
| 550 | __tls_get_addr_opt, and alignment sizing. |
| 551 | (TLS_GET_ADDR_GLINK_SIZE): Delete. |
| 552 | (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE. |
| 553 | (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6, |
| 554 | or 8 insns. |
| 555 | (ppc_elf_link_hash_table_create): Init new ppc_elf_params field. |
| 556 | (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE. |
| 557 | (ppc_elf_size_dynamic_sections): Likewise. Size branch table |
| 558 | by PLT reloc count. |
| 559 | (write_glink_stub): Handle __tls_get_addr_opt stub. |
| 560 | Pad out to size given by GLINK_ENTRY_SIZE. |
| 561 | (ppc_elf_relocate_section): Adjust write_glink_stub call. |
| 562 | (ppc_elf_finish_dynamic_symbol): Likewise. |
| 563 | (ppc_elf_finish_dynamic_sections): Write PLTresolve without using |
| 564 | insn array since so many need rewriting. |
| 565 | * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align. |
| 566 | * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from |
| 567 | GLINK_CALL_STUB_SIZE. Add htab param and evaluate to size without |
| 568 | nops. Adjust all uses. |
| 569 | (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE |
| 570 | in glink_vma calculation. |
| 571 | (struct ppc_link_hash_table): Add global_entry section pointer. |
| 572 | (create_linkage_sections): Create separate section for global |
| 573 | entry stubs. |
| 574 | (PPC_LO, PPC_HI, PPC_HA): Move earlier. |
| 575 | (size_global_entry_stubs): Handle sizing for aligned stubs. |
| 576 | (ppc64_elf_size_dynamic_sections): Handle global_entry alloc, |
| 577 | and don't stash end of glink branch table in rawsize. |
| 578 | (ppc_build_one_stub): Rewrite stub size calculations. |
| 579 | (build_global_entry_stubs): Use new section. |
| 580 | (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops. |
| 581 | Build lazy link stubs out to end of section. Build global entry |
| 582 | stubs in new section. |
| 583 | |
| 584 | 2018-01-15 Nick Clifton <nickc@redhat.com> |
| 585 | |
| 586 | * po/uk.po: Updated Ukranian translation. |
| 587 | |
| 588 | 2018-01-13 Nick Clifton <nickc@redhat.com> |
| 589 | |
| 590 | * po/bfd.pot: Regenerated. |
| 591 | |
| 592 | 2018-01-13 Nick Clifton <nickc@redhat.com> |
| 593 | |
| 594 | * version.m4: Bump version to 2.30.51 |
| 595 | * configure: Regenerate. |
| 596 | |
| 597 | 2018-01-13 Nick Clifton <nickc@redhat.com> |
| 598 | |
| 599 | 2.30 branch created. |
| 600 | |
| 601 | 2018-01-12 Jens Widell <jl@opera.com> |
| 602 | |
| 603 | * elf.c (setup_group): Optimize search for group by remembering |
| 604 | last found group and restarting search at that index. |
| 605 | * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field. |
| 606 | |
| 607 | 2018-01-12 Gunther Nikl <gnikl@users.sourceforge.net> |
| 608 | |
| 609 | * aoutx.h (aout_link_check_ar_symbols): Remove default and handle |
| 610 | bfd_link_common_skip_none in switch. |
| 611 | |
| 612 | 2018-01-12 Alan Modra <amodra@gmail.com> |
| 613 | |
| 614 | PR ld/22649 |
| 615 | * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic |
| 616 | references on forced local symbols. |
| 617 | |
| 618 | 2018-01-12 Vlad Ivanov <vlad@ivanov.email> |
| 619 | |
| 620 | * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when |
| 621 | .reginfo section has wrong size. |
| 622 | |
| 623 | 2018-01-11 H.J. Lu <hongjiu.lu@intel.com> |
| 624 | |
| 625 | PR ld/22393 |
| 626 | * elf.c (_bfd_elf_map_sections_to_segments): When generating |
| 627 | separate code and read-only data LOAD segments, create a new |
| 628 | LOAD segment if the previous section contains text and the |
| 629 | current section doesn't or vice versa. Don't put a writable |
| 630 | section in a read-only segment if there is a RELRO segment. |
| 631 | |
| 632 | 2018-01-11 H.J. Lu <hongjiu.lu@intel.com> |
| 633 | |
| 634 | PR ld/22649 |
| 635 | * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic |
| 636 | references on forced local symbols. |
| 637 | |
| 638 | 2018-01-11 H.J. Lu <hongjiu.lu@intel.com> |
| 639 | |
| 640 | PR ld/22677 |
| 641 | * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY, |
| 642 | INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section. |
| 643 | |
| 644 | 2017-09-27 Kuan-Lin Chen <kuanlinchentw@gmail.com> |
| 645 | |
| 646 | PR 22662 |
| 647 | * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error. |
| 648 | |
| 649 | 2018-01-03 John Baldwin <jhb@FreeBSD.org> |
| 650 | |
| 651 | * elf.c (elfcore_grok_freebsd_note): Handle |
| 652 | NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and |
| 653 | NT_FREEBSD_PROCSTAT_VMMAP. |
| 654 | |
| 655 | 2018-01-03 Alan Modra <amodra@gmail.com> |
| 656 | |
| 657 | Update year range in copyright notice of all files. |
| 658 | |
| 659 | For older changes see ChangeLog-2017 |
| 660 | \f |
| 661 | Copyright (C) 2018 Free Software Foundation, Inc. |
| 662 | |
| 663 | Copying and distribution of this file, with or without modification, |
| 664 | are permitted in any medium without royalty provided the copyright |
| 665 | notice and this notice are preserved. |
| 666 | |
| 667 | Local Variables: |
| 668 | mode: change-log |
| 669 | left-margin: 8 |
| 670 | fill-column: 74 |
| 671 | version-control: never |
| 672 | End: |