1 1.1 christos 2006-12-31 H.J. Lu <hongjiu.lu (a] intel.com> 2 1.1 christos 3 1.1 christos * bfd.c (bfd_record_phdr): Call bfd_zalloc instead of bfd_alloc 4 1.1 christos to allocate elf_segment_map. 5 1.1 christos 6 1.1 christos 2006-12-29 H.J. Lu <hongjiu.lu (a] intel.com> 7 1.1 christos 8 1.1 christos * elflink.c (elf_link_add_object_symbols): Remember the symbol 9 1.1 christos size only if it is defined. 10 1.1 christos 11 1.1 christos 2006-12-25 Kazu Hirata <kazu (a] codesourcery.com> 12 1.1 christos 13 1.1 christos * archures.c (bfd_mach_cpu32_fido): New. 14 1.1 christos (bfd_mach_mcf_isa_a_nodiv, bfd_mach_mcf_isa_a, 15 1.1 christos bfd_mach_mcf_isa_a_mac, bfd_mach_mcf_isa_a_emac, 16 1.1 christos bfd_mach_mcf_isa_aplus, bfd_mach_mcf_isa_aplus_mac, 17 1.1 christos bfd_mach_mcf_isa_aplus_emac, bfd_mach_mcf_isa_b_nousp, 18 1.1 christos bfd_mach_mcf_isa_b_nousp_mac, bfd_mach_mcf_isa_b_nousp_emac, 19 1.1 christos bfd_mach_mcf_isa_b, bfd_mach_mcf_isa_b_mac, 20 1.1 christos bfd_mach_mcf_isa_b_emac, bfd_mach_mcf_isa_b_float, 21 1.1 christos bfd_mach_mcf_isa_b_float_mac, bfd_mach_mcf_isa_b_float_emac): 22 1.1 christos Increment the defined values. 23 1.1 christos * bfd-in2.h: Regenerate. 24 1.1 christos * cpu-m68k.c (arch_info_struct): Add en entry for 25 1.1 christos bfd_mach_cpu32_fido. 26 1.1 christos * elf32-m68k.c (elf32_m68k_object_p): Handle 27 1.1 christos EF_M68K_CPU32_FIDO_A. 28 1.1 christos (elf32_m68k_merge_private_bfd_data): Use EF_M68K_CPU32_MASK. 29 1.1 christos (elf32_m68k_print_private_bfd_data): Handle 30 1.1 christos EF_M68K_CPU32_FIDO_A. 31 1.1 christos 32 1.1 christos 2006-12-25 Mei Ligang <ligang (a] sunnorth.com.cn> 33 1.1 christos 34 1.1 christos * elf32-score.c (score_elf_got_lo16_reloc): Change some variables 35 1.1 christos type from unsigned to signed. 36 1.1 christos (score_elf_final_link_relocate): Fix bugs of handling relocation 37 1.1 christos type R_SCORE_GOT15, R_SCORE_GOT_LO16, and R_SCORE_REL32. 38 1.1 christos (_bfd_score_elf_relocate_section): Handle R_SCORE_GOT_LO16 39 1.1 christos specially. 40 1.1 christos 41 1.1 christos 2006-12-23 Jakub Jelinek <jakub (a] redhat.com> 42 1.1 christos 43 1.1 christos * elf-bfd.h (struct elf_backend_data): Add as_needed_cleanup hook. 44 1.1 christos * elfxx-target.h (elf_backend_as_needed_cleanup): Define. 45 1.1 christos (elfNN_bed): Add as_needed_cleanup hook. 46 1.1 christos * elflink.c (elf_link_add_object_symbols): Call it when reverting 47 1.1 christos hash table changes for unneeded --as-needed input. 48 1.1 christos * elf64-ppc64.c (elf_backend_as_needed_cleanup): Define. 49 1.1 christos (ppc64_elf_as_needed_cleanup): New function. 50 1.1 christos 51 1.1 christos 2006-12-19 Kazu Hirata <kazu (a] codesourcery.com> 52 1.1 christos 53 1.1 christos * elf32-m68k.c (elf32_m68k_object_p, 54 1.1 christos elf32_m68k_print_private_bfd_data): Use EF_M68K_ARCH_MASK to 55 1.1 christos extract architecture mask. 56 1.1 christos 57 1.1 christos 2006-12-19 Nathan Sidwell <nathan (a] codesourcery.com> 58 1.1 christos 59 1.1 christos * elf.c (assign_file_positions_for_load_sections): Adjust p_vaddr 60 1.1 christos by p_vaddr_offset. Copy alignment & use if it is valid. 61 1.1 christos (rewrite_elf_program_headers): Cope with leading padding in a 62 1.1 christos segment that does not contain file or program headers. 63 1.1 christos (copy_elf_program_header): Likewise. 64 1.1 christos 65 1.1 christos 2006-12-15 Mark Kettenis <kettenis (a] gnu.org> 66 1.1 christos 67 1.6 christos * config.bfd: (sh*-*-openbsd*): Add target. 68 1.1 christos * configure.in (sh*-*-openbsd*): Set COREFILE to netbsd-core.lo. 69 1.1 christos * configure: Regenerate. 70 1.1 christos 71 1.1 christos 2006-12-15 Alan Modra <amodra (a] bigpond.net.au> 72 1.1 christos 73 1.1 christos * opncls.c (bfd_openr_iovec): Add "stat" parameter. 74 1.1 christos (struct opncls): Add "stat" field. 75 1.1 christos (opncls_bstat): Call vec->stat. 76 1.1 christos * bfd-in2.h: Regenerate. 77 1.1 christos * elf32-spu.c (spu_elf_open_builtin_lib): Adjust. 78 1.1 christos 79 1.1 christos 2006-12-14 Alan Modra <amodra (a] bigpond.net.au> 80 1.1 christos 81 1.1 christos * elf-bfd.h (struct bfd_elf_section_data): Clarify sec_group 82 1.1 christos and next_in_group usage. 83 1.1 christos 84 1.1 christos 2006-12-14 Alan Modra <amodra (a] bigpond.net.au> 85 1.1 christos 86 1.1 christos PR 3704 87 1.1 christos * bfdio.c (bfd_bread): Don't read past end of archive elements. 88 1.1 christos 89 1.1 christos 2006-12-12 Daniel Jacobowitz <dan (a] codesourcery.com> 90 1.1 christos 91 1.1 christos * doc/Makefile.am (bfd_TEXINFOS): Set. 92 1.1 christos (bfd.info bfd.dvi bfd.html): Delete rule. 93 1.1 christos * doc/Makefile.in: Regenerated. 94 1.1 christos 95 1.1 christos 2006-12-11 Daniel Jacobowitz <dan (a] codesourcery.com> 96 1.1 christos 97 1.1 christos * configure.in: Define GENINSRC_NEVER. 98 1.1 christos * doc/Makefile.am (bfd.info): Remove srcdir prefix. 99 1.1 christos (MAINTAINERCLEANFILES): Add info file. 100 1.1 christos (DISTCLEANFILES): Pretend to add info file. 101 1.1 christos * po/Make-in (.po.gmo): Put gmo files in objdir. 102 1.1 christos * configure, Makefile.in, doc/Makefile.in: Regenerated. 103 1.1 christos 104 1.1 christos 2006-12-11 Eric Botcazou <ebotcazou (a] adacore.com> 105 1.1 christos 106 1.1 christos * elflink.c (bfd_elf_gc_sections): Also search for corresponding 107 1.1 christos sections with .gnu.linkonce.t. prefix. 108 1.1 christos 109 1.1 christos 2006-12-07 Kazu Hirata <kazu (a] codesourcery.com> 110 1.1 christos 111 1.1 christos * elf32-m68k.c: Update uses of EF_M68K_*. 112 1.1 christos 113 1.1 christos 2006-12-07 H.J. Lu <hjl (a] gnu.org> 114 1.1 christos 115 1.1 christos PR ld/3666 116 1.1 christos * elflink.c (elf_link_add_object_symbols): Keep symbol 117 1.1 christos visibility for symbols from discarded section. 118 1.1 christos 119 1.1 christos 2006-12-06 Alan Modra <amodra (a] bigpond.net.au> 120 1.1 christos 121 1.1 christos * elf64-alpha.c (elf64_alpha_merge_symbol_attribute): New function. 122 1.1 christos (elf_backend_merge_symbol_attribute): Define. 123 1.1 christos 124 1.1 christos 2006-12-04 Jan Beulich <jbeulich (a] novell.com> 125 1.1 christos 126 1.1 christos * elflink.c (_bfd_elf_link_create_dynamic_sections): Don't create 127 1.1 christos .eh_frame_hdr section from here anymore. 128 1.1 christos (bfd_elf_size_dynamic_sections): Call _bfd_elf_maybe_strip_eh_frame_hdr 129 1.1 christos a little earlier. 130 1.1 christos 131 1.1 christos 2006-12-01 H.J. Lu <hongjiu.lu (a] intel.com> 132 1.1 christos 133 1.1 christos PR binutils/3609 134 1.1 christos * elf.c (rewrite_elf_program_header): Preserve segment physical 135 1.1 christos address in the output segment if the first section in the 136 1.1 christos corresponding input segment is null. 137 1.1 christos 138 1.1 christos 2006-12-01 Nick Clifton <nickc (a] redhat.com> 139 1.1 christos 140 1.1 christos PR 3609 141 1.1 christos * elf.c (rewrite_elf_program_header): Do not use the first_section 142 1.1 christos pointer if it is null. 143 1.1 christos 144 1.1 christos 2006-11-29 Paul Brook <paul (a] codesourcery.com> 145 1.1 christos 146 1.1 christos * elf32-arm.c (elf32_arm_to_thumb_export_stub): Assert that output 147 1.1 christos section is present. 148 1.1 christos (allocate_dynrelocs): Only add export stub for symbols defined in 149 1.1 christos this object. 150 1.1 christos 151 1.1 christos 2006-11-29 Paul Brook <paul (a] codesourcery.com> 152 1.1 christos 153 1.1 christos * elf32-arm.c (elf32_arm_to_thumb_export_stub): Assert that output 154 1.1 christos section is present. 155 1.1 christos (allocate_dynrelocs): Only add export stub for symbols defined in 156 1.1 christos this object. 157 1.1 christos 158 1.1 christos 2006-11-29 Paul Brook <paul (a] codesourcery.com> 159 1.1 christos Julian Brown <julian (a] codesourcery.com> 160 1.1 christos 161 1.1 christos * elf32-arm.c (copy_eabi_attributes): Correct starting offset. 162 1.1 christos (elf32_arm_merge_eabi_attributes): Mark output as initialized. 163 1.1 christos Only set Tag_CPU_name and Tag_ABI_PCS_R9_use if input attribute 164 1.1 christos is present. 165 1.1 christos 166 1.1 christos 2006-11-27 Bob Wilson <bob.wilson (a] acm.org> 167 1.1 christos 168 1.1 christos * elf32-xtensa.c (elf_xtensa_special_sections): Add .xtensa.info. 169 1.1 christos 170 1.1 christos 2006-11-24 H.J. Lu <hongjiu.lu (a] intel.com> 171 1.1 christos 172 1.1 christos * elf.c (IS_SECTION_IN_INPUT_SEGMENT): New. 173 1.1 christos (INCLUDE_SECTION_IN_SEGMENT): Use IS_SECTION_IN_INPUT_SEGMENT. 174 1.1 christos (rewrite_elf_program_header): Don't preserve segment physical 175 1.1 christos address in the output segment if the first section in the 176 1.1 christos corresponding input segment is removed. 177 1.1 christos 178 1.1 christos 2006-11-22 Alan Modra <amodra (a] bigpond.net.au> 179 1.1 christos 180 1.1 christos * pef.c (bfd_pef_make_empty_symbol): Delete function. Define instead. 181 1.1 christos * xsym.c (bfd_sym_make_empty_symbol): Likewise. 182 1.1 christos * xsym.h (bfd_sym_make_empty_symbol): Delete. 183 1.1 christos 184 1.1 christos 2006-11-21 Greg McGary <greg (a] mcgary.org> 185 1.1 christos 186 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Fixup D field 187 1.1 christos at proper offset in little-endian mode. 188 1.1 christos * elf64-ppc.c (ppc_elf_relocate_section): Likewise. 189 1.1 christos 190 1.1 christos 2006-11-21 Jakub Jelinek <jakub (a] redhat.com> 191 1.1 christos 192 1.1 christos * elf-eh-frame.c (struct cie): New type. 193 1.1 christos (cie_compare): Removed. 194 1.1 christos (cie_eq, cie_hash, cie_compute_hash): New functions. 195 1.1 christos (_bfd_elf_discard_section_eh_frame): Rewrite not to rely on FDEs 196 1.1 christos pointing only to last CIE and allow merging of any duplicate CIEs, 197 1.1 christos not just duplicate consecutive CIEs. 198 1.1 christos (_bfd_elf_discard_section_eh_frame_hdr): Delete cies hash table. 199 1.1 christos * elf-bfd.h (struct cie_header, struct cie): Removed. 200 1.1 christos (struct eh_frame_sec_info): Remove alloced field. 201 1.1 christos (struct eh_frame_hdr_info): Remove last_cie, last_cie_sec 202 1.1 christos and last_cie_inf fields. Add cies field. 203 1.1 christos 204 1.1 christos 2006-11-20 Alan Modra <amodra (a] bigpond.net.au> 205 1.1 christos 206 1.1 christos * bfd-in.h (struct stat): Don't typedef. 207 1.1 christos * bfdio.c (bfd_get_size): Return a file_ptr. 208 1.1 christos * cisco-core.c (cisco_core_file_validate): Use bfd_size_type for nread. 209 1.1 christos * mmo.c (mmo_scan): Use file_ptr for curpos. 210 1.1 christos * trad-core.c (trad_unix_core): Don't cast statbuf.st_size to 211 1.1 christos unsigned long. 212 1.1 christos * bfd-in2.h: Regenerate. 213 1.1 christos 214 1.1 christos 2006-11-20 Alan Modra <amodra (a] bigpond.net.au> 215 1.1 christos 216 1.1 christos PR 3532 217 1.1 christos * bfd-in.h (struct bfd_hash_table): Reorganize. Add "frozen". 218 1.1 christos * hash.c (bfd_hash_table_init_n): Init frozen. 219 1.1 christos (bfd_hash_lookup): Don't grow if frozen. 220 1.1 christos (bfd_hash_traverse): Freeze hash table during traversal. 221 1.1 christos * bfd-in2.h: Regenerate. 222 1.1 christos 223 1.1 christos 2006-11-18 Alan Modra <amodra (a] bigpond.net.au> 224 1.1 christos 225 1.1 christos * elflink.c (_bfd_elf_check_kept_section): Test for kept group 226 1.1 christos section. Save result of checks in kept_section. 227 1.1 christos (_bfd_elf_section_already_linked): Tidy. Correct comments. 228 1.1 christos Ignore all group member sections. Handle special matching of 229 1.1 christos single-member groups against linkonce sections via their group 230 1.1 christos section. When such a match is found, set kept_section to the 231 1.1 christos group member section rather than to the group. 232 1.1 christos 233 1.1 christos 2006-11-14 Phil Lello <phil.lello (a] homecall.co.uk> 234 1.1 christos 235 1.1 christos * peXXigen.c: Updates for PE/COFF V8.0, and clarification 236 1.1 christos (dir_names): Added CLR Runtime Header to dir_names[]. 237 1.1 christos (_bfd_XX_print_private_bfd_data_common): Added EFI_ROM and XBOX 238 1.1 christos subsystem names 239 1.1 christos (_bfd_XXi_swap_aouthdr_in, _bfd_XXi_swap_aouthdr_out) 240 1.1 christos (pe_print_idata, pe_print_edata) 241 1.1 christos (_bfd_XX_bfd_copy_private_bfd_data_common) 242 1.1 christos (_bfd_XXi_final_link_postscript): Use #DEFINEs for index into 243 1.1 christos DataDirectory. 244 1.1 christos 245 1.1 christos 2006-11-13 Daniel Jacobowitz <dan (a] codesourcery.com> 246 1.1 christos 247 1.1 christos * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update 248 1.1 christos prototype. 249 1.1 christos (bfd_elf32_arm_set_byteswap_code): New prototype. 250 1.1 christos * bfd-in2.h: Regenerate. 251 1.1 christos * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Don't take 252 1.1 christos byteswap_code as an argument. Revert 2006-11-01 change. 253 1.1 christos (bfd_elf32_arm_set_byteswap_code): New. 254 1.1 christos (elf32_arm_size_dynamic_sections): Call 255 1.1 christos bfd_elf32_arm_process_before_allocation. 256 1.1 christos 257 1.1 christos 2006-11-10 Thiemo Seufer <ths (a] mips.com> 258 1.1 christos 259 1.1 christos * config.bfd (mips*el-sde-elf*, mips*-sde-elf*): Drop ECOFF support 260 1.1 christos for SDE configs. 261 1.1 christos 262 1.1 christos 2006-11-10 Nick Clifton <nickc (a] redhat.com> 263 1.1 christos 264 1.1 christos * config.bfd: Move previously obsoleted targets to the REMOVED 265 1.1 christos list. 266 1.1 christos Add maxq-*-coff to the obsolete list. 267 1.1 christos 268 1.1 christos 2006-11-10 Pedro Alves <pedro_alves (a] portugalmail.pt> 269 1.1 christos 270 1.1 christos * pe-arm-wince.c (LOCAL_LABEL_PREFIX): Define as ".". 271 1.1 christos * pei-arm-wince.c (LOCAL_LABEL_PREFIX): Likewise. 272 1.1 christos * coff-arm.c (LOCAL_LABEL_PREFIX): Only define if not defined before. 273 1.1 christos 274 1.1 christos 2006-11-07 Daniel Jacobowitz <dan (a] codesourcery.com> 275 1.1 christos 276 1.1 christos * elf32-arm.c (find_thumb_glue): Add ERROR_MESSAGE argument; set it 277 1.1 christos on error. 278 1.1 christos (find_arm_glue): Likewise. 279 1.1 christos (elf32_thumb_to_arm_stub, elf32_arm_create_thumb_stub) 280 1.1 christos (elf32_arm_to_thumb_stub, elf32_arm_final_link_relocate): Add 281 1.1 christos ERROR_MESSAGE argument and pass it through. 282 1.1 christos (elf32_arm_to_thumb_export_stub): Update. 283 1.1 christos (elf32_arm_relocate_section): Use ERROR_MESSAGE and reloc_dangerous. 284 1.1 christos 285 1.1 christos 2006-11-07 Alan Modra <amodra (a] bigpond.net.au> 286 1.1 christos 287 1.1 christos * elf64-ppc.c (enum _ppc64_sec_type): New. 288 1.1 christos (struct _ppc64_elf_section_data): Move "t_symndx" into opd union, 289 1.1 christos and rename fields. Add sec_type and has_14bit_branch. 290 1.1 christos (struct ppc_link_hash_table): Remove has_14bit_branch. 291 1.1 christos (get_opd_info, get_tls_mask, ppc64_elf_edit_opd): Adjust. 292 1.1 christos (ppc64_elf_relocate_section): Likewise. 293 1.1 christos (ppc64_elf_check_relocs): Likewise. Set per-section has_14bit_branch. 294 1.1 christos (ppc64_elf_size_stubs): Don't set default group size here. 295 1.1 christos (group_sections): Instead do so here, and group sections using 296 1.1 christos their individual requirements. 297 1.1 christos 298 1.1 christos 2006-11-07 Alan Modra <amodra (a] bigpond.net.au> 299 1.1 christos 300 1.1 christos * elf64-ppc.c (struct ppc64_elf_obj_tdata): Remove "has_dotsym" 301 1.1 christos and union. 302 1.1 christos (struct ppc_link_hash_entry): Add "next_dot_sym". 303 1.1 christos (struct ppc_link_hash_table): Add "dot_syms". 304 1.1 christos (link_hash_newfunc): Make list of syms starting with a dot. 305 1.1 christos (ppc_get_stub_entry, adjust_opd_syms): Adjust. 306 1.1 christos (ppc64_elf_add_symbol_hook): Don't set has_dotsym. 307 1.1 christos (struct add_symbol_adjust_data): Delete. 308 1.1 christos (add_symbol_adjust): Simplify params and return. 309 1.1 christos (ppc64_elf_check_directives): Just process the "dot_syms" lists, 310 1.1 christos not all syms. 311 1.1 christos 312 1.1 christos 2006-11-02 Daniel Jacobowitz <dan (a] codesourcery.com> 313 1.1 christos 314 1.1 christos * libbfd-in.h (_bfd_clear_contents): New prototype. 315 1.1 christos * reloc.c (_bfd_clear_contents): New. 316 1.1 christos * libbfd.h: Regenerated. 317 1.1 christos 318 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Use 319 1.1 christos _bfd_clear_contents. 320 1.1 christos * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 321 1.1 christos * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 322 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Likewise. 323 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 324 1.1 christos * elf32-s390.c (elf_s390_relocate_section): Likewise. 325 1.1 christos * elf32-sh.c (sh_elf_relocate_section): Likewise. 326 1.1 christos * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 327 1.1 christos * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 328 1.1 christos * elf64-s390.c (elf_s390_relocate_section): Likewise. 329 1.1 christos * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 330 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 331 1.1 christos 332 1.1 christos * elfxx-ia64.c (elfNN_ia64_relocate_section): Set value to 333 1.1 christos zero for discarded symbols. 334 1.1 christos * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. 335 1.1 christos 336 1.1 christos 2006-11-01 Thiemo Seufer <ths (a] mips.com> 337 1.1 christos David Ung <davidu (a] mips.com> 338 1.1 christos 339 1.1 christos * elf-bfd.h (local_call_stubs): New member. 340 1.1 christos * elfxx-mips.c (FN_STUB_P, CALL_STUB_P, CALL_FP_STUB_P): New macros. 341 1.1 christos (mips_elf_calculate_relocation): Handle local mips16 call stubs. 342 1.1 christos (mips16_stub_section_p): Rename from mips_elf_stub_section_p, use 343 1.1 christos the new stub macros. 344 1.1 christos (_bfd_mips_elf_check_relocs): Handle call stubs for code which 345 1.1 christos mixes mips16 and mips32 functions. Use mips16_stub_section_p. Mark 346 1.1 christos used stubs with SEC_KEEP. Use the new stub macros. 347 1.1 christos 348 1.1 christos 2006-11-01 Alan Modra <amodra (a] bigpond.net.au> 349 1.1 christos 350 1.1 christos * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Correct 351 1.1 christos check for PLT usage. 352 1.1 christos 353 1.1 christos 2006-11-01 Daniel Jacobowitz <dan (a] codesourcery.com> 354 1.1 christos 355 1.1 christos * elfxx-mips.c (mips_elf_merge_gots): Always use maxcnt. 356 1.1 christos 357 1.1 christos 2006-10-31 Alan Modra <amodra (a] bigpond.net.au> 358 1.1 christos 359 1.1 christos * elf.c (elfcore_write_note): Pad note descriptor to 4-byte 360 1.1 christos boundary. Tidy. Comment. 361 1.1 christos 362 1.1 christos 2006-10-30 H.J. Lu <hongjiu.lu (a] intel.com> 363 1.1 christos 364 1.1 christos PR ld/3111 365 1.1 christos * elf-bfd.h (elf_obj_tdata): Add symbuf. 366 1.1 christos (_bfd_elf_section_already_linked): Add struct bfd_link_info *. 367 1.1 christos (_bfd_elf_check_kept_section): Likewise. 368 1.1 christos (bfd_elf_match_symbols_in_sections): Likewise. 369 1.1 christos 370 1.1 christos * elf.c (assign_section_numbers): Updated to add 371 1.1 christos struct bfd_link_info *. 372 1.1 christos (bfd_elf_match_symbols_in_sections): Updated. Cache symbol 373 1.1 christos buffer if info->reduce_memory_overheads is false. 374 1.1 christos 375 1.1 christos * elflink.c (match_group_member): Updated to add 376 1.1 christos struct bfd_link_info *. 377 1.1 christos (_bfd_elf_check_kept_section): Likewise. 378 1.1 christos (elf_link_input_bfd): Likewise. 379 1.1 christos (_bfd_elf_section_already_linked): Likewise. 380 1.1 christos (bfd_elf_final_link): Free symbol buffer if 381 1.1 christos info->reduce_memory_overheads is false. 382 1.1 christos 383 1.1 christos * libbfd-in.h (_bfd_nolink_section_already_linked): Add 384 1.1 christos struct bfd_link_info *. 385 1.1 christos (_bfd_generic_section_already_linked): Likewise. 386 1.1 christos * libbfd.h: Regenerated. 387 1.1 christos 388 1.1 christos * linker.c (bfd_section_already_linked): Add 389 1.1 christos struct bfd_link_info *. 390 1.1 christos (_bfd_generic_section_already_linked): Likewise. 391 1.1 christos * targets.c (bfd_target): Add struct bfd_link_info * to 392 1.1 christos _section_already_linked. 393 1.1 christos * bfd-in2.h: Regenerated. 394 1.1 christos 395 1.1 christos 2006-10-30 Alan Modra <amodra (a] bigpond.net.au> 396 1.1 christos 397 1.1 christos * bfd.c (bfd_error_type): Add bfd_error_on_input. 398 1.1 christos (input_bfd, input_error): New static vars. 399 1.1 christos (bfd_set_error): Handle bfd_error_on_input. 400 1.1 christos (bfd_errmsg): Likewise. 401 1.1 christos (bfd_perror): Simplify. 402 1.1 christos * archive.c (_bfd_write_archive_contents): Report errors on input. 403 1.1 christos * bfd-in2.h: Regenerate. 404 1.1 christos 405 1.1 christos 2006-10-30 Alan Modra <amodra (a] bigpond.net.au> 406 1.1 christos 407 1.1 christos * elf.c (elfcore_write_note): Pad to 4-byte boundary. 408 1.1 christos 409 1.1 christos 2006-10-28 Richard Sandiford <richard (a] codesourcery.com> 410 1.1 christos 411 1.1 christos * elf32-mips.c (elf_mips_howto_table_rel): Add R_MIPS_GLOB_DAT. 412 1.1 christos * elfn32-mips.c (elf_mips_howto_table_rel): Likewise. 413 1.1 christos (elf_mips_howto_table_rela): Likewise. 414 1.1 christos * elf64-mips.c (mips_elf64_howto_table_rel): Likewise. 415 1.1 christos (mips_elf64_howto_table_rela): Likewise. 416 1.1 christos 417 1.1 christos 2006-10-26 H.J. Lu <hongjiu.lu (a] intel.com> 418 1.1 christos 419 1.1 christos * elf.c (_bfd_elf_init_private_section_data): Assert output 420 1.1 christos section ELF type instead of check if it is SHT_NULL. Copy 421 1.1 christos OS/PROC specific flags from input section to output section. 422 1.1 christos 423 1.1 christos 2006-10-27 Alan Modra <amodra (a] bigpond.net.au> 424 1.1 christos 425 1.1 christos * section.c (SEC_KEEP): Update comment. 426 1.1 christos * bfd-in2.h: Regenerate. 427 1.1 christos * elflink.c (bfd_elf_gc_sections): Ignore SEC_EXCLUDE sections. 428 1.1 christos * merge.c (_bfd_merge_sections): Set SEC_KEEP on excluded sections. 429 1.1 christos * stabs.c (_bfd_discard_section_stabs): Likewise. 430 1.1 christos (_bfd_link_section_stabs): Likewise. Simplify abs_section check. 431 1.1 christos 432 1.1 christos 2006-10-26 Ben Elliston <bje (a] au.ibm.com> 433 1.1 christos 434 1.1 christos * reloc.c (_bfd_relocate_contents): Remove explicit case 0. 435 1.1 christos 436 1.1 christos * elf.c (bfd_section_from_shdr): Remove extraneous breaks. 437 1.1 christos * targets.c (find_target): Remove extraneous break. 438 1.1 christos 439 1.1 christos 2006-10-26 Ben Elliston <bje (a] au.ibm.com> 440 1.1 christos 441 1.1 christos * coff-maxq.c (coff_maxq20_reloc): Remove unused variable `howto'. 442 1.1 christos (struct maxq_reloc_map): Unused; remove. 443 1.1 christos (maxq_reloc_map): Likewise. 444 1.1 christos (maxq_reloc_type_lookup): Remove loop over maxq_reloc_map. 445 1.1 christos 446 1.1 christos 2006-10-26 Ben Elliston <bje (a] au.ibm.com> 447 1.1 christos 448 1.1 christos * elf.c (bfd_elf_set_dyn_lib_class): Change second argument type 449 1.1 christos from int to enum dynamic_lib_link_class lib_class. 450 1.1 christos * bfd-in.h (bfd_elf_set_dyn_lib_class): Likewise. 451 1.1 christos * bfd-in2.h: Regenerate. 452 1.1 christos 453 1.1 christos 2006-10-25 Alan Modra <amodra (a] bigpond.net.au> 454 1.1 christos Trevor Smigiel <Trevor_Smigiel (a] playstation.sony.com> 455 1.1 christos Yukishige Shibata <shibata (a] rd.scei.sony.co.jp> 456 1.1 christos Nobuhisa Fujinami <fnami (a] rd.scei.sony.co.jp> 457 1.1 christos Takeaki Fukuoka <fukuoka (a] rd.scei.sony.co.jp> 458 1.1 christos 459 1.1 christos * cpu-spu.c: New file. 460 1.1 christos * elf32-spu.c: New file. 461 1.1 christos * elf32-spu.h: New file. 462 1.1 christos * archures.c: Add SPU support. 463 1.1 christos * config.bfd: Likewise. 464 1.1 christos * configure.in: Likewise. 465 1.1 christos * reloc.c: Likewise. 466 1.1 christos * targets.c: Likewise. 467 1.1 christos * Makefile.am: Likewise. Run "make dep-am". 468 1.1 christos * libbfd.h: Regenerate. 469 1.1 christos * bfd-in2.h: Regenerate. 470 1.1 christos * Makefile.in: Regenerate. 471 1.1 christos * configure: Regenerate. 472 1.1 christos * po/SRC-POTFILES.in: Regenerate. 473 1.1 christos 474 1.1 christos 2006-10-23 Alan Modra <amodra (a] bigpond.net.au> 475 1.1 christos 476 1.1 christos * elf64-ppc.c (ppc64_elf_edit_opd): Clarify comment. 477 1.1 christos 478 1.1 christos 2006-10-23 Alan Modra <amodra (a] bigpond.net.au> 479 1.1 christos 480 1.1 christos * elf32-score.c: Formatting. 481 1.1 christos (elf_backend_omit_section_dynsym): Define. 482 1.1 christos (score_elf_create_dynamic_relocation): Remove code copied from mips. 483 1.1 christos Don't use section syms in dynamic relocs. Remove unused param. 484 1.1 christos (score_elf_final_link_relocate): Remove unused param. 485 1.1 christos 486 1.1 christos 2006-10-23 Alan Modra <amodra (a] bigpond.net.au> 487 1.1 christos 488 1.1 christos * linker.c (fix_syms): Choose best of previous and next 489 1.1 christos section based on section flags and vma. 490 1.1 christos 491 1.1 christos 2006-10-21 Kaz Kojima <kkojima (a] rr.iij4u.or.jp> 492 1.1 christos 493 1.1 christos * elf32-sh64.c (sh64_elf_merge_symbol_attribute): Do merging 494 1.1 christos only when the non visibility part of st_other is non-zero. 495 1.1 christos * elf64-sh64.c (sh64_elf64_merge_symbol_attribute): Likewise. 496 1.1 christos 497 1.1 christos 2006-10-20 Richard Sandiford <richard (a] codesourcery.com> 498 1.1 christos 499 1.1 christos * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Don't extend 500 1.1 christos PT_DYNAMIC on GNU/Linux targets. 501 1.1 christos 502 1.1 christos 2006-10-20 Richard Sandiford <richard (a] codesourcery.com> 503 1.1 christos 504 1.1 christos * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make the 505 1.1 christos size of .rel.dyn reflect the value of DT_RELSZ. 506 1.1 christos 507 1.1 christos 2006-10-20 Richard Sandiford <richard (a] codesourcery.com> 508 1.1 christos 509 1.1 christos * elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Allocate 510 1.1 christos a PT_NULL header for dynamic objects. 511 1.1 christos (_bfd_mips_elf_modify_segment_map): Add it. 512 1.1 christos 513 1.1 christos 2006-10-19 Mei Ligang <ligang (a] sunnorth.com.cn> 514 1.1 christos 515 1.1 christos * elf32-score.c (score_elf_rel_dyn_section): Replace 516 1.1 christos bfd_make_section with bfd_make_section_with_flags. 517 1.1 christos (_bfd_score_elf_create_dynamic_sections): Ditto. 518 1.1 christos (score_elf_create_got_section): Ditto. 519 1.1 christos (score_elf_final_link_relocate): Delete referrence to 520 1.1 christos EF_SCORE_HASENTRY. 521 1.1 christos 522 1.1 christos 2006-10-19 Richard Sandiford <richard (a] codesourcery.com> 523 1.1 christos 524 1.1 christos * elfxx-mips.c (sort_dynamic_relocs): Sort relocations against the 525 1.1 christos same symbol by increasing r_offset. 526 1.1 christos (sort_dynamic_relocs_64): Likewise. Fix comparisons between very 527 1.1 christos large and very small symbol indexes. 528 1.1 christos 529 1.1 christos 2006-10-19 Richard Sandiford <richard (a] codesourcery.com> 530 1.1 christos 531 1.1 christos * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG 532 1.1 christos and DT_MIPS_RLD_MAP tags for position-independent executables. 533 1.1 christos Do not add DT_DEBUG to shared libraries for any MIPS target. 534 1.1 christos 535 1.1 christos 2006-10-18 H.J. Lu <hongjiu.lu (a] intel.com> 536 1.1 christos 537 1.1 christos PR ld/3290 538 1.1 christos * elflink.c (elf_link_add_object_symbols): Hide definitions in 539 1.1 christos debug sections. 540 1.1 christos 541 1.1 christos 2006-10-19 Alan Modra <amodra (a] bigpond.net.au> 542 1.1 christos 543 1.1 christos * elf32-arm.c (bfd_elf32_arm_allocate_interworking_sect): Check, 544 1.1 christos don't set, glue section size. 545 1.1 christos (record_arm_to_thumb_glue): Set glue section size here. 546 1.1 christos (record_thumb_to_arm_glue): Likewise. 547 1.1 christos (bfd_elf32_arm_add_glue_sections_to_bfd): Formatting. 548 1.1 christos (bfd_elf32_arm_process_before_allocation): Ignore exluded sections. 549 1.1 christos 550 1.1 christos 2006-10-18 Roy Marples <uberlord (a] gentoo.org> 551 1.1 christos 552 1.1 christos * elf64-sparc.c: Add FreeBSD support. 553 1.1 christos (elf64_sparc_fbsd_post_process_headers): New function. 554 1.1 christos * targets.c (_bfd_target_vector): Add bfd_elf64_sparc_freebsd_vec. 555 1.1 christos * config.bfd (sparc64-*-freebsd*): Set targ_defvec to bfd_elf64_sparc_freebsd_vec. 556 1.1 christos * configure.in: Add entry for bfd_elf64_sparc_freebsd_vec. 557 1.1 christos * configure: Regenerate. 558 1.1 christos 559 1.1 christos 2006-10-17 Mark Shinwell <shinwell (a] codesourcery.com> 560 1.1 christos 561 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Add support for 562 1.1 christos R_ARM_MOVW_BREL_NC, R_ARM_MOVW_BREL, R_ARM_MOVT_BREL, 563 1.1 christos R_ARM_THM_MOVW_BREL_NC, R_ARM_THM_MOVW_BREL and 564 1.1 christos R_ARM_THM_MOVT_BREL relocations. 565 1.1 christos 566 1.1 christos 2006-10-17 Mark Shinwell <shinwell (a] codesourcery.com> 567 1.1 christos 568 1.1 christos * elf32-arm.c (elf32_arm_howto_table_1): Change offset for 569 1.1 christos R_THM_CALL to 25 and remove FIXME comment. 570 1.1 christos (using_thumb2): New function. 571 1.1 christos (elf32_arm_final_link_relocate): Cope with Thumb-2 BL encoding. 572 1.1 christos 573 1.1 christos 2006-10-17 Mark Shinwell <shinwell (a] codesourcery.com> 574 1.1 christos 575 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Add cases 576 1.1 christos for R_ARM_ABS32_NOI and R_ARM_REL32_NOI. 577 1.1 christos (elf32_arm_gc_sweep_hook): Likewise. 578 1.1 christos (elf32_arm_check_relocs): Likewise. 579 1.1 christos (allocate_dynrelocs): Likewise. 580 1.1 christos 581 1.1 christos 2006-10-17 Alan Modra <amodra (a] bigpond.net.au> 582 1.1 christos 583 1.1 christos * elf-bfd.h (struct elf_link_hash_table): Reorder. Add 584 1.1 christos text_index_section and data_index_section. 585 1.1 christos (struct elf_backend_data): Add elf_backend_init_index_section. 586 1.1 christos (_bfd_elf_init_1_index_section): Declare. 587 1.1 christos (_bfd_elf_init_2_index_sections): Declare. 588 1.1 christos * elfxx-target.h (elf_backend_init_index_section): Define. 589 1.1 christos (elfNN_bed): Init new field. 590 1.1 christos * elflink.c (_bfd_elf_link_omit_section_dynsym): Keep first tls 591 1.1 christos section and text_index_section plus data_index_section. 592 1.1 christos (_bfd_elf_link_renumber_dynsyms): Clear dynindx on omitted sections. 593 1.1 christos (_bfd_elf_init_1_index_section): New function. 594 1.1 christos (_bfd_elf_init_2_index_sections): New function. 595 1.1 christos (bfd_elf_size_dynsym_hash_dynstr): Call elf_backend_init_index_section. 596 1.1 christos (elf_link_input_bfd): When emitting relocs, use text_index_section 597 1.1 christos and data_index_section for removed sections. 598 1.1 christos * elf-m10300.c (elf_backend_omit_section_dynsym): Define. 599 1.1 christos * elf32-i386.c: Likewise. 600 1.1 christos * elf32-m32r.c: Likewise. 601 1.1 christos * elf32-sh.c: Likewise. 602 1.1 christos * elf32-xstormy16.c: Likewise. 603 1.1 christos * elf32-xtensa.c: Likewise. 604 1.1 christos * elf64-alpha.c: Likewise. 605 1.1 christos * elf64-hppa.c: Likewise. 606 1.1 christos * elf64-mmix.c: Likewise. 607 1.1 christos * elf64-sh64.c: Likewise. 608 1.1 christos * elfxx-ia64.c: Likewise. 609 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Use text_index_section 610 1.1 christos and data_index_section sym for relocs against sections with no dynamic 611 1.1 christos section sym. 612 1.1 christos (elf_backend_init_index_section): Define. 613 1.1 christos * elf32-cris.c: Similarly. 614 1.1 christos * elf32-hppa.c: Similarly. 615 1.1 christos * elf32-i370.c: Similarly. 616 1.1 christos * elf32-m68k.c: Similarly. 617 1.1 christos * elf32-mips.c: Similarly. 618 1.1 christos * elf32-ppc.c: Similarly. 619 1.1 christos * elf32-s390.c: Similarly. 620 1.1 christos * elf32-sparc.c: Similarly. 621 1.1 christos * elf32-vax.c: Similarly. 622 1.1 christos * elf64-mips.c: Similarly. 623 1.1 christos * elf64-ppc.c: Similarly. 624 1.1 christos * elf64-s390.c: Similarly. 625 1.1 christos * elf64-sparc.c: Similarly. 626 1.1 christos * elf64-x86-64.c: Similarly. 627 1.1 christos * elfn32-mips.c: Similarly. 628 1.1 christos * elfxx-mips.c: Similarly. 629 1.1 christos * elfxx-sparc.c: Similarly. 630 1.1 christos * linker.c (fix_syms): Base symbols in removed sections on 631 1.1 christos previous section in preference to using absolute section. 632 1.1 christos 633 1.1 christos 2006-10-16 Andreas Schwab <schwab (a] suse.de> 634 1.1 christos 635 1.1 christos * elfxx-ia64.c (addend_compare): Properly compute return value. 636 1.1 christos 637 1.1 christos 2006-10-15 H.J. Lu <hongjiu.lu (a] intel.com> 638 1.1 christos 639 1.1 christos PR ld/3314 640 1.1 christos * elf.c (assign_file_positions_for_non_load_sections): Don't 641 1.1 christos page align empty SHF_ALLOC sections. 642 1.1 christos 643 1.1 christos 2006-10-13 Jakub Jelinek <jakub (a] redhat.com> 644 1.1 christos 645 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_sections): Set 646 1.1 christos .plt sh_entsize to 0 if plt header size isn't multiple of 647 1.1 christos plt entry size or for 32-bit which adds a nop insn at the 648 1.1 christos end of the .plt section. 649 1.1 christos 650 1.1 christos 2006-10-12 Bob Wilson <bob.wilson (a] acm.org> 651 1.1 christos 652 1.1 christos * elf32-xtensa.c (elf_xtensa_action_discarded): New. 653 1.1 christos (elf_backend_action_discarded): Define. 654 1.1 christos 655 1.1 christos 2006-10-11 Bob Wilson <bob.wilson (a] acm.org> 656 1.1 christos 657 1.1 christos * elf32-xtensa.c (elf_xtensa_relocate_section): Return after 658 1.1 christos unresolvable relocation error. 659 1.1 christos (elf_xtensa_finish_dynamic_symbol): Set value of undefined, weak 660 1.1 christos symbols to zero. 661 1.1 christos 662 1.1 christos 2006-10-10 Bob Wilson <bob.wilson (a] acm.org> 663 1.1 christos 664 1.1 christos * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Add DT_DEBUG 665 1.1 christos for PIE executables. 666 1.1 christos 667 1.1 christos 2006-10-03 Jakub Jelinek <jakub (a] redhat.com> 668 1.1 christos 669 1.1 christos * elf-bfd.h (struct eh_cie_fde): Add set_loc pointer. 670 1.1 christos * elf-eh-frame.c (skip_cfa_op): Fix handling of DW_CFA_advance_loc. 671 1.1 christos Handle DW_CFA_{remember,restore}_state, DW_CFA_GNU_window_save, 672 1.1 christos DW_CFA_val_{offset{,_sf},expression}. 673 1.1 christos (skip_non_nops): Record number of DW_CFA_set_loc ops. 674 1.1 christos (_bfd_elf_discard_section_eh_frame): Require skip_non_nops recognizes 675 1.1 christos all ops. If there are any DW_CFA_set_loc ops and they are pcrel 676 1.1 christos or going to be pcrel, compute set_loc array. 677 1.1 christos (_bfd_elf_eh_frame_section_offset): If make_relative, kill relocations 678 1.1 christos against DW_CFA_set_loc operands. 679 1.1 christos (_bfd_elf_write_section_eh_frame): Handle DW_CFA_set_loc adjusting. 680 1.1 christos 681 1.1 christos 2006-10-02 Daniel Jacobowitz <dan (a] codesourcery.com> 682 1.1 christos 683 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Discard references to TLS 684 1.1 christos symbols from the --just-syms file. 685 1.1 christos 686 1.1 christos 2006-10-01 Alan Modra <amodra (a] bigpond.net.au> 687 1.1 christos 688 1.1 christos * elf64-ppc.c (ppc64_elf_build_stubs): Test glink size for 689 1.1 christos existence of PLT. 690 1.1 christos 691 1.1 christos 2006-09-29 H.J. Lu <hongjiu.lu (a] intel.com> 692 1.1 christos 693 1.1 christos PR ld/3283 694 1.1 christos * elf64-x86-64.c (elf64_x86_64_relocate_section): Don't ignore 695 1.1 christos relocation overflow on branches to undefweaks. 696 1.1 christos 697 1.1 christos 2006-09-29 Alan Modra <amodra (a] bigpond.net.au> 698 1.1 christos 699 1.1 christos * po/BLD-POTFILES.in: Regenerate. 700 1.1 christos * po/SRC-POTFILES.in: Regenerate. 701 1.1 christos 702 1.1 christos 2006-09-29 Danny Smith <dannysmith (a] users.sourceforge.net> 703 1.1 christos 704 1.1 christos PR 3276 705 1.1 christos * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte 706 1.1 christos alignment for .data$, .rdata$ and .text$ sections so that sse 707 1.1 christos and sse2 code will work for linkonce sections too. 708 1.1 christos * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. 709 1.1 christos 710 1.1 christos 2006-09-28 Alan Modra <amodra (a] bigpond.net.au> 711 1.1 christos 712 1.1 christos * elflink.c (_bfd_elf_gc_mark_hook): New function. 713 1.1 christos * elf-bfd.h (_bfd_elf_gc_mark_hook): Declare. 714 1.1 christos * elfxx-target.h (elf_backend_gc_mark_hook): Default to above. 715 1.1 christos * elf-m10300.c (mn10300_elf_gc_mark_hook): Use _bfd_elf_gc_mark_hook. 716 1.1 christos * elf32-arm.c (elf32_arm_gc_mark_hook): Likewise. 717 1.1 christos * elf32-cris.c (cris_elf_gc_mark_hook): Likewise. 718 1.1 christos * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise. 719 1.1 christos * elf32-i386.c (elf_i386_gc_mark_hook): Likewise. 720 1.1 christos * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise. 721 1.1 christos * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise. 722 1.1 christos * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise. 723 1.1 christos * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise. 724 1.1 christos * elf32-s390.c (elf_s390_gc_mark_hook): Likewise. 725 1.1 christos * elf32-score.c (_bfd_score_elf_gc_mark_hook): Likewise. 726 1.1 christos * elf32-sh.c (sh_elf_gc_mark_hook): Likewise. 727 1.1 christos * elf32-vax.c (elf_vax_gc_mark_hook): Likewise. 728 1.1 christos * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Likewise. 729 1.1 christos * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise. 730 1.1 christos * elf64-s390.c (elf_s390_gc_mark_hook): Likewise. 731 1.1 christos * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise. 732 1.1 christos * elfxx-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise. 733 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Likewise. 734 1.1 christos * elf32-bfin.c (bfin_gc_mark_hook): Likewise. 735 1.1 christos (bfinfdpic_gc_sweep_hook): Delete. 736 1.1 christos (elf_backend_gc_sweep_hook): Don't define for elf32-bfinfdpic. 737 1.1 christos * elf32-d10v.c (elf32_d10v_gc_mark_hook): Use _bfd_elf_gc_mark_hook. 738 1.1 christos (elf32_d10v_gc_sweep_hook): Delete. 739 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 740 1.1 christos * elf32-fr30.c (fr30_elf_gc_mark_hook): Use _bfd_elf_gc_mark_hook. 741 1.1 christos (fr30_elf_gc_sweep_hook): Delete. 742 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 743 1.1 christos * elf32-frv.c (elf32_frv_gc_mark_hook): Use _bfd_elf_gc_mark_hook. 744 1.1 christos (elf32_frv_gc_sweep_hook): Delete. 745 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 746 1.1 christos * elf32-iq2000.c (iq2000_elf_gc_mark_hook): Use _bfd_elf_gc_mark_hook. 747 1.1 christos (iq2000_elf_gc_sweep_hook): Delete. 748 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 749 1.1 christos * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Use 750 1.1 christos _bfd_elf_gc_mark_hook. 751 1.1 christos (openrisc_elf_gc_sweep_hook): Delete. 752 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 753 1.1 christos * elf32-v850.c (v850_elf_gc_mark_hook): Use _bfd_elf_gc_mark_hook. 754 1.1 christos (v850_elf_gc_sweep_hook): Delete. 755 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 756 1.1 christos * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Use 757 1.1 christos _bfd_elf_gc_mark_hook. 758 1.1 christos (xstormy16_elf_gc_sweep_hook): Delete. 759 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 760 1.1 christos * elf64-sh64.c (sh_elf64_gc_mark_hook): Use _bfd_elf_gc_mark_hook. 761 1.1 christos (sh_elf64_gc_sweep_hook): Delete. 762 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 763 1.1 christos * elf32-avr.c (elf32_avr_gc_mark_hook): Delete. 764 1.1 christos (elf32_avr_gc_sweep_hook): Delete. 765 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 766 1.1 christos * elf32-cr16c.c (elf32_cr16c_gc_mark_hook): Delete. 767 1.1 christos (elf32_cr16c_gc_sweep_hook): Delete. 768 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 769 1.1 christos * elf32-crx.c (elf32_crx_gc_mark_hook): Delete. 770 1.1 christos (elf32_crx_gc_sweep_hook): Delete. 771 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 772 1.1 christos * elf32-h8300.c (elf32_h8_gc_mark_hook): Delete. 773 1.1 christos (elf32_h8_gc_sweep_hook): Delete. 774 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 775 1.1 christos * elf32-ip2k.c (ip2k_elf_gc_mark_hook): Delete. 776 1.1 christos (ip2k_elf_gc_sweep_hook): Delete. 777 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 778 1.1 christos * elf32-m32c.c (m32c_elf_gc_mark_hook, m32c_elf_gc_sweep_hook): Delete. 779 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 780 1.1 christos * elf32-m68hc11.c (elf_backend_gc_mark_hook): Don't define. 781 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 782 1.1 christos * elf32-m68hc12.c (elf_backend_gc_mark_hook): Don't define. 783 1.1 christos (elf_backend_gc_sweep_hook): Don't define. 784 1.1 christos * elf32-m68hc1x.c (elf32_m68hc11_gc_mark_hook): Delete. 785 1.1 christos (elf32_m68hc11_gc_sweep_hook): Delete. 786 1.1 christos * elf32-m68hc1x.h (elf32_m68hc11_gc_mark_hook): Delete. 787 1.1 christos (elf32_m68hc11_gc_sweep_hook): Delete. 788 1.1 christos * elf32-msp430.c (elf32_msp430_gc_mark_hook): Delete. 789 1.1 christos (elf32_msp430_gc_sweep_hook): Delete. 790 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 791 1.1 christos * elf32-mt.c (mt_elf_gc_mark_hook, mt_elf_gc_sweep_hook): Delete. 792 1.1 christos (elf_backend_gc_mark_hook, elf_backend_gc_mark_hook): Don't define. 793 1.1 christos 794 1.1 christos 2006-09-25 Pedro Alves <pedro_alves (a] portugalmail.pt> 795 1.1 christos 796 1.1 christos * bfd-in.h (CONST_STRNCPY) : Delete. 797 1.1 christos (LITSTRCPY) : New. 798 1.1 christos (LITMEMCPY) : New. 799 1.1 christos * bfd-in2.h : Regenerate. 800 1.1 christos * elflink.c (bfd_elf_gc_sections) : Use LITMEMCPY. Don't manually 801 1.1 christos calculate string lengths. 802 1.1 christos * nlmcode.h (nlm_swap_auxiliary_headers_in) : Use LITMEMCPY. 803 1.1 christos 804 1.1 christos 2006-09-26 H.J. Lu <hongjiu.lu (a] intel.com> 805 1.1 christos 806 1.1 christos PR ld/3223 807 1.1 christos PR ld/3267 808 1.1 christos * elf.c (assign_file_positions_for_non_load_sections): Don't 809 1.1 christos warn zero size allocated sections. 810 1.1 christos 811 1.1 christos 2006-09-27 Alan Modra <amodra (a] bigpond.net.au> 812 1.1 christos 813 1.1 christos * elf32-score.c (_bfd_score_elf_relocate_section): Move assignment 814 1.1 christos to "name" so that compiler realizes it is never uninitialized. 815 1.1 christos Use bfd_elf_sym_name. 816 1.1 christos 817 1.1 christos 2006-09-26 H.J. Lu <hongjiu.lu (a] intel.com> 818 1.1 christos 819 1.1 christos PR binutils/3262 820 1.1 christos * elf.c (rewrite_elf_program_header): Use bfd_zalloc instead of 821 1.1 christos bfd_alloc to allocate segment map. 822 1.1 christos (copy_elf_program_header): Likewise. 823 1.1 christos 824 1.1 christos 2006-09-26 Mark Shinwell <shinwell (a] codesourcery.com> 825 1.1 christos Joseph Myers <joseph (a] codesourcery.com> 826 1.1 christos Ian Lance Taylor <ian (a] wasabisystems.com> 827 1.1 christos Ben Elliston <bje (a] wasabisystems.com> 828 1.1 christos 829 1.1 christos * archures.c: Add definition for bfd_mach_arm_iWMMXt2. 830 1.1 christos * cpu-arm.c (processors): Add bfd_mach_arm_iWMMXt2. 831 1.1 christos (arch_info_struct, bfd_arm_update_notes): Likewise. 832 1.1 christos (architectures): Likewise. 833 1.1 christos (bfd_arm_merge_machines): Check for iWMMXt2. 834 1.1 christos * bfd-in2.h: Rebuild. 835 1.1 christos 836 1.1 christos 2006-09-24 H.J. Lu <hongjiu.lu (a] intel.com> 837 1.1 christos 838 1.1 christos * configure: Regenerated. 839 1.1 christos 840 1.1 christos 2006-09-22 Alan Modra <amodra (a] bigpond.net.au> 841 1.1 christos 842 1.1 christos * elfcode.h (elf_swap_symbol_in): Return bfd_boolean. Don't abort 843 1.1 christos on error. 844 1.1 christos * elf-bfd.h (elf_size_info <swap_symbol_in>): Adjust decl. 845 1.1 christos (bfd_elf32_swap_symbol_in, bfd_elf64_swap_symbol_in): Likewise. 846 1.1 christos * elf.c (bfd_elf_get_elf_syms): Test return of swap_symbol_in, 847 1.1 christos and report error. 848 1.1 christos * elf32-arm.c (elf32_arm_swap_symbol_in): Return bfd_boolean. 849 1.1 christos 850 1.1 christos 2006-09-20 Martin Schwidefsky <schwidefsky (a] de.ibm.com> 851 1.1 christos 852 1.1 christos * elf32-s390.c (elf_s390_relocate_section): Remove check for code 853 1.1 christos section in LD to LE linker relaxation for R_390_TLS_LDO32. 854 1.1 christos * elf64-s390.c (elf_s390_relocate_section): Likewise for 855 1.1 christos R_390_TLS_LDO64. 856 1.1 christos 857 1.1 christos 2006-09-20 Kai Tietz <Kai.Tietz (a] onevision.com> 858 1.1 christos 859 1.1 christos * configure.in: Added new target-vectors x86_64coff_vec, 860 1.1 christos x86_64pe_vec, and x86_64pei_vec. 861 1.1 christos * configure: Regenerate. 862 1.1 christos * config.bfd: Adjusted x86_64 target architecture detection. 863 1.1 christos * bfd.c: Add for new target "coff-x86-64" 864 1.1 christos (bfd_get_sign_extend): Add target vector idents for pe-x86-64. and pei-x86-64. 865 1.1 christos * coff-x86_64.c: Add new file for x86_64 (AMD64) coff support. 866 1.1 christos * libpei.h: Adjustments for COFF_WITH_pex64. 867 1.1 christos * coffcode.h: Add for new target machine, architecture, signature, and internal 868 1.1 christos signature handler. 869 1.1 christos * Makefile.am: Add new files to target-all and define make-rule for pex64igen.c 870 1.1 christos * Makefile.in: Regenerate. 871 1.1 christos * pe-x86_64.c: Add for new target "pe-x86-64". 872 1.1 christos * pei-x86_64.c: Add for new target "pei-x86-64". 873 1.1 christos * peicode.h: Adjusts for new targets. 874 1.1 christos (coff_swap_filehdr_out): Set for this target to 875 1.1 christos _bfd_pex64_only_swap_filehdr_out. 876 1.1 christos (SIZEOF_IDATA4): Define it as 8 byte size for this target. 877 1.1 christos (SIZEOF_IDATA5): Define it as 8 byte size for this target. 878 1.1 christos (jump_table jtab): Add for AMD64MAGIC. 879 1.1 christos (pe_ILF_build_a_bfd): Adjusts for new size of SIZEOF_IDATA4 and SIZE_IDATA5. 880 1.1 christos (pe_ILF_object_p): Add coff image-file signature to internal 881 1.1 christos signature translation. 882 1.1 christos * peXXigen.c: Adjust proper include of target coff-header and 883 1.1 christos introduced target specific code 884 1.1 christos (COFF_WITH_pex64): New macro for this target. 885 1.1 christos (pe_print_idata): New dumping method for import section of PE+ files. 886 1.1 christos * targets.c: Add new target vectors declarations for x86_64 coff targets. 887 1.1 christos * coffcode.h: Support code to support the x86_64 PE magic number. 888 1.1 christos * coff-x86_64.c: New file. 889 1.1 christos 890 1.1 christos 2006-09-17 Hans-Peter Nilsson <hp (a] axis.com> 891 1.1 christos 892 1.1 christos * elf.c (special_sections_s): Revert last STRING_COMMA_LEN change 893 1.1 christos for .stabstr entry, explain why. 894 1.1 christos 895 1.1 christos 2006-09-17 Anton Blanchard <anton (a] samba.org> 896 1.1 christos Alan Modra <amodra (a] bigpond.net.au> 897 1.1 christos 898 1.1 christos * dwarf2.c (concat_filename): Apply DW_AT_comp_dir if dir table 899 1.1 christos entry isn't absolute. 900 1.1 christos 901 1.1 christos 2006-09-17 Mei Ligang <ligang (a] sunnorth.com.cn> 902 1.1 christos 903 1.1 christos * cpu-score.c: New file. 904 1.1 christos * elf32-score.c: New file. 905 1.1 christos * config.bfd: Add Score target. 906 1.1 christos * Makefile.am: Add Score files. 907 1.1 christos * Makefile.in: Regenerate. 908 1.1 christos * archures.c: Add Score architecture. 909 1.1 christos * reloc.c: Add Score relocs. 910 1.1 christos * targets.c: Add Score target vectors. 911 1.1 christos * bfd-in2.h: Regenerate. 912 1.1 christos * libbfd.h: Regenerate. 913 1.1 christos * configure.in: Add Score target. 914 1.1 christos * configure: Regenerate. 915 1.1 christos 916 1.1 christos 2006-09-16 Nick Clifton <nickc (a] redhat.com> 917 1.1 christos Pedro Alves <pedro_alves (a] portugalmail.pt> 918 1.1 christos 919 1.1 christos * bfd-in.h (STRING_COMMA_LEN): New macro. Takes one constant 920 1.1 christos string as its argument and emits the string followed by a comma 921 1.1 christos and then the length of the string. 922 1.1 christos (CONST_STRNEQ): New macro. Checks to see if a variable string 923 1.1 christos has a constant string as its initial characters. 924 1.1 christos (CONST_STRNCPY): New macro. Copies a constant string to the start 925 1.1 christos of a variable string. 926 1.1 christos * bfd-in2.h: Regenerate. 927 1.1 christos * archive.c: Make use of the new macros. 928 1.1 christos * archive64.c: Likewise. 929 1.1 christos * bfd.c: Likewise. 930 1.1 christos * coff-ppc.c: Likewise. 931 1.1 christos * coff-stgo32.c: Likewise. 932 1.1 christos * coffcode.h: Likewise. 933 1.1 christos * cofflink.c: Likewise. 934 1.1 christos * cpu-i960.c: Likewise. 935 1.1 christos * dwarf2.c: Likewise. 936 1.1 christos * ecoff.c: Likewise. 937 1.1 christos * elf-m10300.c: Likewise. 938 1.1 christos * elf.c: Likewise. 939 1.1 christos * elf32-arm.c: Likewise. 940 1.1 christos * elf32-bfin.c: Likewise. 941 1.1 christos * elf32-cris.c: Likewise. 942 1.1 christos * elf32-hppa.c: Likewise. 943 1.1 christos * elf32-i370.c: Likewise. 944 1.1 christos * elf32-i386.c: Likewise. 945 1.1 christos * elf32-iq2000.c: Likewise. 946 1.1 christos * elf32-m32r.c: Likewise. 947 1.1 christos * elf32-m68hc11.c: Likewise. 948 1.1 christos * elf32-m68hc12.c: Likewise. 949 1.1 christos * elf32-m68k.c: Likewise. 950 1.1 christos * elf32-mcore.c: Likewise. 951 1.1 christos * elf32-ppc.c: Likewise. 952 1.1 christos * elf32-s390.c: Likewise. 953 1.1 christos * elf32-sh-symbian.c: Likewise. 954 1.1 christos * elf32-sh.c: Likewise. 955 1.1 christos * elf32-sh64.c: Likewise. 956 1.1 christos * elf32-v850.c: Likewise. 957 1.1 christos * elf32-vax.c: Likewise. 958 1.1 christos * elf32-xtensa.c: Likewise. 959 1.1 christos * elf64-alpha.c: Likewise. 960 1.1 christos * elf64-hppa.c: Likewise. 961 1.1 christos * elf64-mmix.c: Likewise. 962 1.1 christos * elf64-ppc.c: Likewise. 963 1.1 christos * elf64-s390.c: Likewise. 964 1.1 christos * elf64-sh64.c: Likewise. 965 1.1 christos * elf64-x86-64.c: Likewise. 966 1.1 christos * elflink.c: Likewise. 967 1.1 christos * elfxx-ia64.c: Likewise. 968 1.1 christos * elfxx-mips.c: Likewise. 969 1.1 christos * elfxx-sparc.c: Likewise. 970 1.1 christos * hpux-core.c: Likewise. 971 1.1 christos * i386linux.c: Likewise. 972 1.1 christos * ieee.c: Likewise. 973 1.1 christos * libpei.h: Likewise. 974 1.1 christos * linker.c: Likewise. 975 1.1 christos * m68klinux.c: Likewise. 976 1.1 christos * mmo.c: Likewise. 977 1.1 christos * nlmcode.h: Likewise. 978 1.1 christos * osf-core.c: Likewise. 979 1.1 christos * pef.c: Likewise. 980 1.1 christos * som.c: Likewise. 981 1.1 christos * sparclinux.c: Likewise. 982 1.1 christos * vms-hdr.c: Likewise. 983 1.1 christos 984 1.1 christos 2006-09-14 Alan Modra <amodra (a] bigpond.net.au> 985 1.1 christos 986 1.1 christos PR 3181 987 1.1 christos * elf.c (_bfd_elf_copy_private_header_data): Fix group members 988 1.1 christos that have had their SHT_GROUP section removed. 989 1.1 christos 990 1.1 christos 2006-09-12 H.J. Lu <hongjiu.lu (a] intel.com> 991 1.1 christos 992 1.1 christos PR ld/3197 993 1.1 christos * elflink.c (elf_link_output_extsym): Compute bucket only if 994 1.1 christos needed. 995 1.1 christos 996 1.1 christos 2006-09-10 H.J. Lu <hongjiu.lu (a] intel.com> 997 1.1 christos 998 1.1 christos PR binutils/3186 999 1.1 christos * elf.c (_bfd_elf_make_section_from_shdr): Correct length of 1000 1.1 christos "gnu.linkonce.wi.". 1001 1.1 christos 1002 1.1 christos 2006-09-08 Vladimir Prus <vladimir (a] codesourcery.com> 1003 1.1 christos 1004 1.1 christos * elf32-arm.c (elf32_arm_swap_symbol_out): Remove 1005 1.1 christos unconditional setting of low bit for Thumb symbol 1006 1.1 christos mistakenly left behind after check for external 1007 1.1 christos symbols was added. Fix comment typo. 1008 1.1 christos 1009 1.1 christos 2006-09-07 H.J. Lu <hongjiu.lu (a] intel.com> 1010 1.1 christos 1011 1.1 christos * elf-bfd.h (elf_link_hash_entry): Add a dynamic field. 1012 1.1 christos (bfd_elf_link_mark_dynamic_symbol): New. 1013 1.1 christos (SYMBOLIC_BIND): New. 1014 1.1 christos 1015 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Replace info->symbolic 1016 1.1 christos with SYMBOLIC_BIND (info, h). 1017 1.1 christos (elf_i386_relocate_section): Likewise. 1018 1.1 christos * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise. 1019 1.1 christos (elf64_x86_64_relocate_section): Likewise. 1020 1.1 christos * elfxx-ia64.c (elfNN_ia64_check_relocs): Likewise. 1021 1.1 christos 1022 1.1 christos * elflink.c (bfd_elf_link_mark_dynamic_symbol): New. 1023 1.1 christos (bfd_elf_record_link_assignment): Call 1024 1.1 christos bfd_elf_link_mark_dynamic_symbol on new entry. 1025 1.1 christos (_bfd_elf_merge_symbol): Likewise. 1026 1.1 christos (_bfd_elf_export_symbol): Return if the symbol isn't exported. 1027 1.1 christos (_bfd_elf_fix_symbol_flags): Replace info->symbolic with 1028 1.1 christos SYMBOLIC_BIND (info, h). 1029 1.1 christos (_bfd_elf_dynamic_symbol_p): Likewise. 1030 1.1 christos (_bfd_elf_symbol_refs_local_p): Likewise. 1031 1.1 christos (bfd_elf_size_dynamic_sections): Updated. 1032 1.1 christos 1033 1.1 christos 2006-09-05 Bibo Mao <bibo.mao (a] intel.com> 1034 1.1 christos 1035 1.1 christos PR binutils/3171 1036 1.1 christos * coffcode.h (coff_write_object_contents): Set the optional 1037 1.1 christos header magic number to PE32PMAGIC instead of ZMAGIC for ia64. 1038 1.1 christos 1039 1.1 christos 2006-09-04 Mark Shinwell <shinwell (a] codesourcery.com> 1040 1.1 christos 1041 1.1 christos * elf32-arm.c (elf32_arm_howto_table_1): Adjust entries for 1042 1.1 christos R_ARM_THM_ALU_PREL_11_0 and R_ARM_THM_PC12 relocations. 1043 1.1 christos (elf32_arm_final_link_relocate): Handle R_ARM_THM_ALU_PREL_11_0 1044 1.1 christos and R_ARM_THM_PC12 relocations. 1045 1.1 christos 1046 1.1 christos 2006-08-24 Bob Wilson <bob.wilson (a] acm.org> 1047 1.1 christos 1048 1.1 christos * elf32-xtensa.c (xtensa_get_property_section_name): Delete. 1049 1.1 christos (xtensa_get_property_section): New. 1050 1.1 christos (xtensa_read_table_entries): Use xtensa_get_property_section. 1051 1.1 christos (relax_property_section, xtensa_get_property_predef_flags): Handle 1052 1.1 christos group name suffixes in property section names. 1053 1.1 christos (match_section_group): New. 1054 1.1 christos 1055 1.1 christos 2006-08-23 Frediano Ziglio <Frediano.Ziglio (a] vodafone.com> 1056 1.1 christos 1057 1.1 christos * archive.c (hpux_uid_gid_encode): Fix thinko decrementing "cnt" 1058 1.1 christos variable. 1059 1.1 christos 1060 1.1 christos 2006-08-22 Daniel Jacobowitz <dan (a] codesourcery.com> 1061 1.1 christos 1062 1.1 christos * elf32-arm.c (elf32_arm_copy_indirect_symbol): Only copy 1063 1.1 christos plt_thumb_refcount from indirect symbols. 1064 1.1 christos 1065 1.1 christos 2006-08-22 Alan Modra <amodra (a] bigpond.net.au> 1066 1.1 christos 1067 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Correct GOT and PLT HA 1068 1.1 christos reloc handling. 1069 1.1 christos * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 1070 1.1 christos 1071 1.1 christos 2006-08-21 Mark Shinwell <shinwell (a] codesourcery.com> 1072 1.1 christos 1073 1.1 christos * elf32-arm.c (elf32_arm_link_hash_table): Correct typo in 1074 1.1 christos comment for target1_is_rel. 1075 1.1 christos 1076 1.1 christos 2006-08-21 Pedro Alves <pedro_alves (a] portugalmail.pt> 1077 1.1 christos 1078 1.1 christos * Makefile.am: Add rules to build pe-arm-wince.lo 1079 1.1 christos and pei-arm-wince.lo objects. 1080 1.1 christos * Makefile.in: Regenerate. 1081 1.1 christos * pe-arm-wince.c: New file. 1082 1.1 christos * pei-arm-wince.c: New file. 1083 1.1 christos * pei-arm.c: Remove ARM_WINCE block. 1084 1.1 christos * pe-arm.c: Remove ARM_WINCE block. Rename 1085 1.1 christos bfd_arm_pe_allocate_interworking_sections, 1086 1.1 christos bfd_arm_pe_get_bfd_for_interworking, and 1087 1.1 christos bfd_arm_pe_process_before_allocation to 1088 1.1 christos bfd_armpe_allocate_interworking_sections, 1089 1.1 christos bfd_armpe_get_bfd_for_interworking, and 1090 1.1 christos bfd_armpe_process_before_allocation. Move them before 1091 1.1 christos including bfd.h. 1092 1.1 christos * bfd.c: ARM wince bfd format names were renamed. Adjust. 1093 1.1 christos * coff-arm.c [ARM_WINCE]: Adjust so Windows CE doesn't end up 1094 1.1 christos with unexpected/conflicting relocs. 1095 1.1 christos * targets.c: The arm-wince-pe target got its own new vector. 1096 1.1 christos Adjust. 1097 1.1 christos * config.bfd: Likewise. 1098 1.1 christos * configure.in: Likewise. 1099 1.1 christos * configure: Regenerate. 1100 1.1 christos 1101 1.1 christos 2006-08-18 Paul Brook <paul (a] codesourcery.com> 1102 1.1 christos 1103 1.1 christos * elf32-arm.c (elf32_arm_link_hash_entry): Add export_glue. 1104 1.1 christos (elf32_arm_link_hash_newfunc): Initialize export_glue. 1105 1.1 christos (record_arm_to_thumb_glue): Return stub symbol. 1106 1.1 christos (elf32_arm_create_thumb_stub): New function. 1107 1.1 christos (elf32_arm_to_thumb_stub): Use it. 1108 1.1 christos (elf32_arm_to_thumb_export_stub): New function. 1109 1.1 christos (elf32_arm_begin_write_processing): New function. 1110 1.1 christos (allocate_dynrelocs): Allocate Arm stubs. 1111 1.1 christos (elf_backend_begin_write_processing): Define. 1112 1.1 christos (elf32_arm_symbian_begin_write_processing): Remove ATTRIBUTE_UNUSED. 1113 1.1 christos Call elf32_arm_begin_write_processing. 1114 1.1 christos 1115 1.1 christos 2006-08-17 Alan Modra <amodra (a] bigpond.net.au> 1116 1.1 christos 1117 1.1 christos * elf64-ppc.c (create_linkage_sections): Align .glink to 8 bytes. 1118 1.1 christos (ppc64_elf_build_stubs): Use new lazy linking stub. 1119 1.1 christos 1120 1.1 christos 2006-08-17 Alan Modra <amodra (a] bigpond.net.au> 1121 1.1 christos 1122 1.1 christos * elf64-ppc.c (ppc64_elf_size_stubs): Ignore non-code sections. 1123 1.1 christos 1124 1.1 christos 2006-08-16 H.J. Lu <hongjiu.lu (a] intel.com> 1125 1.1 christos 1126 1.1 christos PR ld/3015 1127 1.1 christos * elf.c (get_program_header_size): Add a PT_GNU_RELRO segment 1128 1.1 christos only if there is a PT_DYNAMIC segment. 1129 1.1 christos (_bfd_elf_map_sections_to_segments): Likewise. 1130 1.1 christos (assign_file_positions_for_load_sections): Set PT_GNU_RELRO 1131 1.1 christos segment alignment to 1. 1132 1.1 christos 1133 1.1 christos 2006-08-15 Thiemo Seufer <ths (a] mips.com> 1134 1.1 christos Nigel Stephens <nigel (a] mips.com> 1135 1.1 christos 1136 1.1 christos * elf32-mips.c, elf64-mips.c, elfn32-mips.c 1137 1.1 christos (elf_backend_merge_symbol_attribute): Define. 1138 1.1 christos * elflink.c (elf_link_add_object_symbols): Merge only the ELF 1139 1.1 christos visibility flags. 1140 1.1 christos * elfxx-mips.c (_bfd_mips_elf_merge_symbol_attribute): New function. 1141 1.1 christos 1142 1.1 christos 2006-08-15 Thiemo Seufer <ths (a] mips.com> 1143 1.1 christos Nigel Stephens <nigel (a] mips.com> 1144 1.1 christos David Ung <davidu (a] mips.com> 1145 1.1 christos 1146 1.1 christos * config.bfd: Add configurations for mips*el-sde-elf* and 1147 1.1 christos mips*-sde-elf*. 1148 1.1 christos 1149 1.1 christos 2006-08-14 DJ Delorie <dj (a] redhat.com> 1150 1.1 christos 1151 1.1 christos * elf-m10300.c (elf32_mn10300_link_hash_entry): Add value. 1152 1.1 christos (elf32_mn10300_count_hash_table_entries): New. 1153 1.1 christos (elf32_mn10300_list_hash_table_entries): New. 1154 1.1 christos (sort_by_value): New. 1155 1.1 christos (mn10300_elf_relax_section): Don't skip data sections; restrict 1156 1.1 christos code-specific tests to code-specific areas so that potential 1157 1.1 christos indirect calls can be detected. Check for multiple local symbols 1158 1.1 christos at the same address and merge their flags. 1159 1.1 christos (elf32_mn10300_link_hash_newfunc): Initialize value. 1160 1.1 christos 1161 1.1 christos 2006-08-14 Thiemo Seufer <ths (a] mips.com> 1162 1.1 christos 1163 1.1 christos * elfxx-mips.c (_bfd_mips_elf_symbol_processing, 1164 1.1 christos _bfd_mips_elf_add_symbol_hook): Don't try to place small common TLS 1165 1.1 christos symbols in .scommon. 1166 1.1 christos 1167 1.1 christos 2006-08-11 Thiemo Seufer <ths (a] mips.com> 1168 1.1 christos 1169 1.1 christos * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Set 1170 1.1 christos sh_entsize only when sgot was already initialized. 1171 1.1 christos 1172 1.1 christos 2006-08-08 DJ Delorie <dj (a] redhat.com> 1173 1.1 christos 1174 1.1 christos * elf32-sh.c (sh_elf_relax_section): Allow for branches across 1175 1.1 christos non-moving .align directives. Preserve any DIR32 offset when 1176 1.1 christos converting bsr's to jsr's. 1177 1.1 christos 1178 1.1 christos 2006-08-08 Alan Modra <amodra (a] bigpond.net.au> 1179 1.1 christos 1180 1.1 christos * elf64-ppc.c (ppc64_elf_build_stubs): Clear relbrlt reloc_count 1181 1.1 christos after stubs have been built. 1182 1.1 christos 1183 1.1 christos 2006-08-07 Nick Clifton <nickc (a] redhat.com> 1184 1.1 christos 1185 1.1 christos * elf32-sh.c (vxworks_object_p): Only check for vxworks target 1186 1.1 christos vectors if they are going to be created. 1187 1.1 christos 1188 1.1 christos 2006-08-07 Nick Clifton <nickc (a] redhat.com> 1189 1.1 christos 1190 1.1 christos * configure.in (bfd_elf32_shnbsd_vec): Fix typo. 1191 1.1 christos * configure: Regenerate. 1192 1.1 christos 1193 1.1 christos 2006-08-07 Nick Clifton <nickc (a] redhat.com> 1194 1.1 christos 1195 1.1 christos * coff-arm.c (coff_arm_rtype_to_howto): Only check for ARM_SECREL 1196 1.1 christos relocation types if the target is ARM_WINCE. 1197 1.1 christos 1198 1.1 christos 2006-08-05 Pedro Alves <pedro_alves (a] portugalmail.pt> 1199 1.1 christos 1200 1.1 christos * bfd.c (bfd_get_sign_extend_vma): Add cases for pe-arm-little 1201 1.1 christos and pei-arm-little. 1202 1.1 christos * coff-arm.c (coff_arm_rtype_to_howto) [COFF_WITH_PE]: Handle 1203 1.1 christos ARM_SECREL. 1204 1.1 christos (coff_arm_reloc_type_lookup): Map BFD_RELOC_32_SECREL to 1205 1.1 christos ARM_SECREL. 1206 1.1 christos * pe-arm.c [COFF_SECTION_ALIGNMENT_ENTRIES]: Define. 1207 1.1 christos * pei-arm.c [TARGET_UNDERSCORE]: Define for ARM_WINCE like in 1208 1.1 christos pe-arm.c. 1209 1.1 christos [COFF_SECTION_ALIGNMENT_ENTRIES]: Define. 1210 1.1 christos 1211 1.1 christos 2006-08-04 Marcelo Tosatti <marcelo (a] kvack.org> 1212 1.1 christos 1213 1.1 christos * elflink.c (elf_gc_sweep): If info.print_gc_sections is true, 1214 1.1 christos list removed sections to stderr. 1215 1.1 christos 1216 1.1 christos 2006-08-04 Richard Sandiford <richard (a] codesourcery.com> 1217 1.1 christos Kazu Hirata <kazu (a] codesourcery.com> 1218 1.1 christos Phil Edwards <phil (a] codesourcery.com> 1219 1.1 christos Nathan Sidwell <nathan (a] codesourcery.com> 1220 1.1 christos 1221 1.1 christos * config.bfd (sh-*-vxworks): Use bfd_elf32_shvxworks_vec and 1222 1.1 christos bfd_elf32_shlvxworks_vec. 1223 1.1 christos * configure.in (bfd_elf32_sh64_vec): Add elf-vxworks.lo. 1224 1.1 christos (bfd_elf32_sh64l_vec, bfd_elf32_sh64lin_vec): Likewise. 1225 1.1 christos (bfd_elf32_sh64blin_vec, bfd_elf32_sh64lnbsd_vec): Likewise. 1226 1.1 christos (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh_vec): Likewise. 1227 1.1 christos (bfd_elf32_shblin_vec, bfd_elf32_shl_vec): Likewise. 1228 1.1 christos (bfd_elf32_shl_symbian_vec, bfd_elf32_shlin_vec): Likewise. 1229 1.1 christos (bfd_elf32_shlnbsd_vec, bfd_elf32_shnbsd_vec): Likewise. 1230 1.1 christos (bfd_elf32_shlvxworks_vec, bfd_elf32_shvxworks_vec): New stanzas. 1231 1.1 christos * configure: Regenerate. 1232 1.1 christos * Makefile.am: Regenerate dependencies. 1233 1.1 christos * Makefile.in: Regenerate. 1234 1.1 christos * elf-vxworks.c (elf_vxworks_gott_symbol_p): New function. 1235 1.1 christos (elf_vxworks_add_symbol_hook): Use it. 1236 1.1 christos (elf_vxworks_link_output_symbol_hook): Likewise. Use the hash 1237 1.1 christos table entry to check for weak undefined symbols and to obtain 1238 1.1 christos the original bfd. 1239 1.1 christos (elf_vxworks_emit_relocs): Use target_index instead of this_idx. 1240 1.1 christos * elf32-sh-relocs.h: New file, split from elf32-sh.c. 1241 1.1 christos (R_SH_DIR32): Use SH_PARTIAL32 for the partial_inplace field, 1242 1.1 christos SH_SRC_MASK32 for the src_mask field, and SH_ELF_RELOC for the 1243 1.1 christos special_function field. 1244 1.1 christos (R_SH_REL32): Use SH_PARTIAL32 and SH_SRC_MASK32 here too. 1245 1.1 christos (R_SH_REL32, R_SH_TLS_GD_32, R_SH_TLS_LD_32): Likewise. 1246 1.1 christos (R_SH_TLS_LDO_32, R_SH_TLS_IE_32, R_SH_TLS_LE_32): Likewise. 1247 1.1 christos (R_SH_TLS_DTPMOD32, R_SH_TLS_DTPOFF32, R_SH_TLS_TPOFF32): Likewise. 1248 1.1 christos (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT): Likewise. 1249 1.1 christos (R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): Likewise. 1250 1.1 christos (SH_PARTIAL32, SH_SRC_MASK32, SH_ELF_RELOC): Undefine at end of file. 1251 1.1 christos * elf32-sh.c: Include elf32-vxworks.h. 1252 1.1 christos (MINUS_ONE): Define. 1253 1.1 christos (sh_elf_howto_table): Include elf32-sh-relocs.h with SH_PARTIAL32 1254 1.1 christos set to TRUE, SH_SRC_MASK32 set to 0xffffffff, and SH_ELF_RELOC set 1255 1.1 christos to sh_elf_reloc. 1256 1.1 christos (sh_vxworks_howto_table): New variable. Include elf32-sh-relocs.h 1257 1.1 christos with SH_PARTIAL32 set to FALSE, SH_SRC_MASK32 set to 0, and 1258 1.1 christos SH_ELF_RELOC set to bfd_elf_generic_reloc. 1259 1.1 christos (vxworks_object_p, get_howto_table): New functions. 1260 1.1 christos (sh_elf_reloc_type_lookup): Fix typo. Use get_howto_table. 1261 1.1 christos (sh_elf_info_to_howto): Use get_howto_table. 1262 1.1 christos (sh_elf_relax_section): Honor the partial_inplace field of the 1263 1.1 christos R_SH_DIR32 howto. 1264 1.1 christos (sh_elf_relax_delete_bytes): Likewise. 1265 1.1 christos (elf_sh_plt_info): New structure. 1266 1.1 christos (PLT_ENTRY_SIZE): Replace both definitions with... 1267 1.1 christos (ELF_PLT_ENTRY_SIZE): ...this new macro, with separate definitions for 1268 1.1 christos INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA. 1269 1.1 christos (elf_sh_plt0_entry_be): Update sizes of both definitions accordingly. 1270 1.1 christos (elf_sh_plt0_entry_le): Likewise. 1271 1.1 christos (elf_sh_plt_entry_be, elf_sh_plt_entry_le): Likewise. 1272 1.1 christos (elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): Likewise. 1273 1.1 christos (elf_sh_plts): New structure, with separate definitions for 1274 1.1 christos INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA. 1275 1.1 christos (elf_sh_plt0_entry): Delete both definitions. 1276 1.1 christos (elf_sh_plt_entry, elf_sh_pic_plt_entry): Likewise. 1277 1.1 christos (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset): Likewise. 1278 1.1 christos (elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset): Likewise. 1279 1.1 christos (elf_sh_plt_reloc_offset): Likewise. 1280 1.1 christos (movi_shori_putval): Delete in favor of... 1281 1.1 christos (install_plt_field): ...this new function, with separate definitions 1282 1.1 christos for INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA. 1283 1.1 christos (get_plt_info): New function, with separate definitions 1284 1.1 christos for INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA. 1285 1.1 christos (elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset): Delete. 1286 1.1 christos (VXWORKS_PLT_HEADER_SIZE, VXWORKS_PLT_ENTRY_SIZE): New macros. 1287 1.1 christos (vxworks_sh_plt0_entry_be, vxworks_sh_plt0_entry_le): New constants. 1288 1.1 christos (vxworks_sh_plt_entry_be, vxworks_sh_plt_entry_le): Likewise. 1289 1.1 christos (vxworks_sh_pic_plt_entry_be, vxworks_sh_pic_plt_entry_le): Likewise. 1290 1.1 christos (get_plt_index, get_plt_offset): New functions. 1291 1.1 christos (elf_sh_link_hash_table): Add srelplt2, plt_info and vxworks_p fields. 1292 1.1 christos (sh_elf_link_hash_table_create): Initialize them. 1293 1.1 christos (sh_elf_create_dynamic_sections): Call 1294 1.1 christos elf_vxworks_create_dynamic_sections for VxWorks. 1295 1.1 christos (allocate_dynrelocs): Use htab->plt_info to get the size of PLT 1296 1.1 christos entries. Allocate relocation entries in .rela.plt.unloaded if 1297 1.1 christos generating a VxWorks executable. 1298 1.1 christos (sh_elf_always_size_sections): New function. 1299 1.1 christos (sh_elf_size_dynamic_sections): Extend .rela.plt handling to 1300 1.1 christos .rela.plt.unloaded. 1301 1.1 christos (sh_elf_relocate_section): Use get_howto_table. Honor 1302 1.1 christos partial_inplace when calculating the addend for dynamic 1303 1.1 christos relocations. Use get_plt_index. 1304 1.1 christos (sh_elf_finish_dynamic_symbol): Use get_plt_index, install_plt_field 1305 1.1 christos and htab->plt_info. Fill in the bra .plt offset for VxWorks 1306 1.1 christos executables. Populate .rela.plt.unloaded. Do not make 1307 1.1 christos _GLOBAL_OFFSET_TABLE_ absolute on VxWorks. 1308 1.1 christos (sh_elf_finish_dynamic_sections): Use install_plt_field and 1309 1.1 christos htab->plt_info. Handle cases where there is no special PLT header. 1310 1.1 christos Populate the first relocation in .rela.plt.unloaded and fix up 1311 1.1 christos the remaining entries. 1312 1.1 christos (sh_elf_plt_sym_val): Use get_plt_info. 1313 1.1 christos (elf_backend_always_size_sections): Define. 1314 1.1 christos (TARGET_BIG_SYM, TARGET_BIG_NAME): Override for VxWorks. 1315 1.1 christos (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise. 1316 1.1 christos (elf32_bed, elf_backend_want_plt_sym): Likewise. 1317 1.1 christos (elf_symbol_leading_char, elf_backend_want_got_underscore): Likewise. 1318 1.1 christos (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Likewise. 1319 1.1 christos (elf_backend_add_symbol_hook): Likewise. 1320 1.1 christos (elf_backend_link_output_symbol_hook): Likewise. 1321 1.1 christos (elf_backend_emit_relocs): Likewise. 1322 1.1 christos (elf_backend_final_write_processing): Likewise. 1323 1.1 christos (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Likewise. 1324 1.1 christos * targets.c (bfd_elf32_shlvxworks_vec): Declare. 1325 1.1 christos (bfd_elf32_shvxworks_vec): Likewise. 1326 1.1 christos (_bfd_target_vector): Include bfd_elf32_shlvxworks_vec and 1327 1.1 christos bfd_elf32_shvxworks_vec. 1328 1.1 christos 1329 1.1 christos 2006-08-02 Mark Kettenis <kettenis (a] gnu.org> 1330 1.1 christos 1331 1.1 christos * configure.in (arm-*-openbsd*): Set COREFILE to netbsd-core.lo. 1332 1.1 christos * configure: Regenerate. 1333 1.1 christos 1334 1.1 christos 2006-08-02 Petr Salinger <Petr.Salinger (a] seznam.cz> 1335 1.1 christos 1336 1.1 christos PR binutils/2983 1337 1.1 christos * elf64-x86-64.c: Add FreeBSD support. 1338 1.1 christos (elf64_x86_64_fbsd_post_process_headers): New function. 1339 1.1 christos * targets.c (_bfd_target_vector): Add bfd_elf64_x86_64_freebsd_vec. 1340 1.1 christos * config.bfd (x64_64-*-freebsd*): Add bfd_elf64_x86_64_freebsd_vec 1341 1.1 christos to the targ_selvecs. 1342 1.1 christos * configure.in: Add entry for bfd_elf64_x86_64_freebsd_vec. 1343 1.1 christos * configure: Regenerate. 1344 1.1 christos 1345 1.1 christos 2006-07-26 Andreas Schwab <schwab (a] suse.de> 1346 1.1 christos 1347 1.1 christos * elfxx-ia64.c (elfNN_ia64_choose_gp): Use rawsize if set. 1348 1.1 christos 1349 1.1 christos 2006-07-26 Alan Modra <amodra (a] bigpond.net.au> 1350 1.1 christos 1351 1.1 christos * elf.c (elf_modify_segment_map): Delete empty PT_LOAD segments. 1352 1.1 christos * elf32-xtensa.c (elf_xtensa_modify_segment_map): Delete. 1353 1.1 christos (define elf_backend_modify_segment_map): Don't define. 1354 1.1 christos 1355 1.1 christos 2006-07-25 Thiemo Seufer <ths (a] networkno.de> 1356 1.1 christos 1357 1.1 christos * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Allow 1358 1.1 christos linking of objects for compatible machine types. 1359 1.1 christos 1360 1.1 christos 2006-07-25 Thiemo Seufer <ths (a] networkno.de> 1361 1.1 christos 1362 1.1 christos * elfxx-mips.c (mips_elf_next_relocation): Tighten check to test 1363 1.1 christos also for same symbol. 1364 1.1 christos 1365 1.1 christos 2006-07-25 Thiemo Seufer <ths (a] mips.com> 1366 1.1 christos 1367 1.1 christos * elfxx-mips.c (mips_elf_calculate_relocation): Remove magic constant. 1368 1.1 christos 1369 1.1 christos 2006-07-24 Michael Wetherell <mike.wetherell (a] ntlworld.com> 1370 1.1 christos 1371 1.1 christos * elf.c (bfd_section_from_shdr): Reject unrecognised OS-specific 1372 1.1 christos sections only if the SHF_OS_NONCONFORMING flag is present. 1373 1.1 christos 1374 1.1 christos 2006-07-24 Nick Clifton <nickc (a] redhat.com> 1375 1.1 christos 1376 1.1 christos PR ld/2729 1377 1.1 christos * peXXigen.c (_bfd_XXi_final_link_postscript): Check for the 1378 1.1 christos existance of output sections before putting their entries into the 1379 1.1 christos DataDictionary. 1380 1.1 christos 1381 1.1 christos 2006-07-20 Thiemo Seufer <ths (a] mips.com> 1382 1.1 christos 1383 1.1 christos * elf32-mips.c (mips16_jump_reloc): Remove function. 1384 1.1 christos (elf_mips16_howto_table_rel): Use _bfd_mips_elf_generic_reloc 1385 1.1 christos instead of mips16_jump_reloc. 1386 1.1 christos * elf64_mips.c, wlfn32-mips.c (mips16_jump_reloc): Remove function. 1387 1.1 christos (elf_mips16_howto_table_rel, elf_mips16_howto_table_rela): Use 1388 1.1 christos _bfd_mips_elf_generic_reloc instead of mips16_jump_reloc. 1389 1.1 christos 1390 1.1 christos 2006-07-19 Alan Modra <amodra (a] bigpond.net.au> 1391 1.1 christos 1392 1.1 christos * bfd-in.h (enum notice_asneeded_action): Define. 1393 1.1 christos * bfd-in2.h: Regenerate. 1394 1.1 christos * elflink.c (elf_link_add_object_symbols): Call linker "notice" 1395 1.1 christos function with NULL name for as-needed handling. 1396 1.1 christos 1397 1.1 christos 2006-07-18 Paul Brook <paul (a] codesourcery.com> 1398 1.1 christos 1399 1.1 christos * bfd-in2.h: Regenerate. 1400 1.1 christos * libbfd.h: Regenerate. 1401 1.1 christos * reloc.c: Add BFD_RELOC_ARM_T32_ADD_IMM. 1402 1.1 christos 1403 1.1 christos 2006-07-18 Nick Clifton <nickc (a] redhat.com> 1404 1.1 christos 1405 1.1 christos * elfxx-mips.c (_bfd_mips_elf_common_definition): New function. 1406 1.1 christos Consider SHN_MIPS_ACOMMON and SHN_MIPS_SCOMMON as being common 1407 1.1 christos sections. 1408 1.1 christos * elfxx-mips.h (_bfd_mips_elf_common_definition): Prototype. 1409 1.1 christos 1410 1.1 christos 2006-07-14 Jakub Jelinek <jakub (a] redhat.com> 1411 1.1 christos 1412 1.1 christos * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Fix cinfo.shift2 value. 1413 1.1 christos 1414 1.1 christos 2006-07-14 Mark Kettenis <kettenis (a] gnu.org> 1415 1.1 christos 1416 1.1 christos * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Move declarations 1417 1.1 christos to the start of a block. 1418 1.1 christos 1419 1.1 christos 2006-07-13 Nick Clifton <nickc (a] redhat.com> 1420 1.1 christos 1421 1.1 christos * coff-sh.c (_bfd_sh_align_load_span): Catch sh_insn_info() 1422 1.1 christos returning a NULL value. 1423 1.1 christos 1424 1.1 christos 2006-07-12 H.J. Lu <hongjiu.lu (a] intel.com> 1425 1.1 christos 1426 1.1 christos PR ld/2884 1427 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Copy the symbol info from 1428 1.1 christos the old versioned dynamic definition to the new one with 1429 1.1 christos non-default visibility. Hide the symbol if it is hidden or 1430 1.1 christos internal. 1431 1.1 christos 1432 1.1 christos 2006-07-12 Matthew R. Dempsky <mrd (a] alkemio.org> 1433 1.1 christos 1434 1.1 christos * cpu-m68k.c (bfd_m68k_compatible): Handle CPU32. 1435 1.1 christos 1436 1.1 christos 2006-07-10 Jakub Jelinek <jakub (a] redhat.com> 1437 1.1 christos 1438 1.1 christos * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_GNU_HASH. 1439 1.1 christos (bfd_section_from_shdr, elf_fake_sections, assign_section_numbers): 1440 1.1 christos Handle SHT_GNU_HASH. 1441 1.1 christos (special_sections_g): Include .gnu.hash section. 1442 1.1 christos (bfd_elf_gnu_hash): New function. 1443 1.1 christos * elf-bfd.h (bfd_elf_gnu_hash, _bfd_elf_hash_symbol): New prototypes. 1444 1.1 christos (struct elf_backend_data): Add elf_hash_symbol method. 1445 1.1 christos * elflink.c (_bfd_elf_link_create_dynamic_sections): Create .hash 1446 1.1 christos only if info->emit_hash, create .gnu.hash section if 1447 1.1 christos info->emit_gnu_hash. 1448 1.1 christos (struct collect_gnu_hash_codes): New type. 1449 1.1 christos (elf_collect_gnu_hash_codes, elf_renumber_gnu_hash_syms, 1450 1.1 christos _bfd_elf_hash_symbol): New functions. 1451 1.1 christos (compute_bucket_count): Don't compute HASHCODES array, instead add 1452 1.1 christos that and NSYMS as arguments. Use bed->s->sizeof_hash_entry 1453 1.1 christos instead of bed->s->arch_size / 8. Fix .hash size estimation. 1454 1.1 christos When not optimizing, use the number of hashed symbols rather than 1455 1.1 christos dynsymcount. 1456 1.1 christos (bfd_elf_size_dynamic_sections): Only add DT_HASH if info->emit_hash, 1457 1.1 christos and ADD DT_GNU_HASH if info->emit_gnu_hash. 1458 1.1 christos (bfd_elf_size_dynsym_hash_dynstr): Size .hash only if info->emit_hash, 1459 1.1 christos adjust compute_bucket_count caller. Create and populate .gnu.hash 1460 1.1 christos section if info->emit_gnu_hash. 1461 1.1 christos (elf_link_output_extsym): Only populate .hash section if 1462 1.1 christos finfo->hash_sec != NULL. 1463 1.1 christos (bfd_elf_final_link): Adjust assertion. Handle DT_GNU_HASH. 1464 1.1 christos * elfxx-target.h (elf_backend_hash_symbol): Define if not yet defined. 1465 1.1 christos (elfNN_bed): Add elf_backend_hash_symbol. 1466 1.1 christos * elf64-x86-64.c (elf64_x86_64_hash_symbol): New function. 1467 1.1 christos (elf_backend_hash_symbol): Define. 1468 1.1 christos * elf32-i386.c (elf_i386_hash_symbol): New function. 1469 1.1 christos (elf_backend_hash_symbol): Define. 1470 1.1 christos 1471 1.1 christos 2006-07-05 Nick Clifton <nickc (a] redhat.com> 1472 1.1 christos 1473 1.1 christos PR ld/2659 1474 1.1 christos * cofflink.c (_bfd_coff_link_input_bfd): Fix selection of aux 1475 1.1 christos entry when multiple definitions of a symbol are encountered. 1476 1.1 christos 1477 1.1 christos 2006-06-30 H.J. Lu <hongjiu.lu (a] intel.com> 1478 1.1 christos 1479 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Use xchg %ax,%ax 1480 1.1 christos instead of 2 nops. 1481 1.1 christos * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 1482 1.1 christos (elf64_x86_64_plt0_entry): Use nopl 0(%rax) instead of 4 nops. 1483 1.1 christos 1484 1.1 christos 2006-06-29 Jakub Jelinek <jakub (a] redhat.com> 1485 1.1 christos 1486 1.1 christos PR ld/2513 1487 1.1 christos * elf32-i386.c (GOT_TLS_MASK, GOT_TLS_IE_IE, GOT_TLS_IE_GD, 1488 1.1 christos GOT_TLS_IE_MASK, elf_i386_check_relocs, allocate_dynrelocs): Revert 1489 1.1 christos 2006-04-08 changes. 1490 1.1 christos (elf_i386_relocate_section): Likewise. For GD->IE transition 1491 1.1 christos change subl into addl whenever tls_type is GOT_TLS_IE_POS. 1492 1.1 christos 1493 1.1 christos 2006-06-23 Alan Modra <amodra (a] bigpond.net.au> 1494 1.1 christos 1495 1.1 christos PR ld/2754 1496 1.1 christos * elf.c (bfd_elf_mkobject): Don't alloc if already done. Set 1497 1.1 christos program_header_size to -1. 1498 1.1 christos (_bfd_elf_map_sections_to_segments): Adjust program_header_size check. 1499 1.1 christos (assign_file_positions_for_load_sections ): Likewise. 1500 1.1 christos (_bfd_elf_sizeof_headers): Use saved program_header_size if 1501 1.1 christos available. 1502 1.1 christos * elf32-arm.c (elf32_arm_mkobject): Call bfd_elf_mkobject, don't 1503 1.1 christos alloc if already done. 1504 1.1 christos * elf32-i386.c (elf_i386_mkobject): Likewise. 1505 1.1 christos * elf32-ppc.c (ppc_elf_mkobject): Likewise. 1506 1.1 christos * elf32-s390.c (elf_s390_mkobject): Likewise. 1507 1.1 christos * elf32-sh.c (sh_elf_mkobject): Likewise. 1508 1.1 christos * elf64-alpha.c (elf64_alpha_mkobject): Likewise. 1509 1.1 christos * elf64-ppc.c (ppc64_elf_mkobject): Likewise. 1510 1.1 christos * elf64-s390.c (elf_s390_mkobject): Likewise. 1511 1.1 christos * elf64-x86-64.c (elf64_x86_64_mkobject): Likewise. 1512 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_mkobject): Likewise. 1513 1.1 christos 1514 1.1 christos 2006-06-20 Jakub Jelinek <jakub (a] redhat.com> 1515 1.1 christos 1516 1.1 christos * elflink.c (elf_link_add_object_symbols): Don't create .tcommon 1517 1.1 christos section for relocatable link. 1518 1.1 christos 1519 1.1 christos 2006-06-21 Alan Modra <amodra (a] bigpond.net.au> 1520 1.1 christos 1521 1.1 christos * elf-bfd.h (struct elf_backend_data): Add 1522 1.1 christos elf_backend_modify_program_headers. 1523 1.1 christos * elfxx-target.h (elf_backend_modify_program_headers): Define. 1524 1.1 christos (elfNN_bed): Init new field. 1525 1.1 christos * elf.c (elf_modify_segment_map): Remove comment. 1526 1.1 christos (assign_file_positions_for_load_sections): Only call 1527 1.1 christos elf_modify_segment_map for objcopy/strip. 1528 1.1 christos (assign_file_positions_except_relocs): Call 1529 1.1 christos elf_backend_modify_program_headers. 1530 1.1 christos * elf32-frv.c (elf32_frvfdpic_always_size_sections): Don't make 1531 1.1 christos .stack section. 1532 1.1 christos (elf32_frvfdpic_modify_segment_map): Delete. 1533 1.1 christos (elf32_frvfdpic_modify_program_headers): New. 1534 1.1 christos (elf_backend_modify_segment_map): Don't define. 1535 1.1 christos (elf_backend_modify_program_headers): Define. 1536 1.1 christos * elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Don't make 1537 1.1 christos .stack section. 1538 1.1 christos (elf32_bfinfdpic_modify_segment_map): Delete. 1539 1.1 christos (elf32_bfinfdpic_modify_program_headers): New. 1540 1.1 christos (elf_backend_modify_segment_map): Don't define. 1541 1.1 christos (elf_backend_modify_program_headers): Define. 1542 1.1 christos * elfxx-ia64.c (elfNN_ia64_modify_program_headers): New function. 1543 1.1 christos Split out from.. 1544 1.1 christos (elfNN_ia64_modify_segment_map): ..here. 1545 1.1 christos (elf_backend_modify_program_headers): Define. 1546 1.1 christos 1547 1.1 christos 2006-06-20 Jakub Jelinek <jakub (a] redhat.com> 1548 1.1 christos 1549 1.1 christos * bfd.c (bfd_record_phdr): Clear p_align and p_align_valid fields. 1550 1.1 christos * elf.c (_bfd_elf_link_hash_table_init): Clear hplt field. 1551 1.1 christos 1552 1.1 christos 2006-06-20 Alan Modra <amodra (a] bigpond.net.au> 1553 1.1 christos 1554 1.1 christos * elf-bfd.h: Formatting. 1555 1.1 christos (_bfd_elf_map_sections_to_segments): Declare. 1556 1.1 christos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame_hdr): Don't 1557 1.1 christos clear program_header_size. 1558 1.1 christos * elf.c (get_program_header_size): Move. Don't use or set saved 1559 1.1 christos program_header_size here. 1560 1.1 christos (elf_modify_segment_map): New function. Split out from.. 1561 1.1 christos (assign_file_positions_for_load_sections): ..here. Assert 1562 1.1 christos header size is correct. Remove dead code. 1563 1.1 christos (_bfd_elf_map_sections_to_segments): Rename from 1564 1.1 christos map_sections_to_segments. Make global. Use get_program_header_size 1565 1.1 christos when we need estimate of header size. Call elf_modify_segment_map. 1566 1.1 christos Set program_header_size. 1567 1.1 christos (print_segment_map): Delete. 1568 1.1 christos (_bfd_elf_sizeof_headers): If segment_map available, get the 1569 1.1 christos actual size. 1570 1.1 christos * elf32-arm.c (elf32_arm_symbian_modify_segment_map): Make safe 1571 1.1 christos for calling more than once. 1572 1.1 christos * elf32-bfin.c (elf32_bfinfdpic_modify_segment_map): Likewise. 1573 1.1 christos * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Likewise. 1574 1.1 christos * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Likewise. 1575 1.1 christos * elf32-i370.c (elf_backend_add_symbol_hook): Delete. 1576 1.1 christos (elf_backend_additional_program_headers): Delete. 1577 1.1 christos (elf_backend_modify_segment_map): Delete. 1578 1.1 christos * elf64-hppa.c (elf64_hppa_modify_segment_map): Convert to ISO C. 1579 1.1 christos * elfxx-ia64.c (elfNN_ia64_modify_segment_map): Likewise. 1580 1.1 christos * doc/bfdint.texi: Delete SIZEOF_HEADERS difficulties. 1581 1.1 christos 1582 1.1 christos 2006-06-19 Vladimir Prus <vladimir (a] codesourcery.com> 1583 1.1 christos 1584 1.1 christos * elf32-arm.c (elf32_arm_swap_symbol_out): Don't set low 1585 1.1 christos bit for undefined symbols. 1586 1.1 christos 1587 1.1 christos 2006-06-19 Alan Modra <amodra (a] bigpond.net.au> 1588 1.1 christos 1589 1.1 christos * elf-bfd.h (struct elf_backend_data): Add bfd_link_info pointer 1590 1.1 christos parameter. 1591 1.1 christos (_bfd_elf_sizeof_headers): Replace bfd_boolean param with 1592 1.1 christos bfd_link_info pointer. 1593 1.1 christos * targets.c (struct bfd_target <_bfd_sizeof_headers>): Likewise. 1594 1.1 christos * bfd.c (bfd_sizeof_headers): Tweak param name. 1595 1.1 christos * aout-adobe.c (aout_adobe_sizeof_headers): Adjust. 1596 1.1 christos * aoutx.h (NAME (aout, sizeof_headers)): Adjust. 1597 1.1 christos * binary.c (binary_sizeof_headers): Adjust. 1598 1.1 christos * bout.c (b_out_sizeof_headers): Adjust. 1599 1.1 christos * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Adjust. 1600 1.1 christos * coff64-rs6000.c (xcoff64_sizeof_headers): Adjust. 1601 1.1 christos * coffgen.c (coff_sizeof_headers): Adjust. 1602 1.1 christos * ecoff.c (_bfd_ecoff_sizeof_headers): Adjust. 1603 1.1 christos (ecoff_compute_section_file_positions): Adjust. 1604 1.1 christos (_bfd_ecoff_write_object_contents): Adjust. 1605 1.1 christos * elf.c (get_program_header_size, _bfd_elf_sizeof_headers): Adjust. 1606 1.1 christos * elf32-arm.c (elf32_arm_additional_program_headers): Adjust. 1607 1.1 christos * elf32-i370.c (elf_backend_additional_program_headers): Adjust. 1608 1.1 christos * elf32-ppc.c (ppc_elf_additional_program_headers): Adjust. 1609 1.1 christos * elf64-hppa.c (elf64_hppa_additional_program_headers): Adjust. 1610 1.1 christos * elf64-x86-64.c (elf64_x86_64_additional_program_headers): Adjust. 1611 1.1 christos * elfxx-ia64.c (elfNN_ia64_additional_program_headers): Adjust. 1612 1.1 christos * elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Adjust. 1613 1.1 christos * elfxx-mips.h (_bfd_mips_elf_additional_program_headers): Adjust. 1614 1.1 christos * i386msdos.c: Convert to ISO C. 1615 1.1 christos (msdos_sizeof_headers): Adjust. 1616 1.1 christos * i386os9k.c: Convert to ISO C. 1617 1.1 christos (os9k_sizeof_headers): Adjust. 1618 1.1 christos * ieee.c (ieee_sizeof_headers): Adjust. 1619 1.1 christos * ihex.c (ihex_sizeof_headers): Adjust. 1620 1.1 christos * libaout.h (NAME (aout, sizeof_headers)): Adjust. 1621 1.1 christos * libbfd-in.h (_bfd_nolink_sizeof_headers): Adjust. 1622 1.1 christos * libcoff-in.h (coff_sizeof_headers): Adjust. 1623 1.1 christos * libecoff.h (_bfd_ecoff_sizeof_headers): Adjust. 1624 1.1 christos * mach-o.c (bfd_mach_o_sizeof_headers): Adjust. 1625 1.1 christos * mmo.c (mmo_sizeof_headers): Adjust. 1626 1.1 christos * oasys.c (oasys_sizeof_headers): Adjust. 1627 1.1 christos * pdp11.c (NAME (aout, sizeof_headers)): Adjust. 1628 1.1 christos * pef.c (bfd_pef_sizeof_headers): Adjust. 1629 1.1 christos * ppcboot.c (ppcboot_sizeof_headers): Adjust. 1630 1.1 christos * som.c (som_sizeof_headers): Adjust. 1631 1.1 christos * srec.c (srec_sizeof_headers): Adjust. 1632 1.1 christos * tekhex.c (tekhex_sizeof_headers): Adjust. 1633 1.1 christos * versados.c (versados_sizeof_headers): Adjust. 1634 1.1 christos * vms.c (vms_sizeof_headers): Adjust. 1635 1.1 christos * xcoff-target.h (_bfd_xcoff_sizeof_headers): Adjust. 1636 1.1 christos * xsym.c (bfd_sym_sizeof_headers): Adjust. 1637 1.1 christos * xsym.h (bfd_sym_sizeof_headers): Adjust. 1638 1.1 christos * bfd-in2.h: Regenerate. 1639 1.1 christos * libbfd.h: Regenerate. 1640 1.1 christos * libcoff.h: Regenerate. 1641 1.1 christos 1642 1.1 christos 2006-06-15 Mark Shinwell <shinwell (a] codesourcery.com> 1643 1.1 christos 1644 1.1 christos * bfd-in2.h: Regenerate. 1645 1.1 christos * elf32-arm.c (R_ARM_ALU_PC_G0_NC, R_ARM_ALU_PC_G0, 1646 1.1 christos R_ARM_ALU_PC_G1_NC, R_ARM_ALU_PC_G1, R_ARM_ALU_PC_G2, 1647 1.1 christos R_ARM_LDR_PC_G1, R_ARM_LDR_PC_G2, R_ARM_LDRS_PC_G0, 1648 1.1 christos R_ARM_LDRS_PC_G1, R_ARM_LDRS_PC_G2, R_ARM_LDC_PC_G0, 1649 1.1 christos R_ARM_LDC_PC_G1, R_ARM_LDC_PC_G2, R_ARM_ALU_SB_G0_NC, 1650 1.1 christos R_ARM_ALU_SB_G0, R_ARM_ALU_SB_G1_NC, R_ARM_ALU_SB_G1, 1651 1.1 christos R_ARM_ALU_SB_G2, R_ARM_LDR_SB_G0, R_ARM_LDR_SB_G1, 1652 1.1 christos R_ARM_LDR_SB_G2, R_ARM_LDRS_SB_G0, R_ARM_LDRS_SB_G1, 1653 1.1 christos R_ARM_LDRS_SB_G2, R_ARM_LDC_SB_G0, R_ARM_LDC_SB_G1, 1654 1.1 christos R_ARM_LDC_SB_G2): New relocation types. 1655 1.1 christos (R_ARM_PC13): Rename to AAELF name R_ARM_LDR_PC_G0 and 1656 1.1 christos adjust HOWTO entry to be consistent with R_ARM_LDR_PC_G1 1657 1.1 christos and friends. 1658 1.1 christos (elf32_arm_howto_table_3): Delete; contents merged into 1659 1.1 christos elf32_arm_howto_table_2. 1660 1.1 christos (elf32_arm_howto_from_type): Adjust correspondingly. 1661 1.1 christos (elf32_arm_reloc_map): Extend with the above relocations. 1662 1.1 christos (calculate_group_reloc_mask): New function. 1663 1.1 christos (identify_add_or_sub): New function. 1664 1.1 christos (elf32_arm_final_link_relocate): Support for the above 1665 1.1 christos relocations. 1666 1.1 christos * reloc.c: Add enumeration entries for BFD_RELOC_ARM_... 1667 1.1 christos codes to correspond to the above relocations. 1668 1.1 christos 1669 1.1 christos 2006-06-14 Richard Sandiford <richard (a] codesourcery.com> 1670 1.1 christos 1671 1.1 christos * elf32-m68k.c (elf_m68k_plt_info): New structure. 1672 1.1 christos (elf_m68k_plt0_entry): Add R_68K_PC32-style in-place addends. 1673 1.1 christos (elf_m68k_plt_entry): Likewise. 1674 1.1 christos (elf_m68k_plt_info): New table. 1675 1.1 christos (CFV4E_PLT_ENTRY_SIZE): Rename to... 1676 1.1 christos (ISAB_PLT_ENTRY_SIZE): ...this. 1677 1.1 christos (CFV4E_FLAG): Delete. 1678 1.1 christos (elf_cfv4e_plt0_entry): Rename to... 1679 1.1 christos (elf_isab_plt0_entry): ...this. Adjust comments. Use (-6,%pc,%d0) 1680 1.1 christos for the second instruction too. 1681 1.1 christos (elf_cfv4e_plt_entry): Rename to... 1682 1.1 christos (elf_isab_plt_entry): ...this. Adjust comments and use (-6,%pc,%d0). 1683 1.1 christos (elf_isab_plt_info): New table. 1684 1.1 christos (CPU32_FLAG): Delete. 1685 1.1 christos (PLT_CPU32_ENTRY_SIZE): Rename to... 1686 1.1 christos (CPU32_PLT_ENTRY_SIZE): ...this. 1687 1.1 christos (elf_cpu32_plt0_entry): Update bounds accordingly. Add R_68K_PC32- 1688 1.1 christos style in-place addends. 1689 1.1 christos (elf_cpu32_plt_entry): Likewise. 1690 1.1 christos (elf_cpu32_plt_info): New table. 1691 1.1 christos (elf_m68k_link_hash_table): Add a plt_info field. 1692 1.1 christos (elf_m68k_link_hash_table_create): Initialize it. 1693 1.1 christos (elf_m68k_get_plt_info): New function. 1694 1.1 christos (elf_m68k_always_size_sections): Likewise. 1695 1.1 christos (elf_m68k_adjust_dynamic_symbol): Use the plt_info hash table field. 1696 1.1 christos (elf_m68k_install_pc32): New function. 1697 1.1 christos (elf_m68k_finish_dynamic_symbol): Factor code using plt_info and 1698 1.1 christos elf_m68k_install_pc32. 1699 1.1 christos (elf_m68k_finish_dynamic_sections): Likewise. 1700 1.1 christos (elf_m68k_plt_sym_val): Use elf_m68k_get_plt_info. 1701 1.1 christos (elf_backend_always_size_sections): Define. 1702 1.1 christos 1703 1.1 christos 2006-06-14 Alan Modra <amodra (a] bigpond.net.au> 1704 1.1 christos 1705 1.1 christos * elflink.c (elf_link_add_object_symbols): Save and restore 1706 1.1 christos struct bfd_hash_table table, size and count fields for 1707 1.1 christos as-needed libs. 1708 1.1 christos 1709 1.1 christos 2006-06-12 Thiemo Seufer <ths (a] mips.com> 1710 1.1 christos 1711 1.1 christos * elf32-mips.c: Expand comment about ABI-mandated pagesize values. 1712 1.1 christos (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): define in a more obvious way. 1713 1.1 christos * elf64-mips.c, elfn32-mips.c (ELF_MAXPAGESIZE): Fix value for IRIX6. 1714 1.1 christos Delete old comments. 1715 1.1 christos (ELF_COMMONPAGESIZE): Define in a more obvious way. 1716 1.1 christos 1717 1.1 christos 2006-06-12 Nick Clifton <nickc (a] redhat.com> 1718 1.1 christos 1719 1.1 christos PR binutils/2735 1720 1.1 christos * elflink.c (elf_link_add_object_symbols): Fix the warning message 1721 1.1 christos about mismatched alignments to allow for the case where the common 1722 1.1 christos alignment has been deduced from the section alignment. 1723 1.1 christos * bfd.c (_bfd_default_error_handler): Update comment to explain 1724 1.1 christos why bfd and asection varargs are out of order. Explicitly catch 1725 1.1 christos and abort on NULL bfd and asection arguments. 1726 1.1 christos 1727 1.1 christos 2006-06-11 Richard Sandiford <richard (a] codesourcery.com> 1728 1.1 christos Thiemo Seufer <ths (a] mips.com> 1729 1.1 christos 1730 1.1 christos * elfxx-mips.c (mips_elf_link_hash_table): Add function_stub_size. 1731 1.1 christos (STUB_ORI): New macro. 1732 1.1 christos (STUB_LI16U): Fix formatting. 1733 1.1 christos (MIPS_FUNCTION_STUB_SIZE): Delete. 1734 1.1 christos (MIPS_FUNCTION_STUB_MAX_SIZE): Likewise. 1735 1.1 christos (MIPS_FUNCTION_STUB_NORMAL_SIZE): New macro. 1736 1.1 christos (MIPS_FUNCTION_STUB_BIG_SIZE): Likewise. 1737 1.1 christos (_bfd_mips_elf_adjust_dynamic_symbol): Use htab->function_stub_size 1738 1.1 christos instead of MIPS_FUNCTION_STUB_SIZE. 1739 1.1 christos (count_section_dynsyms): New function, split out from 1740 1.1 christos _bfd_mips_elf_final_link. 1741 1.1 christos (_bfd_mips_elf_always_size_sections): Get a worst-case estimate 1742 1.1 christos of the number of dynamic symbols needed and use it to set up 1743 1.1 christos function_stub_size. Use function_stub_size rather than 1744 1.1 christos MIPS_FUNCTION_STUB_SIZE to determine the size of the stub section. 1745 1.1 christos Use 16-byte stubs for 0x10000 dynamic symbols. 1746 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Use htab->function_stub_size 1747 1.1 christos instead of MIPS_FUNCTION_STUB_SIZE. Fix formatting. 1748 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Change the 1749 1.1 christos size of the stub buffer from MIPS_FUNCTION_STUB_MAX_SIZE to 1750 1.1 christos MIPS_FUNCTION_STUB_BIG_SIZE. Tweak the check for unhandled dynindxes. 1751 1.1 christos Use MIPS_FUNCTION_STUB_BIG_SIZE rather than a hard-coded 20. 1752 1.1 christos Use STUB_ORI rather than STUB_LI16U for big stubs. 1753 1.1 christos (_bfd_mips_elf_link_hash_table_create): Initialize function_stub_size. 1754 1.1 christos (_bfd_mips_elf_final_link): Use count_section_dynsyms. 1755 1.1 christos 1756 1.1 christos 2006-06-09 David Ung <davidu (a] mips.com> 1757 1.1 christos 1758 1.1 christos * bfd/elfxx-mips.c (mips_elf_calculate_relocation): Fix mode for stub 1759 1.1 christos calling relocations. 1760 1.1 christos 1761 1.1 christos 2006-06-08 David Daney <ddaney (a] avtrex.com> 1762 1.1 christos 1763 1.1 christos * elfxx-mips.c (STUB_LI16): Removed. 1764 1.1 christos (STUB_LUI): New macro. 1765 1.1 christos (STUB_LI16U): Ditto. 1766 1.1 christos (STUB_LI16S): Ditto. 1767 1.1 christos (MIPS_FUNCTION_STUB_SIZE): Rewrote to take info parameter. 1768 1.1 christos (_bfd_mips_elf_adjust_dynamic_symbol): Pass info parameter to 1769 1.1 christos MIPS_FUNCTION_STUB_SIZE. 1770 1.1 christos (_bfd_mips_elf_always_size_sections): Ditto. 1771 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Ditto. 1772 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Ditto. 1773 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): Rewrote stub generation 1774 1.1 christos to allow larger symbol table indexes. 1775 1.1 christos 1776 1.1 christos 2006-06-07 Joseph S. Myers <joseph (a] codesourcery.com> 1777 1.1 christos 1778 1.1 christos * po/Make-in (pdf, ps): New dummy targets. 1779 1.1 christos 1780 1.1 christos 2006-06-06 Alan Modra <amodra (a] bigpond.net.au> 1781 1.1 christos 1782 1.1 christos * hash.c (bfd_hash_lookup): Correct stray line. 1783 1.1 christos 1784 1.1 christos * elf.c (_bfd_elf_init_private_section_data): Comment typo. 1785 1.1 christos (elfcore_grok_nto_status): Use long instead of pid_t. 1786 1.1 christos (elfcore_grok_nto_regs, elfcore_grok_nto_note): Likewise. 1787 1.1 christos 1788 1.1 christos 2006-06-05 Daniel Jacobowitz <dan (a] codesourcery.com> 1789 1.1 christos 1790 1.1 christos * po/Make-in (top_builddir): Define. 1791 1.1 christos 1792 1.1 christos 2006-06-05 Alan Modra <amodra (a] bigpond.net.au> 1793 1.1 christos 1794 1.1 christos * Makefile.am: Run "make dep-am". 1795 1.1 christos * Makefile.in: Regenerate. 1796 1.1 christos * config.in: Regenerate. 1797 1.1 christos 1798 1.1 christos 2006-06-02 Alan Modra <amodra (a] bigpond.net.au> 1799 1.1 christos H.J. Lu <hongjiu.lu (a] intel.com> 1800 1.1 christos 1801 1.1 christos PR ld/2723 1802 1.1 christos * elflink.c (bfd_elf_final_link): Don't output section symbols 1803 1.1 christos for special ELF sections. 1804 1.1 christos 1805 1.1 christos 2006-06-01 Alan Modra <amodra (a] bigpond.net.au> 1806 1.1 christos 1807 1.1 christos * stabs.c (_bfd_link_section_stabs): Use bfd_make_section*_with_flags 1808 1.1 christos instead of bfd_make_section*. 1809 1.1 christos * aix386-core.c: Likewise. 1810 1.1 christos * aix5ppc-core.c: Likewise. 1811 1.1 christos * aout-adobe.c: Likewise. 1812 1.1 christos * aoutf1.h: Likewise. 1813 1.1 christos * binary.c: Likewise. 1814 1.1 christos * cisco-core.c: Likewise. 1815 1.1 christos * coff-arm.c: Likewise. 1816 1.1 christos * coff-h8300.c: Likewise. 1817 1.1 christos * elf.c: Likewise. 1818 1.1 christos * elf32-bfin.c: Likewise. 1819 1.1 christos * elf32-m32c.c: Likewise. 1820 1.1 christos * hppabsd-core.c: Likewise. 1821 1.1 christos * hpux-core.c: Likewise. 1822 1.1 christos * i386linux.c: Likewise. 1823 1.1 christos * ieee.c: Likewise. 1824 1.1 christos * ihex.c: Likewise. 1825 1.1 christos * irix-core.c: Likewise. 1826 1.1 christos * lynx-core.c: Likewise. 1827 1.1 christos * m68klinux.c: Likewise. 1828 1.1 christos * mach-o.c: Likewise. 1829 1.1 christos * netbsd-core.c: Likewise. 1830 1.1 christos * nlmcode.h: Likewise. 1831 1.1 christos * opncls.c: Likewise. 1832 1.1 christos * osf-core.c: Likewise. 1833 1.1 christos * peXXigen.c: Likewise. 1834 1.1 christos * ppcboot.c: Likewise. 1835 1.1 christos * ptrace-core.c: Likewise. 1836 1.1 christos * rs6000-core.c: Likewise. 1837 1.1 christos * sco5-core.c: Likewise. 1838 1.1 christos * sparclinux.c: Likewise. 1839 1.1 christos * srec.c: Likewise. 1840 1.1 christos * sunos.c: Likewise. 1841 1.1 christos * trad-core.c: Likewise. 1842 1.1 christos * xcofflink.c: Likewise. 1843 1.1 christos * xsym.c: Likewise. 1844 1.1 christos 1845 1.1 christos 2006-05-31 Daniel Jacobowitz <dan (a] codesourcery.com> 1846 1.1 christos 1847 1.1 christos * Makefile.am (INCLUDES): Use @INCINTL@. 1848 1.1 christos * acinclude.m4: Include new gettext macros. 1849 1.1 christos * configure.in: Use ZW_GNU_GETTEXT_SISTER_DIR and AM_PO_SUBDIRS. 1850 1.1 christos Manually substitute POFILES and GMOFILES. 1851 1.1 christos * Makefile.in, aclocal.m4, configure, doc/Makefile.in: Regenerated. 1852 1.1 christos 1853 1.1 christos 2006-05-30 H.J. Lu <hongjiu.lu (a] intel.com> 1854 1.1 christos 1855 1.1 christos * bfd.c (bfd_emul_get_maxpagesize): New. 1856 1.1 christos (bfd_elf_set_pagesize): Likewise. 1857 1.1 christos (bfd_emul_set_maxpagesize): Likewise. 1858 1.1 christos (bfd_emul_get_commonpagesize): Likewise. 1859 1.1 christos (bfd_emul_set_commonpagesize): Likewise. 1860 1.1 christos * bfd-in2.h: Regenerated. 1861 1.1 christos 1862 1.1 christos * elf-bfd.h (elf_backend_data): Add commonpagesize. 1863 1.1 christos (xvec_get_elf_backend_data): New. 1864 1.1 christos (get_elf_backend_data): Use xvec_get_elf_backend_data. 1865 1.1 christos 1866 1.1 christos * elf32-arm.c (elf32_arm_vxworks_bed): Remove const. 1867 1.1 christos * elfxx-target.h (elfNN_bed): Likewise. 1868 1.1 christos 1869 1.1 christos * elf32-arm.c (ELF_COMMONPAGESIZE): Defined. 1870 1.1 christos * elf32-mips.c (ELF_COMMONPAGESIZE): Likewise. 1871 1.1 christos * elf32-ppc.c (ELF_COMMONPAGESIZE): Likewise. 1872 1.1 christos * elf32-sh.c (ELF_COMMONPAGESIZE): Likewise. 1873 1.1 christos * elf32-sh64.c (ELF_COMMONPAGESIZE): Likewise. 1874 1.1 christos * elf32-sparc.c (ELF_COMMONPAGESIZE): Likewise. 1875 1.1 christos * elf64-alpha.c (ELF_COMMONPAGESIZE): Likewise. 1876 1.1 christos * elf64-ppc.c (ELF_COMMONPAGESIZE): Likewise. 1877 1.1 christos * elf64-sparc.c (ELF_COMMONPAGESIZE): Likewise. 1878 1.1 christos * elf64-x86-64.c (ELF_COMMONPAGESIZE): Likewise. 1879 1.1 christos * elfn32-mips.c (ELF_COMMONPAGESIZE): Likewise. 1880 1.1 christos * elfxx-ia64.c (ELF_COMMONPAGESIZE): Likewise. 1881 1.1 christos 1882 1.1 christos * elfxx-target.h (ELF_COMMONPAGESIZE): Define if not defined. 1883 1.1 christos (elfNN_bed): Initialize commonpagesize with ELF_COMMONPAGESIZE. 1884 1.1 christos 1885 1.1 christos * targets.c (bfd_find_target): Support NULL abfd. 1886 1.1 christos 1887 1.1 christos 2006-05-30 Nick Clifton <nickc (a] redhat.com> 1888 1.1 christos 1889 1.1 christos * po/es.po: Updated Spanish translation. 1890 1.1 christos 1891 1.1 christos 2006-05-27 Alan Modra <amodra (a] bigpond.net.au> 1892 1.1 christos H.J. Lu <hongjiu.lu (a] intel.com> 1893 1.1 christos 1894 1.1 christos * elf.c (assign_file_positions_for_load_sections): Retrieve 1895 1.1 christos maxpagesize from m->p_align if it is valid. Set p_vaddr, 1896 1.1 christos p_paddr and p_align earlier. Revert 2006-05-19 change to p_align. 1897 1.1 christos (copy_elf_program_header): Copy p_align. Set p_align_valid. 1898 1.1 christos 1899 1.1 christos 2006-05-26 H.J. Lu <hongjiu.lu (a] intel.com> 1900 1.1 christos 1901 1.1 christos * elf64-x86-64.c (ELF_MINPAGESIZE): Changed to 0x1000. 1902 1.1 christos 1903 1.1 christos 2006-05-25 H.J. Lu <hongjiu.lu (a] intel.com> 1904 1.1 christos 1905 1.1 christos * elf64-x86-64.c (ELF_MINPAGESIZE): Set to 0x100000. 1906 1.1 christos 1907 1.1 christos 2006-05-25 H.J. Lu <hongjiu.lu (a] intel.com> 1908 1.1 christos 1909 1.1 christos * elf64-x86-64.c (ELF_MAXPAGESIZE): Updated to 0x200000. 1910 1.1 christos 1911 1.1 christos 2006-05-26 Alan Modra <amodra (a] bigpond.net.au> 1912 1.1 christos 1913 1.1 christos * elf.c (sym_is_global): Return a bfd_boolean. 1914 1.1 christos (ignore_section_sym): New function. 1915 1.1 christos (elf_map_symbols): Use ignore_section_sym to discard some syms. 1916 1.1 christos (_bfd_elf_symbol_from_bfd_symbol): Ensure section belongs to 1917 1.1 christos bfd before using elf_section_syms. 1918 1.1 christos 1919 1.1 christos 2006-05-25 H.J. Lu <hongjiu.lu (a] intel.com> 1920 1.1 christos 1921 1.1 christos * config.bfd: (sh-*-linux*): Treat as 64bit target. 1922 1.1 christos (sh*l*-*-netbsdelf*): Likewise. 1923 1.1 christos (sh-*-netbsdelf*): Likewise. 1924 1.1 christos (shl*-*-elf*): Likewise. 1925 1.1 christos (sh[1234]l*-*-elf*): Likewise. 1926 1.1 christos (sh3el*-*-elf*): Likewise. 1927 1.1 christos (shl*-*-kaos*): Likewise. 1928 1.1 christos (sh-*-elf*): Likewise. 1929 1.1 christos (sh[1234]*-elf*): Likewise. 1930 1.1 christos (sh-*-rtems*): Likewise. 1931 1.1 christos (sh-*-kaos*): Likewise. 1932 1.1 christos 1933 1.1 christos 2006-05-24 H.J. Lu <hongjiu.lu (a] intel.com> 1934 1.1 christos 1935 1.1 christos PR ld/1485 1936 1.1 christos * config.bfd: Set want64 to true if 64bit bfd is used. 1937 1.1 christos (sh-*-linux*): Use targ64_selvecs for 64bit targets. 1938 1.1 christos (sh*l*-*-netbsdelf*): Likewise. 1939 1.1 christos (sh-*-netbsdelf*): Likewise. 1940 1.1 christos (shl*-*-elf*): Likewise. 1941 1.1 christos (sh[1234]l*-*-elf*): Likewise. 1942 1.1 christos (sh3el*-*-elf*): Likewise. 1943 1.1 christos (shl*-*-kaos*): Likewise. 1944 1.1 christos (sh-*-elf*): Likewise. 1945 1.1 christos (sh[1234]*-elf*): Likewise. 1946 1.1 christos (sh-*-rtems*): Likewise. 1947 1.1 christos (sh-*-kaos*): Likewise. 1948 1.1 christos 1949 1.1 christos 2006-05-24 Paul Brook <paul (a] codesourcery.com> 1950 1.1 christos 1951 1.1 christos * elf-bfd.h (elf_backend_data): Add elf_backend_output_arch_local_syms 1952 1.1 christos * elf32-arm.c (output_arch_syminfo): Define. 1953 1.1 christos (elf32_arm_ouput_plt_map_sym, elf32_arm_output_plt_map, 1954 1.1 christos elf32_arm_output_arch_local_syms): New functions. 1955 1.1 christos (elf_backend_output_arch_local_syms): Define. 1956 1.1 christos * elflink.c (bfd_elf_final_link): Call 1957 1.1 christos elf_backend_output_arch_local_syms. 1958 1.1 christos * elfxx-target.h (elf_backend_output_arch_local_syms): Provide default 1959 1.1 christos definition. 1960 1.1 christos (elfNN_bed): Add elf_backend_output_arch_local_syms. 1961 1.1 christos 1962 1.1 christos 2006-05-24 Paul Brook <paul (a] codesourcery.com> 1963 1.1 christos 1964 1.1 christos * elf32-arm.c (put_arm_insn, put_thumb_insn): New functions. 1965 1.1 christos (elf32_thumb_to_arm_stub, elf32_arm_to_thumb_stub, 1966 1.1 christos elf32_arm_finish_dynamic_symbol): Use them. 1967 1.1 christos 1968 1.1 christos 2006-05-24 Carlos O'Donell <carlos (a] systemhalted.org> 1969 1.1 christos Randolph Chung <tausq (a] debian.org> 1970 1.1 christos 1971 1.1 christos * elf-hppa.h (reloc_hppa_howto_table): Check bitfield for 1972 1.1 christos TPREL21L/TPREL14R relocations. Handle LTOFF_TP14R relocations. 1973 1.1 christos Add handling for TLS relocations. 1974 1.1 christos (elf_hpp_reloc_final_type): Handle TLS relocs. 1975 1.1 christos * elf32-hppa.c: Add authors for cleanup and TLS support. 1976 1.1 christos (hppa_elf_local_got_tls_type, hh_name, eh_name): Define. 1977 1.1 christos (elf32_hppa_link_hash_entry): Add tls_type. 1978 1.1 christos (elf32_hppa_link_hash_table): Add tld_ldm_got. 1979 1.1 christos (hppa_link_has_newfunc): Set tls_type. 1980 1.1 christos (elf32_hppa_link_hash_table_create): Set tls_ldm_got refcount. 1981 1.1 christos (hppa_stub_name): Use hh_name macro. 1982 1.1 christos (elf32_hppa_copy_indirect_symbol): Copy TLS information. 1983 1.1 christos (elf32_hppa_check_relocs): Call elf32_hppa_optimized_tls_reloc. 1984 1.1 christos Handle TLS relocs. 1985 1.1 christos (elf32_hppa_gc_sweep_hook): Likewise. 1986 1.1 christos (allocate_dynrelocs): Handle TLS relocs. 1987 1.1 christos (elf32_hppa_size_dynamic_sections): Count space required by TLS 1988 1.1 christos relocs. Use hh_name macro. 1989 1.1 christos (dtpoff_base): New function. 1990 1.1 christos (tpoff): Likewise. 1991 1.1 christos (elf32_hppa_optimized_tls_reloc): Likewise. 1992 1.1 christos (final_link_relocate): Handle TLS relocs. 1993 1.1 christos (elf32_hppa_relocate_section): Handle TLS relocs. Use eh_name 1994 1.1 christos and hh_name macros. 1995 1.1 christos (elf32_hppa_finish_dynamic_symbol): Setup TLS got entries. Use 1996 1.1 christos hh_name and eh_name macros. 1997 1.1 christos (elf32_hppa_reloc_type_clas): Handle TLS relocs. 1998 1.1 christos 1999 1.1 christos 2006-05-24 Bjoern Haase <bjoern.m.haase (a] web.de> 2000 1.1 christos 2001 1.1 christos * archures.c: Add bfd_mach_avr6. 2002 1.1 christos * cpu-avr.c: Likewise. 2003 1.1 christos * reloc.c (BFD_RELOC_AVR_LO8_LDI_GS, BFD_RELOC_AVR_HI8_LDI_GS): 2004 1.1 christos New relocations. 2005 1.1 christos * libbfd.h: Regenerate. 2006 1.1 christos * bfd-in2.h:Regenerate. 2007 1.1 christos * elf32-avr.h: New file. Protoypes for functions accessed from ld. 2008 1.1 christos * elf32-avr.c: Add elf32-avr.h to include list. 2009 1.1 christos (elf32_avr_stub_hash_entry): New function. 2010 1.1 christos (elf32_avr_link_hash_table): New struct. 2011 1.1 christos (avr_link_hash_table): Likewise. 2012 1.1 christos (avr_stub_hash_entry): Likewise. 2013 1.1 christos (avr_stub_hash_lookup): New function. 2014 1.1 christos (stub_hash_newfunc): New function. 2015 1.1 christos (elf32_avr_link_hash_table_create): New function. 2016 1.1 christos (elf32_avr_link_hash_table_free): New function. 2017 1.1 christos (avr_get_stub_addr): New function. 2018 1.1 christos (debug_relax, debug_stubs): Add new global variables controlling 2019 1.1 christos debugging printout to stdout. 2020 1.1 christos (avr_pc_wrap_around): Change the type to bfd_vma. 2021 1.1 christos (avr_replace_call_ret_sequences): Add a new variable controling 2022 1.1 christos linkrelax optimizations. 2023 1.1 christos (avr_stub_is_required_for_16_bit_reloc): New function. 2024 1.1 christos (avr_final_link_relocate): 2025 1.1 christos Add linker hash table to parameter list. Use stub addr. if necessary. 2026 1.1 christos (elf32_avr_relocate_section): 2027 1.1 christos Add linker hashtable to parameter list of avr_final_link_relocate. 2028 1.1 christos (bfd_elf_avr_final_write_processing): Add support for bfd_mach_avr6. 2029 1.1 christos (elf32_avr_object_p): Add support for E_AVR_MACH_AVR6. 2030 1.1 christos (elf32_avr_relax_delete_bytes): 2031 1.1 christos Iterate over all sections of a bfd when adjusting relocs addends. 2032 1.1 christos (elf32_avr_relax_section): 2033 1.1 christos Evaluate avr_replace_call_ret_sequences and recalculate the size of 2034 1.1 christos stub section. 2035 1.1 christos (avr_stub_name): New function. 2036 1.1 christos (avr_get_stub_entry): New function. 2037 1.1 christos (avr_add_stub): New function. 2038 1.1 christos (avr_build_one_stub): New function. 2039 1.1 christos (avr_size_one_stub): New function. 2040 1.1 christos (elf32_avr_setup_params): New function. 2041 1.1 christos (elf32_avr_setup_section_lists): New function. 2042 1.1 christos (get_local_syms): New function. 2043 1.1 christos (elf32_avr_size_stubs): New function. 2044 1.1 christos (bfd_elf32_bfd_link_hash_table_create): New function. 2045 1.1 christos (bfd_elf32_bfd_link_hash_table_free): New function. 2046 1.1 christos 2047 1.1 christos 2006-05-23 H.J. Lu <hongjiu.lu (a] intel.com> 2048 1.1 christos 2049 1.1 christos PR ld/2655 2050 1.1 christos PR ld/2657 2051 1.1 christos * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Properly 2052 1.1 christos update CIE/FDE length. Don't pad to the section alignment. 2053 1.1 christos 2054 1.1 christos 2006-05-23 Jie Zhang <jie.zhang (a] analog.com> 2055 1.1 christos 2056 1.1 christos * elf32-bfin.c (bfinfdpic_relocate_section): Clear reloc for 2057 1.1 christos deteted entries in .eh_frame section. 2058 1.1 christos 2059 1.1 christos 2006-05-23 Jie Zhang <jie.zhang (a] analog.com> 2060 1.1 christos 2061 1.1 christos * elf32-bfin.c (bfin_check_relocs): Use __GLOBAL_OFFSET_TABLE_ 2062 1.1 christos instead of _GLOBAL_OFFSET_TABLE_. 2063 1.1 christos (bfin_relocate_section): Ditto. 2064 1.1 christos (_bfin_create_got_section): Ditto. 2065 1.1 christos (elf32_bfinfdpic_create_dynamic_sections): Use 2066 1.1 christos __PROCEDURE_LINKAGE_TABLE_ instead of _PROCEDURE_LINKAGE_TABLE_. 2067 1.1 christos (bfin_finish_dynamic_symbol): Use __DYNAMIC instead of _DYNAMIC. 2068 1.1 christos 2069 1.1 christos 2006-05-23 Alan Modra <amodra (a] bigpond.net.au> 2070 1.1 christos 2071 1.1 christos * elf64-ppc.c (compare_symbols): Prefer strong dynamic global 2072 1.1 christos function syms over other syms. 2073 1.1 christos 2074 1.1 christos 2006-05-22 Daniel Jacobowitz <dan (a] codesourcery.com> 2075 1.1 christos 2076 1.1 christos * elflink.c (_bfd_elf_add_dynamic_entry): Remove DT_TEXTREL 2077 1.1 christos check. 2078 1.1 christos (bfd_elf_final_link): Add a late DT_TEXTREL check. 2079 1.1 christos * elfxx-mips.c (MIPS_ELF_READONLY_SECTION): Define. 2080 1.1 christos (mips_elf_create_dynamic_relocation): Set DF_TEXTREL. 2081 1.1 christos (_bfd_mips_elf_check_relocs): Delete MIPS_READONLY_SECTION. 2082 1.1 christos Use MIPS_ELF_READONLY_SECTION. 2083 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Clear DF_TEXTREL after 2084 1.1 christos creating DT_TEXTREL. 2085 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Clear textrel markers 2086 1.1 christos if no text relocations were generated. 2087 1.1 christos 2088 1.1 christos 2006-05-19 H.J. Lu <hongjiu.lu (a] intel.com> 2089 1.1 christos 2090 1.1 christos * elfxx-ia64.c (ELF_MAXPAGESIZE): Fix a typo in comment. 2091 1.1 christos 2092 1.1 christos 2006-05-19 Alan Modra <amodra (a] bigpond.net.au> 2093 1.1 christos 2094 1.1 christos * elf.c (elf_fake_sections): Formatting. 2095 1.1 christos (assign_file_positions_for_load_sections): Only add SEC_ALLOC 2096 1.1 christos sections to p_memsz. Remove hack for PT_NOTE sections. Allow 2097 1.1 christos section alignment to increase p_align for PT_LOAD. 2098 1.1 christos (assign_file_positions_for_non_load_sections): Remove ARM BPABI 2099 1.1 christos hack for PT_DYNAMIC. Instead, set p_filesz for all segments 2100 1.1 christos other than PT_LOAD, and PT_NOTE in core. 2101 1.1 christos 2102 1.1 christos 2006-05-17 Alan Modra <amodra (a] bigpond.net.au> 2103 1.1 christos 2104 1.1 christos * elf.c (assign_file_positions_for_segments): Split into.. 2105 1.1 christos (assign_file_positions_for_load_sections): ..this, and.. 2106 1.1 christos (assign_file_positions_for_non_load_sections): ..this new function,.. 2107 1.1 christos (assign_file_positions_except_relocs): ..writing program headers here. 2108 1.1 christos 2109 1.1 christos 2006-05-17 Alan Modra <amodra (a] bigpond.net.au> 2110 1.1 christos 2111 1.1 christos * elflink.c (elf_gc_sweep): Don't specially keep non-alloc, 2112 1.1 christos non-load sections if they have relocs. 2113 1.1 christos 2114 1.1 christos 2006-05-15 Paul Brook <paul (a] codesourcery.com> 2115 1.1 christos 2116 1.1 christos * cpu-arm.c (bfd_is_arm_mapping_symbol_name): Rename ... 2117 1.1 christos (bfd_is_arm_special_symbol_name): ... to this. Add type argument. 2118 1.1 christos Check symbol name is of specified type. 2119 1.1 christos * elf32-arm.c (elf32_arm_is_target_special_symbol, 2120 1.1 christos arm_elf_find_function, elf32_arm_output_symbol_hook): Use 2121 1.1 christos bfd_is_arm_special_symbol_name. 2122 1.1 christos * bfd-in.h (BFD_ARM_SPECIAL_SYM_TYPE_MAP, 2123 1.1 christos BFD_ARM_SPECIAL_SYM_TYPE_TAG, BFD_ARM_SPECIAL_SYM_TYPE_OTHER, 2124 1.1 christos BFD_ARM_SPECIAL_SYM_TYPE_ANY): Define. 2125 1.1 christos (bfd_is_arm_mapping_symbol_name): Remove prototype. 2126 1.1 christos (bfd_is_arm_special_symbol_name): Add prototype. 2127 1.1 christos * bfd-in2.h: Regenerate. 2128 1.1 christos 2129 1.1 christos 2006-05-15 David Heine <dlheine (a] tensilica.com> 2130 1.1 christos Bob Wilson <bob.wilson (a] acm.org> 2131 1.1 christos 2132 1.1 christos * elf32-xtensa.c (check_loop_aligned): Fix reversed check for 2133 1.1 christos undefined opcode. Clean up assertions. 2134 1.1 christos (narrow_instruction, widen_instruction): Remove "do_it" parameters. 2135 1.1 christos Factor most of the code into separate functions.... 2136 1.1 christos (can_narrow_instruction, can_widen_instruction): New. 2137 1.1 christos (prev_instr_is_a_loop): New. 2138 1.1 christos (compute_ebb_proposed_actions): Combine error handling code for 2139 1.1 christos decode errors. Replace call to insn_decode_len with inline code. 2140 1.1 christos Use can_narrow_instruction and can_widen_instruction. Handle errors 2141 1.1 christos from call to xtensa_opcode_is_loop. 2142 1.1 christos (relax_section): Adjust calls to narrow_instruction and 2143 1.1 christos widen_instruction. 2144 1.1 christos 2145 1.1 christos 2006-05-15 Alan Modra <amodra (a] bigpond.net.au> 2146 1.1 christos 2147 1.1 christos PR 2658 2148 1.1 christos * elf32-ppc.c (ppc_elf_relax_section): Don't segfault on non-pic 2149 1.1 christos -shared link. 2150 1.1 christos 2151 1.1 christos 2006-05-11 Michael Matz <matz (a] suse.de> 2152 1.1 christos 2153 1.1 christos * elflink.c (match_group_member): Correctly iterate group 2154 1.1 christos members. 2155 1.1 christos 2156 1.1 christos 2006-05-11 Paul Brook <paul (a] codesourcery.com> 2157 1.1 christos 2158 1.1 christos * elf32-arm.c (elf32_arm_reloc_map): Add MOVW and MOVT relocs. 2159 1.1 christos (elf32_arm_final_link_relocate): Handle MOVW and MOVT relocs. 2160 1.1 christos (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto. 2161 1.1 christos * reloc.c: Ditto. 2162 1.1 christos * bfd-in2.h: Regenerate. 2163 1.1 christos * libbfd.h: Regenerate. 2164 1.1 christos * libcoff.h: Regenerate. 2165 1.1 christos 2166 1.1 christos 2006-05-11 Mike Bland <mbland (a] google.com> 2167 1.1 christos 2168 1.1 christos * elf.c (_bfd_elf_init_private_section_data): Don't change 2169 1.1 christos section type if already set. 2170 1.1 christos 2171 1.1 christos 2006-05-10 Nick Clifton <nickc (a] redhat.com> 2172 1.1 christos 2173 1.1 christos PR ld/2607 2174 1.1 christos * elfcode.h (valid_section_index_p): New function: Checks for a 2175 1.1 christos valid section index. Allows indicies in the range SHN_LOPROC to 2176 1.1 christos SHN_HIOS. 2177 1.1 christos (elf_object_p): Use valid_section_index_p. 2178 1.1 christos 2179 1.1 christos 2006-05-11 Pedro Alves <pedro_alves (a] portugalmail.pt> 2180 1.1 christos 2181 1.1 christos * coff-arm.c (ARM_26D, ARM_32, ARM_RVA_32, ARM_SECTION, 2182 1.1 christos ARM_SECREL): Mark WinCE versions of these relocs as partial 2183 1.1 christos inplace. 2184 1.1 christos (coff_arm_relocate_section): Adjust addend for WinCE. 2185 1.1 christos 2186 1.1 christos 2006-05-10 Alan Modra <amodra (a] bigpond.net.au> 2187 1.1 christos 2188 1.1 christos PR 2342 2189 1.1 christos * elflink.c (_bfd_elf_default_action_discarded): Revert 2006-02-16. 2190 1.1 christos 2191 1.1 christos 2006-05-09 Nick Clifton <nickc (a] redhat.com> 2192 1.1 christos 2193 1.1 christos * coffcode.h (coff_write_relocs): Produce an error message if a an 2194 1.1 christos out-of-range symbol index is detected in a reloc. 2195 1.1 christos 2196 1.1 christos 2006-05-09 Ben Elliston <bje (a] au.ibm.com> 2197 1.1 christos 2198 1.1 christos * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Remove unused 2199 1.1 christos local variable `dynobj'. 2200 1.1 christos 2201 1.1 christos 2006-05-05 Bjoern Haase <bjoern.m.haase (a] web.de> 2202 1.1 christos 2203 1.1 christos * elf32-avr.c (elf32_avr_relax_delete_bytes): Iterate over all 2204 1.1 christos of the bfd's sections for the reloc-addend adjustments. 2205 1.1 christos 2206 1.1 christos 2006-05-05 Martin Schwidefsky <schwidefsky (a] de.ibm.com> 2207 1.1 christos 2208 1.1 christos * elf32-s390.c (invalid_tls_insn): Call bfd_set_error. 2209 1.1 christos (elf_s390_relocate_section): Add code to do the GD->LE and 2210 1.1 christos LD->LE TLS linker optimizations if a brasl instruction is used 2211 1.1 christos for the __tls_get_offset function call. 2212 1.1 christos * elf64-s390.c (invalid_tls_insn): Call bfd_set_error. 2213 1.1 christos 2214 1.1 christos 2006-05-05 Alan Modra <amodra (a] bigpond.net.au> 2215 1.1 christos 2216 1.1 christos * elf64-ppc.c (ppc64_elf_tls_optimize): Only optimize 2217 1.1 christos R_PPC64_TPREL64 and R_PPC64_DTPMOD64 relocs when they are in 2218 1.1 christos the .toc and referenced by a TLS code sequence. 2219 1.1 christos (ppc64_elf_edit_toc): Cater for the unlikely situation that 2220 1.1 christos .toc is the first section in a file. 2221 1.1 christos 2222 1.1 christos 2006-05-04 Andreas Schwab <schwab (a] suse.de> 2223 1.1 christos 2224 1.1 christos * aoutf1.h (struct external_sparc_core): Declare c_regs as struct 2225 1.1 christos regs instead of an array of int. 2226 1.1 christos (struct external_solaris_bcp_core): Likewise. 2227 1.1 christos (swapcore_sun3): Use offsetof instead of computing the offset 2228 1.1 christos manually. 2229 1.1 christos (swapcore_sparc): Likewise. Simplify reference to c_regs. 2230 1.1 christos (swapcore_solaris_bcp): Likewise. 2231 1.1 christos 2232 1.1 christos 2006-05-04 Daniel Jacobowitz <dan (a] codesourcery.com> 2233 1.1 christos 2234 1.1 christos * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Adjust handling 2235 1.1 christos for missing GOTs. 2236 1.1 christos 2237 1.1 christos 2006-05-04 Daniel Jacobowitz <dan (a] codesourcery.com> 2238 1.1 christos 2239 1.1 christos * cpu-arm.c (bfd_is_arm_mapping_symbol_name): Accept more 2240 1.1 christos mapping symbols. 2241 1.1 christos 2242 1.1 christos 2006-05-04 Ben Elliston <bje (a] au.ibm.com> 2243 1.1 christos 2244 1.1 christos * coff-or32.c (bfd_section_from_shdr): Remove unused local 2245 1.1 christos variable `ptr'. 2246 1.1 christos * cofflink.c (process_embedded_commands): Remove unused local 2247 1.1 christos variables `had_read' and `had_shared'. 2248 1.1 christos * ecofflink.c (bfd_ecoff_debug_accumulate): Remove unused local 2249 1.1 christos variable `fdr_adr'. 2250 1.1 christos * ihex.c (ihex_read_section): Remove unused local variable `addr'. 2251 1.1 christos 2252 1.1 christos 2006-05-03 Alan Modra <amodra (a] bigpond.net.au> 2253 1.1 christos 2254 1.1 christos * libbfd-in.h (_bfd_generic_new_section_hook): Declare. 2255 1.1 christos * section.c (bfd_abs_symbol, bfd_com_symbol): Delete. 2256 1.1 christos (bfd_und_symbol, bfd_ind_symbol): Delete. 2257 1.1 christos (BFD_FAKE_SECTION): Remove SYM_PTR param, set symbol_ptr_ptr to 2258 1.1 christos &SEC.symbol. 2259 1.1 christos (STD_SECTION): Adjust. 2260 1.1 christos (_bfd_generic_new_section_hook): New function, extracted from.. 2261 1.1 christos (bfd_section_init): ..here. 2262 1.1 christos (bfd_make_section_old_way): Call new_section_hook for abs, com, 2263 1.1 christos und and ind sections. 2264 1.1 christos * elf.c (_bfd_elf_large_com_section): Adjust. 2265 1.1 christos * aoutx.h (new_section_hook): Call _bfd_generic_new_section_hook. 2266 1.1 christos * pdp11.c (new_section_hook): Likewise. 2267 1.1 christos * coffcode.h (coff_new_section_hook): Likewise. 2268 1.1 christos * ecoff.c (_bfd_ecoff_new_section_hook): Likewise. 2269 1.1 christos * elf.c (_bfd_elf_new_section_hook): Likewise. 2270 1.1 christos * vms.c (vms_new_section_hook): Likwise. 2271 1.1 christos * elf32-arm.c (elf32_arm_new_section_hook): Check used_by_bfd isn't 2272 1.1 christos already set. 2273 1.1 christos * elf32-sh64.c (sh64_elf_new_section_hook): Likewise. 2274 1.1 christos * elf32-xtensa.c (elf_xtensa_new_section_hook): Likewise. 2275 1.1 christos * elf64-mmix.c (mmix_elf_new_section_hook): Likewise. 2276 1.1 christos * elf64-ppc.c (ppc64_elf_new_section_hook): Likewise. 2277 1.1 christos * elfxx-mips.c (_bfd_mips_elf_new_section_hook): Likewise. 2278 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_new_section_hook): Likewise. 2279 1.1 christos * ieee.c (ieee_new_section_hook): Likewise. Call 2280 1.1 christos _bfd_generic_new_section_hook too. 2281 1.1 christos * mmo.c (mmo_new_section_hook): Likewise. 2282 1.1 christos * oasys.c (oasys_new_section_hook): Likewise. 2283 1.1 christos * som.c (som_new_section_hook): Likewise. 2284 1.1 christos * coff-w65.c (reloc_processing): Don't use bfd_abs_symbol. 2285 1.1 christos * bfd-in2.h: Regenerate. 2286 1.1 christos * libbfd.h: Regenerate. 2287 1.1 christos 2288 1.1 christos 2006-05-03 Alan Modra <amodra (a] bigpond.net.au> 2289 1.1 christos 2290 1.1 christos * hash.c (DEFAULT_SIZE): Revert last change. 2291 1.1 christos (higher_prime_number): Correct test for no larger prime. Don't 2292 1.1 christos abort on error, instead return 0. Depopulate primes[]. 2293 1.1 christos (bfd_hash_lookup): If we overflow size, refuse to grow table. 2294 1.1 christos 2295 1.1 christos 2006-05-02 Paul Brook <paul (a] codesourcery.com> 2296 1.1 christos 2297 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Set thumb funciton bit 2298 1.1 christos for R_ARM_REL32. 2299 1.1 christos 2300 1.1 christos 2006-05-02 Ben Elliston <bje (a] au.ibm.com> 2301 1.1 christos 2302 1.1 christos * archive.c (bfd_generic_archive_p): Remove unused local variable 2303 1.1 christos `fail'. 2304 1.1 christos * dwarf2.c (decode_line_info): Remove unused local variable 2305 1.1 christos `basic_block'. 2306 1.1 christos * elfcode.h (elf_slurp_reloc_table_from_section): Remove unused 2307 1.1 christos local variable `s'. 2308 1.1 christos * tekhex.c (tekhex_write_object_contents): Remove unused local 2309 1.1 christos variable `bytes_written'. 2310 1.1 christos * aout-ns32k.c (MY_swap_std_reloc_out): Remove unused local 2311 1.1 christos variable `r_addend'. 2312 1.1 christos * elf32-dlx.c (dlx_rtype_to_howto): Remove breaks after returns. 2313 1.1 christos * elfxx-mips.c (_bfd_elf_mips_mach): Remove breaks after returns. 2314 1.1 christos (_bfd_ns32k_relocate_contents): Remove break after return. 2315 1.1 christos * elf.c (bfd_section_from_shdr): Remove breaks after returns. 2316 1.1 christos 2317 1.1 christos 2006-05-02 Nick Clifton <nickc (a] redhat.com> 2318 1.1 christos 2319 1.1 christos * elf32-sh-symbian.c: Rename local define DEBUG to SYMBIAN_DEBUG 2320 1.1 christos in order to avoid conflicts with the global DEBUG define. 2321 1.1 christos 2322 1.1 christos 2006-05-02 Alan Modra <amodra (a] bigpond.net.au> 2323 1.1 christos 2324 1.1 christos * dwarf2.c: Formatting. 2325 1.1 christos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Simplify 2326 1.1 christos output section check. 2327 1.1 christos * elf32-i370.c: Warning fixes inside #ifdef DEBUG. 2328 1.1 christos * elf32-m32c.c: Similarly. 2329 1.1 christos * elf32-ppc.c: Similarly. 2330 1.1 christos * elf32-v850.c: Similarly. 2331 1.1 christos * nlm32-sparc.c: Similarly. 2332 1.1 christos * elfcode.h: Similarly. 2333 1.1 christos (elf_symbol_flags): Delete. 2334 1.1 christos * elflink.c (elf_link_input_bfd): Comment typo. 2335 1.1 christos 2336 1.1 christos 2006-05-01 DJ Delorie <dj (a] redhat.com> 2337 1.1 christos 2338 1.1 christos * bfd-in.h (bfd_hash_table): Add count field. 2339 1.1 christos * bfd-in2.h: Regenerate. 2340 1.1 christos * hash.c (higher_prime_number): New. 2341 1.1 christos (bfd_hash_table_inint_n): Init count field. 2342 1.1 christos (bfd_hash_lookup): Grow table as needed. 2343 1.1 christos 2344 1.1 christos 2006-04-27 Kaz Kojima <kkojima (a] rr.iij4u.or.jp> 2345 1.1 christos 2346 1.1 christos PR binutils/2584 2347 1.1 christos * tekhex.c (getvalue): Change return type to bfd_boolean and 2348 1.1 christos add the new parameter. Return false if the unexpected character 2349 1.1 christos is found. 2350 1.1 christos (getsym): Likewise. 2351 1.1 christos (first_phase): Change return type to bfd_boolean and return 2352 1.1 christos false if the unexpected character is found. Replace abort 2353 1.1 christos with returning false. 2354 1.1 christos (pass_over): Change return type to bfd_boolean and the type of 2355 1.1 christos the second argument to bfd_boolean (*) (bfd *, int, char *). 2356 1.1 christos Return false if FUNC returns false. 2357 1.1 christos (tekhex_object_p): Return NULL if pass_over fails. 2358 1.1 christos 2359 1.1 christos 2006-04-27 Alan Modra <amodra (a] bigpond.net.au> 2360 1.1 christos 2361 1.1 christos * coff-rs6000.c (xcoff_write_archive_contents_old): Warning fix. 2362 1.1 christos 2363 1.1 christos 2006-04-26 H.J. Lu <hongjiu.lu (a] intel.com> 2364 1.1 christos 2365 1.1 christos PR binutils/2593 2366 1.1 christos * elf.c (_bfd_elf_new_section_hook): Don't set section ELF type 2367 1.1 christos and flags if its BFD flags have been set. 2368 1.1 christos (_bfd_elf_init_private_section_data): Don't copy the output ELF 2369 1.1 christos section type from input if it has been set to something 2370 1.1 christos different. 2371 1.1 christos 2372 1.1 christos 2006-04-25 H.J. Lu <hongjiu.lu (a] intel.com> 2373 1.1 christos 2374 1.1 christos PR binutils/2467 2375 1.1 christos * elf.c (_bfd_elf_close_and_cleanup): Check elf_tdata (abfd) 2376 1.1 christos is NULL first. 2377 1.1 christos 2378 1.1 christos * elf32-arm.c (elf32_arm_close_and_cleanup): Check if 2379 1.1 christos abfd->sections is NULL. 2380 1.1 christos (elf32_arm_bfd_free_cached_info): New. 2381 1.1 christos (bfd_elf32_bfd_free_cached_info): Defined. 2382 1.1 christos 2383 1.1 christos * elfxx-target.h (bfd_elfNN_bfd_free_cached_info): Default it 2384 1.1 christos to _bfd_free_cached_info. 2385 1.1 christos 2386 1.1 christos * libbfd-in.h (_bfd_free_cached_info): New. 2387 1.1 christos * libbfd: Regenerated. 2388 1.1 christos 2389 1.1 christos * opncls.c (_bfd_delete_bfd): Check if abfd->memory is NULL. 2390 1.1 christos (_bfd_free_cached_info): New. 2391 1.1 christos 2392 1.1 christos 2006-04-21 Alan Modra <amodra (a] bigpond.net.au> 2393 1.1 christos 2394 1.1 christos * elf.c (assign_file_positions_except_relocs): Move code setting 2395 1.1 christos file position of non-loaded sections.. 2396 1.1 christos (assign_file_positions_for_segments): ..to here. 2397 1.1 christos 2398 1.1 christos 2006-04-20 H.J. Lu <hongjiu.lu (a] intel.com> 2399 1.1 christos 2400 1.1 christos PR ld/2537 2401 1.1 christos * elf.c (bfd_section_from_shdr): Allow sections reserved for 2402 1.1 christos applications. Issue an error on sections we don't know how 2403 1.1 christos to handle. 2404 1.1 christos 2405 1.1 christos 2006-04-19 Alan Modra <amodra (a] bigpond.net.au> 2406 1.1 christos 2407 1.1 christos * Makefile.am: Run "make dep-am". 2408 1.1 christos * Makefile.in: Regenerate. 2409 1.1 christos 2410 1.1 christos 2006-04-19 Alan Modra <amodra (a] bigpond.net.au> 2411 1.1 christos 2412 1.1 christos * warning.m4 (--enable-werror): Format help message. 2413 1.1 christos (--enable-build-warnings): Likewise. 2414 1.1 christos * configure: Regenerate. 2415 1.1 christos 2416 1.1 christos 2006-04-18 Nick Clifton <nickc (a] redhat.com> 2417 1.1 christos 2418 1.1 christos PR 2257 2419 1.1 christos * elfcode.h (elf_object_p): Allow files with corrupt e_shstrndx 2420 1.1 christos fields to still be handled as ELF files. 2421 1.1 christos 2422 1.1 christos 2006-04-16 Daniel Jacobowitz <dan (a] codesourcery.com> 2423 1.1 christos 2424 1.1 christos * po/SRC-POTFILES.in: Regenerated. 2425 1.1 christos 2426 1.1 christos 2006-04-16 Daniel Jacobowitz <dan (a] codesourcery.com> 2427 1.1 christos 2428 1.1 christos * configure.in: Update version to 2.17.50. 2429 1.1 christos * configure: Regenerated. 2430 1.1 christos 2431 1.1 christos 2006-04-14 David Heine <dlheine (a] tensilica.com> 2432 1.1 christos 2433 1.1 christos * elf32-xtensa.c (build_reloc_opcodes): New. 2434 1.1 christos (compute_text_actions): Use it to decode opcodes outside inner loop. 2435 1.1 christos (check_section_ebb_pcrels_fit): Add "reloc_opcodes" argument, and if 2436 1.1 christos it is set, use it to get the opcodes for relocations. 2437 1.1 christos (move_shared_literal): Adjust call to check_section_ebb_pcrels_fit. 2438 1.1 christos 2439 1.1 christos 2006-04-08 H.J. Lu <hongjiu.lu (a] intel.com> 2440 1.1 christos 2441 1.1 christos PR ld/2513 2442 1.1 christos * elf32-i386.c (GOT_TLS_MASK): New macro for tls_type. 2443 1.1 christos (GOT_TLS_IE_IE): Likewise. 2444 1.1 christos (GOT_TLS_IE_GD): Likewise. 2445 1.1 christos (GOT_TLS_IE_MASK): Likewise. 2446 1.1 christos (elf_i386_check_relocs): For global symbols, set GOT_TLS_IE_GD 2447 1.1 christos and GOT_TLS_IE_IE for R_386_TLS_GD and R_386_TLS_IE 2448 1.1 christos respectively. 2449 1.1 christos (allocate_dynrelocs): If both GOT_TLS_IE_IE and GOT_TLS_IE_GD 2450 1.1 christos are set, treat tls_type as GOT_TLS_IE_BOTH. 2451 1.1 christos (elf_i386_relocate_section): Likewise. 2452 1.1 christos 2453 1.1 christos 2006-04-07 Randolph Chung <tausq (a] debian.org> 2454 1.1 christos 2455 1.1 christos * elf64-hppa.c (elf64_hppa_grok_prstatus): New function. 2456 1.1 christos (elf64_hppa_grok_psinfo): Likewise. 2457 1.1 christos (elf_backend_grok_pstatus, elf_backend_grok_psinfo): Define. 2458 1.1 christos 2459 1.1 christos 2006-04-06 DJ Delorie <dj (a] redhat.com> 2460 1.1 christos 2461 1.1 christos * elf32-m32c.c (m32c_elf_relocate_section): Generate a symbol for 2462 1.1 christos each plt entry we create. 2463 1.1 christos 2464 1.1 christos 2006-04-06 Carlos O'Donell <carlos (a] codesourcery.com> 2465 1.1 christos 2466 1.1 christos * po/Make-in: Add install-html target. 2467 1.1 christos * Makefile.am: Rename docdir to bfddocdir. Add datarootdir, docdir 2468 1.1 christos htmldir. Add install-html and install-html-recursive targets. 2469 1.1 christos * Makefile.in: Regenerate. 2470 1.1 christos * configure.in: AC_SUBST for datarootdir, docdir and htmldir. 2471 1.1 christos * configure: Regenerate. 2472 1.1 christos 2473 1.1 christos 2006-04-06 H.J. Lu <hongjiu.lu (a] intel.com> 2474 1.1 christos 2475 1.1 christos * elfxx-ia64.c (elfNN_ia64_relax_section): Skip unneeded passes 2476 1.1 christos with the skip_relax_pass_0 and skip_relax_pass_1 bits in the 2477 1.1 christos section structure. 2478 1.1 christos 2479 1.1 christos 2006-04-05 Bernd Schmidt <bernd.schmidt (a] analog.com> 2480 1.1 christos 2481 1.1 christos * elf32-bfin.c (bfinfdpic_relocs_info_hash): Sprinkle casts to 2482 1.1 christos eliminate warnings. 2483 1.1 christos 2484 1.1 christos 2006-04-05 H.J. Lu <hongjiu.lu (a] intel.com> 2485 1.1 christos James E Wilson <wilson (a] specifixinc.com> 2486 1.1 christos 2487 1.1 christos PR ld/2442 2488 1.1 christos * elfxx-ia64.c (elfNN_ia64_dyn_sym_info): Remove next. 2489 1.1 christos (elfNN_ia64_local_hash_entry): Add count, sorted_count and 2490 1.1 christos size. 2491 1.1 christos (elfNN_ia64_link_hash_entry): Likewise. 2492 1.1 christos (elfNN_ia64_new_elf_hash_entry): Initialize count, sorted_count 2493 1.1 christos and size. 2494 1.1 christos (elfNN_ia64_hash_copy_indirect): Updated elfNN_ia64_dyn_sym_info 2495 1.1 christos processing. 2496 1.1 christos (elfNN_ia64_hash_hide_symbol): Likewise. 2497 1.1 christos (elfNN_ia64_global_dyn_sym_thunk): Likewise. 2498 1.1 christos (elfNN_ia64_local_dyn_sym_thunk): Likewise. 2499 1.1 christos (elfNN_ia64_global_dyn_info_free): New function. 2500 1.1 christos (elfNN_ia64_local_dyn_info_free): Likewise. 2501 1.1 christos (elfNN_ia64_hash_table_free): Free local and global 2502 1.1 christos elfNN_ia64_dyn_sym_info. 2503 1.1 christos (addend_compare): New function. 2504 1.1 christos (sort_dyn_sym_info): Likewise. 2505 1.1 christos (get_dyn_sym_info): Updated to use binary search for addend. 2506 1.1 christos (elfNN_ia64_check_relocs): Scan relocations to create dynamic 2507 1.1 christos relocation arrays first. 2508 1.1 christos 2509 1.1 christos 2006-04-05 Bernd Schmidt <bernd.schmidt (a] analog.com> 2510 1.1 christos 2511 1.1 christos * elf32-bfin.c (_bfin_create_got_section): Don't generate a _gp 2512 1.1 christos symbol. 2513 1.1 christos 2514 1.1 christos 2006-04-05 H.J. Lu <hongjiu.lu (a] intel.com> 2515 1.1 christos 2516 1.1 christos PR ld/2411 2517 1.1 christos * elflink.c (check_dynsym): New. 2518 1.1 christos (elf_link_output_extsym): Use it. 2519 1.1 christos (bfd_elf_final_link): Likewise. 2520 1.1 christos 2521 1.1 christos 2006-04-05 H.J. Lu <hongjiu.lu (a] intel.com> 2522 1.1 christos 2523 1.1 christos PR ld/2404 2524 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Skip the default indirect 2525 1.1 christos symbol from the dynamic definition with the default version if 2526 1.1 christos its type and the type of existing regular definition mismatch. 2527 1.1 christos 2528 1.1 christos 2006-04-05 Richard Sandiford <richard (a] codesourcery.com> 2529 1.1 christos Daniel Jacobowitz <dan (a] codesourcery.com> 2530 1.1 christos 2531 1.1 christos * config.bfd (sparc-*-vxworks*): New stanza. 2532 1.1 christos * configure.in (bfd_elf32_sparc_vxworks_vec): New stanza. 2533 1.1 christos (bfd_elf32_sparc_vec, bfd_elf64_sparc_vec): Add elf-vxworks.lo. 2534 1.1 christos * configure: Regenerate. 2535 1.1 christos * elf32-sparc.c: Include elf-vxworks.h. 2536 1.1 christos (elf32_sparc_vxworks_link_hash_table_create: New. 2537 1.1 christos (elf32_sparc_vxworks_final_write_processing): New. 2538 1.1 christos (TARGET_BIG_SYM): Override for VxWorks. 2539 1.1 christos (TARGET_BIG_NAME, ELF_MINPAGESIZE): Likewise. 2540 1.1 christos (bfd_elf32_bfd_link_hash_table_create): Likewise. 2541 1.1 christos (elf_backend_want_got_plt, elf_backend_plt_readonly): Likewise. 2542 1.1 christos (elf_backend_got_header_size, elf_backend_add_symbol_hook): Likewise. 2543 1.1 christos (elf_backend_link_output_symbol_hook): Likewise. 2544 1.1 christos (elf_backend_emit_relocs): Likewise. 2545 1.1 christos (elf_backend_final_write_processing, elf32_bed): Likewise. 2546 1.1 christos * elfxx-sparc.c: Include libiberty.h and elf-vxworks.h. 2547 1.1 christos (sparc_vxworks_exec_plt0_entry, sparc_vxworks_exec_plt_entry): New. 2548 1.1 christos (sparc_vxworks_shared_plt0_entry, sparc_vxworks_shared_plt_entry): New. 2549 1.1 christos (_bfd_sparc_elf_link_hash_table_create): Don't initialize 2550 1.1 christos build_plt_entry here. 2551 1.1 christos (create_got_section): Initialize sgotplt for VxWorks. 2552 1.1 christos (_bfd_sparc_elf_create_dynamic_sections): Initialize build_plt_entry, 2553 1.1 christos plt_header_size and plt_entry_size, with new VxWorks-specific settings. 2554 1.1 christos Call elf_vxworks_create_dynamic_sections for VxWorks. 2555 1.1 christos (allocate_dynrelocs): Use plt_header_size and plt_entry_size. 2556 1.1 christos Allocate room for .got.plt and .rela.plt.unloaded entries on VxWorks. 2557 1.1 christos (_bfd_sparc_elf_size_dynamic_sections): Don't allocate a nop in .plt 2558 1.1 christos for VxWorks. Check for the .got.plt section. 2559 1.1 christos (sparc_vxworks_build_plt_entry): New function. 2560 1.1 christos (_bfd_sparc_elf_finish_dynamic_symbol): Add handling of VxWorks PLTs. 2561 1.1 christos Don't make _GLOBAL_OFFSET_TABLE_ and _PROCEDURE_LINKAGE_TABLE_ 2562 1.1 christos absolute on VxWorks. 2563 1.1 christos (sparc32_finish_dyn): Add special handling for DT_RELASZ 2564 1.1 christos and DT_PLTGOT on VxWorks. 2565 1.1 christos (sparc_vxworks_finish_exec_plt): New. 2566 1.1 christos (sparc_vxworks_finish_shared_plt): New. 2567 1.1 christos (_bfd_sparc_elf_finish_dynamic_sections): Call them. 2568 1.1 christos Use plt_header_size and plt_entry_size. 2569 1.1 christos * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add is_vxworks, 2570 1.1 christos srelplt2, sgotplt, plt_header_size and plt_entry_size fields. 2571 1.1 christos * Makefile.am (elfxx-sparc.lo): Depend on elf-vxworks.h. 2572 1.1 christos (elf32-sparc.lo): Likewise. 2573 1.1 christos * Makefile.in: Regenerate. 2574 1.1 christos * targets.c (bfd_elf32_sparc_vxworks_vec): Declare. 2575 1.1 christos (_bfd_target_vector): Add a pointer to it. 2576 1.1 christos 2577 1.1 christos 2006-03-30 Ben Elliston <bje (a] au.ibm.com> 2578 1.1 christos 2579 1.1 christos PR ld/2267 2580 1.1 christos * elflink.c (elf_fixup_link_order): Ensure `elfsec' is not a 2581 1.1 christos special section number that exceeds the number of ELF sections 2582 1.1 christos (eg. SHN_MIPS_SCOMMON). 2583 1.1 christos 2584 1.1 christos 2006-03-27 Richard Sandiford <richard (a] codesourcery.com> 2585 1.1 christos 2586 1.1 christos * elfxx-mips.c (mips_got_entry): Add more commentary. 2587 1.1 christos (mips_elf_local_got_index): Use the hash table entry to record 2588 1.1 christos the GOT index of forced-local symbols. 2589 1.1 christos (mips_elf_initialize_tls_index): Rearrange code. Store the index 2590 1.1 christos in either the hash table entry or the mips_got_entry, not both. 2591 1.1 christos Add more commentary. 2592 1.1 christos (mips_elf_multi_got): Make sure the g->next is nonnull when calling 2593 1.1 christos mips_elf_initialize_tls_index. 2594 1.1 christos 2595 1.1 christos 2006-03-25 Bernd Schmidt <bernd.schmidt (a] analog.com> 2596 1.1 christos 2597 1.1 christos * elf32-bfin.c (bfd_const_reloc, bfd_oper_reloc, bfin_push_reloc, 2598 1.1 christos RELOC_STACK_SIZE, reloc_stack, reloc_stack_tos, is_reloc_stack_empty, 2599 1.1 christos reloc_stack_push, reloc_stack_pop, reloc_stack_operate, 2600 1.1 christos bfin_areloc_howto_table): Delete. All 2601 1.1 christos uses deleted as well. 2602 1.1 christos (bfin_reloc_map): Delete all stack relocs. 2603 1.1 christos (bfin_info_to_howto, bfin_bfd_reloc_type_lookup, 2604 1.1 christos bfin_reloc_type_lookup): Don't support them. 2605 1.1 christos (bfin_relocate_section): Don't try to handle them. 2606 1.1 christos 2607 1.1 christos * config.bfd (bfin-*-*): Add bfd_elf32_bfinfdpic_vec. 2608 1.1 christos * configure.in: Likewise. 2609 1.1 christos * configure: Regenerate. 2610 1.1 christos * elf32-bfin.c: Include "elf/dwarf2.h" and "hashtab.h". 2611 1.1 christos (BFIN_RELOC_MAX): Now 0x21. 2612 1.1 christos (bfin_howto_table, bfin_reloc_map): Add FD-PIC relocs. 2613 1.1 christos (bfd_elf32_bfinfdpic_vec): Declare. 2614 1.1 christos (IS_FDPIC): New macro. 2615 1.1 christos (struct bfinfdpic_elf_link_hash_table): New struct. 2616 1.1 christos (bfinfdpic_hash_table, bfinfdpic_got_section, 2617 1.1 christos bfinfdpic_gotrel_section, bfinfdpic_gotfixup_section, 2618 1.1 christos bfinfdpic_plt_setion, bfinfdpic_pltrel_section, 2619 1.1 christos bfinfdpic_relocs_info, bfinfdpic_got_initial_offset, 2620 1.1 christos bfinfdpic_plt_initial_offset): Accessor macros for it. 2621 1.1 christos (BFINFDPIC_SYM_LOCAL, BFINFDPIC_FUNCDESC_LOCAL): New macros. 2622 1.1 christos (struct bfinfdpic_relocs_info): New struct. 2623 1.1 christos (LZPLT_RESOLVER_EXTRA, LZPLT_NORMAL_SIZE, LZPLT_ENTRIES, 2624 1.1 christos BFINFDPIC_LZPLT_BLOCK_SIZE, BFINFDPIC_LZPLT_RESOLV_LOC, 2625 1.1 christos DEFAULT_STACK_SIZE): New macros. 2626 1.1 christos (bfinfdpic_elf_link_hash_table_create, bfinfdpic_relocs_info_hash, 2627 1.1 christos bfinfdpic_relocs_info_eq, bfinfdpics_relocs_info_find, 2628 1.1 christos bfinfdpic_relocs_info_for_global, bfinfdpic_relocs_info_for_local, 2629 1.1 christos bfinfdpic_pic_merge_early_relocs_info, _bfinfdpic_add_dyn_reloc, 2630 1.1 christos _bfinfdpic_add_rofixup, _bfinfdpic_osec_to_segment, 2631 1.1 christos _bfinfdpic_osec_readonly_p, bfinfdpic_relocate_section, 2632 1.1 christos bfinfdpic_check_relocs, bfinfdpic_gc_sweep_hook, 2633 1.1 christos _bfinfdpic_link_omit_section_dynsym, _bfin_create_got_section, 2634 1.1 christos elf32_bfinfdpic_create_dynamic_sections, _bfinfdpic_get_fd_entry, 2635 1.1 christos _bfinfdpic_compute_got_alloc_data, _bfinfdpic_get_got_entry, 2636 1.1 christos _bfinfdpic_assign_got_entries, _bfinfdpic_assign_plt_entries, 2637 1.1 christos _bfinfdpic_resolve_final_relocs_info, 2638 1.1 christos elf32_bfinfdpic_size_dynamic_sections, 2639 1.1 christos elf32_bfinfdpic_always_size_sections, 2640 1.1 christos elf32_bfinfdpic_modify_segment_map, 2641 1.1 christos _bfinfdpic_count_got_plt_entries, 2642 1.1 christos elf32_bfinfdpic_finish_dynamic_sections, 2643 1.1 christos elf32_bfinfdpic_adjust_dynamic_symbol, 2644 1.1 christos elf32_bfinfdpic_finish_dynamic_symbol, 2645 1.1 christos elf32_bfinfdpic_elf_use_relative_eh_frame, 2646 1.1 christos elf32_bfinfdpic_elf_encode_eh_address, 2647 1.1 christos elf32_bfin_object_p, bfin_elf_copy_private_bfd_data, 2648 1.1 christos elf32_bfinfdpic_copy_private_bfd_data, 2649 1.1 christos (struct _bfinfdpic_dynamic_got_info, 2650 1.1 christos struct _bfinfdpic_dynamic_got_plt_info): New structs. 2651 1.1 christos (elf32_bfin_print_private_bfd_data): Print PIC flags. 2652 1.1 christos (elf32_bfin_merge_private_bfd_data): Extend to support FD-PIC. 2653 1.1 christos (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, elf32_bed, 2654 1.1 christos elf_backend_got_header_size, bfd_elf32_bfd_link_hash_table_create, 2655 1.1 christos elf_backend_always_size_sectinos, elf_backend_modify_segment_map, 2656 1.1 christos bfd_elf32_bfd_copy_private_bfd_data, 2657 1.1 christos elf_backend_create_dynamic_sections, elf_backend_adjust_dynamic_symbol, 2658 1.1 christos elf_backend_size_dynamic_sections, elf_backend_finish_dynamic_symbol, 2659 1.1 christos elf_backend_finish_dynamic_sections, elf_backend_relocate_section, 2660 1.1 christos elf_backend_can_make_relative_eh_frame, elf_backend_check_relocs, 2661 1.1 christos elf_backend_can_make_ldsa_relative_eh_frame, elf_backend_may_use_rel_p, 2662 1.1 christos elf_backend_may_use_rela_p, elf_backend_default_use_rela_p, 2663 1.1 christos elf_backend_omit_section_dynsym): Redefine these macros and include 2664 1.1 christos "elf32-target.h" again to create the elf32-bfinfdpic target. 2665 1.1 christos * reloc.c (BFD_RELOC_BFIN_GOT17M4, BFD_RELOC_BFIN_GOTHI, 2666 1.1 christos BFD_RELOC_BFIN_GOTLO, BFD_RELOC_BFIN_FUNCDESC, 2667 1.1 christos BFD_RELOC_BFIN_FUNCDESC_GOT17M4, BFD_RELOC_BFIN_FUNCDESC_GOTHI, 2668 1.1 christos BFD_RELOC_BFIN_FUNCDESC_GOTLO, BFD_RELOC_BFIN_FUNCDESC_VALUE, 2669 1.1 christos BFD_RELOC_BFIN_FUNCDESC_GOTOFF17M4, BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI, 2670 1.1 christos BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO, BFD_RELOC_BFIN_GOTOFFHI, 2671 1.1 christos BFD_RELOC_BFIN_GOTOFFLO): New. 2672 1.1 christos * targets.c (bfd_elf32_bfinfdpic_vec): New bfd_target. 2673 1.1 christos (_bfd_target_vector): Add it. 2674 1.1 christos * bfd-in2.h: Regenerate. 2675 1.1 christos * libbfd.h: Regenerate. 2676 1.1 christos 2677 1.1 christos 2006-03-25 Richard Sandiford <richard (a] codesourcery.com> 2678 1.1 christos 2679 1.1 christos * cpu-m68k.c (bfd_m68k_compatible): Treat ISA A+ and ISA B code as 2680 1.1 christos incompatible. Likewise MAC and EMAC code. 2681 1.1 christos * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Use 2682 1.1 christos bfd_get_compatible to set the new bfd architecture. Rely on it 2683 1.1 christos to detect incompatibilities. 2684 1.1 christos 2685 1.1 christos 2006-03-23 Michael Matz <matz (a] suse.de> 2686 1.1 christos 2687 1.1 christos * reloc.c: Add BFD_RELOC_X86_64_GOT64, BFD_RELOC_X86_64_GOTPCREL64, 2688 1.1 christos BFD_RELOC_X86_64_GOTPC64, BFD_RELOC_X86_64_GOTPLT64, 2689 1.1 christos BFD_RELOC_X86_64_PLTOFF64. 2690 1.1 christos * bfd-in2.h: Regenerated. 2691 1.1 christos * libbfd.h: Regenerated. 2692 1.1 christos * elf64-x86-64.c (x86_64_elf_howto_table): Correct comment. 2693 1.1 christos Add howtos for above relocs. 2694 1.1 christos (x86_64_reloc_map): Add mappings for new relocs. 2695 1.1 christos (elf64_x86_64_check_relocs): R_X86_64_GOT64, R_X86_64_GOTPCREL64, 2696 1.1 christos R_X86_64_GOTPLT64 need a got entry. R_X86_64_GOTPLT64 also a PLT 2697 1.1 christos entry. R_X86_64_GOTPC64 needs a .got section. R_X86_64_PLTOFF64 2698 1.1 christos needs a PLT entry. 2699 1.1 christos (elf64_x86_64_gc_sweep_hook): Reflect changes from 2700 1.1 christos elf64_x86_64_check_relocs for the new relocs. 2701 1.1 christos (elf64_x86_64_relocate_section): Handle new relocs. 2702 1.1 christos 2703 1.1 christos 2006-03-22 Bob Wilson <bob.wilson (a] acm.org> 2704 1.1 christos 2705 1.1 christos * elf32-xtensa.c (xtensa_read_table_entries): Remove assertion that 2706 1.1 christos rel->r_addend is zero. 2707 1.1 christos 2708 1.1 christos 2006-03-22 Richard Sandiford <richard (a] codesourcery.com> 2709 1.1 christos 2710 1.1 christos * elfxx-mips.c (_bfd_mips_vxworks_finish_dynamic_symbol): Fix type 2711 1.1 christos of "loc". 2712 1.1 christos 2713 1.1 christos 2006-03-22 Richard Sandiford <richard (a] codesourcery.com> 2714 1.1 christos Daniel Jacobowitz <dan (a] codesourcery.com> 2715 1.1 christos Phil Edwards <phil (a] codesourcery.com> 2716 1.1 christos Zack Weinberg <zack (a] codesourcery.com> 2717 1.1 christos Mark Mitchell <mark (a] codesourcery.com> 2718 1.1 christos Nathan Sidwell <nathan (a] codesourcery.com> 2719 1.1 christos 2720 1.1 christos * bfd-in2.h: Regenerate. 2721 1.1 christos * config.bfd (mips*-*-vxworks*, mips*el-*-vxworks*): New stanzas. 2722 1.1 christos * configure.in (bfd_elf32_bigmips_vxworks_vec): New stanza. 2723 1.1 christos (bfd_elf32_littlemips_vxworks_vec): Likewise. 2724 1.1 christos (bfd_elf32_bigmips_vec): Add elf-vxworks.lo. 2725 1.1 christos (bfd_elf32_littlemips_vec): Likewise. 2726 1.1 christos (bfd_elf32_nbigmips_vec): Likewise. 2727 1.1 christos (bfd_elf32_nlittlemips_vec): Likewise. 2728 1.1 christos (bfd_elf32_ntradbigmips_vec): Likewise. 2729 1.1 christos (bfd_elf32_ntradlittlemips_vec): Likewise. 2730 1.1 christos (bfd_elf32_tradbigmips_vec): Likewise. 2731 1.1 christos (bfd_elf32_tradlittlemips_vec): Likewise. 2732 1.1 christos (bfd_elf64_bigmips_vec): Likewise. 2733 1.1 christos (bfd_elf64_littlemips_vec): Likewise. 2734 1.1 christos (bfd_elf64_tradbigmips_vec): Likewise. 2735 1.1 christos (bfd_elf64_tradlittlemips_vec): Likewise. 2736 1.1 christos * elf32-mips.c: Include elf-vxworks.h. 2737 1.1 christos (mips_info_to_howto_rel): Use elf_backend_mips_rtype_to_howto 2738 1.1 christos instead of calling mips_elf32_rtype_to_howto directly. 2739 1.1 christos (mips_vxworks_copy_howto_rela): New reloc howto. 2740 1.1 christos (mips_vxworks_jump_slot_howto_rela): Likewise. 2741 1.1 christos (mips_vxworks_bfd_reloc_type_lookup): New function. 2742 1.1 christos (mips_vxworks_rtype_to_howto): Likewise. 2743 1.1 christos (mips_vxworks_final_write_processing): Likewise. 2744 1.1 christos (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Override for VxWorks. 2745 1.1 christos (TARGET_BIG_SYM, TARGET_BIG_NAME, elf_bed, ELF_MAXPAGESIZE): Likewise. 2746 1.1 christos (elf_backend_want_got_plt): Likewise. 2747 1.1 christos (elf_backend_want_plt_sym): Likewise. 2748 1.1 christos (elf_backend_got_symbol_offset): Likewise. 2749 1.1 christos (elf_backend_want_dynbss): Likewise. 2750 1.1 christos (elf_backend_may_use_rel_p): Likewise. 2751 1.1 christos (elf_backend_may_use_rela_p): Likewise. 2752 1.1 christos (elf_backend_default_use_rela_p): Likewise. 2753 1.1 christos (elf_backend_got_header_size: Likewise. 2754 1.1 christos (elf_backend_plt_readonly): Likewise. 2755 1.1 christos (bfd_elf32_bfd_reloc_type_lookup): Likewise. 2756 1.1 christos (elf_backend_mips_rtype_to_howto): Likewise. 2757 1.1 christos (elf_backend_adjust_dynamic_symbol): Likewise. 2758 1.1 christos (elf_backend_finish_dynamic_symbol): Likewise. 2759 1.1 christos (bfd_elf32_bfd_link_hash_table_create): Likewise. 2760 1.1 christos (elf_backend_add_symbol_hook): Likewise. 2761 1.1 christos (elf_backend_link_output_symbol_hook): Likewise. 2762 1.1 christos (elf_backend_emit_relocs): Likewise. 2763 1.1 christos (elf_backend_final_write_processing: Likewise. 2764 1.1 christos (elf_backend_additional_program_headers): Likewise. 2765 1.1 christos (elf_backend_modify_segment_map): Likewise. 2766 1.1 christos (elf_backend_symbol_processing): Likewise. 2767 1.1 christos * elfxx-mips.c: Include elf-vxworks.h. 2768 1.1 christos (mips_elf_link_hash_entry): Add is_relocation_target and 2769 1.1 christos is_branch_target fields. 2770 1.1 christos (mips_elf_link_hash_table): Add is_vxworks, srelbss, sdynbss, srelplt, 2771 1.1 christos srelplt2, sgotplt, splt, plt_header_size and plt_entry_size fields. 2772 1.1 christos (MIPS_ELF_RELA_SIZE, MIPS_ELF_REL_DYN_NAME): New macros. 2773 1.1 christos (MIPS_RESERVED_GOTNO): Take a mips_elf_link_hash_table argument. 2774 1.1 christos Return 3 for VxWorks. 2775 1.1 christos (ELF_MIPS_GP_OFFSET): Change the argument from a bfd to a 2776 1.1 christos mips_elf_link_hash_table. Return 0 for VxWorks. 2777 1.1 christos (MIPS_ELF_GOT_MAX_SIZE): Change the argument from a bfd to a 2778 1.1 christos mips_elf_link_hash_table. Update the call to ELF_MIPS_GP_OFFSET. 2779 1.1 christos (mips_vxworks_exec_plt0_entry): New variable. 2780 1.1 christos (mips_vxworks_exec_plt_entry): Likewise. 2781 1.1 christos (mips_vxworks_shared_plt0_entry): Likewise. 2782 1.1 christos (mips_vxworks_shared_plt_entry): Likewise. 2783 1.1 christos (mips_elf_link_hash_newfunc): Initialize the new hash_entry fields. 2784 1.1 christos (mips_elf_rel_dyn_section): Change the bfd argument to a 2785 1.1 christos mips_elf_link_hash_table. Use MIPS_ELF_REL_DYN_NAME to get 2786 1.1 christos the name of the section. 2787 1.1 christos (mips_elf_initialize_tls_slots): Update the call to 2788 1.1 christos mips_elf_rel_dyn_section. 2789 1.1 christos (mips_elf_gotplt_index): New function. 2790 1.1 christos (mips_elf_local_got_index): Add an input_section argument. 2791 1.1 christos Update the call to mips_elf_create_local_got_entry. 2792 1.1 christos (mips_elf_got_page): Likewise. 2793 1.1 christos (mips_elf_got16_entry): Likewise. 2794 1.1 christos (mips_elf_create_local_got_entry): Add bfd_link_info and input_section 2795 1.1 christos arguments. Create dynamic relocations for each entry on VxWorks. 2796 1.1 christos (mips_elf_merge_gots): Update the use of MIPS_ELF_GOT_MAX_SIZE. 2797 1.1 christos (mips_elf_multi_got): Update the uses of MIPS_ELF_GOT_MAX_SIZE 2798 1.1 christos and MIPS_RESERVED_GOTNO. 2799 1.1 christos (mips_elf_create_got_section): Update the uses of 2800 1.1 christos MIPS_ELF_GOT_MAX_SIZE. Create .got.plt on VxWorks. 2801 1.1 christos (is_gott_symbol): New function. 2802 1.1 christos (mips_elf_calculate_relocation): Use a dynobj local variable. 2803 1.1 christos Update the calls to mips_elf_local_got_index, mips_elf_got16_entry and 2804 1.1 christos mips_elf_got_page_entry. Set G to the .got.plt entry when calculating 2805 1.1 christos VxWorks R_MIPS_CALL* relocations. Calculate and use G for all GOT 2806 1.1 christos relocations on VxWorks. Add dynamic relocations for references 2807 1.1 christos to the VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Don't 2808 1.1 christos create dynamic relocations for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 2809 1.1 christos in VxWorks executables. 2810 1.1 christos (mips_elf_allocate_dynamic_relocations): Add a bfd_link_info argument. 2811 1.1 christos Use MIPS_ELF_RELA_SIZE to calculate the size of a VxWorks entry. 2812 1.1 christos Don't allocate a null entry on VxWorks. 2813 1.1 christos (mips_elf_create_dynamic_relocation): Update the call to 2814 1.1 christos mips_elf_rel_dyn_section. Use absolute rather than relative 2815 1.1 christos relocations for VxWorks, and make them RELA rather than REL. 2816 1.1 christos (_bfd_mips_elf_create_dynamic_sections): Don't make .dynamic 2817 1.1 christos read-only on VxWorks. Update the call to mips_elf_rel_dyn_section. 2818 1.1 christos Create the .plt, .rela.plt, .dynbss and .rela.bss sections on 2819 1.1 christos VxWorks. Likewise create the _PROCEDURE_LINKAGE_TABLE symbol. 2820 1.1 christos Call elf_vxworks_create_dynamic_sections for VxWorks and 2821 1.1 christos initialize the plt_header_size and plt_entry_size fields. 2822 1.1 christos (_bfd_mips_elf_check_relocs): Don't allow GOT relocations to be 2823 1.1 christos used in VxWorks executables. Don't allocate dynamic relocations 2824 1.1 christos for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 in VxWorks executables. 2825 1.1 christos Set is_relocation_target for each symbol referenced by a relocation. 2826 1.1 christos Allocate .rela.dyn entries for relocations against the special 2827 1.1 christos VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Create GOT 2828 1.1 christos entries for all VxWorks R_MIPS_GOT16 relocations. Don't allocate 2829 1.1 christos a global GOT entry for symbols mentioned in VxWorks R_MIPS_CALL*, 2830 1.1 christos R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 relocations. Update the calls 2831 1.1 christos to mips_elf_rel_dyn_section and mips_elf_allocate_dynamic_relocations. 2832 1.1 christos Set is_branch_target for symbols mentioned in R_MIPS_PC16 or R_MIPS_26 2833 1.1 christos relocations. Don't set no_fn_stub on VxWorks. 2834 1.1 christos (_bfd_mips_elf_adjust_dynamic_symbol): Update the call to 2835 1.1 christos mips_elf_allocate_dynamic_relocations. 2836 1.1 christos (_bfd_mips_vxworks_adjust_dynamic_symbol): New function. 2837 1.1 christos (_bfd_mips_elf_always_size_sections): Do not allocate GOT page 2838 1.1 christos entries for VxWorks, and do not create multiple GOTs. 2839 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Use MIPS_ELF_REL_DYN_NAME. 2840 1.1 christos Handle .got specially for VxWorks. Update the uses of 2841 1.1 christos MIPS_RESERVED_GOTNO and mips_elf_allocate_dynamic_relocations. 2842 1.1 christos Check for sgotplt and splt. Allocate the .rel(a).dyn contents last, 2843 1.1 christos once its final size is known. Set DF_TEXTREL for VxWorks. Add 2844 1.1 christos DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL, DT_PLTRELSZ and DT_JMPREL 2845 1.1 christos tags on VxWorks. Do not add the MIPS-specific tags for VxWorks. 2846 1.1 christos (_bfd_mips_vxworks_finish_dynamic_symbol): New function. 2847 1.1 christos (mips_vxworks_finish_exec_plt): Likewise. 2848 1.1 christos (mips_vxworks_finish_shared_plt): Likewise. 2849 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Remove an unncessary call 2850 1.1 christos to mips_elf_rel_dyn_section. Use a VxWorks-specific value of 2851 1.1 christos DT_PLTGOT. Handle DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL, 2852 1.1 christos DT_PLTRELSZ and DT_JMPREL. Update the uses of MIPS_RESERVED_GOTNO 2853 1.1 christos and mips_elf_rel_dyn_section. Use a different GOT header for 2854 1.1 christos VxWorks. Don't sort .rela.dyn on VxWorks. Finish the PLT on VxWorks. 2855 1.1 christos (_bfd_mips_elf_link_hash_table_create): Initialize the new 2856 1.1 christos mips_elf_link_hash_table fields. 2857 1.1 christos (_bfd_mips_vxworks_link_hash_table_create): New function. 2858 1.1 christos (_bfd_mips_elf_final_link): Set the GP value to _GLOBAL_OFFSET_TABLE_ 2859 1.1 christos on VxWorks. Update the call to ELF_MIPS_GP_OFFSET. 2860 1.1 christos * elfxx-mips.h (_bfd_mips_vxworks_adjust_dynamic_symbol): Declare. 2861 1.1 christos (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise. 2862 1.1 christos (_bfd_mips_vxworks_link_hash_table_create): Likewise. 2863 1.1 christos * libbfd.h: Regenerate. 2864 1.1 christos * Makefile.am (elfxx-mips.lo): Depend on elf-vxworks.h. 2865 1.1 christos (elf32-mips.lo): Likewise. 2866 1.1 christos * Makefile.in: Regenerate. 2867 1.1 christos * reloc.c (BFD_RELOC_MIPS_COPY, BFD_RELOC_MIPS_JUMP_SLOT): Declare. 2868 1.1 christos * targets.c (bfd_elf32_bigmips_vxworks_vec): Declare. 2869 1.1 christos (bfd_elf32_littlemips_vxworks_vec): Likewise. 2870 1.1 christos (_bfd_target_vector): Add entries for them. 2871 1.1 christos 2872 1.1 christos 2006-03-19 John David Anglin <dave.anglin (a] nrc-cnrc.gc.ca> 2873 1.1 christos 2874 1.1 christos * elf64-hppa.c (elf64_hppa_special_sections): Change flags for .tbss 2875 1.1 christos section from SHF_PARISC_WEAKORDER to SHF_HP_TLS. 2876 1.1 christos (elf_backend_special_sections): Remove #undef. 2877 1.1 christos 2878 1.1 christos 2006-03-18 John David Anglin <dave.anglin (a] nrc-cnrc.gc.ca> 2879 1.1 christos 2880 1.1 christos * elf64-hppa.c (allocate_global_data_opd): Don't create an OPD entry 2881 1.1 christos for undefined weak symbols. 2882 1.1 christos 2883 1.1 christos 2006-03-17 Daniel Jacobowitz <dan (a] codesourcery.com> 2884 1.1 christos 2885 1.1 christos PR ld/2462 2886 1.1 christos * elflink.c (bfd_elf_final_link): Remove 2887 1.1 christos bed->elf_backend_emit_relocs from emit_relocs. 2888 1.1 christos 2889 1.1 christos 2006-03-17 Alexandre Oliva <aoliva (a] redhat.com> 2890 1.1 christos 2891 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Copy addend from 2892 1.1 christos first relocation to the second when relaxing TLS GD to LE; 2893 1.1 christos zero it out when relaxing to IE. 2894 1.1 christos 2895 1.1 christos 2006-03-17 Alan Modra <amodra (a] bigpond.net.au> 2896 1.1 christos 2897 1.1 christos PR 2434 2898 1.1 christos * elflink.c (elf_link_add_object_symbols): Save and restore 2899 1.1 christos warning sym's linked sym. 2900 1.1 christos 2901 1.1 christos 2006-03-16 Alan Modra <amodra (a] bigpond.net.au> 2902 1.1 christos 2903 1.1 christos PR 2434 2904 1.1 christos * elflink.c (struct elf_smash_syms_data, elf_smash_syms): Delete. 2905 1.1 christos (elf_link_add_object_symbols): Delete unnecessary locals. Rename 2906 1.1 christos hash_table -> htab. Formatting. Save entire symbol table 2907 1.1 christos before loading as-needed syms, and restore afterwards if lib not 2908 1.1 christos needed. Use bfd_hash_allocate rather than bfd_alloc for sym 2909 1.1 christos name. Free some buffers earlier. 2910 1.1 christos * bfd-in.h (struct bfd_hash_table): Add entsize. 2911 1.1 christos (bfd_hash_table_init, bfd_hash_table_init_n): Adjust prototype. 2912 1.1 christos * elf-bfd.h (_bfd_elf_link_hash_table_init): Likewise 2913 1.1 christos * hash.c (bfd_hash_table_init_n): Add entsize param, save to 2914 1.1 christos hash table. 2915 1.1 christos (bfd_hash_table_init): Add param, adjust calls. 2916 1.1 christos * aoutx.h: Adjust all hash_table_init functions and calls. 2917 1.1 christos * bfd.c: Likewise. 2918 1.1 christos * coff-arm.c: Likewise. 2919 1.1 christos * coff-h8300.c: Likewise. 2920 1.1 christos * coff-ppc.c: Likewise. 2921 1.1 christos * cofflink.c: Likewise. 2922 1.1 christos * ecoff.c: Likewise. 2923 1.1 christos * ecofflink.c: Likewise. 2924 1.1 christos * elf-m10300.c: Likewise. 2925 1.1 christos * elf-strtab.c: Likewise. 2926 1.1 christos * elf.c: Likewise. 2927 1.1 christos * elf32-arm.c: Likewise. 2928 1.1 christos * elf32-bfin.c: Likewise. 2929 1.1 christos * elf32-cris.c: Likewise. 2930 1.1 christos * elf32-frv.c: Likewise. 2931 1.1 christos * elf32-hppa.c: Likewise. 2932 1.1 christos * elf32-i386.c: Likewise. 2933 1.1 christos * elf32-m32r.c: Likewise. 2934 1.1 christos * elf32-m68hc1x.c: Likewise. 2935 1.1 christos * elf32-m68k.c: Likewise. 2936 1.1 christos * elf32-ppc.c: Likewise. 2937 1.1 christos * elf32-s390.c: Likewise. 2938 1.1 christos * elf32-sh.c: Likewise. 2939 1.1 christos * elf32-vax.c: Likewise. 2940 1.1 christos * elf64-alpha.c: Likewise. 2941 1.1 christos * elf64-hppa.c: Likewise. 2942 1.1 christos * elf64-ppc.c: Likewise. 2943 1.1 christos * elf64-s390.c: Likewise. 2944 1.1 christos * elf64-sh64.c: Likewise. 2945 1.1 christos * elf64-x86-64.c: Likewise. 2946 1.1 christos * elfxx-ia64.c: Likewise. 2947 1.1 christos * elfxx-mips.c: Likewise. 2948 1.1 christos * elfxx-sparc.c: Likewise. 2949 1.1 christos * i386linux.c: Likewise. 2950 1.1 christos * libaout.h: Likewise. 2951 1.1 christos * libbfd-in.h: Likewise. 2952 1.1 christos * libcoff-in.h: Likewise. 2953 1.1 christos * linker.c: Likewise. 2954 1.1 christos * m68klinux.c: Likewise. 2955 1.1 christos * merge.c: Likewise. 2956 1.1 christos * opncls.c: Likewise. 2957 1.1 christos * pdp11.c: Likewise. 2958 1.1 christos * sparclinux.c: Likewise. 2959 1.1 christos * stabs.c: Likewise. 2960 1.1 christos * sunos.c: Likewise. 2961 1.1 christos * vms.c: Likewise. 2962 1.1 christos * xcofflink.c: Likewise. 2963 1.1 christos * section.c (struct section_hash_entry): Move to.. 2964 1.1 christos * libbfd-in.h: ..here. 2965 1.1 christos * Makefile.am: Run "make dep-am" 2966 1.1 christos * Makefile.in: Regenerate. 2967 1.1 christos * bfd-in2.h: Regenerate. 2968 1.1 christos * libbfd.h: Regenerate. 2969 1.1 christos * libcoff.h: Regenerate. 2970 1.1 christos 2971 1.1 christos 2006-03-16 Alan Modra <amodra (a] bigpond.net.au> 2972 1.1 christos 2973 1.1 christos * elf32-ppc.c (ppc_elf_check_relocs): REL24 and REL14 relocs 2974 1.1 christos against __GLOBAL_OFFSET_TABLE__ need never be dynamic. Tweak 2975 1.1 christos last change to REL32 relocs so that they are counted as 2976 1.1 christos possibly dynamic as per REL24 and REL14. 2977 1.1 christos 2978 1.1 christos 2006-03-16 Alan Modra <amodra (a] bigpond.net.au> 2979 1.1 christos 2980 1.1 christos * elf32-ppc.c (ppc_elf_check_relocs): Don't fall into REL24 2981 1.1 christos checks from REL32. 2982 1.1 christos 2983 1.1 christos 2006-03-15 Ben Elliston <bje (a] au.ibm.com> 2984 1.1 christos 2985 1.1 christos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Iterate over all 2986 1.1 christos in_list elements, not just the first. 2987 1.1 christos 2988 1.1 christos 2006-03-14 Richard Sandiford <richard (a] codesourcery.com> 2989 1.1 christos 2990 1.1 christos * elf32-mips.c (mips_elf_adjust_addend): New function, mostly split 2991 1.1 christos out from... 2992 1.1 christos (_bfd_mips_elf_relocate_section): ...here. Use it to adjust r_addend 2993 1.1 christos for final links too. 2994 1.1 christos 2995 1.1 christos 2006-03-13 Richard Sandiford <richard (a] codesourcery.com> 2996 1.1 christos 2997 1.1 christos * elfxx-mips.c (mips_elf_create_got_section): Initialize hgot. 2998 1.1 christos 2999 1.1 christos 2006-03-11 H.J. Lu <hongjiu.lu (a] intel.com> 3000 1.1 christos 3001 1.1 christos PR ld/2443 3002 1.1 christos * dwarf2.c (concat_filename): Don't issue an error if file is 0. 3003 1.1 christos 3004 1.1 christos 2006-03-10 Paul Brook <paul (a] codesourcery.com> 3005 1.1 christos 3006 1.1 christos * elf32-arm.c (INTERWORK_FLAG): Handle EABIv5. 3007 1.1 christos (elf32_arm_print_private_bfd_data): Ditto. 3008 1.1 christos 3009 1.1 christos 2006-03-09 Paul Brook <paul (a] codesourcery.com> 3010 1.1 christos 3011 1.1 christos * cpu-arm.c (bfd_is_arm_mapping_symbol_name): Recognise additional 3012 1.1 christos mapping symbols. 3013 1.1 christos 3014 1.1 christos 2006-03-09 Khem Raj <khem (a] mvista.com> 3015 1.1 christos 3016 1.1 christos * elf32-arm.c(elf32_arm_finish_dynamic_sections): Use unsigned 3017 1.1 christos char type. 3018 1.1 christos 3019 1.1 christos 2006-03-08 H.J. Lu <hongjiu.lu (a] intel.com> 3020 1.1 christos 3021 1.1 christos * elfxx-ia64.c (elfNN_ia64_choose_gp): Properly choose gp. 3022 1.1 christos 3023 1.1 christos 2006-03-07 Richard Sandiford <richard (a] codesourcery.com> 3024 1.1 christos Daniel Jacobowitz <dan (a] codesourcery.com> 3025 1.1 christos Zack Weinberg <zack (a] codesourcery.com> 3026 1.1 christos Nathan Sidwell <nathan (a] codesourcery.com> 3027 1.1 christos Paul Brook <paul (a] codesourcery.com> 3028 1.1 christos Ricardo Anguiano <anguiano (a] codesourcery.com> 3029 1.1 christos Phil Edwards <phil (a] codesourcery.com> 3030 1.1 christos 3031 1.1 christos * configure.in (bfd_elf32_bigarm_vec): Include elf-vxworks.lo. 3032 1.1 christos (bfd_elf32_bigarm_symbian_vec): Likewise. 3033 1.1 christos (bfd_elf32_bigarm_vxworks_vec): Likewise. 3034 1.1 christos (bfd_elf32_littlearm_vec): Likewise. 3035 1.1 christos (bfd_elf32_littlearm_symbian_vec): Likewise. 3036 1.1 christos (bfd_elf32_littlearm_vxworks_vec): Likewise. 3037 1.1 christos * configure: Regenerate. 3038 1.1 christos * elf32-arm.c: Include libiberty.h and elf-vxworks.h. 3039 1.1 christos (RELOC_SECTION, RELOC_SIZE, SWAP_RELOC_IN, SWAP_RELOC_OUT): New macros. 3040 1.1 christos (elf32_arm_vxworks_bed): Add forward declaration. 3041 1.1 christos (elf32_arm_howto_table_1): Fix the masks for R_ASM_ABS12. 3042 1.1 christos (elf32_arm_vxworks_exec_plt0_entry): New table. 3043 1.1 christos (elf32_arm_vxworks_exec_plt_entry): Likewise. 3044 1.1 christos (elf32_arm_vxworks_shared_plt_entry): Likewise. 3045 1.1 christos (elf32_arm_link_hash_table): Add vxworks_p and srelplt2 fields. 3046 1.1 christos (reloc_section_p): New function. 3047 1.1 christos (create_got_section): Use RELOC_SECTION. 3048 1.1 christos (elf32_arm_create_dynamic_sections): Likewise. Call 3049 1.1 christos elf_vxworks_create_dynamic_sections for VxWorks targets. 3050 1.1 christos Choose between the two possible values of plt_header_size 3051 1.1 christos and plt_entry_size. 3052 1.1 christos (elf32_arm_link_hash_table_create): Initialize vxworks_p and srelplt2. 3053 1.1 christos (elf32_arm_abs12_reloc): New function. 3054 1.1 christos (elf32_arm_final_link_relocate): Call it. Allow the creation of 3055 1.1 christos dynamic R_ARM_ABS12 relocs on VxWorks. Use reloc_section_p, 3056 1.1 christos RELOC_SIZE, SWAP_RELOC_OUT and RELOC_SECTION. Initialize the 3057 1.1 christos r_addend fields of relocs. On rela targets, skip any code that 3058 1.1 christos adjusts in-place addends. When using _bfd_link_final_relocate 3059 1.1 christos to perform a final relocation, pass rel->r_addend as the addend 3060 1.1 christos argument. 3061 1.1 christos (elf32_arm_merge_private_bfd_data): If one of the bfds is a VxWorks 3062 1.1 christos object, ignore flags that are not standard on VxWorks. 3063 1.1 christos (elf32_arm_check_relocs): Allow the creation of dynamic R_ARM_ABS12 3064 1.1 christos relocs on VxWorks. Use reloc_section_p. 3065 1.1 christos (elf32_arm_adjust_dynamic_symbol): Use RELOC_SECTION and RELOC_SIZE. 3066 1.1 christos (allocate_dynrelocs): Use RELOC_SIZE. Account for the size of 3067 1.1 christos .rela.plt.unloaded relocs on VxWorks targets. 3068 1.1 christos (elf32_arm_size_dynamic_sections): Use RELOC_SIZE. Check for 3069 1.1 christos .rela.plt.unloaded as well as .rel(a).plt. Add DT_RELA* tags 3070 1.1 christos instead of DT_REL* tags on RELA targets. 3071 1.1 christos (elf32_arm_finish_dynamic_symbol): Use RELOC_SECTION, RELOC_SIZE 3072 1.1 christos and SWAP_RELOC_OUT. Initialize r_addend fields. Handle VxWorks 3073 1.1 christos PLT entries. Do not make _GLOBAL_OFFSET_TABLE_ absolute on VxWorks. 3074 1.1 christos (elf32_arm_finish_dynamic_sections): Use RELOC_SECTION, RELOC_SIZE 3075 1.1 christos and SWAP_RELOC_OUT. Initialize r_addend fields. Handle DT_RELASZ 3076 1.1 christos like DT_RELSZ. Handle the VxWorks form of initial PLT entry. 3077 1.1 christos Correct the .rela.plt.unreloaded symbol indexes. 3078 1.1 christos (elf32_arm_output_symbol_hook): Call the VxWorks version of this 3079 1.1 christos hook on VxWorks targets. 3080 1.1 christos (elf32_arm_vxworks_link_hash_table_create): Set vxworks_p to true. 3081 1.1 christos Minor formatting tweak. 3082 1.1 christos (elf32_arm_vxworks_final_write_processing): New function. 3083 1.1 christos (elf_backend_add_symbol_hook): Override for VxWorks and reset 3084 1.1 christos for Symbian. 3085 1.1 christos (elf_backend_final_write_processing): Likewise. 3086 1.1 christos (elf_backend_emit_relocs): Likewise. 3087 1.1 christos (elf_backend_want_plt_sym): Likewise. 3088 1.1 christos (ELF_MAXPAGESIZE): Likewise. 3089 1.1 christos (elf_backend_may_use_rel_p): Minor formatting tweak. 3090 1.1 christos (elf_backend_may_use_rela_p): Likewise. 3091 1.1 christos (elf_backend_default_use_rela_p): Likewise. 3092 1.1 christos (elf_backend_rela_normal): Likewise. 3093 1.1 christos * Makefile.in (elf32-arm.lo): Depend on elf-vxworks.h. 3094 1.1 christos 3095 1.1 christos 2006-03-06 Nathan Sidwell <nathan (a] codesourcery.com> 3096 1.1 christos 3097 1.1 christos * archures.c (bfd_mach_mcf_isa_a_nodiv, bfd_mach_mcf_isa_b_nousp): 3098 1.1 christos New. Adjust other variants. 3099 1.1 christos (bfd_default_scan): Update. 3100 1.1 christos * bfd-in2.h: Rebuilt. 3101 1.1 christos * cpu-m68k.c: Adjust. 3102 1.1 christos (bfd_m68k_compatible): New. Use it for architectures. 3103 1.1 christos * elf32-m68k.c (elf32_m68k_object_p): Adjust. 3104 1.1 christos (elf32_m68k_merge_private_bfd_data): Adjust. Correct isa-a/b 3105 1.1 christos mismatch. 3106 1.1 christos (elf32_m68k_print_private_bfd_data): Adjust. 3107 1.1 christos * ieee.c (ieee_write_processor): Adjust. 3108 1.1 christos 3109 1.1 christos 2006-03-06 Alan Modra <amodra (a] bigpond.net.au> 3110 1.1 christos 3111 1.1 christos * dwarf2.c: Formatting. 3112 1.1 christos (add_line_info): Remove outer loop. 3113 1.1 christos 3114 1.1 christos 2006-03-05 H.J. Lu <hongjiu.lu (a] intel.com> 3115 1.1 christos Alan Modra <amodra (a] bigpond.net.au> 3116 1.1 christos 3117 1.1 christos PR binutils/2338 3118 1.1 christos * dwarf2.c (loadable_section): New struct. 3119 1.1 christos (dwarf2_debug): Add loadable_section_count and 3120 1.1 christos loadable_sections. 3121 1.1 christos (new_line_sorts_after): New. 3122 1.1 christos (add_line_info): Use new_line_sorts_after to compare line 3123 1.1 christos addresses. 3124 1.1 christos (check_function_name): Removed. 3125 1.1 christos (unset_sections): New. 3126 1.1 christos (place_sections): New. 3127 1.1 christos (_bfd_dwarf2_find_nearest_line): Updated. Call place_sections 3128 1.1 christos and unset_sections on relocatable files. 3129 1.1 christos (_bfd_dwarf2_find_line): Likewise. 3130 1.1 christos 3131 1.1 christos 2006-03-03 Nick Clifton <nickc (a] redhat.com> 3132 1.1 christos 3133 1.1 christos * cpu-avr.c: Update to ISO-C90 formatting. 3134 1.1 christos * elf32-avr.c: Likewise. 3135 1.1 christos 3136 1.1 christos 2006-03-03 Bjoern Haase <bjoern.m.haase (a] web.de> 3137 1.1 christos 3138 1.1 christos * elf32-avr.c (avr_reloc_map): Insert BFD_RELOC_AVR_MS8_LDI 3139 1.1 christos and R_AVR_MS8_LDI 3140 1.1 christos (bfd_elf_avr_final_write_processing): Set 3141 1.1 christos EF_AVR_LINKRELAX_PREPARED in e_flags field. 3142 1.1 christos (elf32_avr_relax_section): New function. 3143 1.1 christos (elf32_avr_relax_delete_bytes): New function. 3144 1.1 christos (elf32_avr_get_relocated_section_contents): New function. 3145 1.1 christos (avr_pc_wrap_around): New function. 3146 1.1 christos (avr_relative_distance_considering_wrap_around): New function. 3147 1.1 christos (avr_final_link_relocate): Handle negative int8t_t immediate for R_AVR_LDI. 3148 1.1 christos * reloc.c: Add BFD_RELOC_AVR_MS8_LDI and BFD_RELOC_AVR_LDI_NEG 3149 1.1 christos * libbfd.h: Regenerate. 3150 1.1 christos * bfd-in2.h: Regenerate. 3151 1.1 christos 3152 1.1 christos 2006-03-02 DJ Delorie <dj (a] redhat.com> 3153 1.1 christos 3154 1.1 christos * elf32-m32c.c (m32c_offset_for_reloc): Fix local symbol 3155 1.1 christos calculations. 3156 1.1 christos 3157 1.1 christos 2006-03-02 Richard Sandiford <richard (a] codesourcery.com> 3158 1.1 christos 3159 1.1 christos * elf32-ppc.c (is_ppc_elf_target): Return true if the target is 3160 1.1 christos bfd_elf32_powerpc_vxworks_vec. 3161 1.1 christos 3162 1.1 christos 2006-03-02 Nick Clifton <nickc (a] redhat.com> 3163 1.1 christos 3164 1.1 christos * elf32-m32c.c (m32c_elf_relax_section): Initialise 'gap'. 3165 1.1 christos 3166 1.1 christos 2006-03-02 Richard Sandiford <richard (a] codesourcery.com> 3167 1.1 christos 3168 1.1 christos * elf32-i386.c (elf_i386_create_dynamic_sections): Use 3169 1.1 christos elf_vxworks_create_dynamic_sections. 3170 1.1 christos (elf_i386_size_dynamic_sections): Remove VxWorks GOT and PLT 3171 1.1 christos symbol handling. 3172 1.1 christos * elf32-ppc.c (ppc_elf_create_dynamic_sections): Use 3173 1.1 christos elf_vxworks_create_dynamic_sections. 3174 1.1 christos (ppc_elf_size_dynamic_sections): Remove VxWorks GOT and PLT 3175 1.1 christos symbol handling. 3176 1.1 christos * elf-vxworks.c (elf_vxworks_create_dynamic_sections): New function. 3177 1.1 christos * elf-vxworks.h (elf_vxworks_create_dynamic_sections): Declare. 3178 1.1 christos 3179 1.1 christos 2006-03-02 Richard Sandiford <richard (a] codesourcery.com> 3180 1.1 christos 3181 1.1 christos * elf32-i386.c (elf_i386_vxworks_link_output_symbol_hook): Delete. 3182 1.1 christos (elf_backend_link_output_symbol_hook): Use 3183 1.1 christos elf_vxworks_link_output_symbol_hook instead. 3184 1.1 christos * elf32-ppc.c (elf_i386_vxworks_link_output_symbol_hook): Delete. 3185 1.1 christos (elf_backend_link_output_symbol_hook): Use 3186 1.1 christos elf_vxworks_link_output_symbol_hook instead. 3187 1.1 christos * elf-vxworks.c (elf_vxworks_link_output_symbol_hook): Provide the 3188 1.1 christos same interface as elf_backend_link_output_symbol_hook. 3189 1.1 christos * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Update 3190 1.1 christos prototype accordingly. 3191 1.1 christos 3192 1.1 christos 2006-03-02 Richard Sandiford <richard (a] codesourcery.com> 3193 1.1 christos 3194 1.1 christos * elf32-ppc.c (ppc_elf_plt_type): New enumeration. 3195 1.1 christos (ppc_elf_link_hash_table): Replace old_got and new_got with 3196 1.1 christos plt_type and can_use_new_plt. 3197 1.1 christos (ppc_elf_create_dynamic_sections): Add SEC_HAS_CONTENTS, 3198 1.1 christos SEC_LOAD and SEC_READONLY to the VxWorks .plt flags. 3199 1.1 christos (ppc_elf_check_relocs): Set can_use_new_plt instead of new_plt. 3200 1.1 christos Move from plt_type == PLT_UNSET to PLT_OLD instead of setting old_plt. 3201 1.1 christos (ppc_elf_select_plt_layout): Move from plt_type == PLT_UNSET to 3202 1.1 christos either plt_type == PLT_OLD or plt_type == PLT_NEW. Assert that 3203 1.1 christos this function should not be called for VxWorks targets. 3204 1.1 christos (ppc_elf_tls_setup): Use plt_type instead of old_got. 3205 1.1 christos (allocate_got): Likewise. Rearrange so that max_before_header 3206 1.1 christos is only used for PLT_OLD and PLT_NEW. 3207 1.1 christos (allocate_dynrelocs): Use plt_type instead of old_got and is_vxworks. 3208 1.1 christos (ppc_elf_size_dynamic_sections): Likewise. 3209 1.1 christos (ppc_elf_relax_section): Likewise. 3210 1.1 christos (ppc_elf_relocate_section): Likewise. 3211 1.1 christos (ppc_elf_finish_dynamic_symbol): Likewise. 3212 1.1 christos (ppc_elf_vxworks_link_hash_table_create): Initialize plt_type. 3213 1.1 christos 3214 1.1 christos 2006-02-28 Richard Sandiford <richard (a] codesourcery.com> 3215 1.1 christos 3216 1.1 christos * elf32-i386.c (elf_i386_link_hash_table): Add next_tls_desc_index. 3217 1.1 christos (elf_i386_link_hash_table_create): Initialize it. 3218 1.1 christos (elf_i386_compute_jump_table_size): Use it instead of 3219 1.1 christos srelplt->reloc_count. 3220 1.1 christos (allocate_dynrelocs): Likewise. 3221 1.1 christos (elf_i386_size_dynamic_sections): Likewise. 3222 1.1 christos (elf_i386_relocate_section): Likewise. 3223 1.1 christos 3224 1.1 christos 2006-02-27 Jakub Jelinek <jakub (a] redhat.com> 3225 1.1 christos 3226 1.1 christos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Handle S flag. 3227 1.1 christos (_bfd_elf_write_section_eh_frame): Likewise. 3228 1.1 christos 3229 1.1 christos 2006-02-27 Carlos O'Donell <carlos (a] codesourcery.com> 3230 1.1 christos 3231 1.1 christos * po/Make-in: Add html target. 3232 1.1 christos 3233 1.1 christos 2006-02-27 Richard Sandiford <richard (a] codesourcery.com> 3234 1.1 christos 3235 1.1 christos * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_symbol): Use the 3236 1.1 christos cached hgot entry to check for _GLOBAL_OFFSET_TABLE_. 3237 1.1 christos * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Likewise. 3238 1.1 christos * elf32-bfin.c (bfin_finish_dynamic_symbol): Likewise. 3239 1.1 christos * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise. 3240 1.1 christos * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise. 3241 1.1 christos * elf32-i386.c (elf_i386_finish_dynamic_symbol): Likewise. 3242 1.1 christos * elf32-m32r.c (m32r_elf_finish_dynamic_symbol): Likewise. 3243 1.1 christos * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Likewise. 3244 1.1 christos * elf32-sh.c (sh_elf_finish_dynamic_symbol): Likewise. 3245 1.1 christos * elf32-vax.c (elf_vax_finish_dynamic_symbol): Likewise. 3246 1.1 christos * elf32-xtensa.c (elf_xtensa_finish_dynamic_symbol): Likewise. 3247 1.1 christos * elf64-sh64.c (sh64_elf64_finish_dynamic_symbol): Likewise. 3248 1.1 christos * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Likewise. 3249 1.1 christos * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Likewise. 3250 1.1 christos * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise. Also use 3251 1.1 christos the cached hplt entry to check for _PROCEDURE_LINKAGE_TABLE_. 3252 1.1 christos * elf64-alpha.c (elf64_alpha_finish_dynamic_symbol): Likewise. 3253 1.1 christos * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. 3254 1.1 christos * elfxx-ia64.c (elfNN_ia64_finish_dynamic_symbol): Likewise. 3255 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. 3256 1.1 christos 3257 1.1 christos 2006-02-25 Richard Sandiford <richard (a] codesourcery.com> 3258 1.1 christos 3259 1.1 christos * elf-bfd.h (elf_link_hash_table): Add hplt field. 3260 1.1 christos * elflink.c (_bfd_elf_create_dynamic_sections): Initialize it. 3261 1.1 christos * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Likewise. 3262 1.1 christos * elf32-frv.c (_frv_create_got_section): Likewise. 3263 1.1 christos * elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise. 3264 1.1 christos * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise. 3265 1.1 christos * elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise. 3266 1.1 christos * elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise. 3267 1.1 christos * elf32-i386.c (elf_i386_link_hash_table): Remove hgot and hplt. 3268 1.1 christos (elf_i386_link_hash_table_create): Don't initialize them. 3269 1.1 christos (elf_i386_size_dynamic_sections): Use the generic ELF hplt and 3270 1.1 christos hgot fields. 3271 1.1 christos (elf_i386_finish_dynamic_symbol): Likewise. 3272 1.1 christos * elf32-ppc.c (ppc_elf_link_hash_table): Remove hplt. 3273 1.1 christos (ppc_elf_size_dynamic_sections): Use the generic ELF hplt fields. 3274 1.1 christos (ppc_elf_finish_dynamic_symbol): Likewise. 3275 1.1 christos 3276 1.1 christos 2006-02-24 DJ Delorie <dj (a] redhat.com> 3277 1.1 christos 3278 1.1 christos * elf32-m32c.c (m32c_elf_howto_table): Add relaxation relocs. 3279 1.1 christos (m32c_elf_relocate_section): Don't relocate them. 3280 1.1 christos (compare_reloc): New. 3281 1.1 christos (relax_reloc): Remove. 3282 1.1 christos (m32c_offset_for_reloc): New. 3283 1.1 christos (m16c_addr_encodings): New. 3284 1.1 christos (m16c_jmpaddr_encodings): New. 3285 1.1 christos (m32c_addr_encodings): New. 3286 1.1 christos (m32c_elf_relax_section): Relax jumps and address displacements. 3287 1.1 christos (m32c_elf_relax_delete_bytes): Adjust for internal syms. Fix up 3288 1.1 christos short jumps. 3289 1.1 christos 3290 1.1 christos * reloc.c: Add m32c relax relocs. 3291 1.1 christos * libbfd.h: Regenerate. 3292 1.1 christos * bfd-in2.h: Regenerate. 3293 1.1 christos 3294 1.1 christos 2006-02-24 H.J. Lu <hongjiu.lu (a] intel.com> 3295 1.1 christos 3296 1.1 christos PR ld/2218 3297 1.1 christos * elf-bfd.h (elf_backend_data): Add elf_backend_fixup_symbol. 3298 1.1 christos (_bfd_elf_link_hash_fixup_symbol): New. 3299 1.1 christos 3300 1.1 christos * elflink.c (_bfd_elf_link_hash_fixup_symbol): New. 3301 1.1 christos (_bfd_elf_fix_symbol_flags): Call elf_backend_fixup_symbol if 3302 1.1 christos it isn't NULL. 3303 1.1 christos 3304 1.1 christos * elfxx-ia64.c (elf_backend_fixup_symbol): Defined. 3305 1.1 christos 3306 1.1 christos * elfxx-target.h (elf_backend_fixup_symbol): New. 3307 1.1 christos (elfNN_bed): Initialize elf_backend_fixup_symbol. 3308 1.1 christos 3309 1.1 christos 2006-02-23 H.J. Lu <hongjiu.lu (a] intel.com> 3310 1.1 christos 3311 1.1 christos * cpu-ia64-opc.c (ins_immu5b): New. 3312 1.1 christos (ext_immu5b): Likewise. 3313 1.1 christos (elf64_ia64_operands): Add IMMU5b. 3314 1.1 christos 3315 1.1 christos 2006-02-21 Alan Modra <amodra (a] bigpond.net.au> 3316 1.1 christos 3317 1.1 christos PR ld/2218 3318 1.1 christos * elf32-arm.c (allocate_dynrelocs): Ensure undef weak sym in pie 3319 1.1 christos is dynamic. 3320 1.1 christos * elf32-hppa.c (allocate_dynrelocs): Likewise. 3321 1.1 christos * elf32-i386.c (allocate_dynrelocs): Likewise. 3322 1.1 christos * elf32-s390.c (allocate_dynrelocs): Likewise. 3323 1.1 christos * elf32-sh.c (allocate_dynrelocs): Likewise. 3324 1.1 christos * elf64-s390.c (allocate_dynrelocs): Likewise. 3325 1.1 christos * elf64-x86-64.c (allocate_dynrelocs): Likewise. 3326 1.1 christos * elf32-m32r.c (allocate_dynrelocs): Likewise. Discard relocs 3327 1.1 christos on undef weak with non-default visibility too. 3328 1.1 christos * elfxx-sparc.c (allocate_dynrelocs): Ditto. 3329 1.1 christos 3330 1.1 christos 2006-02-21 Alan Modra <amodra (a] bigpond.net.au> 3331 1.1 christos 3332 1.1 christos * bfd.c: (_bfd_default_error_handler): Don't call abort on 3333 1.1 christos error, instead call _exit. 3334 1.1 christos (_bfd_abort): Call _exit not xexit. 3335 1.1 christos 3336 1.1 christos 2006-02-17 Kevin Buettner <kevinb (a] redhat.com> 3337 1.1 christos 3338 1.1 christos * elf32-frv.c (elf32_frv_grok_prstatus, elf32_frv_grok_psinfo): 3339 1.1 christos New functions. 3340 1.1 christos * elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define. 3341 1.1 christos 3342 1.1 christos 2006-02-17 Shrirang Khisti <shrirangk (a] kpitcummins.com> 3343 1.1 christos Anil Paranjape <anilp1 (a] kpitcummins.com> 3344 1.1 christos Shilin Shakti <shilins (a] kpitcummins.com> 3345 1.1 christos 3346 1.1 christos * Makefile.am: Add xc16x related entry 3347 1.1 christos * Makefile.in: Regenerate 3348 1.1 christos * archures.c: Add bfd_xc16x_arch 3349 1.1 christos * bfd-in2.h: Regenerate 3350 1.1 christos * config.bfd: Add xc16x-*-elf 3351 1.1 christos * configure.in: Add bfd_elf32_xc16x_vec 3352 1.1 christos * configure: Regenerate. 3353 1.1 christos * targets.c: Added xc16x related information 3354 1.1 christos * cpu-xc16x.c: New file 3355 1.1 christos * reloc.c: Add new relocations specific to xc16x: 3356 1.1 christos BFD_RELOC_XC16X_PAG, BFD_RELOC_XC16X_POF, BFD_RELOC_XC16X_SEG, 3357 1.1 christos BFD_RELOC_XC16X_SOF 3358 1.1 christos * elf32-xc16x.c: New file. 3359 1.1 christos 3360 1.1 christos 2006-02-17 Alan Modra <amodra (a] bigpond.net.au> 3361 1.1 christos 3362 1.1 christos * elf32-ppc.c (allocate_dynrelocs): Tweak undef weak handling. 3363 1.1 christos * elf64-ppc.c (allocate_dynrelocs): Likewise. 3364 1.1 christos 3365 1.1 christos 2006-02-17 Alan Modra <amodra (a] bigpond.net.au> 3366 1.1 christos 3367 1.1 christos PR ld/2218 3368 1.1 christos * elf64-ppc.c (allocate_dynrelocs): Ensure undef weak sym is 3369 1.1 christos dynamic. 3370 1.1 christos (ppc64_elf_relocate_section): Check output reloc section size. 3371 1.1 christos * elf32-ppc.c (allocate_dynrelocs): Simplify undef weak test. 3372 1.1 christos 3373 1.1 christos 2006-02-16 H.J. Lu <hongjiu.lu (a] intel.com> 3374 1.1 christos 3375 1.1 christos PR ld/2322 3376 1.1 christos * elf.c (get_segment_type): New function. 3377 1.1 christos (_bfd_elf_print_private_bfd_data): Use it. 3378 1.1 christos (print_segment_map): New function. 3379 1.1 christos (assign_file_positions_for_segments): Call print_segment_map 3380 1.1 christos when there are not enough room for program headers. 3381 1.1 christos 3382 1.1 christos 2006-02-16 Nick Hudson <nick.hudson (a] dsl.pipex.com> 3383 1.1 christos 3384 1.1 christos * config.bfd (mips*el-*-netbsd*, mips*-*-netbsd*): Use 3385 1.1 christos traditional MIPS ELF targets. 3386 1.1 christos 3387 1.1 christos 2006-02-15 H.J. Lu <hongjiu.lu (a] intel.com> 3388 1.1 christos 3389 1.1 christos PR binutils/2338 3390 1.1 christos * dwarf2.c (check_function_name): New function. 3391 1.1 christos (_bfd_dwarf2_find_nearest_line): Use check_function_name to 3392 1.1 christos check if function is correct. 3393 1.1 christos 3394 1.1 christos 2006-02-16 Alan Modra <amodra (a] bigpond.net.au> 3395 1.1 christos 3396 1.1 christos * elflink.c (_bfd_elf_default_action_discarded): Return 0 for 3397 1.1 christos debug sections. 3398 1.1 christos (elf_link_input_bfd): Adjust comments. 3399 1.1 christos 3400 1.1 christos 2006-02-10 H.J. Lu <hongjiu.lu (a] intel.com> 3401 1.1 christos 3402 1.1 christos * elf.c (copy_private_bfd_data): Minor update. 3403 1.1 christos 3404 1.1 christos 2006-02-10 H.J. Lu <hongjiu.lu (a] intel.com> 3405 1.1 christos 3406 1.1 christos PR binutils/2258 3407 1.1 christos * elf.c (copy_private_bfd_data): Renamed to ... 3408 1.1 christos (rewrite_elf_program_header): This. 3409 1.1 christos (copy_elf_program_header): New function. 3410 1.1 christos (copy_private_bfd_data): Likewise. 3411 1.1 christos 3412 1.1 christos 2006-02-07 Nathan Sidwell <nathan (a] codesourcery.com> 3413 1.1 christos 3414 1.1 christos * archures.c (bfd_mach_mcf5200, bfd_mach_mcf5206e, 3415 1.1 christos bfd_mach_mcf5307, bfd_mach_mcf5407, bfd_mach_mcf528x, 3416 1.1 christos bfd_mach_mcfv4e, bfd_mach_mcf521x, bfd_mach_mcf5249, 3417 1.1 christos bfd_mach_mcf547x, bfd_mach_mcf548x): Remove. 3418 1.1 christos (bfd_mach_mcf_isa_a, bfd_mach_mcf_isa_a_div, 3419 1.1 christos bfd_mach_mcf_isa_a_div_mac, bfd_mach_mcf_isa_a_div_emac, 3420 1.1 christos bfd_mach_mcf_isa_aplus, bfd_mach_mcf_isa_aplus_mac, 3421 1.1 christos bfd_mach_mcf_isa_aplus_emac, bfd_mach_mcf_isa_aplus_usp, 3422 1.1 christos bfd_mach_mcf_isa_aplus_usp_mac, bfd_mach_mcf_isa_aplus_usp_emac, 3423 1.1 christos bfd_mach_mcf_isa_b, bfd_mach_mcf_isa_b_mac, bfd_mach_mcf_isa_b_emac, 3424 1.1 christos bfd_mach_mcf_isa_b_usp_float, bfd_mach_mcf_isa_b_usp_float_mac, 3425 1.1 christos bfd_mach_mcf_isa_b_usp_float_emac): New. 3426 1.1 christos (bfd_default_scan): Update coldfire mapping. 3427 1.1 christos * bfd-in.h (bfd_m68k_mach_to_features, 3428 1.1 christos bfd_m68k_features_to_mach): Declare. 3429 1.1 christos * bfd-in2.h: Rebuilt. 3430 1.1 christos * cpu-m68k.c (arch_info_struct): Add new coldfire machines, 3431 1.1 christos adjust legacy names. 3432 1.1 christos (m68k_arch_features): New. 3433 1.1 christos (bfd_m68k_mach_to_features, 3434 1.1 christos bfd_m68k_features_to_mach): Define. 3435 1.1 christos * elf32-m68k.c (elf32_m68k_object_p): New. 3436 1.1 christos (elf32_m68k_merge_private_bfd_data): Merge the CF EF flags. 3437 1.1 christos (elf32_m68k_print_private_bfd_data): Print the CF EF flags. 3438 1.1 christos (elf_backend_object_p): Define. 3439 1.1 christos * ieee.c (ieee_write_processor): Update coldfire machines. 3440 1.1 christos * libbfd.h: Rebuilt. 3441 1.1 christos 3442 1.1 christos 2006-02-06 Steve Ellcey <sje (a] cup.hp.com> 3443 1.1 christos 3444 1.1 christos * elfxx-ia64.c (elfNN_ia64_fake_sections): Set SHF_IA_64_HP_TLS 3445 1.1 christos if SHF_TLS is set. 3446 1.1 christos 3447 1.1 christos 2006-02-05 Arnold Metselaar <arnold.metselaar (a] planet.nl> 3448 1.1 christos 3449 1.1 christos * coff-z80.c (r_imm24): New howto. 3450 1.1 christos (rtype2howto): New case R_IMM24. 3451 1.1 christos (coff_z80_reloc_type_lookup): New case BFD_RELOC_24. 3452 1.1 christos (extra_case): Use bfd_get_8 for R_IMM8, new case R_IMM24. 3453 1.1 christos 3454 1.1 christos 2006-02-04 Richard Sandiford <richard (a] codesourcery.com> 3455 1.1 christos 3456 1.1 christos * elfxx-mips.c (mips_elf_initialize_tls_index): If a TLS symbol 3457 1.1 christos has already been assigned a GOT index, copy that index to the 3458 1.1 christos current hash table entry. 3459 1.1 christos 3460 1.1 christos 2006-02-01 Eric Botcazou <ebotcazou (a] libertysurf.fr> 3461 1.1 christos 3462 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Reinstate bypass 3463 1.1 christos for call-to-undefweak reloc overflow. 3464 1.1 christos 3465 1.1 christos 2006-01-31 Eric Botcazou <ebotcazou (a] libertysurf.fr> 3466 1.1 christos 3467 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Reinstate bypass 3468 1.1 christos for 32-bit relocs overflow. 3469 1.1 christos 3470 1.1 christos 2006-01-27 Paul Brook <paul (a] codesourcery.com> 3471 1.1 christos 3472 1.1 christos * elf32-arm.c (elf32_arm_get_symbol_type): Allow STT_TLS thumb 3473 1.1 christos objects. 3474 1.1 christos 3475 1.1 christos 2006-01-18 Alexandre Oliva <aoliva (a] redhat.com> 3476 1.1 christos 3477 1.1 christos Introduce TLS descriptors for i386 and x86_64. 3478 1.1 christos * reloc.c (BFD_RELOC_386_TLS_GOTDESC, BFD_RELOC_386_TLS_DESC, 3479 1.1 christos BFD_RELOC_386_TLS_DESC_CALL, BFD_RELOC_X86_64_GOTPC32_TLSDESC, 3480 1.1 christos BFD_RELOC_X86_64_TLSDESC, BFD_RELOC_X86_64_TLSDESC_CALL): New. 3481 1.1 christos * libbfd.h, bfd-in2.h: Rebuilt. 3482 1.1 christos * elf32-i386.c (elf_howto_table): New relocations. 3483 1.1 christos (R_386_tls): Adjust. 3484 1.1 christos (elf_i386_reloc_type_lookup): Map new relocations. 3485 1.1 christos (GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P): New macros. 3486 1.1 christos (GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): New macros. 3487 1.1 christos (struct elf_i386_link_hash_entry): Add tlsdesc_got field. 3488 1.1 christos (struct elf_i386_obj_tdata): Add local_tlsdesc_gotent field. 3489 1.1 christos (elf_i386_local_tlsdesc_gotent): New macro. 3490 1.1 christos (struct elf_i386_link_hash_table): Add sgotplt_jump_table_size. 3491 1.1 christos (elf_i386_compute_jump_table_size): New macro. 3492 1.1 christos (link_hash_newfunc): Initialize tlsdesc_got. 3493 1.1 christos (elf_i386_link_hash_table_create): Set sgotplt_jump_table_size. 3494 1.1 christos (elf_i386_tls_transition): Handle R_386_TLS_GOTDESC and 3495 1.1 christos R_386_TLS_DESC_CALL. 3496 1.1 christos (elf_i386_check_relocs): Likewise. Allocate space for 3497 1.1 christos local_tlsdesc_gotent. 3498 1.1 christos (elf_i386_gc_sweep_hook): Handle R_386_TLS_GOTDESC and 3499 1.1 christos R_386_TLS_DESC_CALL. 3500 1.1 christos (allocate_dynrelocs): Count function PLT relocations. Reserve 3501 1.1 christos space for TLS descriptors and relocations. 3502 1.1 christos (elf_i386_size_dynamic_sections): Reserve space for TLS 3503 1.1 christos descriptors and relocations. Set up sgotplt_jump_table_size. 3504 1.1 christos Don't zero reloc_count in srelplt. 3505 1.1 christos (elf_i386_always_size_sections): New. Set up _TLS_MODULE_BASE_. 3506 1.1 christos (elf_i386_relocate_section): Handle R_386_TLS_GOTDESC and 3507 1.1 christos R_386_TLS_DESC_CALL. 3508 1.1 christos (elf_i386_finish_dynamic_symbol): Use GOT_TLS_GD_ANY_P. 3509 1.1 christos (elf_backend_always_size_sections): Define. 3510 1.1 christos * elf64-x86-64.c (x86_64_elf_howto): Add R_X86_64_GOTPC32_TLSDESC, 3511 1.1 christos R_X86_64_TLSDESC, R_X86_64_TLSDESC_CALL. 3512 1.1 christos (R_X86_64_standard): Adjust. 3513 1.1 christos (x86_64_reloc_map): Map new relocs. 3514 1.1 christos (elf64_x86_64_rtype_to_howto): New, split out of... 3515 1.1 christos (elf64_x86_64_info_to_howto): ... this function, and... 3516 1.1 christos (elf64_x86_64_reloc_type_lookup): ... use it to map elf_reloc_val. 3517 1.1 christos (GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P): New macros. 3518 1.1 christos (GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): New macros. 3519 1.1 christos (struct elf64_x86_64_link_hash_entry): Add tlsdesc_got field. 3520 1.1 christos (struct elf64_x86_64_obj_tdata): Add local_tlsdesc_gotent field. 3521 1.1 christos (elf64_x86_64_local_tlsdesc_gotent): New macro. 3522 1.1 christos (struct elf64_x86_64_link_hash_table): Add tlsdesc_plt, 3523 1.1 christos tlsdesc_got and sgotplt_jump_table_size fields. 3524 1.1 christos (elf64_x86_64_compute_jump_table_size): New macro. 3525 1.1 christos (link_hash_newfunc): Initialize tlsdesc_got. 3526 1.1 christos (elf64_x86_64_link_hash_table_create): Initialize new fields. 3527 1.1 christos (elf64_x86_64_tls_transition): Handle R_X86_64_GOTPC32_TLSDESC and 3528 1.1 christos R_X86_64_TLSDESC_CALL. 3529 1.1 christos (elf64_x86_64_check_relocs): Likewise. Allocate space for 3530 1.1 christos local_tlsdesc_gotent. 3531 1.1 christos (elf64_x86_64_gc_sweep_hook): Handle R_X86_64_GOTPC32_TLSDESC and 3532 1.1 christos R_X86_64_TLSDESC_CALL. 3533 1.1 christos (allocate_dynrelocs): Count function PLT relocations. Reserve 3534 1.1 christos space for TLS descriptors and relocations. 3535 1.1 christos (elf64_x86_64_size_dynamic_sections): Reserve space for TLS 3536 1.1 christos descriptors and relocations. Set up sgotplt_jump_table_size, 3537 1.1 christos tlsdesc_plt and tlsdesc_got. Make room for them. Don't zero 3538 1.1 christos reloc_count in srelplt. Add dynamic entries for DT_TLSDESC_PLT 3539 1.1 christos and DT_TLSDESC_GOT. 3540 1.1 christos (elf64_x86_64_always_size_sections): New. Set up 3541 1.1 christos _TLS_MODULE_BASE_. 3542 1.1 christos (elf64_x86_64_relocate_section): Handle R_386_TLS_GOTDESC and 3543 1.1 christos R_386_TLS_DESC_CALL. 3544 1.1 christos (elf64_x86_64_finish_dynamic_symbol): Use GOT_TLS_GD_ANY_P. 3545 1.1 christos (elf64_x86_64_finish_dynamic_sections): Set DT_TLSDESC_PLT and 3546 1.1 christos DT_TLSDESC_GOT. Set up TLS descriptor lazy resolver PLT entry. 3547 1.1 christos (elf_backend_always_size_sections): Define. 3548 1.1 christos 3549 1.1 christos 2006-01-17 H.J. Lu <hongjiu.lu (a] intel.com> 3550 1.1 christos 3551 1.1 christos PR binutils/2096 3552 1.1 christos * dwarf2.c (comp_unit_contains_address): Update comment. 3553 1.1 christos (_bfd_dwarf2_find_nearest_line): Use section's vma, instead of 3554 1.1 christos lma. Return TRUE only if both comp_unit_contains_address and 3555 1.1 christos comp_unit_find_nearest_line return TRUE. 3556 1.1 christos (_bfd_dwarf2_find_line): Use section's vma, instead of lma. 3557 1.1 christos 3558 1.1 christos 2006-01-18 Alan Modra <amodra (a] bigpond.net.au> 3559 1.1 christos 3560 1.1 christos * elf-bfd.h (struct elf_backend_data): Add gc_mark_dynamic_ref. 3561 1.1 christos (bfd_elf_gc_mark_dynamic_ref_symbol): Declare. 3562 1.1 christos * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Rename from 3563 1.1 christos elf_gc_mark_dynamic_ref_symbol. Make global. 3564 1.1 christos (bfd_elf_gc_sections): Call bed->gc_mark_dynamic_ref. 3565 1.1 christos * elfxx-target.h (elf_backend_gc_mark_dynamic_ref): Define. 3566 1.1 christos (elfNN_bed): Init new field. 3567 1.1 christos * elf64-ppc.c (elf_backend_gc_mark_dynamic_ref): Define. 3568 1.1 christos (ppc64_elf_gc_mark_dynamic_ref): New function. 3569 1.1 christos 3570 1.1 christos 2006-01-17 Alan Modra <amodra (a] bigpond.net.au> 3571 1.1 christos 3572 1.1 christos * elf64-ppc.c (ppc64_elf_gc_mark_hook): Don't hang forever in loop. 3573 1.1 christos 3574 1.1 christos 2006-01-17 Nick Clifton <nickc (a] redhat.com> 3575 1.1 christos 3576 1.1 christos PR binutils/2159 3577 1.1 christos * elf.c (elfcore_write_pstatus): Add ATTRIBUTE_UNUSED to unused 3578 1.1 christos parameters. 3579 1.1 christos 3580 1.1 christos 2006-01-11 Nick Clifton <nickc (a] redhat.com> 3581 1.1 christos 3582 1.1 christos * elf32-arm.c (elf32_arm_output_symbol_hook): Install new entry 3583 1.1 christos into the newly (re)allocated map array. 3584 1.1 christos 3585 1.1 christos 2006-01-09 Alexis Wilke <alexis_wilke (a] yahoo.com> 3586 1.1 christos 3587 1.1 christos * peXXigen.c (tbl): Add comma after "HIGH3ADJ". 3588 1.1 christos 3589 1.1 christos 2006-01-01 Jakub Jelinek <jakub (a] redhat.com> 3590 1.1 christos 3591 1.1 christos * elf64-ppc.c (ppc64_elf_action_discarded): Return 0 3592 1.1 christos for .toc1 section. 3593 1.1 christos 3594 1.1 christos For older changes see ChangeLog-2005 3595 1.1 christos 3597 1.1 christos Copyright (C) 2006 Free Software Foundation, Inc. 3598 1.1 christos 3599 1.1 christos Copying and distribution of this file, with or without modification, 3600 1.1 christos are permitted in any medium without royalty provided the copyright 3601 1.1 christos notice and this notice are preserved. 3602 1.1 christos 3603 1.1 christos Local Variables: 3604 1.1 christos mode: change-log 3605 1.1 christos left-margin: 8 3606 1.1 christos fill-column: 74 3607 1.1 christos version-control: never 3608 End: 3609