1 2012-12-23 Mike Frysinger <vapier (a] gentoo.org> 2 3 * config.bfd (i[3-7]86-*-linux-*): Add x86_64pei_vec to 4 targ64_selvecs. 5 6 2012-12-21 H.J. Lu <hongjiu.lu (a] intel.com> 7 8 * elf64-x86-64.c (elf_x86_64_relocate_section): Check 9 R_X86_64_standard instead of R_X86_64_max for unrecognized 10 relocation. 11 12 2012-12-21 H.J. Lu <hongjiu.lu (a] intel.com> 13 14 PR ld/14980 15 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly 16 adjust h->plt.refcount. 17 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. 18 19 2012-12-19 H.J. Lu <hongjiu.lu (a] intel.com> 20 21 * elf32-i386.c (elf_i386_relocate_section): Replace 22 bfd_elf32_swap_reloc_out with elf_append_rel. 23 (elf_i386_finish_dynamic_symbol): Likewise. 24 25 * elflink.c (elf_append_rel): Call swap_reloc_out instead of 26 swap_reloca_out. 27 28 2012-12-18 H.J. Lu <hongjiu.lu (a] intel.com> 29 30 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Reindent. 31 32 2012-12-18 Edgar E. Iglesias <edgar.iglesias (a] gmail.com> 33 34 PR ld/14736 35 * elf32-microblaze.c (calc_fixup): Add end range. 36 37 2012-12-18 Alan Modra <amodra (a] gmail.com> 38 39 * elf.c (swap_out_syms): Set shndx to SHN_ABS when not one of 40 the special MAP_* values. 41 42 2012-12-17 Roland McGrath <mcgrathr (a] google.com> 43 Alan Modra <amodra (a] gmail.com> 44 45 * elf32-arm.c (elf32_arm_size_stubs): Skip input BFDs that are 46 not ARM ELF. 47 48 2012-12-17 Nick Clifton <nickc (a] redhat.com> 49 50 * MAINTAINERS: Add copyright notice. 51 * Makefile.am: Likewise. 52 * PORTING: Likewise. 53 * README: Likewise. 54 * TODO: Likewise. 55 * acinclude.m4: Likewise. 56 * bfd.m4: Likewise. 57 * config.bfd: Likewise. 58 * configure.com: Likewise. 59 * configure.host: Likewise. 60 * configure.in: Likewise. 61 * makefile.vms: Likewise. 62 * warning.m4: Likewise. 63 * elf64-hppa.c: Fix copyright notice. 64 * Makefile.in: Regenerate. 65 66 2012-12-16 H.J. Lu <hongjiu.lu (a] intel.com> 67 68 * elf32-i386.c (elf_i386_check_relocs): Don't check IFUNC 69 relocations here. 70 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 71 72 2012-12-16 H.J. Lu <hongjiu.lu (a] intel.com> 73 74 PR ld/14968 75 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check 76 local IFUNC references. 77 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. 78 79 2012-12-14 Tom Tromey <tromey (a] redhat.com> 80 81 * elf.c (elfcore_grok_note) <NT_FILE>: New case. 82 83 2012-12-13 H.J. Lu <hongjiu.lu (a] intel.com> 84 85 PR ld/14956 86 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local 87 IFUNC calls. 88 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. 89 90 2012-12-10 Edgar E. Iglesias <edgar.iglesias (a] gmail.com> 91 92 * reloc.c (MICROBLAZE): Document new relocations 93 * bfd-in2.h: Regenerated 94 * libbfd.h: Regenerated 95 * elf32-microblaze.c (microblaze_elf_howto_raw): Add TLS relocations 96 (microblaze_elf_reloc_type_lookup): Likewise 97 (elf32_mb_link_hash_entry): define TLS reference types 98 (elf32_mb_link_hash_table): add TLS Local dynamic GOT entry 99 #define has_tls_reloc if section has TLS relocs 100 (dtprel_base), (check_unique_offset): New 101 (microblaze_elf_output_dynamic_relocation): output simple 102 dynamic relocation into SRELOC. 103 (microblaze_elf_relocate_section): Accommodate TLS relocations. 104 (microblaze_elf_check_relocs): Likewise 105 (update_local_sym_info): New 106 (microblaze_elf_copy_indirect_symbol): Add tls_mask. 107 (allocate_dynrelocs): Handle TLS symbol 108 (microblaze_elf_size_dynamic_sections): Set size and offset 109 (microblaze_elf_finish_dynamic_symbol): Use 110 microblaze_elf_output_dynamic_relocation 111 112 2012-12-09 H.J. Lu <hongjiu.lu (a] intel.com> 113 114 PR binutils/14933 115 * archive.c (bsd_write_armap): Properly check indicies bigger 116 than 4Gb. 117 118 2012-12-07 Alan Modra <amodra (a] gmail.com> 119 120 PR ld/14926 121 * elf.c (_bfd_elf_map_sections_to_segments): Include elf header 122 size when determining phdr_in_segment. 123 124 2012-12-06 Yufeng Zhang <yufeng.zhang (a] arm.com> 125 126 * elf64-aarch64.c (elf64_aarch64_grok_prstatus): New function. 127 (elf_backend_grok_prstatus): Define to elf64_aarch64_grok_prstatus. 128 129 2012-12-06 Alan Modra <amodra (a] gmail.com> 130 131 * elfxx-mips.c (allocate_dynrelocs): Correct test for symbol 132 defined in a regular file to include common symbols. 133 134 2012-12-05 Leif Ekblad <leif (a] rdos.net> 135 136 * config.bfd: Add x86_64-*-rdos. 137 138 2012-12-05 Alan Modra <amodra (a] gmail.com> 139 140 * elf64-ppc.c (build_plt_stub): Fix off by one error in branch 141 to glink. 142 143 2012-12-03 Maciej W. Rozycki <macro (a] codesourcery.com> 144 145 PR ld/10629 146 * elfxx-mips.c (mips_elf_link_hash_table): Update comment for 147 use_rld_obj_head. 148 (_bfd_mips_elf_create_dynamic_sections): Always create a 149 .rld_map section if no __rld_obj_head symbol has been seen. 150 151 2012-12-03 Maciej W. Rozycki <macro (a] codesourcery.com> 152 153 * elf32-mips.c (mips_elf32_object_p): Return right away when the 154 ABI is not compatible. 155 * elfn32-mips.c (mips_elf_n32_object_p): Likewise. 156 157 2012-12-03 Maciej W. Rozycki <macro (a] codesourcery.com> 158 159 * elf32-tilepro.c (tilepro_elf_mkobject): New function. 160 (bfd_elf32_mkobject): New macro. 161 162 2012-12-03 Maciej W. Rozycki <macro (a] codesourcery.com> 163 164 * elf32-mips.c (bfd_elf32_mkobject): New macro. 165 * elf64-mips.c (bfd_elf64_mkobject): Likewise. 166 * elfn32-mips.c (bfd_elf32_mkobject): Likewise. 167 * elfxx-mips.h (_bfd_mips_elf_mkobject): New prototype. 168 * elfxx-mips.c (mips_elf_obj_tdata): New struct. 169 (mips_elf_tdata): New macro. 170 (_bfd_mips_elf_mkobject): New function. 171 (mips_elf_merge_obj_attributes): Report the originating input BFD 172 on attribute conflicts. 173 174 2012-12-03 Maciej W. Rozycki <macro (a] codesourcery.com> 175 176 * elfxx-mips.c (mips_elf_merge_obj_attributes): Correct messages 177 for the -mdouble-float and -msingle-float cases throughout; make 178 all the messages report the output file consistently on the 179 left-hand side. 180 181 2012-11-29 Roland McGrath <mcgrathr (a] google.com> 182 183 * elf-nacl.c (segment_eligible_for_headers): Disallow writable segments. 184 185 2012-11-26 Roland McGrath <mcgrathr (a] google.com> 186 187 * elf-nacl.c (nacl_modify_segment_map): Don't crash when INFO is null. 188 189 2012-11-21 H.J. Lu <hongjiu.lu (a] intel.com> 190 191 PR binutils/14493 192 * elf.c (copy_elf_program_header): When rewriting program 193 header, set the output maxpagesize to the maximum alignment 194 of input PT_LOAD segments. 195 196 2012-11-21 Roland McGrath <mcgrathr (a] google.com> 197 198 * elf-nacl.c (segment_nonexecutable_and_has_contents): Renamed to ... 199 (segment_eligible_for_headers): ... this. Take new arguments 200 MAXPAGESIZE and SIZEOF_HEADERS. Return false if the first section's 201 start address doesn't leave space for the headers. 202 (nacl_modify_segment_map): Update caller. 203 204 2012-11-20 H.J. Lu <hongjiu.lu (a] intel.com> 205 206 PR ld/14862 207 * elf-bfd.h (elf_link_hash_entry): Remove ref_dynamic_nonweak 208 added by accident. 209 (elf_link_add_object_symbols): Don't set nor check 210 ref_dynamic_nonweak. 211 212 2012-11-20 Alan Modra <amodra (a] gmail.com> 213 214 * elf32-rx.c (rx_elf_print_private_bfd_data): Warning fix. 215 216 2012-11-16 Joey Ye <joey.ye (a] arm.com> 217 218 * elf32-arm.c (elf32_arm_final_link_relocate 219 <case R_ARM_THM_ALU_PREL_11_0, case R_ARM_THM_PC12>): Align address of 220 the place being relocated. 221 (elf32_arm_final_link_relocate, case R_ARM_THM_PC8): Align address 222 of the place being relocated and truncate addend. 223 (Pa): New macro. 224 225 2012-11-14 Roland McGrath <mcgrathr (a] google.com> 226 227 * elf32-arm.c (elf32_arm_nacl_plt0_entry): Use bic rather than bfc 228 instruction for data sandboxing. 229 230 2012-11-14 Tristan Gingold <gingold (a] adacore.com> 231 232 * mach-o.c (bfd_mach_o_read_main) 233 (bfd_mach_o_read_source_version): New functions. 234 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DATA_IN_CODE, 235 BFD_MACH_O_LC_DYLIB_CODE_SIGN_DRS, BFD_MACH_O_LC_MAIN, 236 BFD_MACH_O_LC_SOURCE_VERSION. 237 * mach-o.h (bfd_mach_o_main_command) 238 (bfd_mach_o_source_version_command): New types. 239 (bfd_mach_o_load_command): Add fields for these new types. 240 241 2012-11-14 Tristan Gingold <gingold (a] adacore.com> 242 243 * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Add a special 244 handling for non-scattered pairs. Update comments. 245 246 2012-11-13 Joe Seymour <jseymour (a] codesourcery.com> 247 248 * elf.c (rewrite_elf_program_header): Allocate elf_segment_map 249 with bfd_zalloc, instead of bfd_alloc. 250 251 2012-11-09 Nick Clifton <nickc (a] redhat.com> 252 253 * Makefile.am (ALL_MACHINES): Add cpu-v850-rh850.lo. 254 (ALL_MACHINES_CFILES): Add cpu-v850-rh850.c. 255 * archures.c (bfd_arch_info): Add bfd_v850_rh850_arch. 256 * config.bfd: Likewise. 257 * configure.in: Add bfd_elf32_v850_rh850_vec. 258 * cpu-v850.c: Update printed description. 259 * cpu-v850_rh850.c: New file. 260 * elf32-v850.c (v850_elf_check_relocs): Add support for RH850 ABI 261 relocs. 262 (v850_elf_perform_relocation): Likewise. 263 (v850_elf_final_link_relocate): Likewise. 264 (v850_elf_relocate_section): Likewise. 265 (v850_elf_relax_section): Likewise. 266 (v800_elf_howto_table): New. 267 (v850_elf_object_p): Add support for RH850 ABI values. 268 (v850_elf_final_write_processing): Likewise. 269 (v850_elf_merge_private_bfd_data): Likewise. 270 (v850_elf_print_private_bfd_data): Likewise. 271 (v800_elf_reloc_map): New. 272 (v800_elf_reloc_type_lookup): New. 273 (v800_elf_reloc_name_lookup): New. 274 (v800_elf_info_to_howto): New. 275 (bfd_elf32_v850_rh850_vec): New. 276 (bfd_arch_v850_rh850): New. 277 * targets.c (_bfd_targets): Add bfd_elf32_v850_rh850_vec. 278 * Makefile.in: Regenerate. 279 * bfd-in2.h: Regenerate. 280 * configure: Regenerate. 281 282 * elf32-rx.c (describe_flags): New function. Returns a buffer 283 containing a description of the E_FLAG_RX_... values set. 284 (rx_elf_merge_private_bfd_data): Use it. 285 (rx_elf_print_private_bfd_data): Likewise. 286 (elf32_rx_machine): Skip EF_RX_CPU_RX check. 287 (elf32_rx_special_sections): Define. 288 (elf_backend_special_sections): Define. 289 290 2012-11-09 Edgar E. Iglesias <edgar.iglesias (a] gmail.com> 291 292 * config.bfd: Add microblazeel-*-* 293 * configure.in: Likewise. 294 * configure: Regenerate. 295 * elf32-microblaze.c (microblaze_elf_relocate_section): Add endian awareness. 296 (microblaze_elf_merge_private_bfd_data): New. 297 (microblaze_bfd_write_imm_value_32): New. 298 (microblaze_bfd_write_imm_value_64): New. 299 (microblaze_elf_relax_section): Add endian awareness. 300 (microblaze_elf_add_symbol_hook): Define TARGET_LITTLE_NAME, 301 TARGET_LITTLE_SYM and bfd_elf32_bfd_merge_private_bfd_data. 302 * targets.c: Add bfd target bfd_elf32_microblazeel_vec. 303 304 2012-11-09 H.J. Lu <hongjiu.lu (a] intel.com> 305 306 * aout-tic30.c (MY_final_link_callback): Remove trailing 307 redundant `;'. 308 * coff-h8500.c (extra_case): Likewise. 309 (bfd_coff_reloc16_get_value): Likewise. 310 * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Likewise. 311 * elf.c (_bfd_elf_slurp_version_tables): Likewise. 312 * elf32-frv.c (elf32_frv_relocate_section): Likewise. 313 * elf32-v850.c (v850_elf_perform_relocation): Likewise. 314 * opncls.c (bfd_calc_gnu_debuglink_crc32): Likewise. 315 * plugin.c (add_symbols): Likewise. 316 * reloc.c (bfd_check_overflow): Likewise. 317 * vms-lib.c (_bfd_vms_lib_archive_p): Likewise. 318 319 2012-11-08 Tom Tromey <tromey (a] redhat.com> 320 321 * elf.c (elfcore_grok_note) <NT_SIGINFO>: New case; make 322 pseudosection. 323 324 2012-11-08 Alan Modra <amodra (a] gmail.com> 325 326 * aclocal.m4: Regenerate. 327 * Makefile.in: Regenerate. 328 * po/SRC-POTFILES.in: Regenerate. 329 330 2012-11-07 H.J. Lu <hongjiu.lu (a] intel.com> 331 332 * section.c (bfd_get_section_contents): Replace memcpy 333 with memmove. 334 335 2012-11-07 Hans-Peter Nilsson <hp (a] axis.com> 336 337 PR binutils/14481 338 * aout-target.h (MY_close_and_cleanup): Make local function 339 instead of alias of MY_bfd_free_cached_info. Also call 340 _bfd_generic_close_and_cleanup. 341 342 2012-11-06 H.J. Lu <hongjiu.lu (a] intel.com> 343 344 PR binutils/14813 345 * bfdio.c (bfd_iovec): Change return type of bclose to 346 bfd_boolean. 347 (memory_bclose): Change return type to bfd_boolean. 348 * cache.c (cache_bclose): Likewise. 349 * opncls.c (opncls_bclose): Likewise. Return TRUE on success. 350 * vms-lib.c (vms_lib_bclose): Likewise. Return TRUE. 351 * libbfd.h: Regenerated. 352 353 2012-11-06 Tristan Gingold <gingold (a] adacore.com> 354 355 * coff-x86_64.c (_bfd_generic_find_nearest_line_discriminator): 356 Define as coff_find_nearest_line_discriminator. 357 358 2012-11-06 Alan Modra <amodra (a] gmail.com> 359 360 PR binutils/14567 361 * opncls.c (opncls_iovec): Forward declare. 362 (_bfd_new_bfd_contained_in): If using opncls_iovec, copy iostream 363 to new bfd. 364 365 2012-11-06 Alan Modra <amodra (a] gmail.com> 366 367 * mach-o.c (bfd_mach_o_close_and_cleanup): Don't call 368 _bfd_generic_close_and_cleanup for mach_o_fat archives. 369 370 2012-11-06 Alan Modra <amodra (a] gmail.com> 371 372 * coff-tic4x.c (tic4x_coff0_vec, tic4x_coff0_beh_vec, 373 tic4x_coff1_vec, tic4x_coff1_beh_vec, tic4x_coff2_vec, 374 tic4x_coff2_beh_vec): Allow SEC_CODE and SEC_READONLY in 375 section flags. 376 * coff-ppc.c (TARGET_LITTLE_SYM): Likewise. 377 (TARGET_BIG_SYM): Likewise. 378 379 2012-11-06 Alan Modra <amodra (a] gmail.com> 380 381 * elf64-ppc.c (struct ppc_link_hash_table): Add dot_toc_dot. 382 (ppc64_elf_size_stubs): Lookup ".TOC.". 383 (ppc64_elf_relocate_section): Resolve special symbol ".TOC.". 384 385 2012-11-06 Alan Modra <amodra (a] gmail.com> 386 387 * elf64-ppc.c (maybe_strip_output): Heed SEC_KEEP. 388 389 2012-11-05 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 390 391 PR target/14788 392 * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for 393 local ifunc symbols. 394 * elf64-s390.c (elf_s390_relocate_section): Likewise. 395 396 2012-11-05 Alan Modra <amodra (a] gmail.com> 397 398 * configure.in: Apply 2012-09-10 change to config.in here. 399 400 2012-11-05 Alan Modra <amodra (a] gmail.com> 401 402 * elf64-ppc.c (ppc64_elf_edit_toc): Clear "repeat" inside 403 loop. Really mark toc entry referring to another toc entry 404 only if the first is used. 405 406 2012-10-30 H.J. Lu <hongjiu.lu (a] intel.com> 407 408 * configure.in: Also handle --enable-64-bit-bfd when setting 409 CORE_HEADER for 'i[3-7]86-*-linux-*'. 410 411 2012-10-30 Steve McIntyre <steve.mcintyre (a] linaro.org> 412 413 * elf32-arm.c (elf32_arm_print_private_bfd_data): Recognise and 414 display the new ARM hard-float/soft-float ABI flags for EABI_VER5 415 (elf32_arm_post_process_headers): Add the hard-float/soft-float 416 ABI flag as appropriate for ET_DYN/ET_EXEC in EABI_VER5. 417 418 2012-10-30 Yao Qi <yao (a] codesourcery.com> 419 H.J. Lu <hongjiu.lu (a] intel.com> 420 421 * configure.in: Set CORE_HEADER to hosts/x86-64linux.h for 422 'i[3-7]86-*-linux-*' if x86_64-*linux is enabled. 423 * configure: Regenerated. 424 425 * elf64-x86-64.c (elf_x86_64_write_core_note): Replace type 426 'prpsinfo_t' and 'prstatus_t' with 'prpsinfo64_t' and 427 'prstatus64_t' respectively. 428 429 * hosts/x86-64linux.h (a8_uint64_t): New. 430 (user_regsx32_struct): Renamed to ... 431 (user_regs64_struct): This. Replace uint64_t with a8_uint64_t. 432 (elf_gregx32_t): Renamed to ... 433 (elf_greg64_t): This. Replace uint64_t with a8_uint64_t. 434 (ELF_NGREGX32): Removed. 435 (ELF_NGREG64): New. 436 (elf_gregx32_t): Removed. 437 (elf_greg64_t): New. 438 (struct prstatus64_timeval): New. 439 (elf_prstatusx32): Replace elf_gregsetx32_t with elf_gregset64_t. 440 (elf_prstatus64): New. 441 (elf_prpsinfo64): New. 442 (prstatus64_t, prpsinfo64_t): New typedef. 443 444 2012-10-29 Sean Keys <skeys (a] ipdatasys.com> 445 446 * elf32-xgate.c(elf_xgate_howto_table): Fix src and dest mask for 447 R_XGATE_16 448 449 2012-10-29 Alan Modra <amodra (a] gmail.com> 450 451 * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask in 452 R_PPC_VLE_LO16A, R_PPC_VLE_HI16A, R_PPC_VLE_HA16A, 453 R_PPC_VLE_SDAREL_LO16A, R_PPC_VLE_SDAREL_HI16A, 454 R_PPC_VLE_SDAREL_HA16A reloc howtos. 455 456 2012-10-26 Nick Clifton <nickc (a] redhat.com> 457 458 * po/uk.po: Updated Ukranian translation. 459 460 2012-10-26 Alan Modra <amodra (a] gmail.com> 461 462 PR gas/14758 463 * elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS 464 bfd_reloc values. Map to corresponding D-form relocs. 465 (is_insn_ds_form, is_insn_qs_form): New functions. 466 (ppc_elf_relocate_section): Validate insn with DS-form or DQ-form 467 fields using D-form reloc. 468 469 2012-10-25 H.J. Lu <hongjiu.lu (a] intel.com> 470 471 * elf32-i386.c (elf_i386_size_dynamic_sections): Replace 472 _GLOBAL_OFFSET_TABLE_ lookup with htab->elf.hgot. 473 * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise. 474 475 2012-10-24 H.J. Lu <hongjiu.lu (a] intel.com> 476 477 * compress.c (bfd_is_section_compressed): Don't decompress the 478 section. 479 480 2012-10-23 Nathan Sidwell <nathan (a] codesourcery.com> 481 482 * bfd-in.h (bfd_elf_stack_segment_size): Declare. 483 * bfd-in2.h: Rebuilt. 484 * elfxx-target.h (elf_backend_stack_align): New. 485 (elfNN_bed): Add it. 486 * elf-bfd.h (struct elf_backend_data): Add stack_align field. 487 * elf.c (bfd_elf_map_sections_to_segments): Pay attention to 488 stack_align and stacksize for PT_GNU_STACK segment. 489 (assign_file_positions_for_non_load_sections): Set p_memsz for 490 PT_GNU_STACK segment. 491 (copy_elf_program_header): Copy PT_GNU_STACK size. 492 * elflink.c (bfd_elf_stack_segment_size): New function, taken from 493 uclinux backends. 494 (bfd_elf_size_dynamic_sections): Determine 495 PT_GNU_STACK requirements after calling backend. Pay attention to 496 stacksize. 497 * elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Call 498 bfd_elf_stack_segment_size. 499 (elf32_bfinfdpic_modify_program_headers): Delete. 500 (elf32_bfingfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK 501 here. 502 (elf_backend_stack_align): Override. 503 (elf_backend_modify_program_headers): Don't override. 504 * elf32-frv.c (frvfdpic_always_size_sections): Call 505 bfd_elf_stack_segment_size. 506 (elf32_frvfdpic_modify_program_headers): Delete. 507 (elf32_frvfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK 508 here. 509 (elf_backend_stack_align): Override. 510 (elf_backend_modify_program_headers): Don't override. 511 * elf32-lm32.c (lm32_elf_always_size_sections): Leave 512 PT_GNU_STACK creation to underlying elf support. Check 513 __stacksize here for backwards compatibility, and set it if 514 needed. 515 (lm32_elf_modify_segment_map): Delete. 516 (lm32_elf_modify_program_headers): Delete. 517 (elf_backend_stack_align): Override. 518 (elf_backend_modify_segment_map): Don't override. 519 (elf_backend_modify_program_headers): Don't override. 520 * elf32-sh.c (sh_elf_always_size_sections): Call 521 bfd_elf_stack_segment_size. 522 (sh_elf_modify_program_headers): Delete. 523 (sh_elf_copy_private_data): Don't copy PT_GNU_STACK 524 here. 525 (elf_backend_stack_align): Override. 526 (elf_backend_modify_program_headers): Don't override. 527 * elf32-tic6x.c (elf32_tic6x_always_size_sections): Call 528 bfd_elf_stack_segment_size. 529 (elf32_tic6x_modify_program_headers): Delete. 530 (elf32_tic6x_copy_private_data): Delete. 531 (elf_backend_stack_align): Override. 532 (bfd_elf32_bfd_copy_private_bfd_data): Don't override. 533 (elf_backend_modify_program_headers): Don't override. 534 535 2012-10-22 Alan Modra <amodra (a] gmail.com> 536 537 * cache.c (cache_bmmap): Don't use void* arithmetic. 538 539 2012-10-21 Alan Modra <amodra (a] gmail.com> 540 541 * compress.c (bfd_cache_section_contents): New function. 542 * bfd-in2.h: Regenerate. 543 544 2012-10-21 Hans-Peter Nilsson <hp (a] bitrange.com> 545 546 * linker.c (_bfd_generic_link_output_symbols): Handle a 547 no-longer-global symbol entered through a plugin. 548 549 2012-10-20 Alan Modra <amodra (a] gmail.com> 550 551 * compress.c: Reinstate 2012-10-19 change. 552 (bfd_get_full_section_contents): Don't free unless we alloc. 553 Use proper decompress size. Delete some vars, rename others. 554 555 2012-10-19 Tom Tromey <tromey (a] redhat.com> 556 557 * compress.c: Revert previous patch. 558 559 2012-10-19 Tom Tromey <tromey (a] redhat.com> 560 561 * compress.c (bfd_get_full_section_contents): Don't cache 562 decompressed contents. 563 564 2012-10-18 Kai Tietz <ktietz (a] redhat.com> 565 566 PR binutils/14067 567 * coff-i386.c (bfd_target): Add section flag SEC_EXCLUDE. 568 Allow BFD_COMPRESS and BFD_DECOMPRESS flags. 569 * coff-x86_64.c: Likewise. 570 * coffcode.h (DOT_ZDEBUG): New define. 571 (sec_to_styp_flags): Check for .zdebug. 572 (styp_to_sec_flags): Likewise. 573 * coffgen.c (make_a_section): Handle .debug_* section 574 compression/decompression flags. 575 * cofflink.c (mark_relocs): Ignore relocations 576 for a section, which isn't marked as used. 577 (_bfd_coff_link_input_bfd): Add support of compressed 578 debug sections. 579 * compress.c (decompress_contents): Loop as long 580 as there is input available and there is room for 581 output. 582 * bfd/pe-arm.c: Add .zdebug_ partial match entry. 583 * pe-i386.c: Likewise. 584 * pe-x86_64.c: Likewise. 585 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't clear all 586 data-directories as this might destroy content. 587 588 * coff-i386.c (_bfd_generic_find_nearest_line_discriminator): 589 define as coff_find_nearest_line_discriminator. 590 * libcoff-in.h (coff_find_nearest_line_discriminator): New 591 * libcoff.h: Regenerated. 592 * coff-x86_64.c: Likewise. 593 * coffgen.c (coff_find_nearest_line_discriminator): New function. 594 prototype. 595 596 2012-10-16 Joel Brobecker <brobecker (a] adacore.com> 597 598 * coff64-rs6000.c (rs6000coff64_vec): Set _close_and_cleanup 599 field to _bfd_archive_close_and_cleanup. 600 (aix5coff64_vec): Likewise. 601 602 2012-10-16 Joel Brobecker <brobecker (a] adacore.com> 603 604 * coff-rs6000.c (rs6000coff_vec): Set _close_and_cleanup 605 field to _bfd_archive_close_and_cleanup. 606 (pmac_xcoff_vec): Likewise. 607 608 2012-10-16 Sofiane Naci <sofiane.naci (a] arm.com> 609 610 * elf64-aarch64.c (elf64_aarch64_tls_howto_table): Fix shift value for 611 R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, R_AARCH64_TLSLE_MOVW_TPREL_G2, 612 R_AARCH64_TLSLE_MOVW_TPREL_G1, R_AARCH64_TLSLE_MOVW_TPREL_G1_NC, 613 R_AARCH64_TLSLE_ADD_TPREL_HI12. 614 (elf64_aarch64_tlsdesc_howto_table): Fix shift value for 615 R_AARCH64_TLSDESC_LD64_PREL19 and R_AARCH64_TLSDESC_OFF_G1. 616 (elf64_aarch64_final_link_relocate): Add signed_addend when resolving 617 AARCH64_TLSLE_*_TPREL_* relocations. 618 619 2012-10-16 Alan Modra <amodra (a] gmail.com> 620 621 * elf32-xtensa.c (free_section_cache): Renamed from 622 clear_section_cache. Don't zero cache. 623 (section_cache_section): Remove ineffectual zero of cache. 624 Call init_section_cache instead. 625 626 2012-10-15 Doug Evans <dje (a] google.com> 627 628 * elf.c (special_sections_d): Add comment. 629 630 2012-10-13 H.J. Lu <hongjiu.lu (a] intel.com> 631 632 PR bfd/14430 633 * Makefile.am (LIBDL): Replace -ldl with @lt_cv_dlopen_libs@. 634 * configure.in (lt_cv_dlopen_libs): AC_SUBST. 635 * Makefile.in: Regenerated. 636 * configure: Likewise. 637 638 2012-10-08 Alan Modra <amodra (a] gmail.com> 639 640 PR binutils/14662 641 * elf.c (_bfd_elf_make_section_from_shdr): Treat .gdb_index as 642 SEC_DEBUGGING. 643 644 2012-09-20 Walter Lee <walt (a] tilera.com> 645 646 * elf32-tilepro.c (tilepro_elf_relocate_section): Adjust got 647 relocations with value of hgot. 648 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto. 649 650 2012-09-19 Steve Ellcey <sellcey (a] mips.com> 651 652 * config.bfd: Add mips*-mti-elf* target. 653 654 2012-09-18 H.J. Lu <hongjiu.lu (a] intel.com> 655 656 PR ld/14591 657 * elf-bfd.h (_bfd_elf_merge_symbol): Add an argument to return 658 if the old symbol is weak. 659 660 * elf32-sh-symbian.c (sh_symbian_relocate_section): Update 661 _bfd_elf_merge_symbol call. 662 663 * elflink.c (_bfd_elf_merge_symbol): Add an argument to return 664 if the old symbol is weak. 665 (_bfd_elf_add_default_symbol): Update _bfd_elf_merge_symbol 666 call. 667 (elf_link_add_object_symbols): Don't update symbol type from a 668 weak definition. Update symbol type from a common symbol when 669 overriding a weak symbol. 670 671 2012-09-17 H.J. Lu <hongjiu.lu (a] intel.com> 672 673 * elf32-i386.c (elf_i386_convert_mov_to_lea): Ignore discarded 674 section. 675 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise. 676 677 2012-09-17 H.J. Lu <hongjiu.lu (a] intel.com> 678 679 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Replace return 680 FALSE with abort. 681 * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. 682 683 2012-09-17 Walter Lee <walt (a] tilera.com> 684 685 * elf32-tilepro.c (tilepro_elf_relocate_section): Remove unused 686 got_base variable. 687 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto. 688 689 2012-09-17 Walter Lee <walt (a] tilera.com> 690 691 * elf32-tilepro.c (tilepro_elf_relocate_section): Fix computation 692 of got relocations for when .got.plt section is merged with .got. 693 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto. 694 695 2012-09-14 David Edelsohn <dje.gcc (a] gmail.com> 696 697 * configure: Regenerate. 698 699 2012-09-13 Anthony Green <green (a] moxielogic.com> 700 701 * targets.c (bfd_elf32_bigmoxie_vec, bfd_elf32_littlemoxie_vec): 702 Define. 703 (bfd_elf32_moxie_vec): Remove. 704 * config.bfd, configure.in: Add bi-endian support for moxie. 705 * configure: Rebuilt. 706 * elf32-moxie.c (TARGET_LITTLE_NAME, TARGET_LITTLE_SYM): Define. 707 (TARGET_BIG_NAME, TARGET_BIG_SYM): Update for bi-endian support. 708 709 2012-09-12 Doug Kwan <dougkwan (a] google.com> 710 711 * elf64-ppc.c (ppc64_elf_relocate_section): Use pre-adjusted 712 relocation for stub lookup. 713 714 2012-09-12 Chris Schlumberger-Socha <chris.schlumberger-socha (a] arm.com> 715 716 * bfd-in2.h: Regenerated. 717 * elf64-aarch64.c 718 (elf64_aarch64_howto_table): Add R_AARCH64_GOT_LD_PREL19 reloc to HOWTO. 719 (elf64_aarch64_reloc_map): Add reloc entry. 720 (aarch64_resolve_relocation): Likewise. 721 (bfd_elf_aarch64_put_addend): Likewise. 722 (aarch64_reloc_got_type): Likewise. 723 (elf64_aarch64_final_link_relocate): Likewise. 724 (lf64_aarch64_check_relocs): Likewise. 725 (elf64_aarch64_check_relocs): New case for R_AARCH64_ADR_PREL_LO21 726 reloc. 727 * libbfd.h: Regenerated. 728 * reloc.c (R_AARCH64_GOT_LD_PREL19): New reloc. 729 730 2012-09-10 Matthias Klose <doko (a] ubuntu.com> 731 732 * config.in: Disable sanity check for kfreebsd. 733 734 2012-09-10 H.J. Lu <hongjiu.lu (a] intel.com> 735 736 * configure: Regenerated. 737 738 2012-09-04 Sergey A. Guriev <sergey.a.guriev (a] intel.com> 739 740 * cpu-ia64-opc.c (ins_cnt6a): New function. 741 (ext_cnt6a): Ditto. 742 (ins_strd5b): Ditto. 743 (ext_strd5b): Ditto. 744 (elf64_ia64_operands): Add new operand types. 745 746 2012-09-04 H.J. Lu <hongjiu.lu (a] intel.com> 747 748 PR binutils/14493 749 * elf.c (ignore_section_sym): Also ignore section symbols without 750 a BFD section. 751 752 2012-09-03 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 753 754 * elf32-s390.c (elf_s390_relocate_section): Handle PLTOFF for 755 local and global ifunc symbols. 756 * elf64-s390.c (elf_s390_relocate_section): Likewise. 757 758 2012-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 759 760 * elf-bfd.h (elf_link_hash_table): Add hdynamic for the 761 _DYNAMIC symbol. 762 763 * elflink.c (_bfd_elf_link_create_dynamic_sections): Set 764 hdynamic. 765 766 * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_symbol): Check 767 hdynamic instead of "_DYNAMIC". 768 * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Likewise. 769 * elf32-cr16.c (elf32_arm_finish_dynamic_symbol): Likewise. 770 * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise. 771 * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise. 772 * elf32-i386.c (elf_i386_convert_mov_to_lea): Likewise. 773 * elf32-lm32.c (lm32_elf_finish_dynamic_symbol): Likewise. 774 * elf32-m32r.c (m32r_elf_finish_dynamic_symbol): Likewise. 775 * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise. 776 * elf32-sh.c (sh_elf_finish_dynamic_symbol): Likewise. 777 * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise. 778 * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise. 779 * elf32-vax.c (elf_vax_finish_dynamic_symbol): Likewise. 780 * elf32-xtensa.c (elf_xtensa_finish_dynamic_symbol): Likewise. 781 * elf64-aarch64.c elf64_aarch64_finish_dynamic_symbol(): Likewise. 782 * elf64-alpha.c (elf64_alpha_finish_dynamic_symbol): Likewise. 783 * elf64-ia64-vms.c (elf64_ia64_finish_dynamic_symbol): Likewise. 784 * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. 785 * elf64-sh64.c (sh64_elf64_finish_dynamic_symbol): Likewise. 786 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise. 787 * elfnn-ia64.c (elfNN_ia64_finish_dynamic_symbol): Likewise. 788 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Likewise. 789 * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. 790 * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise. 791 792 * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Check 793 hdynamic, hgot, hplt instead of _DYNAMIC, _GLOBAL_OFFSET_TABLE_, 794 _PROCEDURE_LINKAGE_TABLE_. 795 * elf32-score.c (s3_bfd_score_elf_finish_dynamic_symbol): Likewise. 796 * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_symbol): Likewise. 797 798 2012-08-31 H.J. Lu <hongjiu.lu (a] intel.com> 799 800 * elf32-i386.c (elf_i386_convert_mov_to_lea): Don't optimize 801 _DYNAMIC. 802 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise. 803 804 2012-08-31 H.J. Lu <hongjiu.lu (a] intel.com> 805 806 * elf32-i386.c (elf_i386_convert_mov_to_lea): New. 807 (elf_i386_size_dynamic_sections): Use it on input sections. 808 (elf_i386_relocate_section): Don't convert 809 "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg" 810 for local symbols here. 811 812 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): New. 813 (elf_x86_64_size_dynamic_sections): Use it on input sections. 814 (elf_x86_64_relocate_section): Don't convert 815 "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg" 816 for local symbols here. 817 818 2012-08-30 H.J. Lu <hongjiu.lu (a] intel.com> 819 820 * elf32-i386.c (elf_i386_relocate_section): Convert 821 "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg" 822 for local symbols. 823 824 * elf64-x86-64.c (elf_x86_64_relocate_section): Convert 825 "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg" 826 for local symbols. 827 828 2012-08-31 Alan Modra <amodra (a] gmail.com> 829 830 PR ld/14464 831 * elf64-ppc.c (ppc64_elf_relocate_section): Map symbols defined 832 by a linker script in .opd to corresponding input .opd section. 833 834 2012-08-28 Maciej W. Rozycki <macro (a] codesourcery.com> 835 836 * elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is 837 not minus one. 838 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 839 840 2012-08-28 Maciej W. Rozycki <macro (a] codesourcery.com> 841 842 * elflink.c (_bfd_elf_merge_symbol): Also override the version 843 a dynamic symbol defaulted to if preempted with a hidden or 844 internal definition. 845 846 2012-08-28 Walter Lee <walt (a] tilera.com> 847 848 * elf32-tilepro.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size 849 of header. 850 (tilepro_plt_entry_build): Account for new header size. 851 (tilepro_elf_finish_dynamic_sections): Ditto. 852 (tilepro_elf_plt_sym_val): Ditto. 853 * elfxx-tilegx.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size 854 of header + tail. 855 (tilegx_elf_finish_dynamic_sections): Account for new padding. 856 857 2012-08-27 Walter Lee <walt (a] tilera.com> 858 859 * reloc.c (Add BFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCREL, 860 BFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCREL, 861 BFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCREL, 862 BFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCREL, 863 BFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCREL, 864 BFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCREL, 865 BFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCREL, 866 BFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCREL, 867 BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL, 868 BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL, 869 BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL, 870 BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL, 871 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL, 872 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL): new relocations. 873 * elfxx-tilegx.c (tilegx_elf_howto_table): Handle new relocations. 874 (tilegx_reloc_map): Ditto. 875 (reloc_to_create_func): Ditto. 876 (tilegx_elf_check_relocs): Ditto. 877 (tilegx_elf_gc_sweep_hook): Ditto. 878 (tilegx_elf_relocate_section): Ditto. 879 * libbfd.h: Regenerate. 880 * bfd-in2.h: Regenerate. 881 882 2012-08-24 Matthew Gretton-Dann <matthew.gretton-dann (a] arm.com> 883 884 * elf32-arm.c (v8): New array. 885 (tag_cpu_arch_combine): Add support for ARMv8 attributes. 886 (elf32_arm_merge_eabi_attributes): Likewise. 887 (VFP_VERSION_COUNT): New define. 888 889 2012-08-20 Tom Tromey <tromey (a] redhat.com> 890 891 * vms-lib.c (_bfd_vms_lib_get_module): Use bfd_zmalloc for 892 areltdata. 893 * opncls.c (_bfd_delete_bfd): Free arelt_data. 894 * mach-o.c (bfd_mach_o_fat_member_init): Use bfd_zmalloc for 895 areltdata. 896 * ecoff.c (_bfd_ecoff_slurp_armap): Use free for mapdata. 897 * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Use bfd_zmalloc for 898 areltdata. 899 (xcoff_write_archive_contents_old): Likewise. 900 (xcoff_write_archive_contents_big): Likewise. 901 * archive64.c (bfd_elf64_archive_slurp_armap): Use free for 902 areltdata. 903 * archive.c (_bfd_generic_read_ar_hdr_mag): Use bfd_zmalloc and 904 free for areltdata. 905 (_bfd_get_elt_at_filepos): Likewise. Clear n_nfd->arelt_data on 906 failure. 907 (do_slurp_bsd_armap): Use bfd_zmalloc and free for areltdata. 908 (do_slurp_coff_armap): Likewise. 909 (_bfd_slurp_extended_name_table): Likewise. 910 (bfd_slurp_bsd_armap_f2): Likewise. Don't leak 'mapdata'. 911 912 2012-08-17 Nick Clifton <nickc (a] redhat.com> 913 914 * po/vi.po: Updated Vietnamese translation. 915 916 2012-08-17 Yuri Chornoivan <yurchor (a] ukr.net> 917 918 * elf-bfd.h, * elf32-ppc.c, * elf64-ia64-vms.c, * elfnn-ia64.c, 919 * elfxx-mips.c, * vms-alpha.c: Typo fixes. 920 921 2012-08-17 Alan Modra <amodra (a] gmail.com> 922 923 PR binutils/14475: 924 * archive.c (bfd_ar_hdr_from_filesystem): Revert last change. 925 Instead malloc areltdata. 926 927 2012-08-16 Tom Tromey <tromey (a] redhat.com> 928 929 PR binutils/14475: 930 * archive.c (bfd_ar_hdr_from_filesystem): Allocate areltdata on 931 'member' BFD. Don't try to free 'ared'. 932 933 2012-08-14 Nick Clifton <nickc (a] redhat.com> 934 935 * po/uk.po: Updated Ukranian translation. 936 937 2012-08-13 Maciej W. Rozycki <macro (a] codesourcery.com> 938 939 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Look up 940 the options section in the output rather than input BFD to 941 decide if to add a DT_MIPS_OPTIONS tag. 942 943 2012-08-13 Maciej W. Rozycki <macro (a] codesourcery.com> 944 945 * config.bfd: Wrap mips*el-*-linux* and mips*-*-linux* into 946 #ifdef BFD64. 947 948 2012-08-13 Ian Bolton <ian.bolton (a] arm.com> 949 Laurent Desnogues <laurent.desnogues (a] arm.com> 950 Jim MacArthur <jim.macarthur (a] arm.com> 951 Marcus Shawcroft <marcus.shawcroft (a] arm.com> 952 Nigel Stephens <nigel.stephens (a] arm.com> 953 Ramana Radhakrishnan <ramana.radhakrishnan (a] arm.com> 954 Richard Earnshaw <rearnsha (a] arm.com> 955 Sofiane Naci <sofiane.naci (a] arm.com> 956 Tejas Belagod <tejas.belagod (a] arm.com> 957 Yufeng Zhang <yufeng.zhang (a] arm.com> 958 959 * Makefile.am: Add AArch64 files. 960 * Makefile.in: Regenerate. 961 * archures.c (bfd_aarch64_arch): New declaration. 962 (bfd_archures_list): Use bfd_archures_list. 963 * bfd-in.h (bfd_elf64_aarch64_init_maps): New declaration. 964 (bfd_aarch64_process_before_allocation): New declaration. 965 (bfd_elf64_aarch64_process_before_allocation): New declaration. 966 (bfd_elf64_aarch64_set_options): New declaration. 967 (bfd_elf64_aarch64_add_glue_sections_to_bfd): New declaration. 968 (BFD_AARCH64_SPECIAL_SYM_TYPE_MAP): New definition. 969 (BFD_AARCH64_SPECIAL_SYM_TYPE_TAG): New definition. 970 (BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER): New definition. 971 (BFD_AARCH64_SPECIAL_SYM_TYPE_ANY): New definition. 972 (bfd_is_aarch64_special_symbol_name): New declaration. 973 (bfd_aarch64_merge_machines): New declaration. 974 (bfd_aarch64_update_notes): New declaration. 975 (int bfd_aarch64_get_mach_from_notes): New declaration. 976 (elf64_aarch64_setup_section_lists): New declaration. 977 (elf64_aarch64_next_input_section): New declaration. 978 (elf64_aarch64_size_stubs): New declaration. 979 (elf64_aarch64_build_stubs): New declaration. 980 * config.bfd: Add AArch64. 981 * configure.in: Add AArch64. 982 * configure: Regenerate. 983 * cpu-aarch64.c: New file. 984 * elf-bfd.h: Add AArch64. 985 * bfd-in2.h: Regenerate. 986 * libbfd.h: Regenerate. 987 * elf64-aarch64.c: New file. 988 * reloc.c: Add AArch64 relocations. 989 * targets.c: Add AArch64. 990 * po/SRC-POTFILES.in: Regenerate. 991 992 2012-08-13 Maciej W. Rozycki <macro (a] codesourcery.com> 993 994 * elfxx-mips.c (mips_elf_calculate_relocation): Fix the handling 995 of protected symbols. 996 997 2012-08-10 Alan Modra <amodra (a] gmail.com> 998 999 PR binutils/14444 1000 * elf.c (IS_VALID_GROUP_SECTION_HEADER) Add minsize param. 1001 (setup_group): Adjust uses. 1002 (bfd_section_from_shdr): Allow SHT_GROUP sections with just a flag 1003 word. 1004 1005 2012-08-09 Nick Clifton <nickc (a] redhat.com> 1006 1007 * po/vi.po: Updated Vietnamese translation. 1008 1009 2012-08-09 Maciej W. Rozycki <macro (a] codesourcery.com> 1010 1011 * elfxx-mips.c (LA25_LUI_MICROMIPS_1, LA25_LUI_MICROMIPS_2): 1012 Remove macros, folding them into... 1013 (LA25_LUI_MICROMIPS): ... this new macro. 1014 (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise into... 1015 (LA25_J_MICROMIPS): ... this new macro. 1016 (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise 1017 into... 1018 (LA25_ADDIU_MICROMIPS): ... this new macro. 1019 (bfd_put_micromips_32, bfd_get_micromips_32): New functions. 1020 (mips_elf_create_la25_stub): Use them. 1021 (check_br32_dslot, check_br32, check_relocated_bzc): Likewise. 1022 (_bfd_mips_elf_relax_section): Likewise. 1023 1024 2012-08-09 Alan Modra <amodra (a] gmail.com> 1025 Tom Tromey <tromey (a] redhat.com> 1026 1027 * archive.c (SECTION Archives): Update documentation. 1028 (_bfd_delete_archive_data): Remove. 1029 (_bfd_add_bfd_to_archive_cache): Set 'parent_cache' and 'key'. 1030 (archive_close_worker, _bfd_archive_close_and_cleanup): New 1031 functions. 1032 * libbfd-in.h (struct areltdata <parent_cache, key>): New fields. 1033 (_bfd_delete_archive_data): Don't declare. 1034 (_bfd_archive_close_and_cleanup): Declare. 1035 (_bfd_generic_close_and_cleanup): Redefine. 1036 * libbfd.h: Rebuild. 1037 * opncls.c (_bfd_delete_bfd): Don't call _bfd_delete_archive_data. 1038 (bfd_close): Don't close nested thin archives here. 1039 1040 2012-08-07 Tom Tromey <tromey (a] redhat.com> 1041 1042 * archive.c (_bfd_delete_archive_data): New function. 1043 * libbfd-in.h (_bfd_delete_archive_data): Declare. 1044 * libbfd.h: Rebuild. 1045 * opncls.c (_bfd_delete_bfd): Call _bfd_delete_archive_data. 1046 1047 2012-08-07 Nick Clifton <nickc (a] redhat.com> 1048 1049 * po/uk.po: Updated Ukranian translation. 1050 1051 2012-08-06 Maciej W. Rozycki <macro (a] codesourcery.com> 1052 1053 * elflink.c (bfd_elf_record_link_assignment): Remove --defsym 1054 symbols special case. 1055 1056 2012-08-05 Maciej W. Rozycki <macro (a] linux-mips.org> 1057 1058 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Don't allocate 1059 PLT slots for local symbols. 1060 1061 2012-08-03 Maciej W. Rozycki <macro (a] codesourcery.com> 1062 1063 * elf64-mips.c (mips16_elf64_howto_table_rela): Correct src_mask 1064 field initializers throughout. 1065 * elfn32-mips.c (elf_mips16_howto_table_rela): Likewise. 1066 1067 2012-08-03 Maciej W. Rozycki <macro (a] codesourcery.com> 1068 1069 * elfxx-mips.c (mips_elf_perform_relocation): Update the 1070 cross-mode jump message. 1071 1072 2012-08-03 Maciej W. Rozycki <macro (a] codesourcery.com> 1073 1074 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Update the 1075 comment on DT_MIPS_RLD_MAP. 1076 1077 2012-08-03 Tom Tromey <tromey (a] redhat.com> 1078 1079 * opncls.c (_bfd_delete_bfd): Now static. 1080 * libbfd-in.h (_bfd_delete_bfd): Don't declare. 1081 * libbfd.h: Rebuild. 1082 1083 2012-08-02 Sean Keys <skeys (a] ipdatasys.com> 1084 1085 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Modified 1086 conditional statment to allow suppression of mismatched bank 1087 warning. 1088 1089 2012-08-01 Alan Modra <amodra (a] gmail.com> 1090 1091 * dwarf2.c (struct dwarf2_debug): Add close_on_cleanup. 1092 (_bfd_dwarf2_slurp_debug_info): Set close_on_cleanup if we open 1093 gnu_debuglink bfd. 1094 (_bfd_dwarf2_cleanup_debug_info): Act on close_on_cleanup. 1095 1096 2012-07-30 Nick Clifton <nickc (a] redhat.com> 1097 1098 * po/bfd.pot: Updated template. 1099 * po/es.po: Updated Spanish translation. 1100 * po/fi.po: Updated Finnish translation. 1101 * po/fr.po: Updated French translation. 1102 * po/ru.po: Updated Russian translation. 1103 * po/uk.po: Updated Ukranian translation. 1104 1105 2012-07-27 Mike Frysinger <vapier (a] gentoo.org> 1106 1107 * configure.in (AC_INIT): Call with the args bfd and 2.22.52. 1108 (AM_INIT_AUTOMAKE): Remove args. 1109 * configure: Regenerate. 1110 1111 2012-07-27 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 1112 1113 * cpu-s390.c (bfd_s390_64_arch, bfd_s390_arch): Pick the default 1114 arch depending on the target size. 1115 1116 2012-07-27 Tristan Gingold <gingold (a] adacore.com> 1117 1118 * configure.in: Bump version to 2.23.51 1119 * configure: Regenerate. 1120 1121 2012-07-26 Teresa Johnson <tejohnson (a] google.com> 1122 1123 * bfd/dwarf2.c (find_line): Initialize discriminator_ptr 1124 if it is non-NULL. 1125 1126 2012-07-26 Meador Inge <meadori (a] codesourcery.com> 1127 Nick Clifton <nickc (a] redhat.com> 1128 1129 PR ld/14397 1130 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Report an error 1131 if a required section is missing from the linker script. 1132 1133 2012-07-24 Jan Waclawek <konfera (a] efton.sk> 1134 PR 13899 1135 * elf32-avr.c (elf32_avr_relax_delete_bytes): Call 1136 _bfd_elf_link_read_relocs with keep_memory as TRUE. 1137 1138 2012-07-24 Teresa Johnson <tejohnson (a] google.com> 1139 1140 * bfd.c (bfd_find_nearest_line_discriminator): New macro. 1141 * coff-rs6000.c: Init _bfd_find_nearest_line_discriminator. 1142 * coff64-rs6000.c: Likewise. 1143 * dwarf2.c (struct line_info): Add discriminator field. 1144 (add_line_info): Fill in new discriminator field. 1145 (decode_line_info): Record discriminator information instead 1146 of ignoring it. 1147 (lookup_address_in_line_info_table): Return discriminator field if 1148 requested. 1149 (comp_unit_find_nearest_line): Add discriminator argument. 1150 (find_line): Likewise. 1151 (_bfd_dwarf2_find_nearest_line): Likewise. 1152 (_bfd_dwarf2_find_line): Likewise. 1153 * elf-bfd.h (_bfd_elf_find_nearest_line_discriminator): New. 1154 (_bfd_elf_find_line_discriminator): Likewise. 1155 (_bfd_generic_find_nearest_line_discriminator): Likewise. Defined. 1156 * elf.c (_bfd_elf_find_nearest_line): Change to a wrapper 1157 that invokes _bfd_elf_find_nearest_line_discriminator with correct 1158 arguments. 1159 (_bfd_elf_find_nearest_line_discriminator): New. 1160 (_bfd_elf_find_line): Change to a wrapper 1161 that invokes _bfd_elf_find_line_discriminator with correct 1162 arguments. 1163 (_bfd_elf_find_line_discriminator): New. 1164 * coffgen.c (coff_find_nearest_line_with_names): Handle 1165 new discriminator argument. 1166 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise. 1167 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise. 1168 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise. 1169 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise. 1170 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Add discriminator 1171 argument. 1172 (_bfd_dwarf2_find_line): Likewise. 1173 (_bfd_generic_find_nearest_line_discriminator): New. 1174 * libbfd.c (_bfd_generic_find_nearest_line_discriminator): New. 1175 * bfd-in2.h: Regenerated. 1176 * libbfd.h: Likewise. 1177 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize 1178 _bfd_find_nearest_line_discriminator with 1179 _bfd_generic_find_nearest_line_discriminator. 1180 (bfd_target): Add _bfd_find_nearest_line_discriminator. 1181 1182 2012-07-24 Sean Keys <skeys (a] ipdatasys.com> 1183 1184 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Added code 1185 that enables the linker to offset addresses, when linking against 1186 symbols from the XGATE processor and vice versa. 1187 1188 2012-07-23 Nick Clifton <nickc (a] redhat.com> 1189 1190 * cisco-core.c (cisco_core_file_failing_command): Make static. 1191 (cisco_core_file_failing_signal): Make static. 1192 1193 2012-07-18 H.J. Lu <hongjiu.lu (a] intel.com> 1194 1195 * bfd-in2.h: Regenerated. 1196 1197 2012-07-18 Nicols Alejandro Di Risio <sheeva (a] tiscali.it> 1198 1199 PR binutils/14335 1200 * section.c: Fix a typo in comments. 1201 1202 2012-07-13 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 1203 1204 * elf64-s390.c: Include elf-s390-common.c. 1205 (R_390_IRELATIVE): New reloc. 1206 (elf_s390_reloc_type_lookup): Support R_390_IRELATIVE. 1207 (RELA_ENTRY_SIZE): New macro. 1208 (elf_s390_link_hash_entry): New fields ifunc_resolver_address and 1209 *ifunc_resolver_section. 1210 (struct plt_entry): New struct. 1211 (struct elf_s390_obj_tdata): New field local_plt. 1212 (elf_s390_local_plt): New macro. 1213 (struct elf_s390_link_hash_table): New field irelifunc. 1214 (ELF64): New macro. 1215 (link_hash_newfunc): Initialize new fields. 1216 (elf_s390_check_relocs): Handle IFUNC symbols. 1217 (elf_s390_adjust_dynamic_symbol): Don't do anything for IFUNC 1218 symbols. 1219 (allocate_dynrelocs): Call s390_elf_allocate_ifunc_dyn_relocs for 1220 IFUNC symbols. 1221 (elf_s390_size_dynamic_sections): Handle IFUNC symbols. 1222 (elf_s390_relocate_section): Likewise. 1223 (elf_s390_finish_dynamic_symbol): Likewise. 1224 (elf_s390_finish_dynamic_sections): Handle local IFUNC symbols. 1225 (elf_s390_finish_ifunc_symbol): New function. 1226 (elf_s390_gc_sweep_hook): Handle local plt entries. 1227 (elf_backend_add_symbol_hook): Define. 1228 * elf32-s390.c: See elf64-s390.c changes. 1229 * elf-s390-common.c: New file. 1230 * bfd-in2.h (BFD_RELOC_390_IRELATIVE): New enum field. 1231 * libbfd.h (BFD_RELOC_390_IRELATIVE): New entry for 1232 BFD_RELOC_390_IRELATIVE. 1233 * reloc.c (BFD_RELOC_390_IRELATIVE): Document new relocation. 1234 1235 2012-07-13 Nick Clifton <nickc (a] redhat.com> 1236 1237 * aix386-core.c: Remove use of PTR and PARAMS macros. 1238 * archive.c: Likewise. 1239 * cache.c: Likewise. 1240 * cisco-core.c: Likewise. 1241 * coff-alpha.c: Likewise. 1242 * coff-apollo.c: Likewise. 1243 * coff-aux.c: Likewise. 1244 * coff-h8300.c: Likewise. 1245 * coff-h8500.c: Likewise. 1246 * coff-i386.c: Likewise. 1247 * coff-i960.c: Likewise. 1248 * coff-ia64.c: Likewise. 1249 * coff-m68k.c: Likewise. 1250 * coff-m88k.c: Likewise. 1251 * coff-mcore.c: Likewise. 1252 * coff-mips.c: Likewise. 1253 * coff-or32.c: Likewise. 1254 * coff-ppc.c: Likewise. 1255 * coff-rs6000.c: Likewise. 1256 * coff-sh.c: Likewise. 1257 * coff-sparc.c: Likewise. 1258 * coff-stgo32.c: Likewise. 1259 * coff-tic30.c: Likewise. 1260 * coff-tic4x.c: Likewise. 1261 * coff-tic54x.c: Likewise. 1262 * coff-tic80.c: Likewise. 1263 * coff-w65.c: Likewise. 1264 * cofflink.c: Likewise. 1265 * cpu-arc.c: Likewise. 1266 * cpu-cris.c: Likewise. 1267 * cpu-h8500.c: Likewise. 1268 * cpu-i960.c: Likewise. 1269 * cpu-msp430.c: Likewise. 1270 * cpu-ns32k.c: Likewise. 1271 * cpu-powerpc.c: Likewise. 1272 * cpu-rs6000.c: Likewise. 1273 * cpu-tic4x.c: Likewise. 1274 * cpu-w65.c: Likewise. 1275 * ecoff.c: Likewise. 1276 * ecofflink.c: Likewise. 1277 * elf-m10200.c: Likewise. 1278 * elf32-bfin.c: Likewise. 1279 * elf32-cris.c: Likewise. 1280 * elf32-crx.c: Likewise. 1281 * elf32-fr30.c: Likewise. 1282 * elf32-frv.c: Likewise. 1283 * elf32-h8300.c: Likewise. 1284 * elf32-i960.c: Likewise. 1285 * elf32-m32c.c: Likewise. 1286 * elf32-m68hc11.c: Likewise. 1287 * elf32-m68hc12.c: Likewise. 1288 * elf32-m68hc1x.c: Likewise. 1289 * elf32-m68k.c: Likewise. 1290 * elf32-mcore.c: Likewise. 1291 * elf32-rl78.c: Likewise. 1292 * elf32-rx.c: Likewise. 1293 * elf32-s390.c: Likewise. 1294 * elf32-vax.c: Likewise. 1295 * elf64-alpha.c: Likewise. 1296 * elf64-mmix.c: Likewise. 1297 * elf64-s390.c: Likewise. 1298 * elf64-sparc.c: Likewise. 1299 * elfnn-ia64.c: Likewise. 1300 * elfxx-mips.c: Likewise. 1301 * elfxx-sparc.c: Likewise. 1302 * hash.c: Likewise. 1303 * hp300hpux.c: Likewise. 1304 * hppabsd-core.c: Likewise. 1305 * hpux-core.c: Likewise. 1306 * i386dynix.c: Likewise. 1307 * i386linux.c: Likewise. 1308 * i386lynx.c: Likewise. 1309 * i386mach3.c: Likewise. 1310 * i386msdos.c: Likewise. 1311 * i386os9k.c: Likewise. 1312 * irix-core.c: Likewise. 1313 * lynx-core.c: Likewise. 1314 * m68klinux.c: Likewise. 1315 * mach-o.h: Likewise. 1316 * mipsbsd.c: Likewise. 1317 * netbsd-core.c: Likewise. 1318 * nlm32-i386.c: Likewise. 1319 * osf-core.c: Likewise. 1320 * pc532-mach.c: Likewise. 1321 * pef.c: Likewise. 1322 * ppcboot.c: Likewise. 1323 * ptrace-core.c: Likewise. 1324 * reloc16.c: Likewise. 1325 * sco5-core.c: Likewise. 1326 * som.h: Likewise. 1327 * sparclinux.c: Likewise. 1328 * sparclynx.c: Likewise. 1329 * ticoff.h: Likewise. 1330 * trad-core.c: Likewise. 1331 * vms-lib.c: Likewise. 1332 * xsym.h: Likewise. 1333 1334 2012-07-09 Alan Modra <amodra (a] gmail.com> 1335 1336 PR ld/14323 1337 * elflink.c (elf_sort_symbol): Sort by size too. 1338 (elf_link_add_object_symbols <weakdefs>): Simplify binary search. 1339 Do not depend on ordering of symbol aliases. Match largest size. 1340 1341 2012-07-03 H.J. Lu <hongjiu.lu (a] intel.com> 1342 1343 * elf.c (assign_section_numbers): Check if number of sections 1344 >= SHN_LORESERVE. 1345 * elfcode.h (elf_object_p): Likewise. 1346 1347 2012-07-03 Nick Clifton <nickc (a] redhat.com> 1348 1349 * archive.c (bsd_write_armap): Catch attempts to create an archive 1350 with indicies bigger than 4Gb. 1351 (coff_write_armap): Likewise. 1352 1353 2012-07-03 H.J. Lu <hongjiu.lu (a] intel.com> 1354 1355 PR binutils/14319 1356 * elf.c (_bfd_elf_make_section_from_shdr): Don't compress empty 1357 debug section. 1358 1359 2012-07-03 H.J. Lu <hongjiu.lu (a] intel.com> 1360 1361 PR ld/3351 1362 * elflink.c (_bfd_elf_update_dynamic_flags): New. 1363 (_bfd_elf_merge_symbol): Update both real and indirect symbol 1364 dynamic flags. 1365 (_bfd_elf_add_default_symbol): Make the real symbol dynamic if 1366 the indirect symbol is defined in a shared library. 1367 (elf_link_add_object_symbols): Likewise. If the indirect 1368 symbol has been forced local, don't make the real symbol 1369 dynamic. 1370 (elf_link_check_versioned_symbol): Check indirect symbol. 1371 (elf_link_output_extsym): Use real symbol definition when 1372 reporting indirect symbol error. Check version info for 1373 dynamic versioned symbol. 1374 1375 2012-07-03 Alan Modra <amodra (a] gmail.com> 1376 1377 PR ld/14207 1378 * elf.c (assign_file_positions_for_load_sections): Remove assertions 1379 that only PT_LOAD headers include file header and section headers. 1380 (assign_file_positions_for_non_load_sections): Similarly don't 1381 assert PT_GNU_RELRO header does not include file and section headers. 1382 Compare first section vma rather than PT_LOAD p_vaddr against 1383 relro_start when looking for PT_LOAD covering PT_GNU_RELRO. Replace 1384 abort with assertion. 1385 1386 2012-07-02 Alan Modra <amodra (a] gmail.com> 1387 1388 * elf32-m32c.c (m32c_elf_check_relocs): Use bfd_make_section 1389 "anyway" variant when creating .plt. 1390 (m32c_elf_relax_plt_section): Remove redundant test and unused param. 1391 (m32c_elf_relax_section): Test SEC_LINKER_CREATED before calling 1392 m32c_elf_relax_plt_section. 1393 * elfxx-mips.c (mips_elf_create_got_section): Use make anyway variant 1394 when creating .got and .got.plt. 1395 (_bfd_mips_elf_final_link): Likewise for .rtproc, and use 1396 bfd_get_linker_section. 1397 * sunos.c: Similarly throughout. 1398 1399 2012-07-01 Andreas Schwab <schwab (a] linux-m68k.org> 1400 1401 * elf.c (_bfd_elf_make_section_from_shdr): Fix typo in error 1402 message. 1403 1404 2012-06-29 H.J. Lu <hongjiu.lu (a] intel.com> 1405 1406 * elf64-x86-64.c (elf_x86_64_relocate_section): Return FALSE 1407 on unresolvable relocation. 1408 1409 2012-06-29 H.J. Lu <hongjiu.lu (a] intel.com> 1410 1411 * archive.c (_bfd_compute_and_write_armap): Simplify global 1412 symbol handling. 1413 1414 2012-06-29 Nick Clifton <nickc (a] redhat.com> 1415 1416 PR ld/14189 1417 * elf32-arm.c (elf32_arm_check_relocs): Do not increment refcount 1418 for locally bound symbols. 1419 1420 2012-06-29 Alan Modra <amodra (a] gmail.com> 1421 1422 * section.c (bfd_get_linker_section): New function. 1423 * elf32-arm.c: When retrieving SEC_LINKER_CREATED sections, use 1424 the above throughout rather than bfd_get_section_by_name. Use 1425 bfd_make_section_anyway rather than bfd_make_section when creating 1426 them. 1427 * elf32-bfin.c: Likewise. 1428 * elf32-cr16.c: Likewise. 1429 * elf32-cris.c: Likewise. 1430 * elf32-frv.c: Likewise. 1431 * elf32-hppa.c: Likewise. 1432 * elf32-i370.c: Likewise. 1433 * elf32-i386.c: Likewise. 1434 * elf32-lm32.c: Likewise. 1435 * elf32-m32c.c: Likewise. 1436 * elf32-m32r.c: Likewise. 1437 * elf32-m68k.c: Likewise. 1438 * elf32-microblaze.c: Likewise. 1439 * elf32-ppc.c: Likewise. 1440 * elf32-rl78.c: Likewise. 1441 * elf32-s390.c: Likewise. 1442 * elf32-score.c: Likewise. 1443 * elf32-score7.c: Likewise. 1444 * elf32-sh.c: Likewise. 1445 * elf32-tic6x.c: Likewise. 1446 * elf32-tilepro.c: Likewise. 1447 * elf32-vax.c: Likewise. 1448 * elf32-xstormy16.c: Likewise. 1449 * elf32-xtensa.c: Likewise. 1450 * elf64-alpha.c: Likewise. 1451 * elf64-hppa.c: Likewise. 1452 * elf64-ia64-vms.c: Likewise. 1453 * elf64-ppc.c: Likewise. 1454 * elf64-s390.c: Likewise. 1455 * elf64-sh64.c: Likewise. 1456 * elf64-sparc.c: Likewise. 1457 * elf64-x86-64.c: Likewise. 1458 * elfnn-ia64.c: Likewise. 1459 * elfxx-mips.c: Likewise. 1460 * elfxx-sparc.c: Likewise. 1461 * elfxx-tilegx.c: Likewise. 1462 * elflink.c: Likewise. 1463 * elf-vxworks.c: Likewise. 1464 * elf-m10300.c: Likewise. Also make use of htab plt, got and 1465 gotplt shortcuts. 1466 * bfd-in2.h: Regenerate. 1467 * elf32-lm32.c (lm32_elf_check_relocs): Use the correct bfd when 1468 calling create_rofixup_section. 1469 * elflink.c (bfd_elf_final_link): Simplify test for .dynstr. 1470 1471 2012-06-29 Alan Modra <amodra (a] gmail.com> 1472 1473 * elf32-sh.c (sh_elf_create_dynamic_sections): Don't create .rela 1474 section for bss type sections, except for .rela.bss. 1475 * elf-m10300.c (_bfd_mn10300_elf_create_dynamic_sections): Likewise. 1476 * elf32-cr16.c (_bfd_cr16_elf_create_dynamic_sections): Likewise. 1477 * elf32-lm32.c (lm32_elf_create_dynamic_sections): Likewise. 1478 * elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise. 1479 * elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise. 1480 1481 2012-06-28 Roland McGrath <mcgrathr (a] google.com> 1482 1483 * elf32-arm.c (elf32_arm_populate_plt_entry): Use int32_t for 1484 displacement calculation in nacl_p case. 1485 1486 2012-06-28 Nick Clifton <nickc (a] redhat.com> 1487 1488 * po/uk.po: New Ukranian translation. 1489 * configure.in (ALL_LINGUAS): Add uk. 1490 * configure: Regenerate. 1491 1492 2012-06-26 Alan Modra <amodra (a] gmail.com> 1493 1494 * elf64-ppc.c (ppc64_elf_next_toc_section): Don't error if input 1495 file has multiple .got/.toc sections and all don't fit in 1496 current toc group. 1497 1498 2012-06-22 Roland McGrath <mcgrathr (a] google.com> 1499 1500 * elf.c (assign_file_positions_for_non_load_sections): Define 1501 __ehdr_start symbol if it's referenced and there's a PT_LOAD 1502 segment that covers both the file and program headers. 1503 1504 2012-06-22 Andreas Schwab <schwab (a] linux-m68k.org> 1505 1506 * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Don't make 1507 _GLOBAL_OFFSET_TABLE_ and _DYNAMIC absolute. 1508 1509 2012-06-22 Alan Modra <amodra (a] gmail.com> 1510 1511 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't emit out-of-line 1512 save/restore functions when relocatable. Make "funcs" static. 1513 1514 2012-06-18 Hans-Peter Nilsson <hp (a] axis.com> 1515 1516 * elf32-cris.c (cris_elf_plt_sym_val): Rewrite to work in presence 1517 of merged .got and .got.plt entries. 1518 1519 2012-06-18 John Szakmeister <john (a] szakmeister.net> 1520 1521 * elf32-arm.c (elf32_arm_final_link_relocate): Correct return value. 1522 1523 2012-06-17 Hans-Peter Nilsson <hp (a] axis.com> 1524 1525 * elf32-cris.c (cris_elf_relocate_section): <R_CRIS_32_IE> 1526 <R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>: Handle references to 1527 thread common symbols. 1528 1529 2012-06-13 Nick Clifton <nickc (a] redhat.com> 1530 1531 * elf32-arm.c (bfd_arm_get_mach_from_attributes): New function. 1532 (elf32_arm_object_p): If the machine number could not be deduced 1533 from the notes, call bfd_arm_get_mach_from_attributes to get the 1534 number from the attributes. 1535 1536 2012-06-12 H.J. Lu <hongjiu.lu (a] intel.com> 1537 1538 PR bfd/14207 1539 * elf.c (assign_file_positions_for_non_load_sections): Abort if 1540 PT_GNU_RELRO segment doesn't fit in PT_LOAD segment. 1541 1542 2012-06-12 Alan Modra <amodra (a] gmail.com> 1543 1544 PR ld/14207 1545 * elf.c (_bfd_elf_map_sections_to_segments): Disregard bss type 1546 sections at end of PT_LOAD segment when searching for segment 1547 that contains end of relro extent. 1548 1549 2012-06-11 H.J. Lu <hongjiu.lu (a] intel.com> 1550 1551 * elf.c (assign_file_positions_for_non_load_sections): Reindent. 1552 1553 2012-06-11 H.J. Lu <hongjiu.lu (a] intel.com> 1554 1555 * elf.c (_bfd_elf_map_sections_to_segments): Reindent. 1556 1557 2012-06-06 Alan Modra <amodra (a] gmail.com> 1558 1559 * elflink.c (elf_link_input_bfd): Provide a file symbol for 1560 each input file with local syms, if the input lacks such. 1561 (bfd_elf_final_link): Add a file symbol to mark end of locals 1562 for which we can associate with input files. 1563 (struct elf_final_link_info): Add filesym_count field. 1564 (struct elf_outext_info): Add need_second_pass and second_pass. 1565 (elf_link_output_extsym): Detect symbols defined in the output 1566 file, emit them on second pass over locals. 1567 1568 2012-06-04 Jan Kratochvil <jan.kratochvil (a] redhat.com> 1569 1570 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument 1571 of target_read_memory as bfd_size_type. 1572 * bfd-in2.h: Regenerate. 1573 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN 1574 argument of target_read_memory as bfd_size_type. 1575 (_bfd_elf32_bfd_from_remote_memory): Likewise. 1576 (_bfd_elf64_bfd_from_remote_memory): Likewise. 1577 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise. 1578 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise. 1579 1580 2012-06-03 Alan Modra <amodra (a] gmail.com> 1581 1582 PR binutils/13897 1583 * elf.c (elf_find_function): Cache last function sym info. 1584 (_bfd_elf_maybe_function_sym): Return function size, pass in 1585 section of interest. 1586 * elf-bfd.h (struct elf_backend_data <maybe_function_sym>): Likewise. 1587 (_bfd_elf_maybe_function_sym): Likewise. 1588 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise. 1589 (opd_entry_value): Add in_code_sec param. Revert caching code. 1590 Return -1 if in_code_sec and function found in wrong section. 1591 Update all calls. 1592 1593 2012-06-01 Siddhesh Poyarekar <siddhesh (a] redhat.com> 1594 1595 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument 1596 of target_read_memory as size_t. 1597 * bfd-in2.h: Regenerate. 1598 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN 1599 argument of target_read_memory as size_t. 1600 (_bfd_elf32_bfd_from_remote_memory): Likewise. 1601 (_bfd_elf64_bfd_from_remote_memory): Likewise. 1602 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise. 1603 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise. 1604 1605 2012-06-01 Alan Modra <amodra (a] gmail.com> 1606 1607 PR binutils/13897 1608 * elf64-ppc.c (opd_entry_value): Rewrite cache code. 1609 1610 2012-05-29 Tom Tromey <tromey (a] redhat.com> 1611 1612 * opncls.c (bfd_fopen): Always close fd on failure. 1613 (bfd_fdopenr): Likewise. 1614 1615 2012-05-27 Alan Modra <amodra (a] gmail.com> 1616 1617 PR ld/14170 1618 * elflink.c (_bfd_elf_merge_symbol): When a symbol defined in 1619 a dynamic library finds a new instance with non-default 1620 visibility in a regular object, correctly handle symbols 1621 already on the undefs list and undo dynamic symbol state when 1622 the new symbol is hidden or internal. 1623 1624 2012-05-25 H.J. Lu <hongjiu.lu (a] intel.com> 1625 1626 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't use 1627 dynamic_sec_flags to create PLT .eh_frame section. 1628 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise. 1629 1630 2012-05-25 Alan Modra <amodra (a] gmail.com> 1631 1632 PR ld/13909 1633 * elf-eh-frame.c (_bfd_elf_eh_frame_present): New function. 1634 (_bfd_elf_maybe_strip_eh_frame_hdr): Use it here. 1635 * elf-bfd.h (_bfd_elf_eh_frame_present): Declare. 1636 * elflink.c (bfd_elf_size_dynamic_sections): Let the backend 1637 size dynamic sections before stripping eh_frame_hdr. 1638 (bfd_elf_gc_sections): Handle multiple .eh_frame sections. 1639 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame 1640 if no other .eh_frame sections exist. 1641 * elf64-ppc.c (ppc64_elf_size_stubs): Likewise. 1642 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't size 1643 or alloc plt_eh_frame here.. 1644 (elf_i386_size_dynamic_sections): ..do it here instead. Don't 1645 specially keep sgotplt, iplt, tgotplt, sdynbss for symbols. 1646 (elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents 1647 before writing plt offset. 1648 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size 1649 or alloc plt_eh_frame here.. 1650 (elf_x86_64_size_dynamic_sections): ..do it here instead. 1651 (elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents 1652 before writing plt offset. 1653 1654 2012-05-24 Alan Modra <amodra (a] gmail.com> 1655 1656 PR ld/14158 1657 * elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame 1658 size to output section alignment. 1659 (ppc64_elf_build_stubs): Likewise, and extend last FDE to cover. 1660 1661 2012-05-23 Alan Modra <amodra (a] gmail.com> 1662 1663 * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle 1664 BFDs with multiple .eh_frame sections. 1665 1666 2012-05-23 Alan Modra <amodra (a] gmail.com> 1667 1668 PR ld/13909 1669 * elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs. 1670 1671 2012-05-22 H.J. Lu <hongjiu.lu (a] intel.com> 1672 1673 PR ld/13909 1674 * elf32-i386.c (elf_i386_create_dynamic_sections): Revert the 1675 last change. 1676 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise. 1677 1678 2012-05-22 Alan Modra <amodra (a] gmail.com> 1679 1680 * elflink.c (bfd_elf_discard_info): Look for next .eh_frame if 1681 first one is zero size or discarded. 1682 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of 1683 glink_eh_frame contents here.. 1684 (ppc_elf_finish_dynamic_sections): ..rather than here. Just set 1685 offset to .glink. 1686 1687 2012-05-22 H.J. Lu <hongjiu.lu (a] intel.com> 1688 1689 PR ld/13909 1690 * elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT 1691 eh_frame section if there is an input .eh_frame section. 1692 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise. 1693 1694 2012-05-22 H.J. Lu <hongjiu.lu (a] intel.com> 1695 1696 PR ld/14105 1697 * elf32-i386.c (elf_i386_create_dynamic_sections): Always 1698 create PLT eh_frame section with SEC_LINKER_CREATED. 1699 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise. 1700 1701 2012-05-22 Alan Modra <amodra (a] gmail.com> 1702 1703 * elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame 1704 sections attached to a BFD. 1705 * section.c (bfd_get_section_by_name): Rewrite description. 1706 (bfd_get_next_section_by_name): New function. 1707 * bfd-in2.h: Regenerate. 1708 1709 2012-05-21 Andreas Schwab <schwab (a] linux-m68k.org> 1710 1711 * elf32-m68k.c (elf_m68k_grok_prstatus): New function. 1712 (elf_m68k_grok_psinfo): New function. 1713 (elf_backend_grok_prstatus): Define. 1714 (elf_backend_grok_psinfo): Define. 1715 1716 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org> 1717 1718 * elf64-mips.c (elf_backend_got_header_size): Correct definition. 1719 * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF 1720 backend's GOT header size instead of hardcoding it. 1721 1722 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org> 1723 1724 * elf32-vax.c (elf_vax_relocate_section) 1725 <R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again. 1726 1727 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org> 1728 1729 * elf32-vax.c (elf_vax_relocate_section) 1730 <R_VAX_8, R_VAX_16, R_VAX_32>: Use section flags rather than 1731 its name as the check for text sections. 1732 1733 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org> 1734 1735 * elf64-mips.c (mips_elf64_be_swap_reloc_out): Also make sure 1736 the third reloc offset is the same as the first. 1737 1738 2012-05-19 Alan Modra <amodra (a] gmail.com> 1739 1740 * elf32-ppc.h (has_vle_insns, is_ppc_vle): Delete. 1741 (has_tls_reloc, has_tls_get_addr_call): Move back to.. 1742 * elf32-ppc.c: ..here. 1743 (ppc_elf_section_flags, elf_backend_section_flags): Delete. 1744 (ppc_elf_modify_segment_map): Use ELF sh_flags to detect VLE sections. 1745 1746 2012-05-18 H.J. Lu <hongjiu.lu (a] intel.com> 1747 1748 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Don't make 1749 _DYNAMIC nor _GLOBAL_OFFSET_TABLE_ absolute. 1750 * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. 1751 1752 2012-05-18 Roland McGrath <mcgrathr (a] google.com> 1753 1754 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix last change so as 1755 not to clobber the ar_fmag field stored in ARED->arch_header. 1756 1757 2012-05-18 Pedro Alves <palves (a] redhat.com> 1758 1759 * mach-o.h: Don't include sysdep.h. 1760 1761 2012-05-18 Nick Clifton <nickc (a] redhat.com> 1762 1763 PR 14072 1764 * bfd-in.h: Check for PACKAGE or PACKAGE_VERSION before 1765 complaining about config.h not having been included. 1766 * bfd-in2.h: Regenerate. 1767 1768 2012-05-18 Andreas Schwab <schwab (a] linux-m68k.org> 1769 1770 * aclocal.m4: Regenerate. 1771 * Makefile.in: Regenerate. 1772 1773 2012-05-17 Daniel Richard G. <skunk (a] iskunk.org> 1774 Nick Clifton <nickc (a] redhat.com> 1775 1776 PR 14072 1777 * configure.in: Add check that sysdep.h has been included before 1778 any system header files. 1779 * configure: Regenerate. 1780 * config.in: Regenerate. 1781 * aclocal.m4: Regenerate. 1782 * bfd-in.h: Generate an error if included before config.h. 1783 * sysdep.h: Likewise. 1784 * bfd-in2.h: Regenerate. 1785 * compress.c: Remove #include "config.h". 1786 * plugin.c: Likewise. 1787 * elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h. 1788 * elf64-hppa.c: Likewise. 1789 * som.c: Likewise. 1790 * xsymc.c: Likewise. 1791 1792 2012-05-17 Maciej W. Rozycki <macro (a] linux-mips.org> 1793 Alan Modra <amodra (a] gmail.com> 1794 1795 * elf.c (ignore_section_sym): Correct comment. Don't return 1796 true for absolute section. 1797 (elf_map_symbols): Move stray comment. Adjust for above change. 1798 Don't discard global section symbols. 1799 1800 2012-05-17 Alan Modra <amodra (a] gmail.com> 1801 1802 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make _DYNAMIC, 1803 _GLOBAL_OFFSET_TABLE_ or _PROCEDURE_LINKAGE_TABLE_ absolute. 1804 * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Don't make _DYNAMIC 1805 absolute. 1806 1807 2012-05-17 Alan Modra <amodra (a] gmail.com> 1808 1809 * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call, has_vle_insns, 1810 is_ppc_vle): Move to.. 1811 * elf32-ppc.h: ..here, making is_ppc_vle a macro. 1812 1813 2012-05-16 Sergio Durigan Junior <sergiodj (a] redhat.com> 1814 1815 * bfd-in.h (bfd_get_section_name, bfd_get_section_vma, 1816 bfd_get_section_lma, bfd_get_section_alignment, 1817 bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros 1818 in order to use the `bfd' argument. 1819 * bfd-in2.h: Regenerate. 1820 * elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd' 1821 as the first argument for `bfd_get_section_alignment'. 1822 * elf32-arm.c (create_ifunc_sections): Likewise, for 1823 `bfd_set_section_alignment'. 1824 * elf32-m32r.c (m32r_elf_relocate_section): Likewise, for 1825 `bfd_get_section_name'. 1826 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise. 1827 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. 1828 (ppc_elf_relocate_section): Likewise. 1829 * elf64-mmix.c (mmix_final_link_relocate): Likewise, for 1830 `bfd_get_section_vma'. 1831 * elf64-ppc.c (create_linkage_sections): Likewise, for 1832 `bfd_set_section_alignment'. 1833 1834 2012-05-16 Georg-Johann Lay <avr (a] gjlay.de> 1835 1836 PR target/13503 1837 * reloc.c: Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO. 1838 * bfd-in2.h: Regenerate. 1839 * libbfd.h: Regenerate. 1840 * elf32-avr.c (elf_avr_howto_table): Rename R_AVR_8_HHI8 to 1841 R_AVR_8_HLO8. 1842 (avr_reloc_map): Likewise. 1843 1844 2012-05-16 Daniel Richard G. <skunk (a] iskunk.org> 1845 1846 PR binutils/13558 1847 * bfd/aout-cris.c: Include sysdep.h before bfd.h. 1848 * bfd/aout-ns32k.c: Likewise. 1849 * bfd/aout-sparcle.c: Likewise. 1850 * bfd/aout0.c: Likewise. 1851 * bfd/bfd-in2.h: Likewise. 1852 * bfd/coff-stgo32.c: Likewise. 1853 * bfd/cpu-lm32.c: Likewise. 1854 * bfd/cpu-microblaze.c: Likewise. 1855 * bfd/cpu-score.c: Likewise. 1856 * bfd/cpu-tilegx.c: Likewise. 1857 * bfd/cpu-tilepro.c: Likewise. 1858 * bfd/elf32-lm32.c: Likewise. 1859 * bfd/elf32-microblaze.c: Likewise. 1860 * bfd/elf32-score7.c: Likewise. 1861 * bfd/elf32-tilepro.c: Likewise. 1862 * bfd/elfxx-tilegx.c: Likewise. 1863 * bfd/mach-o.h: Likewise. 1864 * bfd/nlm32-ppc.c: Likewise. 1865 * bfd/ns32knetbsd.c: Likewise. 1866 * bfd/pef.h: Likewise. 1867 * bfd/plugin.c: Likewise. 1868 * bfd/stab-syms.c: Likewise. 1869 * bfd/sunos.c: Likewise. 1870 * bfd/syms.c: Likewise. 1871 * bfd/xsym.h: Likewise. 1872 1873 2012-05-16 Alan Modra <amodra (a] gmail.com> 1874 1875 * elflink.c: Rename flaginfo to flinfo throughout, except.. 1876 (bfd_elf_lookup_section_flags): ..here, rename finfo to flaginfo. 1877 Formatting, style. Simplify flag match. 1878 1879 2012-05-16 Alan Modra <amodra (a] gmail.com> 1880 1881 * dwarf2.c: Formatting. 1882 (arange_add): Pass in unit rather than bfd. Update callers. 1883 Ignore empty ranges. Don't ask for cleared memory. 1884 (parse_comp_unit): Only set unit->base_address if processing 1885 DW_TAG_compile_unit. 1886 (find_debug_info): Optimise section lookup. 1887 (place_sections): Use bfd_alloc for stash->adjusted_sections. 1888 (find_line): Match previously parsed comp unit addresses as we 1889 do for newly parsed comp units. 1890 1891 2012-05-16 Alan Modra <amodra (a] gmail.com> 1892 1893 * archive.c (_bfd_generic_read_ar_hdr_mag): Ensure sscanf 1894 stops at end of ar_size field. 1895 1896 2012-05-16 Alan Modra <amodra (a] gmail.com> 1897 1898 PR ld/13962 1899 PR ld/7023 1900 * elf.c (bfd_section_from_shdr): Fail when .dynsym sh_info is 1901 out of range. As a special case, fix sh_info for zero sh_size. 1902 Do the same for .symtab. 1903 1904 2012-05-15 James Murray <jsm (a] jsm-net.demon.co.uk> 1905 Stephane Carrez <stcarrez (a] nerim.fr> 1906 1907 * archures.c: Add bfd_arch_m9s12x and bfd_arch_m9s12xg. 1908 * config.bfd: Likewise. 1909 * cpu-m9s12x.c: New. 1910 * cpu-m9s12xg.c: New. 1911 * elf32-m68hc12.c: Add S12X and XGATE co-processor support. 1912 Add option to offset S12 addresses into XGATE memory space. 1913 Fix carry bug in IMM16 (IMM8 low/high) relocate. 1914 * Makefile.am (ALL_MACHINES): Add cpu-m9s12x and cpu-m9s12xg. 1915 (ALL_MACHINES_CFILES): Likewise. 1916 * reloc.c: Add S12X relocs. 1917 * Makefile.in: Regenerate. 1918 * bfd-in2.h: Regenerate. 1919 * libbfd.h: Regenerate. 1920 1921 2012-05-14 James Lemke <jwlemke (a] codesourcery.com> 1922 Catherine Moore <clm (a] codesourcery.com> 1923 1924 * bfd.c (bfd_lookup_section_flags): Add section parm. 1925 * ecoff.c (bfd_debug_section): Remove flag_info initializer. 1926 * elf-bfd.h (bfd_elf_section_data): Move in section_flag_info. 1927 (bfd_elf_lookup_section_flags): Add section parm. 1928 * elf32-ppc.c (is_ppc_vle): New function. 1929 (ppc_elf_modify_segment_map): New function. 1930 (elf_backend_modify_segment_map): Define. 1931 (has_vle_insns): New define. 1932 * elf32-ppc.h (ppc_elf_modify_segment_map): Declare. 1933 * elflink.c (bfd_elf_lookup_section_flags): Add return value & parm. 1934 Move in logic to omit / include a section. 1935 * libbfd-in.h (bfd_link_info): Add section parm. 1936 (bfd_generic_lookup_section_flags): Likewise. 1937 * reloc.c (bfd_generic_lookup_section_flags): Likewise. 1938 * section.c (bfd_section): Move out section_flag_info. 1939 (BFD_FAKE_SECTION): Remove flag_info initializer. 1940 * targets.c (_bfd_lookup_section_flags): Add section parm. 1941 1942 2012-05-14 Catherine Moore <clm (a] codesourcery.com> 1943 1944 * archures.c (bfd_mach_ppc_vle): New. 1945 * bfd-in2.h: Regenerated. 1946 * cpu-powerpc.c (bfd_powerpc_archs): New entry for vle. 1947 * elf32-ppc.c (split16_format_type): New enumeration. 1948 (ppc_elf_vle_split16): New function. 1949 (HOWTO): Add entries for R_PPC_VLE relocations. 1950 (ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations. 1951 (ppc_elf_section_flags): New function. 1952 (ppc_elf_lookup_section_flags): New function. 1953 (ppc_elf_section_processing): New function. 1954 (ppc_elf_check_relocs): Handle PPC_VLE relocations. 1955 (ppc_elf_relocation_section): Likewise. 1956 (elf_backend_lookup_section_flags_hook): Define. 1957 (elf_backend_section_flags): Define. 1958 (elf_backend_section_processing): Define. 1959 * elf32-ppc.h (ppc_elf_section_processing): Declare. 1960 * libbfd.h: Regenerated. 1961 * reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15, 1962 BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A, 1963 BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A, 1964 BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A, 1965 BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21, 1966 BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A, 1967 BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A, 1968 BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A, 1969 BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations. 1970 1971 2012-05-11 Georg-Johann Lay <avr (a] gjlay.de> 1972 1973 PR target/13503 1974 * reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO, 1975 BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI. 1976 * bfd-in2.h: Regenerate. 1977 * libbfd.h: Regenerate. 1978 * elf32-avr.c (elf_avr_howto_table): Add entries for 1979 R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8. 1980 (avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8, 1981 R_AVR_8_HHI8. 1982 1983 2012-05-10 H.J. Lu <hongjiu.lu (a] intel.com> 1984 1985 * elf64-x86-64.c (elf_x86_64_relocate_section): Use int in x32 1986 addend overflow check. 1987 1988 2012-05-10 DJ Delorie <dj (a] redhat.com> 1989 1990 * elf32-rx.c (rx_elf_object_p): Ignore empty segments. 1991 1992 2012-05-10 H.J. Lu <hongjiu.lu (a] intel.com> 1993 1994 * elf64-x86-64.c (elf_x86_64_relocate_section): Display signed 1995 hex number in x32 addend overflow check. 1996 1997 2012-05-10 H.J. Lu <hongjiu.lu (a] intel.com> 1998 1999 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle 2000 R_X86_64_RELATIVE64. 2001 2002 2012-05-09 H.J. Lu <hongjiu.lu (a] intel.com> 2003 2004 * elf64-x86-64.c (elf_x86_64_relocate_section): Check addend 2005 overflow for R_X86_64_RELATIVE64. 2006 2007 2012-05-08 Ben Cheng <bccheng (a] google.com> 2008 2009 * elf.c: Preserve the original p_align and p_flags if they are 2010 valid. 2011 2012 2012-05-07 Alan Modra <amodra (a] gmail.com> 2013 2014 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Update 2015 RELOC_AGAINST_DISCARDED_SECTION invocation. 2016 2017 2012-05-07 Hans-Peter Nilsson <hp (a] axis.com> 2018 2019 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Declare and use 2020 local variable i_ instead of assuming and using a variable i. 2021 2022 2012-05-07 Maciej W. Rozycki <macro (a] linux-mips.org> 2023 2024 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Handle compound 2025 relocations. 2026 * elfxx-mips.c (mips_reloc_against_discarded_section): New 2027 function. 2028 (_bfd_mips_elf_relocate_section): Call it, in place of 2029 RELOC_AGAINST_DISCARDED_SECTION. 2030 * elf-m10200.c (mn10200_elf_relocate_section): Update arguments 2031 to RELOC_AGAINST_DISCARDED_SECTION. 2032 * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 2033 * elf32-arm.c (elf32_arm_relocate_section): Likewise. 2034 * elf32-avr.c (elf32_avr_relocate_section): Likewise. 2035 * elf32-bfin.c (bfin_relocate_section): Likewise. 2036 (bfinfdpic_relocate_section): Likewise. 2037 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise. 2038 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise. 2039 * elf32-cris.c (cris_elf_relocate_section): Likewise. 2040 * elf32-crx.c (elf32_crx_relocate_section): Likewise. 2041 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 2042 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise. 2043 * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 2044 * elf32-frv.c (elf32_frv_relocate_section): Likewise. 2045 * elf32-h8300.c (elf32_h8_relocate_section): Likewise. 2046 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 2047 * elf32-i370.c (i370_elf_relocate_section): Likewise. 2048 * elf32-i386.c (elf_i386_relocate_section): Likewise. 2049 * elf32-i860.c (elf32_i860_relocate_section): Likewise. 2050 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. 2051 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise. 2052 * elf32-lm32.c (lm32_elf_relocate_section): Likewise. 2053 * elf32-m32c.c (m32c_elf_relocate_section): Likewise. 2054 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 2055 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise. 2056 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 2057 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 2058 * elf32-mep.c (mep_elf_relocate_section): Likewise. 2059 * elf32-moxie.c (moxie_elf_relocate_section): Likewise. 2060 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise. 2061 * elf32-mt.c (mt_elf_relocate_section): Likewise. 2062 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. 2063 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 2064 * elf32-rl78.c (rl78_elf_relocate_section): Likewise. 2065 * elf32-rx.c (rx_elf_relocate_section): Likewise. 2066 * elf32-s390.c (elf_s390_relocate_section): Likewise. 2067 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. 2068 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. 2069 * elf32-sh.c (sh_elf_relocate_section): Likewise. 2070 * elf32-spu.c (spu_elf_relocate_section): Likewise. 2071 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. 2072 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. 2073 * elf32-v850.c (v850_elf_relocate_section): Likewise. 2074 * elf32-vax.c (elf_vax_relocate_section): Likewise. 2075 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise. 2076 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. 2077 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 2078 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise. 2079 (elf64_alpha_relocate_section): Likewise. 2080 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. 2081 * elf64-mmix.c (mmix_elf_relocate_section): Likewise. 2082 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 2083 * elf64-s390.c (elf_s390_relocate_section): Likewise. 2084 * elf64-sh64.c (sh_elf64_relocate_section): Likewise. 2085 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 2086 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise. 2087 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 2088 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. 2089 2090 2012-05-05 Alan Modra <amodra (a] gmail.com> 2091 2092 PR ld/14052 2093 PR ld/13621 2094 * linker.c (_bfd_nearby_section): Revert 2012-02-13 change. 2095 2096 2012-05-05 Alan Modra <amodra (a] gmail.com> 2097 2098 * aout-arm.c: Replace all uses of bfd_abs_section, bfd_com_section, 2099 bfd_und_section and bfd_ind_section with their _ptr variants, or 2100 use corresponding bfd_is_* macros. 2101 * aout-ns32k.c: Likewise. 2102 * aout-tic30.c: Likewise. 2103 * coff-arm.c: Likewise. 2104 * coff-tic54x.c: Likewise. 2105 * cpu-ns32k.c: Likewise. 2106 * elf-attrs.c: Likewise. 2107 * elfcode.h: Likewise. 2108 * peicode.h: Likewise. 2109 * reloc.c: Likewise. 2110 * riscix.c: Likewise. 2111 * versados.c: Likewise. 2112 * section.c: Likewise. 2113 (bfd_abs_section, bfd_ind_section, bfd_com_section, 2114 bfd_ind_section): Delete. 2115 (std_section): New array replacing above. 2116 (bfd_abs_section_ptr, bfd_ind_section_ptr, bfd_com_section_ptr, 2117 bfd_ind_section_ptr, STD_SECTION): Update. 2118 (BFD_FAKE_SECTION, GLOBAL_SYM_INIT): Remove unnecessary casts. 2119 * bfd-in2.h: Regenerate. 2120 2121 2012-05-03 Sean Keys <skeys (a] ipdatasys.com> 2122 2123 * cpu-xgate.c: New file. Added XGATE support. 2124 * archures.c (bfd_architecture): Add XGATE architecture. 2125 (bfd_archures_list): Add reference to XGATE architecture info. 2126 * elf-bfd.h (prep_headers): Handle bfd_arch_xgate. 2127 * reloc.c: Add various XGATE relocation enums. 2128 * targets.c (bfd_elf32_xgate_vec): Declare and add to target vector 2129 list. 2130 * Makefile.am: Add support for XGATE elf. 2131 * configure.in: Ditto. 2132 * config.bfd: Ditto. 2133 * Makefile.in: Regenerate. 2134 * configure: Ditto. 2135 * bfd-in2.h: Ditto. 2136 * libbfd.h: Ditto. 2137 Added files for XGATE relocations. 2138 * elf32-xgate.c: Created minimal relocation file. 2139 * elf32-xgate.h: Created minimal header file for elf32-xgate. 2140 2141 2012-05-03 Tristan Gingold <gingold (a] adacore.com> 2142 2143 * dwarf2.c (decode_line_info): Ignore 2144 DW_LNE_HP_source_file_correlation. 2145 2146 2012-05-01 Nick Clifton <nickc (a] redhat.com> 2147 2148 PR binutils/13121 2149 * aoutx.h: Rename 'finfo' to 'flaginfo' to avoid conflicts with 2150 AIX system headers. 2151 * coff-ppc.c: Likewise. 2152 * cofflink.c: Likewise. 2153 * elf32-arm.c: Likewise. 2154 * elf64-sparc.c: Likewise. 2155 * elflink.c: Likewise. 2156 * pdp11.c: Likewise. 2157 * rescoff.c: Likewise. 2158 2159 2012-04-26 Mark Wielaard <mjw (a] redhat.com> 2160 2161 * dwarf2.c (scan_unit_for_symbols): Account for DW_AT_high_pc 2162 possibly being relative to DW_AT_low_pc. 2163 (parse_comp_unit): Likewise. 2164 2165 2012-04-26 Andreas Schwab <schwab (a] linux-m68k.org> 2166 2167 * elf32-m68k.c (elf_m68k_check_relocs): Mark non-GOT references 2168 also when generating PIE. 2169 (elf_m68k_discard_copies): Mark undefined weak symbols referenced 2170 by relocations as dynamic. 2171 2172 2012-04-26 Hans-Peter Nilsson <hp (a] axis.com> 2173 2174 Provide a way for programs to recognize BFD_ASSERT calls. 2175 * bfd.c (bfd_assert_handler_type): New API type. 2176 (bfd_set_assert_handler, bfd_get_assert_handler): New API functions. 2177 (_bfd_assert_handler): New variable. 2178 (_bfd_default_assert_handler): New function. 2179 (bfd_assert): Call _bfd_assert_handler, not _bfd_error_handler. 2180 * libbfd-in.h (_bfd_assert_handler): Declare. 2181 * libbfd.h, bfd-in2.h: Regenerate. 2182 2183 2012-04-24 Hans-Peter Nilsson <hp (a] axis.com> 2184 2185 PR ld/13990 2186 * elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local 2187 symbol, where PLT refcount is set to -1. 2188 2189 2012-04-24 Alan Modra <amodra (a] gmail.com> 2190 2191 PR ld/13991 2192 * elf-bfd.h (_bfd_elf_link_just_syms): Define as 2193 _bfd_generic_link_just_syms. 2194 * elflink.c (_bfd_elf_link_just_syms): Delete. 2195 * linker.c (_bfd_generic_link_just_syms): Set sec_info_type. 2196 2197 * bfd-in.h (discarded_section): Renamed from elf_discarded_section. 2198 * section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS, 2199 SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME, 2200 SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE. 2201 * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c, 2202 * elf.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c, 2203 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, 2204 * elf32-crx.c, * elf32-d10v.c, * elf32-epiphany.c, 2205 * elf32-fr30.c, * elf32-frv.c, * elf32-h8300.c, 2206 * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c, 2207 * elf32-i860.c, * elf32-ip2k.c, * elf32-iq2000.c, 2208 * elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c, 2209 * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c, 2210 * elf32-mep.c, * elf32-moxie.c, * elf32-msp430.c, 2211 * elf32-mt.c, * elf32-openrisc.c, * elf32-ppc.c, 2212 * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c, 2213 * elf32-score.c, * elf32-score7.c, * elf32-sh.c, 2214 * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c, 2215 * elf32-v850.c, * elf32-vax.c, * elf32-xc16x.c, 2216 * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c, 2217 * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c, 2218 * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c, 2219 * elf64-x86-64.c, * elflink.c, * elfnn-ia64.c, 2220 * elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c, 2221 * reloc.c: Update all references. 2222 * bfd-in2.h: Regenerate. 2223 2224 2012-04-20 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 2225 2226 * elf32-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default. 2227 * elf64-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default. 2228 2229 2012-04-19 Thomas Schwinge <thomas (a] codesourcery.com> 2230 2231 * elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for 2232 got_type. 2233 (allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use 2234 it. 2235 2236 2012-04-17 Kaz Kojima <kkojima (a] rr.iij4u.or.jp> 2237 2238 * elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic 2239 relocations when LE conversion happens on the IE tls symbol. 2240 2241 2012-04-17 Roland McGrath <mcgrathr (a] google.com> 2242 2243 * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding 2244 so that 32-byte boundary is a proper instruction boundary. 2245 2246 2012-04-17 Tristan Gingold <gingold (a] adacore.com> 2247 2248 * vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to 2249 member of an object archive.< 2250 2251 2012-04-17 Tristan Gingold <gingold (a] adacore.com> 2252 2253 * vms-lib.c (MAX_EKEYLEN): Define. 2254 (MAX_KEYLEN): Fix value. 2255 (vms_write_index): Add comments and fix indentation. 2256 Adjust comparaison. Add assertions. Free kbn_blk. 2257 (_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN. 2258 Compense MAX_KEYLEN adjustment. 2259 2260 2012-04-16 Maciej W. Rozycki <macro (a] linux-mips.org> 2261 2262 * elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs. 2263 (_bfd_mips_elf_check_relocs): Update accordingly. 2264 2265 2012-04-13 Alan Modra <amodra (a] gmail.com> 2266 2267 PR ld/13947 2268 * elflink.c (bfd_elf_final_link): Set reloc_count to 0 for 2269 reloc sections. 2270 2271 2012-04-12 David S. Miller <davem (a] davemloft.net> 2272 2273 * reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32, 2274 BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs. 2275 * libbfd.h: Regenerate. 2276 * bfd-in2.h: Likewise. 2277 * elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function. 2278 (_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34, 2279 R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10. 2280 (_bfd_sparc_elf_reloc_type_lookup): Handle new relocs. 2281 (_bfd_sparc_elf_check_relocs): Likewise. 2282 (_bfd_sparc_elf_gc_sweep_hook): Likewise. 2283 (_bfd_sparc_elf_relocate_section): Likewise. 2284 2285 2012-04-12 Roland McGrath <mcgrathr (a] google.com> 2286 2287 * elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry): 2288 New variables. 2289 (struct elf32_arm_link_hash_table): New member `nacl_p'. 2290 (elf32_arm_link_hash_table_create): Initialize it. 2291 (elf32_arm_nacl_link_hash_table_create): New function. 2292 (arm_movw_immediate, arm_movt_immediate): New functions. 2293 (elf32_arm_populate_plt_entry): Test HTAB->nacl_p. 2294 (elf32_arm_finish_dynamic_sections): Likewise. 2295 (elf32_arm_output_plt_map_1): Likewise. 2296 (bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec): 2297 New backend vector stanza. 2298 (elf32_arm_nacl_modify_segment_map): New function. 2299 * config.bfd: Handle arm-*-nacl*, armeb-*-nacl*. 2300 * targets.c: Support bfd_elf32_{big,little}_nacl_vec. 2301 * configure.in: Likewise. 2302 (bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here. 2303 (bfd_elf32_littlearm_nacl_vec): Likewise. 2304 (bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise. 2305 (bfd_elf32_bigarm_symbian_vec): Likewise. 2306 (bfd_elf32_littlearm_symbian_vec): Likewise. 2307 (bfd_elf32_bigarm_vxworks_vec): Likewise. 2308 (bfd_elf32_littlearm_vxworks_vec): Likewise. 2309 * configure: Regenerated. 2310 2311 2012-04-12 Tristan Gingold <gingold (a] adacore.com> 2312 2313 * elflink.c (elf_link_output_extsym): Add a guard. 2314 (bfd_elf_final_link): Remove assertion. 2315 (bfd_elf_final_link): Add a guard. 2316 * elfnn-ia64.c (INCLUDE_IA64_VMS): Removed. 2317 (elfNN_vms_section_from_shdr, elfNN_vms_object_p) 2318 (elfNN_vms_post_process_headers, elfNN_vms_section_processing) 2319 (elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup): 2320 Remove. 2321 (elfNN-ia64-vms target): Move to ... 2322 * elf64-ia64-vms.c: New file. 2323 * configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo 2324 * Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo. 2325 (BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c. 2326 * configure: Regenerate. 2327 * Makefile.in: Regenerate. 2328 2329 2012-04-11 Nick Clifton <nickc (a] redhat.com> 2330 2331 PR binutils/13897 2332 * elf64-ppc.c (opd_entry_value): When dealing with sections 2333 without relocs, keep the last section loaded in order to avoid 2334 unnecessary reloads. 2335 2336 2012-04-09 Roland McGrath <mcgrathr (a] google.com> 2337 2338 * elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs. 2339 * elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs. 2340 (nacl_modify_program_headers): Likewise. 2341 2342 2012-04-03 Roland McGrath <mcgrathr (a] google.com> 2343 2344 * elf-nacl.c: New file. 2345 * elf-nacl.h: New file. 2346 * elf32-i386.c (elf_backend_modify_segment_map): Define for 2347 bfd_elf32_i386_nacl_vec. 2348 (elf_backend_modify_program_headers): Likewise. 2349 * elf64-x86-64.c (elf_backend_modify_segment_map): Define for 2350 bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec. 2351 (elf_backend_modify_program_headers): Likewise. 2352 * Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here. 2353 (BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here. 2354 * Makefile.in: Regenerated. 2355 * configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here. 2356 (bfd_elf32_x86_64_nacl_vec): Likewise. 2357 (bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise. 2358 (bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise. 2359 (bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise. 2360 (bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise. 2361 (bfd_elf32_i386_nacl_vec): Likewise. 2362 (bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise. 2363 (bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise. 2364 * configure: Regenerated. 2365 2366 2012-03-31 Andreas Schwab <schwab (a] linux-m68k.org> 2367 2368 * elf32-m68k.c (elf_m68k_relocate_section): Allow 2369 R_68K_TLS_LE{8,16,32} for PIE. 2370 2371 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 2372 2373 * elf64-s390.c: Fix several comments regarding PLT entry 2374 description. 2375 * elf32-s390.c: Likewise. 2376 2377 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 2378 2379 * elf64-s390.c: Use the section pointer shortcuts in 2380 elf_link_hash_table and remove them from the target specific 2381 variant. 2382 * elf32-s390.c: Likewise. 2383 2384 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 2385 2386 * elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry): 2387 New definitions. 2388 (PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove. 2389 (elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32. 2390 (elf_s390_finish_dynamic_sections): Likewise. 2391 * elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry) 2392 (elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry) 2393 (elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions. 2394 (PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*) 2395 (PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove. 2396 2397 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 2398 2399 * elf32-s390.c (struct elf_s390_dyn_relocs): Remove. 2400 Rename all occurrences in the file to elf_dyn_relocs. 2401 * elf64-s390.c: Likewise. 2402 2403 2012-03-30 Alan Modra <amodra (a] gmail.com> 2404 2405 * elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic 2406 libraries. 2407 2408 2012-03-29 Alan Modra <amodra (a] gmail.com> 2409 2410 * bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete. 2411 * bfd-in2.h: Regenerate. 2412 2413 2012-03-23 Alan Modra <amodra (a] gmail.com> 2414 2415 * elf.c (assign_file_positions_for_non_load_sections): Don't warn 2416 on empty alloc sections. 2417 2418 2012-03-23 Alan Modra <amodra (a] gmail.com> 2419 2420 * linker.c (_bfd_nearby_section): New function, split out from.. 2421 (fix_syms): ..here. 2422 * bfd-in.h (_bfd_nearby_section): Declare. 2423 * bfd-in2.h: Regenerate. 2424 * elflink.c (elf_link_input_bfd): Don't use text_index_section or 2425 data_index_section with ld -q or ld -r output relocs against 2426 stripped output sections. Instead use _bfd_nearby_section. 2427 2428 2012-03-23 Alan Modra <amodra (a] gmail.com> 2429 2430 PR binutils/13894 2431 * elf64-ppc.c (opd_entry_value): Read full symbol table when 2432 sym hashes unavailable. 2433 2434 2012-03-21 Eliot Dresselhaus <eliot (a] sonic.net> 2435 2436 * elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE 2437 for non-C6X objects. 2438 2439 2012-03-20 Kai Tietz <ktietz (a] redhat.com> 2440 2441 PR ld/12742 2442 * configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h. 2443 * plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined. 2444 Add windows.h header include if HAVE_WINDOWS_H is defined. 2445 (dlerror): New static function if windows variant is used instead 2446 of dlfcn.h. 2447 (dlclose): Likewise. 2448 (dlopen): Likewise. 2449 (dlsym): Likewise. 2450 * configure: Regenerated. 2451 * config.in: Regenerated. 2452 2453 2012-03-20 H.J. Lu <hongjiu.lu (a] intel.com> 2454 2455 PR ld/13880 2456 * elf32-i386.c (elf_i386_relocate_section): Don't issue an error 2457 for R_386_GOTOFF relocation against protected function if 2458 SYMBOLIC_BIND is true. 2459 2460 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an 2461 error for R_X86_64_GOTOFF64 relocation against protected function 2462 when building executable or SYMBOLIC_BIND is true. 2463 2464 2012-03-16 Roland McGrath <mcgrathr (a] google.com> 2465 2466 * config.bfd: Handle x86_64-*-nacl*. 2467 * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza. 2468 (bfd_elf32_x86_64_nacl_vec): Likewise. 2469 * targets.c: Support them. 2470 * configure.in: Likewise. 2471 * configure: Regenerated. 2472 2473 2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann (a] arm.com> 2474 2475 * elf32-arm.c (elf32_arm_attributes_accept_div): New function. 2476 (elf32_arm_attributes_forbid_div): Likewise. 2477 (elf32_arm_merge_eabi_attributes): Correct handling of 2478 Tag_DIV_use. 2479 2480 2012-03-15 Roland McGrath <mcgrathr (a] google.com> 2481 2482 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use 2483 elf_x86_64_backend_data parameters for plt_eh_frame. 2484 2485 * elf64-x86-64.c (struct elf_x86_64_backend_data): New type. 2486 (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros. 2487 (elf_x86_64_arch_bed): New variable. 2488 (elf_backend_arch_data): New macro. 2489 (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE. 2490 (elf_x86_64_allocate_dynrelocs): Likewise. 2491 (elf_x86_64_relocate_section): Likewise. 2492 (elf_x86_64_plt_sym_val): Likewise. 2493 (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data 2494 parameters for PLT details. 2495 (elf_x86_64_finish_dynamic_sections): Likewise. 2496 2497 2012-03-14 Roland McGrath <mcgrathr (a] google.com> 2498 2499 * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up 2500 to the full size, padding out with nop instructions. 2501 2502 2012-03-12 Alan Modra <amodra (a] gmail.com> 2503 2504 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn 2505 on zero size dynbss symbol. 2506 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. 2507 * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise. 2508 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. 2509 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. 2510 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. 2511 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise. 2512 * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise. 2513 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. 2514 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. 2515 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. 2516 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. 2517 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. 2518 * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise. 2519 * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise. 2520 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. 2521 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. 2522 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. 2523 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. 2524 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. 2525 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. 2526 * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise. 2527 2528 2012-03-10 Edmar Wienskoski <edmar (a] freescale.com> 2529 2530 * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500. 2531 * bfd-in2.h: Regenerate. 2532 * cpu-powerpc.c (bfd_powerpc_archs): Add entries for 2533 bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500. 2534 2535 2012-03-09 H.J. Lu <hongjiu.lu (a] intel.com> 2536 2537 PR ld/13817 2538 * elf32-i386.c (elf_i386_relocate_section): Restore 2539 R_386_IRELATIVE. 2540 2541 * elf64-x86-64.c (elf_x86_64_relocate_section): Restore 2542 R_X86_64_IRELATIVE. 2543 2544 2012-03-08 Tristan Gingold <gingold (a] adacore.com> 2545 2546 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum 2547 keylen according to archive kind. Set nextvbn and nextrfa lhd 2548 fields. Add comments. 2549 2550 2012-03-07 Nick Clifton <nickc (a] redhat.com> 2551 2552 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type 2553 field. 2554 (elf32_mn10300_link_hash_table): Add tls_ldm_got entry; 2555 (elf_mn10300_tdata): Define. 2556 (elf_mn10300_local_got_tls_type): Define. 2557 (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD, 2558 R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE, 2559 R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD, 2560 R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs. 2561 (mn10300_reloc_map): Likewise. 2562 (elf_mn10300_tls_transition): New function. 2563 (dtpoff, tpoff, mn10300_do_tls_transition): New functions. 2564 (mn10300_elf_check_relocs): Add TLS support. 2565 (mn10300_elf_final_link_relocate): Likewise. 2566 (mn10300_elf_relocate_section): Likewise. 2567 (mn10300_elf_relax_section): Likewise. 2568 (elf32_mn10300_link_hash_newfunc): Initialise new field. 2569 (_bfd_mn10300_copy_indirect_symbol): New function. 2570 (elf32_mn10300_link_hash_table_create): Initialise new fields. 2571 (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support. 2572 (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise. 2573 (_bfd_mn10300_elf_reloc_type_class): Allocate an 2574 elf_mn10300_obj_tdata structure. 2575 (elf_backend_copy_indirect_symbol): Define. 2576 * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD, 2577 BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE, 2578 BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD, 2579 BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations. 2580 (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to 2581 alongside other MN10300 relocations. 2582 * bfd-in2.h: Regenerate. 2583 * libbfd.h: Regenerate. 2584 2585 2012-03-06 Jakub Jelinek <jakub (a] redhat.com> 2586 2587 * elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE 2588 set relocate to TRUE. 2589 2590 2012-03-05 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE> 2591 2592 PR ld/12152 2593 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore 2594 overflows for R_SPARC_UA32 in .stab sections. 2595 2596 2012-03-01 Alan Modra <amodra (a] gmail.com> 2597 2598 * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning. 2599 2600 2012-02-27 Alan Modra <amodra (a] gmail.com> 2601 2602 * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd 2603 before calling elf specific function. 2604 (sh_elf_osec_readonly_p): Test for error return from above. 2605 2606 2012-02-27 Alan Modra <amodra (a] gmail.com> 2607 2608 * elf32-spu.c (build_stub): Fix malloc under-allocation. 2609 2610 2012-02-25 Walter Lee <walt (a] tilera.com> 2611 * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL, 2612 BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD, 2613 BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD, 2614 BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD, 2615 BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD, 2616 BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE, 2617 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE, 2618 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO, 2619 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO, 2620 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI, 2621 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI, 2622 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA, 2623 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA, 2624 BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE, 2625 BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE, 2626 BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE, 2627 BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE, 2628 BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE, 2629 BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE, 2630 BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD, 2631 BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD, 2632 BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD, 2633 BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD, 2634 BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD, 2635 BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD, 2636 BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD. 2637 Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT, 2638 BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT, 2639 BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT, 2640 BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT, 2641 BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT, 2642 BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT, 2643 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT, 2644 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT, 2645 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD, 2646 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD, 2647 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD, 2648 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD, 2649 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD, 2650 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD, 2651 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD, 2652 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD, 2653 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE, 2654 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE, 2655 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE, 2656 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE, 2657 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE, 2658 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE, 2659 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE, 2660 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE. 2661 * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro 2662 relocations. 2663 (tilepro_reloc_map): Ditto. 2664 (tilepro_info_to_howto_rela): Ditto. 2665 (reloc_to_create_func): Ditto. 2666 (tilepro_tls_translate_to_le): New. 2667 (tilepro_tls_translate_to_ie): New. 2668 (tilepro_elf_tls_transition): New. 2669 (tilepro_elf_check_relocs): Handle new tls relocations. 2670 (tilepro_elf_gc_sweep_hook): Ditto. 2671 (allocate_dynrelocs): Ditto. 2672 (tilepro_elf_relocate_section): Ditto. 2673 (tilepro_replace_insn): New. 2674 (insn_mask_X1): New. 2675 (insn_mask_X0_no_dest_no_srca): New 2676 (insn_mask_X1_no_dest_no_srca): New 2677 (insn_mask_Y0_no_dest_no_srca): New 2678 (insn_mask_Y1_no_dest_no_srca): New 2679 (srca_mask_X0): New 2680 (srca_mask_X1): New 2681 (insn_tls_le_move_X1): New 2682 (insn_tls_le_move_zero_X0X1): New 2683 (insn_tls_ie_lw_X1): New 2684 (insn_tls_ie_add_X0X1): New 2685 (insn_tls_ie_add_Y0Y1): New 2686 (insn_tls_gd_add_X0X1): New 2687 (insn_tls_gd_add_Y0Y1): New 2688 * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx 2689 relocations. 2690 (tilegx_reloc_map): Ditto. 2691 (tilegx_info_to_howto_rela): Ditto. 2692 (reloc_to_create_func): Ditto. 2693 (tilegx_elf_link_hash_table): New field disable_le_transition. 2694 (tilegx_tls_translate_to_le): New. 2695 (tilegx_tls_translate_to_ie): New. 2696 (tilegx_elf_tls_transition): New. 2697 (tilegx_elf_check_relocs): Handle new tls relocations. 2698 (tilegx_elf_gc_sweep_hook): Ditto. 2699 (allocate_dynrelocs): Ditto. 2700 (tilegx_elf_relocate_section): Ditto. 2701 (tilegx_copy_bits): New. 2702 (tilegx_replace_insn): New. 2703 (insn_mask_X1): New. 2704 (insn_mask_X0_no_dest_no_srca): New. 2705 (insn_mask_X1_no_dest_no_srca): New. 2706 (insn_mask_Y0_no_dest_no_srca): New. 2707 (insn_mask_Y1_no_dest_no_srca): New. 2708 (insn_mask_X0_no_operand): New. 2709 (insn_mask_X1_no_operand): New. 2710 (insn_mask_Y0_no_operand): New. 2711 (insn_mask_Y1_no_operand): New. 2712 (insn_tls_ie_ld_X1): New. 2713 (insn_tls_ie_ld4s_X1): New. 2714 (insn_tls_ie_add_X0X1): New. 2715 (insn_tls_ie_add_Y0Y1): New. 2716 (insn_tls_ie_addx_X0X1): New. 2717 (insn_tls_ie_addx_Y0Y1): New. 2718 (insn_tls_gd_add_X0X1): New. 2719 (insn_tls_gd_add_Y0Y1): New. 2720 (insn_move_X0X1): New. 2721 (insn_move_Y0Y1): New. 2722 (insn_add_X0X1): New. 2723 (insn_add_Y0Y1): New. 2724 (insn_addx_X0X1): New. 2725 (insn_addx_Y0Y1): New. 2726 * libbfd.h: Regenerate. 2727 * bfd-in2.h: Regenerate. 2728 2729 2012-02-25 Walter Lee <walt (a] tilera.com> 2730 2731 * config.bfd (tilegx-*-*): rename little endian vector; add big 2732 endian vector. 2733 (tilegxbe-*-*): New case. 2734 * configure.in (bfd_elf32_tilegx_vec): Rename... 2735 (bfd_elf32_tilegx_le_vec): ... to this. 2736 (bfd_elf32_tilegx_be_vec): New vector. 2737 (bfd_elf64_tilegx_vec): Rename... 2738 (bfd_elf64_tilegx_le_vec): ... to this. 2739 (bfd_elf64_tilegx_be_vec): New vector. 2740 * configure: Regenerate. 2741 * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename. 2742 (TARGET_LITTLE_NAME): Ditto. 2743 (TARGET_BIG_SYM): Define. 2744 (TARGET_BIG_NAME): Define. 2745 * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename. 2746 (TARGET_LITTLE_NAME): Ditto. 2747 (TARGET_BIG_SYM): Define. 2748 (TARGET_BIG_NAME): Define. 2749 * targets.c (bfd_elf32_tilegx_vec): Rename... 2750 (bfd_elf32_tilegx_le_vec): ... to this. 2751 (bfd_elf32_tilegx_be_vec): Declare. 2752 (bfd_elf64_tilegx_vec): Rename... 2753 (bfd_elf64_tilegx_le_vec): ... to this. 2754 (bfd_elf64_tilegx_be_vec): Declare. 2755 (_bfd_target_vector): Add / rename above vectors. 2756 * arctures.c (bfd_architecture): Define bfd_mach_tilegx32. 2757 * bfd-in2.h: Regenerate. 2758 * cpu-tilegx.c (bfd_tilegx32_arch): define. 2759 (bfd_tilegx_arch): link to bfd_tilegx32_arch. 2760 2761 2012-02-24 Nick Clifton <nickc (a] redhat.com> 2762 2763 PR ld/13730 2764 * reloc.c (bfd_generic_get_relocated_section_contents): Issue an 2765 error message instead of aborting, when an outofrange reloc is 2766 encountered. 2767 2768 2012-02-23 Iain Sandoe <idsandoe (a] googlemail.com> 2769 2770 * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New. 2771 (bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc 2772 bit-fields when target and host differ in endian-ness. When 2773 PAIRs are non-scattered find the 'symbol' from the preceding 2774 reloc. Add FIXME re. reloc symbols on section boundaries. 2775 (bfd_mach_o_swap_out_non_scattered_reloc): New. 2776 (bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc. 2777 2778 2012-02-17 Iain Sandoe <idsandoe (a] googlemail.com> 2779 2780 * mach-o-i386.c (i386_howto_table): Add support for 16 bit 2781 sect-diffs. 2782 (bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs. 2783 (bfd_mach_o_i386_swap_reloc_out): Likewise. 2784 2785 2012-02-17 Tristan Gingold <gingold (a] adacore.com> 2786 2787 * reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF): 2788 * libbfd.h: Regenerated. 2789 * bfd-in2.h: Likewise. 2790 * mach-o-i386.c (i386_howto_table): Include local sectdiff. 2791 (bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff. 2792 (bfd_mach_o_i386_swap_reloc_out): Likewise. 2793 2794 2012-02-17 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com> 2795 2796 * elf32-s390.c (elf_s390_relocate_section): Support basr in the 2797 GD->LE and LD->LE optimizations. 2798 2799 2012-02-16 Alan Modra <amodra (a] gmail.com> 2800 2801 PR binutils/13355 2802 * elf32-rx.c (elf32_rx_relax_section): Correct width check. 2803 2804 2012-02-13 Richard Henderson <rth (a] redhat.com> 2805 2806 PR ld/13621 2807 * linker.c (fix_syms): Force symbols outside any section into 2808 bfd_abs_section_ptr. 2809 2810 2012-02-13 Alan Modra <amodra (a] gmail.com> 2811 2812 * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function. 2813 * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare. 2814 * elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define. 2815 * elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define. 2816 2817 2012-02-11 Jan Kratochvil <jan.kratochvil (a] redhat.com> 2818 Nick Clifton <nickc (a] redhat.com> 2819 2820 * oasys.c (oasys_write_header): Fix compilation warning on zero-sized 2821 memset. 2822 2823 2012-02-10 Iain Sandoe <idsandoe (a] googlemail.com> 2824 2825 * mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section 2826 vma additions in their logical, rather than physical order. 2827 2828 2012-02-10 Iain Sandoe <idsandoe (a] googlemail.com> 2829 2830 * mach-o.c (mach_o_section_name_xlat): Correct eh-frame section 2831 parameters. 2832 * mach-o-x86-64.c (text_section_names_xlat): New. 2833 (mach_o_x86_64_segsec_names_xlat): New. 2834 (bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat. 2835 * mach-o-i386.c (text_section_names_xlat): Correct section parameters. 2836 2837 2012-02-10 Tristan Gingold <gingold (a] adacore.com> 2838 2839 * elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator 2840 to avoid infinite loop. Add comments. 2841 2842 2012-02-09 H.J. Lu <hongjiu.lu (a] intel.com> 2843 2844 PR ld/13675 2845 * cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte 2846 nop instructions. 2847 (bfd_arch_i386_short_nop_fill): New. 2848 (bfd_arch_i386_long_nop_fill): Likewise. 2849 Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info 2850 initializers. Use bfd_arch_i386_long_nop_fill on 64bit 2851 bfd_arch_info initializers. 2852 2853 * cpu-k1om.c (bfd_arch_i386_fill): Renamed to ... 2854 (bfd_arch_i386_short_nop_fill): This. 2855 Update bfd_arch_info initializers. 2856 * cpu-l1om.c: Likewise. 2857 2858 2012-02-08 Alan Modra <amodra (a] gmail.com> 2859 2860 * elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too. 2861 (_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear 2862 the correct h->u.weakdef. 2863 2864 2012-02-07 Alan Modra <amodra (a] gmail.com> 2865 2866 * elf.c (elf_find_function): Don't use internal_elf_sym. 2867 (_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type 2868 parameter with asymbol. 2869 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise. 2870 * elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype. 2871 (struct elf_backend_data <maybe_function_sym>): Likewise. 2872 2873 2012-02-02 Vidya Praveen (vidya.praveen (a] atmel.com) 2874 2875 PR bfd/13410 2876 * elf32-avr.c (elf32_avr_relax_section): Correct the 2877 condition that qualifies the candidates for relaxation. 2878 2879 2012-02-02 Tristan Gingold <gingold (a] adacore.com> 2880 2881 * bfdio.c (real_fopen): Remove unused vms_modes variable. 2882 2883 2012-02-02 Tristan Gingold <gingold (a] adacore.com> 2884 2885 * mach-o.c (bfd_mach_o_read_header): Silent uninitialized 2886 variable warning. 2887 2888 2012-02-02 Tristan Gingold <gingold (a] adacore.com> 2889 2890 * archive.c (bfd_slurp_armap): Fix thinko in cast. 2891 2892 2012-01-31 H.J. Lu <hongjiu.lu (a] intel.com> 2893 2894 PR ld/13616 2895 * archures.c (bfd_arch_info): Add fill. 2896 (bfd_default_arch_struct): Add bfd_arch_default_fill. 2897 (bfd_arch_default_fill): New. 2898 2899 * configure.in: Set bfd version to 2.22.52. 2900 * configure: Regenerated. 2901 2902 * cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info 2903 initializer. 2904 * cpu-arc.c: Likewise. 2905 * cpu-arm.c: Likewise. 2906 * cpu-avr.c: Likewise. 2907 * cpu-bfin.c: Likewise. 2908 * cpu-cr16.c: Likewise. 2909 * cpu-cr16c.c: Likewise. 2910 * cpu-cris.c: Likewise. 2911 * cpu-crx.c: Likewise. 2912 * cpu-d10v.c: Likewise. 2913 * cpu-d30v.c: Likewise. 2914 * cpu-dlx.c: Likewise. 2915 * cpu-epiphany.c: Likewise. 2916 * cpu-fr30.c: Likewise. 2917 * cpu-frv.c: Likewise. 2918 * cpu-h8300.c: Likewise. 2919 * cpu-h8500.c: Likewise. 2920 * cpu-hppa.c: Likewise. 2921 * cpu-i370.c: Likewise. 2922 * cpu-i860.c: Likewise. 2923 * cpu-i960.c: Likewise. 2924 * cpu-ia64.c: Likewise. 2925 * cpu-ip2k.c: Likewise. 2926 * cpu-iq2000.c: Likewise. 2927 * cpu-lm32.c: Likewise. 2928 * cpu-m10200.c: Likewise. 2929 * cpu-m10300.c: Likewise. 2930 * cpu-m32c.c: Likewise. 2931 * cpu-m32r.c: Likewise. 2932 * cpu-m68hc11.c: Likewise. 2933 * cpu-m68hc12.c: Likewise. 2934 * cpu-m68k.c: Likewise. 2935 * cpu-m88k.c: Likewise. 2936 * cpu-mcore.c: Likewise. 2937 * cpu-mep.c: Likewise. 2938 * cpu-microblaze.c: Likewise. 2939 * cpu-mips.c: Likewise. 2940 * cpu-mmix.c: Likewise. 2941 * cpu-moxie.c: Likewise. 2942 * cpu-msp430.c: Likewise. 2943 * cpu-mt.c: Likewise. 2944 * cpu-ns32k.c: Likewise. 2945 * cpu-openrisc.c: Likewise. 2946 * cpu-or32.c: Likewise. 2947 * cpu-pdp11.c: Likewise. 2948 * cpu-pj.c: Likewise. 2949 * cpu-plugin.c: Likewise. 2950 * cpu-powerpc.c: Likewise. 2951 * cpu-rl78.c: Likewise. 2952 * cpu-rs6000.c: Likewise. 2953 * cpu-rx.c: Likewise. 2954 * cpu-s390.c: Likewise. 2955 * cpu-score.c: Likewise. 2956 * cpu-sh.c: Likewise. 2957 * cpu-sparc.c: Likewise. 2958 * cpu-spu.c: Likewise. 2959 * cpu-tic30.c: Likewise. 2960 * cpu-tic4x.c: Likewise. 2961 * cpu-tic54x.c: Likewise. 2962 * cpu-tic6x.c: Likewise. 2963 * cpu-tic80.c: Likewise. 2964 * cpu-tilegx.c: Likewise. 2965 * cpu-tilepro.c: Likewise. 2966 * cpu-v850.c: Likewise. 2967 * cpu-vax.c: Likewise. 2968 * cpu-w65.c: Likewise. 2969 * cpu-we32k.c: Likewise. 2970 * cpu-xc16x.c: Likewise. 2971 * cpu-xstormy16.c: Likewise. 2972 * cpu-xtensa.c: Likewise. 2973 * cpu-z80.c: Likewise. 2974 * cpu-z8k.c: Likewise. 2975 2976 * cpu-i386.c: Include "libiberty.h". 2977 (bfd_arch_i386_fill): New. 2978 Add bfd_arch_i386_fill to bfd_arch_info initializer. 2979 2980 * cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer. 2981 * cpu-l1om.c: Likewise. 2982 2983 * linker.c (default_data_link_order): Call abfd->arch_info->fill 2984 if fill size is 0. 2985 2986 * bfd-in2.h: Regenerated. 2987 2988 2012-01-27 Michael Eager <eager (a] eagercon.com> 2989 2990 * elf32-microblaze.c (create_got_section): 2991 Reuse existing .rela.got section. 2992 2993 2012-01-23 Alan Modra <amodra (a] gmail.com> 2994 2995 * elf-bfd.h: Formatting. 2996 (struct elf_backend_data): Add "maybe_function_sym". 2997 (_bfd_elf_maybe_function_sym): Declare. 2998 * elfxx-target.h (elf_backend_maybe_function_sym): Define. 2999 (elfNN_bed): Init new field. 3000 * elf.c (elf_find_function): Use maybe_function_sym. 3001 (_bfd_elf_maybe_function_sym): New function. 3002 * elf64-ppc.c (elf_backend_maybe_function_sym): Define. 3003 (ppc64_elf_maybe_function_sym): New function. 3004 3005 2012-01-20 Francois Gouget <fgouget (a] codeweavers.com> 3006 3007 PR binutils/13534 3008 * archive.c (_bfd_ar_sizepad): New function. Correctly install and 3009 pad the size field in an archive header. 3010 (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan 3011 function for the archive size field. 3012 (bfd_generic_openr_next_archived_file): Likewise. 3013 (do_slurp_coff_armap): Likewise. 3014 (_bfd_write_archive_contents): Likewise. 3015 (_bfd_bsd44_write_ar_hdr): Use the new function. 3016 (bfd_ar_hdr_from_filesystem): Likewise. 3017 (_bfd_write_archive_contents): Likewise. 3018 (bsd_write_armap): Likewise. 3019 (coff_write_armap): Likewise. 3020 * archive64.c (bfd_elf64_archive_write_armap): Likewise. 3021 * bfdio.c (bfd_bread): Use correct type for archive element 3022 sizes. 3023 * ar.c (open_inarch): Likewise. 3024 (extract_file): Likewise. 3025 * libbfd-in.h (struct areltdata): Use correct types for 3026 parsed_size and extra_size fields. 3027 Prototype _bfd_ar_sizepad function. 3028 * libbfd.h: Regenerate. 3029 3030 2012-01-20 Ulrich Weigand <ulrich.weigand (a] linaro.org> 3031 3032 * elf.c (elfcore_write_prpsinfo): Provide unconditionally. 3033 Return NULL if core file generation is unsupported. 3034 (elfcore_write_prstatus): Likewise. 3035 * elf32-arm.c (elf32_arm_nabi_write_core_note): New function. 3036 (elf_backend_write_core_note): Define. 3037 3038 2012-01-19 Tristan Gingold <gingold (a] adacore.com> 3039 3040 * pef.c: Add a comment. 3041 * xsym.c: Likewise. 3042 3043 2012-01-17 Alan Modra <amodra (a] gmail.com> 3044 3045 * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave 3046 trailing garbage in the note. 3047 * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise. 3048 3049 2012-01-16 Daniel Green <venix1 (a] gmail.com> 3050 3051 PR ld/13491 3052 * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test 3053 h->root.type not h->type. 3054 * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise. 3055 3056 2012-01-13 Iain Sandoe <idsandoe (a] googlemail.com> 3057 3058 * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute 3059 indirect symbols. 3060 3061 2012-01-13 Iain Sandoe <idsandoe (a] googlemail.com> 3062 3063 * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file 3064 position from here... to (bfd_mach_o_build_seg_command): Here. 3065 3066 2012-01-12 Iain Sandoe <idsandoe (a] googlemail.com> 3067 3068 * mach-o.c (bfd_mach_o_count_indirect_symbols): New. 3069 (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table. 3070 * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the 3071 file. (bfd_mach_o_section): Add indirect_syms field. 3072 3073 2012-01-11 Iain Sandoe <idsandoe (a] googlemail.com> 3074 3075 * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of 3076 vmsize from filesize. Don't compute offsets or file sizes for 3077 zerofill sections. 3078 3079 2012-01-11 Iain Sandoe <idsandoe (a] googlemail.com> 3080 3081 * mach-o.c (bfd_mach_o_build_commands): Make the building of each 3082 command type independent. 3083 3084 2012-01-11 Alan Modra <amodra (a] gmail.com> 3085 3086 * elf64-ppc.c: Define more insns used in plt call stubs. 3087 (ppc64_elf_brtaken_reloc): Assume isa version 2 or above. 3088 (ppc64_elf_relocate_section): Likewise. 3089 (enum ppc_stub_type): Add ppc_stub_plt_call_r2save. 3090 (struct ppc_link_hash_table): Increase size of stub_count array. 3091 Add plt_stub_align and plt_thread_safe. 3092 (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define. 3093 (plt_stub_size, plt_stub_pad): New functions. 3094 (build_plt_stub): Emit barriers for power7 thread safety. Don't 3095 emit needless save of r2. 3096 (build_tls_get_addr_stub): Adjust params. 3097 (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning 3098 plt stubs. Adjust build_*plt_stub calls. 3099 (ppc_size_one_stub): Similarly. 3100 (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align 3101 params. Choose default for plt_thread_safe based on existence of 3102 calls to thread creation functions. Modify plt_call to 3103 plt_call_r2save when no tocsave reloc found. Align tail of stub 3104 sections. 3105 (ppc64_elf_build_stubs): Align tail of stub sections. Adjust 3106 output of stub statistics. 3107 (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save. 3108 * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype. 3109 3110 2012-01-10 H.J. Lu <hongjiu.lu (a] intel.com> 3111 3112 PR ld/13581 3113 * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P 3114 check on R_X86_64_PCXX. 3115 3116 2012-01-10 Tristan Gingold <gingold (a] adacore.com> 3117 3118 * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false 3119 warning. 3120 3121 2012-01-10 Tristan Gingold <gingold (a] adacore.com> 3122 3123 * bfdio.c (bfd_tell): Handle nested archives. 3124 (bfd_seek): Ditto. 3125 * cache.c (bfd_cache_lookup_worker): Ditto. 3126 * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with 3127 nested archives. 3128 (bfd_generic_openr_next_archived_file): Likewise. 3129 3130 2012-01-09 Iain Sandoe <idsandoe (a] googlemail.com> 3131 3132 * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement. 3133 (bfd_mach_o_write_symtab): Remove handling for indirect syms. 3134 (bfd_mach_o_primary_symbol_sort_key): Likewise. 3135 (bfd_mach_o_cf_symbols): Likewise. 3136 (bfd_mach_o_sort_symbol_table): Remove. 3137 (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling 3138 for indirect and dysymtab counts. Do the symbol sorting here. 3139 (bfd_mach_o_build_dysymtab_command): Count the symbol types here. 3140 Make the indirect symbols a TODO. 3141 (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols. 3142 (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with 3143 a non-zero value. 3144 (bfd_mach_o_read_symtab_symbol): Record the symbol index. 3145 (bfd_mach_o_read_symtab_symbol): Adjust recording of global status. 3146 * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries. 3147 (IS_MACHO_INDIRECT): Remove. 3148 (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New. 3149 3150 2012-01-06 Nick Clifton <nickc (a] redhat.com> 3151 3152 PR binutils/13121 3153 * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to 3154 'flaginfo' to avoid conflicts with AIX system headers. 3155 3156 2012-01-06 Tristan Gingold <gingold (a] adacore.com> 3157 3158 * bfdio.c (bfd_bread): Use arelt_size macro. 3159 3160 2012-01-06 Tristan Gingold <gingold (a] adacore.com> 3161 3162 * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs. 3163 3164 2012-01-05 Nick Clifton <nickc (a] redhat.com> 3165 3166 PR ld/12161 3167 * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if 3168 necessary. 3169 3170 2012-01-05 Jan Kratochvil <jan.kratochvil (a] redhat.com> 3171 3172 Fix zero registers core files when built by gcc-4.7. 3173 * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and 3174 size. Call elfcore_write_note for the local variables. Remove the 3175 final elfcore_write_note call. Add NOTREACHED comments. 3176 3177 2012-01-04 Tristan Gingold <gingold (a] adacore.com> 3178 3179 * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function. 3180 (bfd_mach_o_generic_stat_arch_elt): Adjust. 3181 3182 2012-01-04 Tristan Gingold <gingold (a] adacore.com> 3183 3184 * mach-o.c (bfd_mach_o_fat_member_init): New function. 3185 (bfd_mach_o_openr_next_archived_file): Reindent. 3186 Adjust to call bfd_mach_o_fat_member_init. 3187 (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init. 3188 3189 2012-01-04 Tristan Gingold <gingold (a] adacore.com> 3190 3191 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle 3192 BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1, 3193 BFD_RELOC_MACH_O_X86_64_PCREL32_2, 3194 BFD_RELOC_MACH_O_X86_64_PCREL32_4, 3195 BFD_RELOC_MACH_O_X86_64_BRANCH32, 3196 BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32, 3197 BFD_RELOC_MACH_O_X86_64_GOT. 3198 3199 2012-01-04 Tristan Gingold <gingold (a] adacore.com> 3200 3201 * mach-o.h (bfd_mach_o_fvmlib_command): New structure. 3202 (bfd_mach_o_load_command): Add fvmlib field. 3203 3204 * mach-o.c (bfd_mach_o_read_fvmlib): New function. 3205 (bfd_mach_o_read_command): Handle fvmlib. 3206 3207 2012-01-04 Tristan Gingold <gingold (a] adacore.com> 3208 3209 * mach-o.c (bfd_mach_o_convert_architecture): Reindent. 3210 Decode msubtype for ARM. 3211 3212 2012-01-04 Tristan Gingold <gingold (a] adacore.com> 3213 3214 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments. 3215 3216 2012-01-04 Tristan Gingold <gingold (a] adacore.com> 3217 3218 * mach-o.h: Reindent header. 3219 (bfd_mach_o_encryption_info_command): New structure. 3220 (bfd_mach_o_load_command): Add encryption_info field. 3221 3222 * mach-o.c (bfd_mach_o_read_encryption_info): New function. 3223 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO. 3224 (bfd_mach_o_read_command): Adjust error message. 3225 3226 2012-01-04 Shinichiro Hamaji <shinichiro.hamaji (a] gmail.com> 3227 3228 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part 3229 which reads DWARF2 and stores in stash from find_line. 3230 (find_line) Call _bfd_dwarf2_slurp_debug_info. 3231 * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration. 3232 * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate. 3233 * mach-o.c (dsym_subdir): The name of subdir where debug 3234 information may be stored. 3235 (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose 3236 type is UUID. 3237 (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is 3238 corresponding to the executable. 3239 (bfd_mach_o_find_dsym): New. Find a debug information BFD in the 3240 specified binary file. 3241 (bfd_mach_o_follow_dsym): New. Find a debug information BFD for 3242 the original BFD. 3243 (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O 3244 executables, dylibs, and bundles. 3245 (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file. 3246 * mach-o.h (dsym_bfd): The BFD of the dSYM file. 3247 3248 2012-01-03 Iain Sandoe <idsandoe (a] googlemail.com> 3249 3250 * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index 3251 for stabd symbols. 3252 (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs. 3253 (bfd_mach_o_cf_symbols): Likewise. 3254 3255 2012-01-03 Iain Sandoe <idsandoe (a] googlemail.com> 3256 3257 * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo. 3258 3259 2012-01-03 Iain Sandoe <idsandoe (a] googlemail.com> 3260 3261 * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index 3262 as the value of an indirect symbol. Keep the string table index in 3263 non-indirect syms for reference. 3264 (bfd_mach_o_write_dysymtab): New. 3265 (bfd_mach_o_primary_symbol_sort_key): New. 3266 (bfd_mach_o_cf_symbols): New. 3267 (bfd_mach_o_sort_symbol_table): New. 3268 (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols. 3269 If we are emitting a dysymtab, process indirect symbols and count the 3270 number of each other kind. 3271 (bfd_mach_o_mangle_sections): New. 3272 (bfd_mach_o_write_contents): Split out some pre-requisite code into 3273 the command builder. Write dysymtab if the command is present. 3274 (bfd_mach_o_count_sections_for_seg): New. 3275 (bfd_mach_o_build_seg_command): New. 3276 (bfd_mach_o_build_dysymtab_command): New. 3277 (bfd_mach_o_build_commands): Reorganize to support the fact that some 3278 commands are optional and should not be emitted if there are no 3279 sections or symbols. 3280 (bfd_mach_o_set_section_contents): Amend comment. 3281 * mach-o.h: Amend and add to comments. 3282 (mach_o_data_struct): Add fields for dysymtab symbols counts and a 3283 pointer to the indirects, when present. 3284 (bfd_mach_o_should_emit_dysymtab): New macro. 3285 (IS_MACHO_INDIRECT): Likewise. 3286 3287 For older changes see ChangeLog-2011 3288 3290 Copyright (C) 2012 Free Software Foundation, Inc. 3291 3292 Copying and distribution of this file, with or without modification, 3293 are permitted in any medium without royalty provided the copyright 3294 notice and this notice are preserved. 3295 3296 Local Variables: 3297 mode: change-log 3298 left-margin: 8 3299 fill-column: 74 3300 version-control: never 3301 End: 3302