(linenum→info "unix/slp.c:2238")

binutils/2.18/bfd/ChangeLog-0001

    1: 2001-12-31  Jakub Jelinek  <jakub@redhat.com>
    2: 
    3:         * elflink.h (elf_bfd_final_link): Check if dynobj is not NULL
    4:         before looking for .eh_frame_hdr section.
    5:         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame_hdr): If
    6:         .eh_frame_hdr section is being stripped from output, don't do
    7:         anything.
    8: 
    9: 2001-12-27  Tom Rix  <trix@redhat.com>
   10: 
   11:         * coff-rs6000.c (xcoff_generate_rtinit): Clean data_buffer alloc/free.
   12:         * coff64-rs6000.c (xcoff64_generate_rtinit): Same.
   13:         (xcoff_write_archive_contents_big): Rewrite.
   14:         (xcoff_write_armap_big): Rewrite.
   15:         (xcoff_write_one_armap_big): Delete.
   16:         * libxcoff.h : Clean up.
   17: 
   18: 2001-12-21  Tom Rix  <trix@redhat.com>
   19: 
   20:         * xcofflink.c (bfd_xcoff_link_generate_rtinit): New function.
   21:         Interface to linker for generation of __rtinit.
   22:         * libxcoff.h (struct xcoff_backend_data_rec): Add new ops to xcoff
   23:         backend to generate special linker symbol __rtinit.
   24:         * coff-rs6000.c (bfd_xcoff_backend_data, bfd_pmac_xcoff_backend_data)
   25:         :  Add new rtinit ops
   26:         * coff64-rs6000.c (bfd_xcoff_aix5_backend_data,
   27:         bfd_xcoff_backend_data): Same.
   28:         * bfd-in.h: Add bfd_xcoff_link_generate_rtinit.
   29:         * bfd-in2.h : Regenerate.
   30: 
   31: 2001-12-21  Jakub Jelinek  <jakub@redhat.com>
   32: 
   33:         * elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix dst_mask for
   34:         R_SPARC_DISP32.  Support R_SPARC_PLT32.
   35:         (sparc_reloc_map): Add BFD_RELOC_16_PCREL and BFD_RELOC_SPARC_PLT32.
   36:         (elf32_sparc_check_relocs): Handle R_SPARC_PLT32.
   37:         (elf32_sparc_relocate_section): Likewise.
   38:         * elf64-sparc.c (sparc64_elf_howto_table): Fix dst_mask for
   39:         R_SPARC_DISP32.  Support R_SPARC_PLT32 and R_SPARC_PLT64.
   40:         (sparc_reloc_map): Add BFD_RELOC_16_PCREL, BFD_RELOC_64_PCREL
   41:         and BFD_RELOC_SPARC_PLT32.
   42:         (sparc64_elf_check_relocs): Handle R_SPARC_PLT32 and R_SPARC_PLT64.
   43:         (sparc64_elf_relocate_section): Likewise.
   44:         * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SPARC_PLT32.
   45:         * bfd-in2.h, libbfd.h: Rebuilt.
   46: 
   47: 2001-12-20  Tom Rix  <trix@redhat.com>
   48: 
   49:         * coffcode.h (coff_compute_section_file_positions): Add special AIX
   50:         loader alignment of text section.
   51: 
   52: 2001-12-20  Jason Thorpe  <thorpej@wasabisystems.com>
   53: 
   54:         * config.bfd (mips-dec-netbsd*): Delete alias for mips*el-*-netbsd*.
   55: 
   56:         * config.bfd (arm-*-netbsdelf*): Add target.
   57:         * configure.in: Include netbsd-core.lo for native arm-*-netbsd*.
   58:         * configure: Regenerate.
   59: 
   60: 2001-12-20  Alan Modra  <amodra@bigpond.net.au>
   61: 
   62:         * elfcode.h (elf_slurp_symbol_table): Test elf_elfsections for NULL,
   63:         as can happen with a core file, before dereferencing.
   64: 
   65: 2001-12-19  Michael Snyder  <msnyder@redhat.com>
   66: 
   67:         * elf32-i386.c (elf_i386_grok_psinfo): Fix copy-and-paste error:
   68:         target is i386 (not mips), and size of descdata is 124 (not 128).
   69: 
   70: 2001-12-19  Jakub Jelinek  <jakub@redhat.com>
   71: 
   72:         * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): If new_size
   73:         is 0, temporarily grow it to minimal CIE size.
   74:         (_bfd_elf_write_section_eh_frame): If input .eh_frame section would
   75:         end up empty, build a fake minimal CIE.
   76: 
   77: 2001-12-19  Steve Ellcey  <sje@cup.hp.com>
   78: 
   79:         * config.bfd (bfd_elf32_ia64_hpux_big_vec): New vector for
   80:         ia64*-*-hpux* target.
   81:         (bfd_elf64_ia64_hpux_big_vec): Likewise.
   82:         * targets.c: Ditto.
   83:         * configure.in: Ditto.
   84:         * configure: Regenerate
   85:         * elfxx-ia64.c (elfNN_ia64_final_write_processing): Replace use of
   86:         alloca with bfd_malloc.
   87:         (get_local_sym_hash): Likewise.
   88:         (elfNN_hpux_post_process_headers): New function.
   89:         #include elfNN-target.h again with values for IA64 HP-UX vector.
   90: 
   91: 2001-12-18  Michael Snyder  <msnyder@redhat.com>
   92: 
   93:         * elf.c (assign_file_positions_for_segments): Don't sort PT_NOTE
   94:         sections of corefiles.  Also it makes no sense to sort if count == 1.
   95: 
   96: 2001-12-18  H.J. Lu <hjl@gnu.org>
   97: 
   98:         * elf.c (_bfd_elf_copy_private_bfd_data): Also copy GP.
   99: 
  100: 2001-12-18  H.J. Lu <hjl@gnu.org>
  101: 
  102:         * elf.c (_bfd_elf_copy_private_bfd_data): Update comments.
  103: 
  104: 2001-12-18  H.J. Lu <hjl@gnu.org>
  105: 
  106:         * elf-bfd.h (_bfd_elf_copy_private_bfd_data): New. Prototype.
  107:         (_bfd_mips_elf_copy_private_bfd_data): Removed.
  108: 
  109:         * elf.c (_bfd_elf_copy_private_bfd_data): New. Copy e_flags in
  110:         the ELF header.
  111: 
  112:         * elf32-i370.c (??_elf_copy_private_bfd_data): Removed.
  113:         (bfd_elf??_bfd_copy_private_bfd_data): Removed.
  114:         * elf32-m32r.c: Likewise.
  115:         * elf32-m68k.c: Likewise.
  116:         * elf32-mcore.c: Likewise.
  117:         * elf32-mips.c: Likewise.
  118:         * elf32-ppc.c: Likewise.
  119:         * elf32-v850.c: Likewise.
  120:         * elf64-ppc.c: Likewise.
  121:         * elf64-sparc.c: Likewise.
  122:         * elfxx-ia64.c: Likewise.
  123: 
  124:         * elf64-mips.c (bfd_elf64_bfd_copy_private_bfd_data): Removed.
  125: 
  126:         * elfxx-target.h (bfd_elfNN_bfd_copy_private_bfd_data): Defined
  127:         to _bfd_elf_copy_private_bfd_data.
  128: 
  129: 2001-12-18  Martin Schwidefsky  <schwidefsky@de.ibm.com>
  130: 
  131:         * elf32-s390 (elf_s390_check_relocs): Pass addend to
  132:         gc_record_vtentry.
  133:         * elf64-s390 (elf_s390_check_relocs): Likewise.
  134:         Fix by Andreas Jaeger <aj@suse.de>.
  135: 
  136: 2001-12-18  Jason Thorpe  <thorpej@wasabisystems.com>
  137: 
  138:         * configure.host: Correctly match all NetBSD/mips
  139:         hosts.
  140: 
  141: 2001-12-18  matthew green  <mrg@eterna.com.au>
  142: 
  143:         * config.bfd (m68*-*-netbsdelf*): New target.
  144:         (m68*-*-netbsd): Also include bfd_elf32_m68k_vec.
  145:         (m68*-*-netbsdaout*): New alias for m68*-*-netbsd.
  146: 
  147: 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
  148: 
  149:         * elflink.h (size_dynamic_sections): Skip anonymous version tag.
  150:         (elf_link_assign_sym_version): Don't count anonymous version tag.
  151: 
  152: 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
  153: 
  154:         * elf-eh-frame.c (struct cie): Add make_lsda_relative.
  155:         (struct eh_cie_fde): Add lsda_encoding, lsda_offset,
  156:         make_lsda_relative.
  157:         (read_value, write_value): New.
  158:         (_bfd_elf_discard_section_eh_frame): Inicialize
  159:         lsda_encoding, lsda_offset and make_lsda_relative.
  160:         (_bfd_elf_eh_frame_section_offset): If make_lsda_relative,
  161:         request no dynamic reloc for LSDA field of FDE.
  162:         (_bfd_elf_write_section_eh_frame): Handle make_lsda_relative.
  163:         If a non-DW_EH_PE_absptr value is 0, don't adjust it by base
  164:         or pcrel.  Fix address computation for DW_EH_PE_pcrel relocs.
  165:         Update LSDA field if LSDA encoding is DW_EH_PE_pcrel, because
  166:         . might have changed due to deleted FDE or CIEs.
  167: 
  168: 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
  169: 
  170:         * elf-strtab.c (struct elf_strtab_hash_entry): Add u.next.
  171:         (last_eq): Remove.
  172:         (_bfd_elf_strtab_finalize): Don't use a hash table for last
  173:         character chains, instead use an array.
  174: 
  175: 2001-12-18  Jason Thorpe  <thorpej@wasabisystems.com>
  176: 
  177:         * elf.c (elfcore_netbsd_get_lwpid): New function.
  178:         (elfcore_grok_netbsd_procinfo): New function.
  179:         (elfcore_grok_netbsd_note): New function.
  180:         (elfcore_read_notes): Call elfcore_grok_netbsd_note to process
  181:         NetBSD ELF core file notes.
  182: 
  183: 2001-12-18  Alan Modra  <amodra@bigpond.net.au>
  184: 
  185:         * elfcode.h (struct bfd_preserve): New.
  186:         (elf_object_p): Replace preserved_* vars with instance of above.
  187:         Save and restore arch_info pointer rather than arch, mach so that
  188:         more cases can be restored.  Save and restore new section_tail,
  189:         section_htab structure, and init appropriately.  Move "rest of
  190:         section header" code so that i_shdrp needs no NULL initialisation.
  191:         Free old section_htab on success.
  192:         * elfcore.h (elf_core_file_p): Likewise.
  193: 
  194: 2001-12-17  Tom Rix  <trix@redhat.com>
  195: 
  196:         * coffcode.h (sec_to_styp_flags): Add STYP_EXCEPT and STYP_TYPCHK for
  197:         xcoff.
  198: 
  199: 2001-12-17  Jakub Jelinek  <jakub@redhat.com>
  200: 
  201:         * elf-bfd.h (elf_discarded_section): Define.
  202:         * elflink.h (elf_link_input_bfd): Use it.
  203:         (elf_reloc_symbol_deleted_p): Likewise.
  204: 
  205:         * elf64-alpha.c (elf64_alpha_relocate_section): Don't warn about
  206:         overflows for pc relative relocs against discarded sections.
  207: 
  208: 2001-12-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
  209: 
  210:         * elf32-mips.c (_bfd_mips_elf_relocate_section): Formatting.
  211:         * elf64-mips.c: Add most of the fixes and tweaks done in elf32-mips.c
  212:         over the last months. Add some code for mips16 handling.
  213:         (mips_elf64_check_mips16_stubs): New function.
  214:         (mips_elf64_stub_section_p): Likewise.
  215:         (mips_elf64_calculate_relocation): Change interface to support mips16.
  216:         (mips_elf64_perform_relocation): Likewise.
  217: 
  218: 2001-12-17  Alan Modra  <amodra@bigpond.net.au>
  219: 
  220:         Support for more than 64k ELF sections.
  221:         * elf-bfd.h (elf_size_info <swap_symbol_out>): Add shndx param.
  222:         (bfd_elf32_swap_symbol_in): Likewise.
  223:         (bfd_elf32_swap_symbol_out): Likewise.
  224:         (bfd_elf64_swap_symbol_in): Likewise.
  225:         (bfd_elf64_swap_symbol_out): Likewise.
  226:         (elf_reloc_cookie): Add locsym_shndx field.  Make locsyms a PTR.
  227:         (elf_obj_tdata): Add num_elf_sections, symtab_shndx_hdr and
  228:         symtab_shndx_section.
  229:         (elf_numsections): Define.
  230:         (elf_symtab_shndx): Define.
  231:         * elf.c (setup_group): Use elf_numsections rather than header e_shnum.
  232:         (bfd_elf_find_section): Likewise.
  233:         (bfd_section_from_elf_index): Likewise.
  234:         (bfd_section_from_shdr): Likewise.  Handle SHT_SYMTAB_SHNDX.
  235:         (bfd_section_from_r_symndx): Read symbol shndx extension, and
  236:         translate st_shndx for > SHN_HIRESERVE.
  237:         (assign_section_numbers): Skip reserved sections.  Assign
  238:         symtab_shndx_section and elf_numsections.  Exclude reserved
  239:         sections from e_shnum.  Set up symtab_shndx_hdr.
  240:         (_bfd_elf_compute_section_file_positions): Handle symtab_shndx_hdr.
  241:         (map_sections_to_segments): Don't map eh_frame_hdr unless required.
  242:         (assign_file_positions_except_relocs): Use elf_numsections rather
  243:         than header e_shnum.  Skip reserved sections and symtab_shndx_section.
  244:         (prep_headers): Set name for symtab_shndx_hdr.
  245:         (_bfd_elf_assign_file_positions_for_relocs): Use elf_numsections.
  246:         (_bfd_elf_write_object_contents): Likewise.  Skip reserved sections.
  247:         (_bfd_elf_section_from_bfd_section): Check bfd_{abs,com,und}_section
  248:         first.  Use elf_section_data if available.  Use elf_numsections.
  249:         Start scan at index 1.
  250:         (copy_private_bfd_data ): Comment fixes.
  251:         (MAP_ONESYMTAB): Define above SHN_HIOS.
  252:         (MAP_DYNSYMTAB): Likewise.
  253:         (MAP_STRTAB): Likewise.
  254:         (MAP_SHSTRTAB): Likewise.
  255:         (MAP_SYM_SHNDX): New define.
  256:         (_bfd_elf_copy_private_symbol_data): Handle symtab_shndx_section.
  257:         (swap_out_syms): Swap out SHT_SYMTAB_SHNDX section too.
  258:         * elfcode.h (elf_swap_symbol_in): Add shndx param, and handle shndx
  259:         extension.
  260:         (elf_swap_symbol_out): Likewise.
  261:         (elf_object_p): Set elf_numsections, and use instead of e_shnum.
  262:         Initialialise reserved elf_elfsections to point at shdr[0].  Remove
  263:         redundant bfd_release calls.
  264:         (elf_slurp_symbol_table): Read symbol shndx extension, and use with
  265:         elf_swap_symbol_in.  Translate st_shndx for > SHN_HIRESERVE too.
  266:         * elflink.h (elf_link_is_defined_archive_symbol): Read symbol shndx
  267:         extension, and use with elf_swap_symbol_in.
  268:         (elf_link_record_local_dynamic_symbol): Likewise.
  269:         (elf_link_add_object_symbols): Likewise.  Also translate st_shndx
  270:         for elf sections > SHN_HIRESERVE.
  271:         (NAME(bfd_elf,size_dynamic_sections)): Adjust elf_swap_symbol_out
  272:         call.
  273:         (struct elf_final_link_info): Add locsym_shndx and symshndxbuf.
  274:         (elf_bfd_final_link): Allocate the above, and tidy code allocating
  275:         other buffers.  Use elf_numsections instead of e_shnum.  Adjust
  276:         elf_swap_symbol_out calls.
  277:         (elf_link_output_sym): Swap out symbol shndx extension too.
  278:         (elf_link_flush_output_syms): And flush them to disk.
  279:         (elf_link_output_extsym): Use SHN_BAD.  Adjust elf_swap_symbol_out
  280:         calls.
  281:         (elf_gc_mark): Read symbol shndx extension, and use with
  282:         elf_swap_symbol_in.
  283:         (elf_link_input_bfd): Likewise,  Translate st_shndx for elf sections
  284:         > SHN_HIRESERVE too.  Use SHN_BAD.
  285:         (elf_reloc_symbol_deleted_p): Use symbol shndx extensions with
  286:         elf_swap_symbol_in.  Translate st_shndx > SHN_HIRESERVE too.
  287:         (elf_bfd_discard_info): Read symbol shndx extension.  Don't attempt
  288:         to continue after a bfd error.
  289:         * elf-m10200.c (mn10200_elf_relax_section): Only read local syms.
  290:         Stash them immediately to symtab_hdr->contents rather than later
  291:         in multiple places.  Clean up afterwards.  Read symbol shndx
  292:         extension, and use with swap_symbol_in.  Translate SHN_UNDEF,
  293:         SHN_ABS, SHN_COMMON and elf sections > SHN_HIRESERVE to bfd
  294:         sections too.  Remove dead code.
  295:         (mn10200_elf_relax_delete_bytes): Use symbol shndx extension
  296:         when swapping in symbols.  Tidy code adjusting global syms.
  297:         Don't swap in global syms.
  298:         (mn10200_elf_symbol_address_p): Likewise.  Remove extsyms param.
  299:         (mn10200_elf_get_relocated_section_contents): Read symbol shndx
  300:         extension, and use with swap_symbol_in.  Rename "size" -> "amt"
  301:         to maximize code in common with other files.  Translate st_shndx
  302:         for > SHN_HIRESERVE too.  Remove dead code.
  303:         * elf-m10300.c (mn10300_elf_relax_section): Only read local syms.
  304:         Stash them immediately to symtab_hdr->contents rather than later
  305:         in multiple places.  Clean up afterwards.  Read symbol shndx
  306:         extension, and use with swap_symbol_in.  Remove dead code.
  307:         (mn10300_elf_relax_delete_bytes): As for elf-m10200.c.
  308:         (mn10300_elf_symbol_address_p): Likewise.
  309:         (mn10300_elf_get_relocated_section_contents): Likewise.
  310:         * elf32-h8300.c (elf32_h8_relax_section): As for elf-m10300.c.
  311:         (elf32_h8_relax_delete_bytes): Likewise.
  312:         (elf32_h8_symbol_address_p): Likewise.
  313:         (elf32_h8_get_relocated_section_contents): Likewise.
  314:         * elf32-hppa.c (elf32_hppa_size_stubs): Read symbol shndx
  315:         extension, and use with swap_symbol_in.
  316:         * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
  317:         * elf32-i370.c (i370_elf_finish_dynamic_sections): Adjust call to
  318:         bfd_elf32_swap_symbol_out.
  319:         * elf32-m32r.c (m32r_elf_get_relocated_section_contents): Translate
  320:         elf sections > SHN_HIRESERVE too.
  321:         * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Only read
  322:         local syms.  Read symbol shndx extension, and use with swap_symbol_in.
  323:         * elf32-mips.c (_bfd_mips_elf_final_write_processing): Use
  324:         elf_numsections rather than header e_shnum.
  325:         * elf32-sh.c (sh_elf_relax_section): As for elf-m10300.c.
  326:         (sh_elf_relax_delete_bytes): Likewise.
  327:         (sh_elf_get_relocated_section_contents): Likewise.  Only read local
  328:         symbols.
  329:         * elf32-v850.c (v850_elf_symbol_processing): Use an unsigned int to
  330:         hold section index.  Use elf_numsections rather than e_shnum.
  331:         Rename "index" -> "indx" to avoid shadowing warning.
  332:         (v850_elf_add_symbol_hook): Likewise.
  333:         * elf64-alpha.c (elf64_alpha_relax_section): Only read local syms.
  334:         Read symbol shndx extension, and use with swap_symbol_in.
  335:         * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
  336:         Translate SHN_COMMON and elf sections > SHN_HIRESERVE too.
  337:         * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
  338:         (elfNN_ia64_aix_add_symbol_hook): Use elf_numsections.
  339: 
  340:         * elf-m10300.c (mn10300_elf_gc_mark_hook): Remove unnecessary checks
  341:         before calling bfd_section_from_elf_index on local syms.
  342:         * elf32-arm.h (elf32_arm_gc_mark_hook): Likewise.
  343:         * elf32-avr.c (elf32_avr_gc_mark_hook): Likewise.
  344:         * elf32-cris.c (cris_elf_gc_mark_hook): Likewise.
  345:         * elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise.
  346:         * elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise.
  347:         * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise.
  348:         * elf32-i386.c (elf_i386_gc_mark_hook): Likewise.
  349:         * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise.
  350:         * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise.
  351:         * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise.
  352:         * elf32-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise.
  353:         * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise.
  354:         * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise.
  355:         * elf32-s390.c (elf_s390_gc_mark_hook): Likewise.
  356:         * elf32-sh.c (sh_elf_gc_mark_hook): Likewise.
  357:         * elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise.
  358:         * elf32-v850.c (v850_elf_gc_mark_hook): Likewise.
  359:         * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise.
  360:         * elf64-mips.c (mips_elf64_gc_mark_hook): Likewise.
  361:         * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise.
  362:         * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
  363:         * elf64-s390.c (elf_s390_gc_mark_hook): Likewise.
  364:         * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise.
  365: 
  366: 2001-12-17  Alan Modra  <amodra@bigpond.net.au>
  367: 
  368:         Hash bfd sections for fast lookup and create.
  369:         * bfd.c (struct _bfd): Add section_htab, section_tail.
  370:         * libbfd-in.h (_bfd_delete_bfd): Declare.
  371:         (bfd_section_hash_newfunc): Declare.
  372:         * opncls.c (_bfd_new_bfd): Free memory on failure.  Init
  373:         section_htab and section_tail.
  374:         (_bfd_delete_bfd): New function.
  375:         (bfd_openr): Use it.
  376:         (bfd_fdopenr): Likewise.
  377:         (bfd_openstreamr): Likewise.
  378:         (bfd_openw): Likewise.
  379:         (bfd_close): Likewise.
  380:         (bfd_close_all_done): Likewise.
  381:         (bfd_release): Comment.
  382:         * section.c (struct section_hash_entry): New.
  383:         (bfd_section_hash_newfunc): New function.
  384:         (section_hash_lookup): Define.
  385:         (bfd_section_init): New function, split out from
  386:         bfd_make_section_anyway.
  387:         (bfd_get_section_by_name): Lookup via hash table.
  388:         (bfd_get_unique_section_name): Likewise.
  389:         (bfd_make_section_old_way): Rewrite to use hash table.
  390:         (bfd_make_section_anyway): Likewise.
  391:         (bfd_make_section): Likewise.  Return NULL for attempts to make
  392:         BFD_{ABS,COM,UND,IND}_SECTION_NAME.
  393:         (_bfd_strip_section_from_output): Adjust section_tail if needed.
  394:         * configure.in: Bump bfd version.
  395:         * configure: Regenerate.
  396:         * libbfd.h: Regenerate.
  397:         * bfd-in2.h: Regenerate.
  398: 
  399: 2001-12-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
  400: 
  401:         * elf64-mips.c (mips_elf64_link_hash_entry): New link hash.
  402:         (mips_elf64_high): New Function.
  403:         (mips_elf64_higher): Likewise.
  404:         (mips_elf64_highest): Likewise.
  405:         (mips_elf64_info_to_howto_rel): Likewise.
  406:         (mips_elf64_info_to_howto_rela): Likewise.
  407:         (mips_elf64_write_rel): Likewise.
  408:         (mips_elf64_write_rela): Likewise.
  409:         (mips_elf64_link_hash_newfunc): Likewise.
  410:         (mips_elf64_hi16_reloc): Likewise.
  411:         (mips_elf64_higher_reloc): Likewise.
  412:         (mips_elf64_highest_reloc): Likewise.
  413:         (mips_elf64_gprel16_reloc): Likewise.
  414:         (mips_elf64_gprel16_reloca): Likewise.
  415:         (mips_elf64_literal_reloc): Likewise.
  416:         (mips_elf64_gprel32_reloc): Likewise.
  417:         (mips_elf64_shift6_reloc): Likewise.
  418:         (mips_elf64_got16_reloc): Likewise.
  419:         (mips_elf64_assign_gp): Likewise.
  420:         (mips_elf64_final_gp): Likewise.
  421:         (gprel16_with_gp): Likewise.
  422:         (mips_elf64_additional_program_headers): Likewise.
  423:         (mips_elf64_link_hash_table_create): Likewise.
  424:         (mips_elf64_got_offset_from_index): Likewise.
  425:         (_mips_elf64_got_info): Likewise.
  426:         (mips_elf64_sign_extend): Likewise.
  427:         (mips_elf64_overflow_p): Likewise.
  428:         (mips_elf64_global_got_index): Likewise.
  429:         (mips_elf64_sort_hash_table_f): Likewise.
  430:         (mips_elf64_sort_hash_table): Likewise.
  431:         (mips_elf64_swap_msym_out): Likewise.
  432:         (mips_elf64_create_local_got_entry): Likewise.
  433:         (mips_elf64_local_got_index): Likewise.
  434:         (mips_elf64_got_page): Likewise.
  435:         (mips_elf64_got16_entry): Likewise.
  436:         (mips_elf64_local_relocation_p): Likewise.
  437:         (mips_elf64_next_relocation): Likewise.
  438:         (mips_elf64_create_dynamic_relocation): Likewise.
  439:         (mips_elf64_calculate_relocation): Likewise.
  440:         (mips_elf64_obtain_contents): Likewise.
  441:         (mips_elf64_perform_relocation): Likewise.
  442:         (mips_elf64_relocate_section): Likewise.
  443:         (mips_elf64_create_dynamic_sections): Likewise.
  444:         (mips_elf64_adjust_dynamic_symbol): Likewise.
  445:         (mips_elf64_always_size_sections): Likewise.
  446:         (mips_elf64_size_dynamic_sections): Likewise.
  447:         (mips_elf64_finish_dynamic_symbol): Likewise.
  448:         (mips_elf64_finish_dynamic_sections): Likewise.
  449:         (mips_elf64_gc_mark_hook): Likewise.
  450:         (mips_elf64_gc_sweep_hook): Likewise.
  451:         (mips_elf64_create_got_section): Likewise.
  452:         (mips_elf64_record_global_got_symbol): Likewise.
  453:         (mips_elf64_create_msym_section): Likewise.
  454:         (mips_elf64_allocate_dynamic_relocations): Likewise.
  455:         (mips_elf64_check_relocs): Likewise.
  456:         (mips_elf64_output_extsym): Likewise.
  457:         (mips_elf64_swap_gptab_in): Likewise.
  458:         (mips_elf64_swap_gptab_out): Likewise.
  459:         (gptab_compare): Likewise.
  460:         (mips_elf64_final_link): Likewise.
  461:         (prev_reloc_addend): Remenber addend of previous parts of a combined
  462:         reloc.
  463:         (ELF_MIPS_GP_OFFSET): New define.
  464:         (STUB_LW,STUB_MOVE,STUB_JALR,STUB_LI16): Likewise.
  465:         (MIPS_FUNCTION_STUB_SIZE): Likewise.
  466:         (mips_elf64_howto_rel): Fix HOWTO defines.
  467:         (mips_elf64_howto_rela): Likewise.
  468:         (mips_elf64_swap_reloca_out): Fix signedness.
  469:         (mips_elf64_be_swap_reloc_in): Use ELF64* instead of ELF32*.
  470:         (mips_elf64_be_swap_reloca_in): Likewise.
  471:         (mips_elf64_be_swap_reloc_out): Likewise. Preserve extended type info.
  472:         (mips_elf64_be_swap_reloca_out): Likewise.
  473: 
  474: 2001-12-15  Jakub Jelinek  <jakub@redhat.com>
  475: 
  476:         * elf-bfd.h (_bfd_elf_maybe_strip_eh_frame_hdr): New prototype.
  477:         * elf-eh-frame.c (struct eh_frame_hdr_info): Add strip.
  478:         (_bfd_elf_discard_section_eh_frame): Don't create .eh_frame_hdr
  479:         sec_info here.  Free ehbuf.
  480:         (_bfd_elf_discard_section_eh_frame_hdr): Don't size the section
  481:         if hdr_info->strip.
  482:         (_bfd_elf_maybe_strip_eh_frame_hdr): New.
  483:         * elflink.h (size_dynamic_sections): Call it.
  484: 
  485: 2001-12-14  Alan Modra  <amodra@bigpond.net.au>
  486: 
  487:         * elflink.h (elf_bfd_discard_info): Fix segfault when dynobj NULL.
  488: 
  489: 2001-12-13  Jakub Jelinek  <jakub@redhat.com>
  490: 
  491:         * elf-bfd.h (enum elf_link_info_type): New.
  492:         (struct bfd_elf_section_data): Remove stab_info and merge_info
  493:         fields, add sec_info and sec_info_type.
  494:         (struct elf_obj_tdata): Add eh_frame_hdr field.
  495:         (_bfd_elf_discard_section_eh_frame): New prototype.
  496:         (_bfd_elf_discard_section_eh_frame_hdr): Likewise.
  497:         (_bfd_elf_eh_frame_section_offset): Likewise.
  498:         (_bfd_elf_write_section_eh_frame): Likewise.
  499:         (_bfd_elf_write_section_eh_frame_hdr): Likewise.
  500:         * Makefile.am (BFD32_BACKENDS): Add elf-eh-frame.lo.
  501:         (BFD32_BACKENDS_CFILES): Add elf-eh-frame.c.
  502:         (elf-eh-frame.lo): New.
  503:         * Makefile.in: Rebuilt.
  504:         * configure.in (elf): Add elf-eh-frame.lo.
  505:         * configure: Rebuilt.
  506:         * elf.c (_bfd_elf_print_private_bfd_data): Support PT_GNU_EH_FRAME.
  507:         (map_sections_to_segments): Create PT_GNU_EH_FRAME if requested.
  508:         (get_program_header_size): Take into account PT_GNU_EH_FRAME
  509:         segment.
  510:         (_bfd_elf_rela_local_sym): Use sec_info_type and sec_info.
  511:         (_bfd_elf_rel_local_sym): Likewise.
  512:         (_bfd_elf_section_offset): Likewise.  Call
  513:         _bfd_elf_eh_frame_section_offset too.
  514:         * elfxx-ia64.c (elfNN_ia64_relocate_section): Use sec_info_type and
  515:         sec_info.
  516:         * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
  517:         * elf-eh-frame.c: New file.
  518:         * elflink.h (elf_link_add_object_symbols): Don't optimize SHF_MERGE
  519:         .stab sections.  Set sec_info_type, use sec_info instead
  520:         of merge_info and stab_info.
  521:         (elf_link_create_dynamic_sections): Create .eh_frame_hdr section
  522:         if --eh-frame-hdr.
  523:         (elf_bfd_final_link): Write .eh_frame_hdr section.
  524:         (elf_link_sec_merge_syms): Use sec_info_type and sec_info.
  525:         (elf_link_input_bfd): Likewise.
  526:         Call _bfd_elf_write_section_eh_frame to write .eh_frame sections.
  527:         (elf_bfd_discard_info): Add output_bfd argument.
  528:         Call _bfd_elf_discard_section_eh_frame and
  529:         _bfd_elf_discard_section_eh_frame_hdr.
  530:         (elf_section_ignore_discarded_relocs): Use sec_info_type, not section
  531:         names.
  532:         * bfd-in.h (bfd_elf32_discard_info, bfd_elf64_discard_info): Adjust
  533:         prototypes.
  534:         * bfd-in2.h (bfd_elf32_discard_info, bfd_elf64_discard_info): Likewise.
  535: 
  536: 2001-12-12  Richard Henderson  <rth@redhat.com>
  537: 
  538:         * syms.c (_bfd_generic_read_minisymbols): Early return for
  539:         no symbols.  Patch from FreeBSD folk; exact origin unknown.
  540: 
  541: 2001-12-11  Alan Modra  <amodra@bigpond.net.au>
  542: 
  543:         * elfcode.h (elf_swap_ehdr_out): Adjust value written for e_shnum
  544:         and e_shstrndx if out of range.
  545:         (elf_object_p): Read extended values for e_shnum and e_shstrndx
  546:         from the first section header.  Allocate space in elf_elfsections
  547:         for reserved sections and set to NULLs.
  548:         (elf_write_shdrs_and_ehdr): Set overflow fields in first section
  549:         header.  Skip reserved sections in elf_elfsections.  Remove
  550:         duplicate size calculation.
  551: 
  552: 2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
  553:             Richard Henderson  <rth@redhat.com>
  554:             Corinna Vinschen  <vinschen@redhat.com>
  555: 
  556:         * Makefile.am: Add support for xstormy16.
  557:         * archures.c: Add support for xstormy16.
  558:         * config.bfd: Add support for xstormy16.
  559:         * configure.in: Add support for xstormy16.
  560:         * reloc.c: Add support for xstormy16.
  561:         * targets.c: Add support for xstormy16.
  562:         * cpu-xstormy16.c: New file.
  563:         * elf32-xstormy16.c: New file.
  564:         * Makefile.in: Regenerated.
  565:         * bfd-in2.h: Regenerated.
  566:         * configure: Regenerated.
  567:         * libbfd.h: Regenerated.
  568: 
  569: 2001-12-07  Nick Clifton  <nickc@cambridge.redhat.com>
  570: 
  571:         * elf.c (assign_file_positions_for_segments): Combine sentance
  572:         fragments into a single sentance in order to permit better
  573:         translation into foreign languages.
  574: 
  575: 2001-12-07  Jim Blandy  <jimb@redhat.com>
  576: 
  577:         * elf32-s390.c (elf32_s390_grok_prstatus): New function.
  578:         (elf_backend_grok_prstatus): Define.
  579: 
  580: 2001-12-07  Jakub Jelinek  <jakub@redhat.com>
  581: 
  582:         * elf32-sparc.c (elf32_sparc_relocate_section): Revert
  583:         2001-09-14 change.
  584: 
  585: 2001-12-07  Jakub Jelinek  <jakub@redhat.com>
  586: 
  587:         * elf.c (_bfd_elf_rela_local_sym): Only call
  588:         _bfd_merged_section_offset if merge_info is non-NULL.
  589:         (_bfd_elf_rel_local_sym, _bfd_elf_section_offset): New.
  590:         * elf-bfd.h (_bfd_elf_rel_local_sym, _bfd_elf_section_offset): New
  591:         prototypes.
  592:         * elf32-arm.h (elf32_arm_final_link_relocate): Use
  593:         _bfd_elf_section_offset.
  594:         (elf32_arm_relocate_section): Use _bfd_elf_rel_local_sym.
  595:         * elf32-i386.c (elf_i386_relocate_section): Use
  596:         _bfd_elf_section_offset and _bfd_elf_rel_local_sym.
  597:         * elf32-sh.c (sh_elf_relocate_section): Likewise.
  598:         * elf32-sparc.c (elf32_sparc_relocate_section): Use
  599:         _bfd_elf_section_offset.
  600:         * elf32-cris.c (cris_elf_relocate_section): Likewise.
  601:         * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
  602:         * elf32-i370.c (i370_elf_relocate_section): Likewise.
  603:         * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
  604:         * elf32-mips.c (mips_elf_create_dynamic_relocation): Likewise.
  605:         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
  606:         * elf32-s390.c (elf_s390_relocate_section): Likewise.
  607:         * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
  608:         * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
  609:         * elf64-s390.c (elf_s390_relocate_section): Likewise.
  610:         * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
  611:         * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
  612:         * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise.
  613: 
  614: 2001-12-07  Alan Modra  <amodra@bigpond.net.au>
  615: 
  616:         * elf32-hppa.c (clobber_millicode_symbols): Don't do anything if
  617:         already forced local.
  618: 
  619: 2001-12-05  Nick Clifton  <nickc@cambridge.redhat.com>
  620: 
  621:         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Combine
  622:         fragmented sentence parts into a whole sentence to permit
  623:         better translation into foreign languages.
  624: 
  625: 2001-12-06  Hans-Peter Nilsson  <hp@bitrange.com>
  626: 
  627:         * configure: Regenerate.
  628:         * Makefile.in: Regenerate.
  629: 
  630: 2001-12-05  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
  631: 
  632:         * Makefile.am: split up BFD_LIBS like statements in BFD32_LIBS and
  633:         BFD64_LIBS, make the latter depending on the availability of BFD64.
  634:         Add archive64.c source file.
  635:         * archive64.c: New file implementing bfd_elf64_archive_slurp_armap
  636:         and bfd_elf64_archive_write_armap, code from elf64-mips.c
  637:         * archive.c (bfd_slurp_armap): Add ELF64 archive support.
  638:         * config.bfd (mips*-*-irix6*): Allow with BFD64 only.
  639:         (mips64*el-*-linux*): Likewise.
  640:         (mips*el-*-linux*): Likewise. Reorder entries.
  641:         * configure.in (bfd_libs): Define in dependency of BFD64 and
  642:         AC_SUBST it.
  643:         * elf64-mips.c (mips_elf64_slurp_armap): Remove, use
  644:         bfd_elf64_archive_slurp_armap instead.
  645:         (mips_elf64_write_armap): Remove, use bfd_elf64_archive_write_armap
  646:         instead.
  647: 
  648: 2001-12-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
  649: 
  650:         * config.bfd: Remove trailing blanks.
  651:         * elf32-mips.c (gprel16_with_gp): Remove superfluous casts.
  652: 
  653: 2001-12-04  Alexandre Oliva  <aoliva@redhat.com>
  654: 
  655:         * elf32-d10v.c (elf_d10v_howto_table): Adjust bit-size of
  656:         R_D10V_10_PCREL_L, R_D10V_10_PCREL_R, R_D10V_18,
  657:         R_D10V_18_PCREL.  Check 10_PCREL relocations as signed.
  658:         Disable pointless overflow checking of NONE and 32.
  659: 
  660: 2001-12-04  Alan Modra  <amodra@bigpond.net.au>
  661: 
  662:         * reloc.c (bfd_install_relocation): Correct reloc address test.
  663:         (bfd_perform_relocation): Formatting fix.
  664:         * bfd-in2.h: Regenerate for 2001-12-02 reloc.c change.
  665: 
  666: 2001-12-03  Nick Clifton  <nickc@cambridge.redhat.com>
  667: 
  668:         * configure.in (LINGUAS): Add tr.
  669:         * configure: Regenerate.
  670:         * po/tr.po: Import from translation project's web site.
  671: 
  672: 2001-12-03  Alan Modra  <amodra@bigpond.net.au>
  673: 
  674:         * elf32-hppa.c (hppa_get_stub_entry): Remove debug message that
  675:         happens to trigger on undefined symbols.
  676:         (final_link_relocate): Return bfd_reloc_undefined for undefined
  677:         stubs.
  678:         (elf32_hppa_relocate_section): Don't say we can't handle a reloc
  679:         if we have already warned about an undefined symbol.
  680: 
  681: 2001-12-02  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
  682: 
  683:         * elf32-mips.c (NEWABI_P): New define.
  684:         (USE_REL): Remove, replaced by
  685:         (elf_backend_may_use_rel_p): New define.
  686:         (elf_backend_may_use_rela_p): Likewise.
  687:         (elf_backend_default_use_rela_p): Likewise.
  688:         (elf_mips_howto_table): Rename to elf_mips_howto_table_rel.
  689:         Fix some relocation definitions.
  690:         (elf_mips_howto_table_rela): New RELA relocation definitions for
  691:         NewABI support.
  692:         (mips32_64bit_reloc): Use the renamed elf_mips_howto_table_rel.
  693:         (bfd_elf32_bfd_reloc_type_lookup): Likewise.
  694:         (mips_rtype_to_howto): Likewise.
  695:         (_bfd_mips_elf_relocate_section): Likewise.
  696:         (_bfd_mips_elf_object_p): Typo.
  697:         (elf_backend_sign_extend_vma): Reordered together with many other
  698:         defines nearby to resemble the order of declaration in the header
  699:         file.
  700: 
  701: 2001-12-02  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
  702: 
  703:         * coff-mips.c (mips_bfd_reloc_type_lookup): Replace
  704:         BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16.
  705: