aboutsummaryrefslogtreecommitdiff
path: root/ld/scripttempl
AgeCommit message (Collapse)AuthorFilesLines
2010-11-02Include compressed DWARF debug sections in ELF linker scripts.H.J. Lu21-274/+274
binutils/testsuite/ 2010-11-02 H.J. Lu <hongjiu.lu@intel.com> * binutils-all/libdw2.out: Also accept MIPS_DWARF. ld/ 2010-11-02 H.J. Lu <hongjiu.lu@intel.com> * scripttempl/armbpabi.sc: Include compressed DWARF debug sections. * scripttempl/avr.sc: Likewise. * scripttempl/elf32cr16.sc: Likewise. * scripttempl/elf32crx.sc: Likewise. * scripttempl/elf32msp430.sc: Likewise. * scripttempl/elf32msp430_3.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf64hppa.sc: Likewise. * scripttempl/elf_chaos.sc: Likewise. * scripttempl/elfd10v.sc: Likewise. * scripttempl/elfd30v.sc: Likewise. * scripttempl/elfi370.sc: Likewise. * scripttempl/elfm68hc11.sc: Likewise. * scripttempl/elfm68hc12.sc: Likewise. * scripttempl/elfxtensa.sc: Likewise. * scripttempl/ip2k.sc: Likewise. * scripttempl/iq2000.sc: Likewise. * scripttempl/mep.sc: Likewise. * scripttempl/mmo.sc: Likewise. * scripttempl/v850.sc: Likewise. * scripttempl/xstormy16.sc: Likewise. ld/testsuite/ 2010-11-02 H.J. Lu <hongjiu.lu@intel.com> * ld-elf/compress1a.d: Also check MIPS_DWARF. * ld-elf/compress1b.d: Likewise. * ld-elf/compress1c.d: Likewise.
2010-10-29Add compressed debug section support to binutils and ld.H.J. Lu1-17/+17
bfd/ 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> Cary Coutant <ccoutant@google.com> * archive.c (bfd_openr_next_archived_file): Copy BFD_COMPRESS and BFD_DECOMPRESS. * bfd.c (BFD_COMPRESS): New. (BFD_DECOMPRESS): Likewise. (BFD_FLAGS_SAVED): Likewise. (bfd_preserve_save): Replace BFD_IN_MEMORY with BFD_FLAGS_SAVED. * compress.c (bfd_uncompress_section_contents): Removed. (get_uncompressed_size): New. (decompress_contents): Likewise. (bfd_compress_section_contents): Likewise. (bfd_get_full_section_contents): Likewise. (bfd_is_section_compressed): Likewise. (bfd_init_section_decompress_status): Likewise. (bfd_init_section_compress_status): Likewise. * dwarf2.c (dwarf_debug_sections): New. (dwarf_debug_section_enum): Likewise. (read_section): Remove section_name and compressed_section_name. Add dwarf_debug_section_enum. Try compressed debug section. (read_indirect_string): Updated. (read_abbrevs): Likewise. (decode_line_info): Likewise. (read_debug_ranges): Likewise. (find_line): Updated. * ecoff.c (bfd_debug_section): Add compress_status and compressed_size. * elf.c (_bfd_elf_make_section_from_shdr): Call bfd_is_section_compressed to check if a DWARF debug section is compressed. Call bfd_init_section_compress_status or bfd_init_section_decompress_status if needed. * elflink.c (elf_link_input_bfd): Replace bfd_get_section_contents with bfd_get_full_section_contents. * merge.c (_bfd_add_merge_section): Likewise. * reloc.c (bfd_generic_get_relocated_section_contents): Likewise. * simple.c (bfd_simple_get_relocated_section_contents): Likewise. * elfxx-target.h (TARGET_BIG_SYM): Allow BFD_COMPRESS and BFD_DECOMPRESS. (TARGET_LITTLE_SYM): Likewise. * libbfd-in.h (dwarf_debug_section): New. (dwarf_debug_sections): Likewise. * libbfd.c (_bfd_generic_get_section_contents): Issue an error when getting contents on compressed/decompressed section. * section.c (COMPRESS_SECTION_NONE): New. (COMPRESS_SECTION_DONE): Likewise. (DECOMPRESS_SECTION_SIZED): Likewise. (BFD_FAKE_SECTION): Add compress_status and compressed_size. (bfd_malloc_and_get_section): Replace bfd_get_section_contents with bfd_get_full_section_contents. * bfd-in2.h: Regenerated. * libbfd.h: Likewise. binutils/ 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> * addr2line.c (process_file): Set BFD_DECOMPRESS. * objcopy.c (do_debug_sections): New. (OPTION_COMPRESS_DEBUG_SECTIONS): New. (OPTION_DECOMPRESS_DEBUG_SECTIONS): Likewise. (copy_options): Add OPTION_COMPRESS_DEBUG_SECTIONS and OPTION_DECOMPRESS_DEBUG_SECTIONS. (copy_usage): Add --compress-debug-sections and --decompress-debug-sections. (copy_file): Set BFD_COMPRESS or BFD_DECOMPRESS. (copy_section): Replace bfd_get_section_contents with bfd_get_full_section_contents. (copy_main): Handle OPTION_COMPRESS_DEBUG_SECTIONS and OPTION_DECOMPRESS_DEBUG_SECTIONS. Check do_debug_sections to rename DWARF debug sections. * objdump.c (load_specific_debug_section): Replace bfd_get_section_contents with bfd_get_full_section_contents. Remove bfd_uncompress_section_contents. (dump_section): Replace bfd_get_section_contents with bfd_get_full_section_contents. (display_file): Set BFD_DECOMPRESS if needed. * readelf.c (uncompress_section_contents): Set buffer to NULL to indiate decompression failure. (load_specific_debug_section): Always call uncompress_section_contents. * doc/binutils.texi: Document --compress-debug-sections and --decompress-debug-sections. binutils/testsuite/ 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> * binutils-all/compress.exp: New. * binutils-all/dw2-1.S: Likewise. * binutils-all/dw2-2.S: Likewise. * binutils-all/libdw2-compressed.out: Likewise. * binutils-all/libdw2.out: Likewise. gas/ 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> * write.c (compress_debug): Optimize section flags check. gas/testsuite/ 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> * elf/dwarf2-1.s: Replace .zdebug_abbrev section with .debug_abbrev section. * elf/dwarf2-2.3: Likewise. * elf/dwarf2-1.d: Pass --compress-debug-sections to assembler. Updated. * elf/dwarf2-2.d: Likewise. * gas/i386/i386.exp: Remove xfail on dw2-compress-2 and x86-64-dw2-compress-2. ld/ 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> * ldfile.c (ldfile_try_open_bfd): Set BFD_DECOMPRESS after bfd_openr returns. * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Likewise. * scripttempl/elf.sc: Include compressed DWARF debug sections. ld/testsuite/ 2010-10-29 H.J. Lu <hongjiu.lu@intel.com> * ld-elf/compress.exp: New. * ld-elf/compress1.s: Likewise. * ld-elf/compress1a.d: Likewise. * ld-elf/compress1b.d: Likewise. * ld-elf/compress1c.d: Likewise.
2010-09-24 * scripttempl/armcoff.sc: Revert 2010-09-22 change.Dave Korn1-26/+1
2010-09-222010-09-22 Kai Tietz <kai.tietz@onevision.com>Kai Tietz3-11/+50
* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Add idata to orphan set. * emultempl/pep.em: Likewise. * scripttempl/armcoff.sc: Separate idata and add __IAT_start__ and __IAT_end__ labels. * scripttempl/pe.sc: Likewise. * scripttempl/pep.sc: Likewise.
2010-09-15ChangeLog gasKai Tietz1-1/+6
2010-09-15 Kai Tietz <kai.tietz@onevision.com> * config/obj-coff-seh.h (seh_context): New member code_seg. * config/obj-coff-seh.c: Implementing xdata/pdata section cloning for link-once code-segment. ChangeLog ld 2010-09-15 Kai Tietz <kai.tietz@onevision.com> * scripttempl/pep.sc: Add .xdata segment and put into .pdata all segments beginning with .pdata. ChangeLog gas/testsuite 2010-09-15 Kai Tietz <kai.tietz@onevision.com> * gas/pe/pe.exp: Add peseh-x64-4,5,6 tests. * gas/pe/peseh-x64-4.s: New. * gas/pe/peseh-x64-4.d: New. * gas/pe/peseh-x64-5.d: New. * gas/pe/peseh-x64-6.d: New.
2010-08-31 * scripttempl/mmo.sc: Move assignment to "Main" inside .textAlan Modra1-1/+1
output section statement.
2010-06-29 * scripttempl/xstormy16.sc (.gcc_except_table): Include sectionsNick Clifton1-1/+1
with the .gcc_except_table. prefix.
2010-06-29remove maxq-coff portAlan Modra1-43/+0
2010-06-01bfd/Tristan Gingold1-1/+16
2010-06-01 Tristan Gingold <gingold@adacore.com> * vms-alpha.c (struct vms_private_data_struct): Add transfer_address field. Remove unused dst_info field. (alpha_vms_write_exec): Use transfer_address. (_bfd_vms_write_egsd): Add a comment about LIB$INITIALIZE. (alpha_vms_bfd_final_link): Set transfer_address. ld/ 2010-06-01 Tristan Gingold <gingold@adacore.com> * scripttempl/alphavms.sc: Add comments. Move $LINK$ to the readonly output-section. Handle LIB$INITIALIZE and sections created by gcc. * emultempl/vms.em (vms_place_orphan): Add comments.
2010-04-142010-04-14 Tristan Gingold <gingold@adacore.com>Tristan Gingold1-0/+34
* emulparams/alphavms.sh: New file. * emultempl/vms.em: New file. * scripttempl/alphavms.sc: New file. * configure.tgt (alpha*-*-*vms*): Added. * Makefile.am (ALL_EMULATIONS): Add ealphavms.o (ealphavms.c): New target. * Makefile.in: Regenerate.
2010-03-23 * scripttempl/elf.sc (RODATA_NAME, SDATA_NAME, SBSS_NAME,Joseph Myers1-27/+34
BSS_NAME): Define if not already defined. Use in place of some hardcoded section names.
2010-03-18Re-indent INIT_ARRAY.H.J. Lu1-4/+4
2010-03-18 H.J. Lu <hongjiu.lu@intel.com> * scripttempl/elf.sc (INIT_ARRAY): Re-indent.
2010-02-27 * scripttempl/armbpabi.sc: Don't combine .init_array.* orJie Zhang5-74/+84
.fini_array.* when do relocatable linking. * scripttempl/elf.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf64hppa.sc: Likewise. * scripttempl/elfxtensa.sc: Likewise. testsuite/ * ld-elf/init-fini-arrays.s: New test. * ld-elf/init-fini-arrays.d: New test.
2010-02-26 * scripttempl/elf.sc (.fini_array): Place input .fini_array afterAlan Modra5-5/+5
.fini_array.*. * scripttempl/armbpabi.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf64hppa.sc: Likewise. * scripttempl/elfxtensa.sc: Likewise.
2009-12-09 PR ld/11012Alan Modra1-0/+1
* emulparams/elf64ppc.sh (OTHER_GOT_RELOC_SECTIONS): Move .rela.opd .. (INITIAL_RELOC_SECTIONS): .. to here. New define. * scripttempl/elf.sc: Expand INITIAL_RELOC_SECTIONS.
2009-11-252009-11-25 Kai Tietz <kai.tietz@onevision.com>Kai Tietz2-0/+4
* scripttempl/pe.sc: (.note.GNU-stack): Mark as discardable. (.gnu.lto_*): Likewise. * scripttempl/pep.sc: (.note.GNU-stack): Mark as discardable. (.gnu.lto_*): Likewise.
2009-10-10Revert 2009-09-28 changes.Alan Modra25-929/+968
2009-09-28 * scripttempl/elf32cr16.sc: Emit empty script for ld -r and ld -Ur.Alan Modra25-968/+929
* scripttempl/elf32cr16c.sc: Likewise. * scripttempl/elf32crx.sc: Likewise. * scripttempl/tic54xcoff.sc: Likewise. * scripttempl/aix.sc: Delete ${RELOCATING-0}. * scripttempl/avr.sc: Likewise. * scripttempl/elf32msp430.sc: Likewise. * scripttempl/elf32msp430_3.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf_chaos.sc: Likewise. * scripttempl/elfi370.sc: Likewise. * scripttempl/nw.sc: Likewise. * scripttempl/psos.sc: Likewise. * scripttempl/armbpabi.sc: Delete ${RELOCATING-0} and ${CONSTRUCTING-0}. * scripttempl/elf.sc: Likewise. * scripttempl/elf64hppa.sc: Likewise. * scripttempl/elfd10v.sc: Likewise. * scripttempl/elfd30v.sc: Likewise. * scripttempl/elfm68hc11.sc: Likewise. * scripttempl/elfm68hc12.sc: Likewise. * scripttempl/elfmicroblaze.sc: Likewise. * scripttempl/elfxtensa.sc: Likewise. * scripttempl/iq2000.sc: Likewise. * scripttempl/mep.sc: Likewise. * scripttempl/xstormy16.sc: Likewise.
2009-09-22Delete unused scripts.Alan Modra5-201/+0
2009-09-13 PR ld/6766Alan Modra4-19/+1
* lexsup.c (parse_args <-e>): Revert 2009-03-18 change. * ldemul.c (after_parse_default): Add entry symbol as undef. * emultempl/alphaelf.em (alpha_after_parse): Call after_parse_default. * emultempl/cr16elf.em (cr16elf_after_parse): Likewise. * emultempl/crxelf.em (crxelf_after_parse): Likewise. * emultempl/hppaelf.em (hppaelf_after_parse): Likewise. * emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Likewise. * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Call after_parse_default and delete now duplicate code. * emultempl/pep.em (gld_${EMULATION_NAME}_after_parse): Likewise. * scripttempl/elf32cr16.sc: No need to make entry extern. * scripttempl/elf32cr16c.sc: Likewise. * scripttempl/elf32crx.sc: Likewise. * scripttempl/elf32xc16xs.sc: Only provide ENTRY on final link.
2009-09-09Only provide ENTRY on final link.Alan Modra35-35/+35
2009-09-04 * scripttempl/elf.sc (.text): Add cold text sections.Alan Modra1-0/+1
2009-09-03ld/ChangeLog:Dave Korn5-0/+5
* scripttempl/pe.sc (.text): Add "*(.text.*)" in order to catch new GCC hot/cold/unlikely partitions. * scripttempl/pep.sc: Likewise. * scripttempl/epocpe.sc: Likewise. * scripttempl/mcorepe.sc: Likewise. * scripttempl/ppcpe.sc: Likewise. ld/testsuite/ChangeLog: * ld-pe/longsecn.d: Adjusted to match new .text section merging in default PE linker scripts. * ld-pe/longsecn-1.d: Likewise. * ld-pe/longsecn-2.d: Likewise.
2009-09-01 * scripttempl/elf.sc: Add ${USER_LABEL_PREFIX} to _start, etext,Jie Zhang1-4/+4
_stack and __bss_start. * emulparams/bfin.sh (ENTRY): Remove.
2009-08-24 * scripttempl/elfxtensa.sc (DISCARDED): Discard sections withNick Clifton5-5/+5
.gnu.lto_ prefix. * scripttempl/armbpabi.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf64hppa.sc: Likewise. * scripttempl/mep.sc: Likewise.
2009-08-21 * scripttempl/elf.sc: Discard sections with .gnu.lto_ prefix.Nick Clifton1-1/+1
2009-08-06 Add support for Xilinx MicroBlaze processor.Nick Clifton4-18/+240
* bfd/Makefile.am: Add cpu-microblaze.{lo,c}, elf32-microblaze.{lo,c}. * bfd/Makefile.in: Same. * bfd/archures.c: Add bfd_arch_microblaze. * bfd/bfd-in2.h: Regenerate. * bfd/config.bfd: Add microblaze target. * bfd/configure: Add bfd_elf32_microblaze_vec target. * bfd/configure.in: Same. * bfd/cpu-microblaze.c: New. * bfd/elf32-microblaze.c: New. * bfd/libbfd-in.h: Add prototype _bfd_dwarf2_fixup_section_debug_loc(). * bfd/libbfd.h: Regenerate. * bfd/reloc.c: Add MICROBLAZE relocations. * bfd/section.c: Add struct relax_table and relax_count to section. * bfd/targets.c: Add bfd_elf32_microblaze_vec. * binutils/MAINTAINERS: Add self as maintainer. * binutils/readelf.c: Include elf/microblaze.h, add EM_MICROBLAZE & EM_MICROBLAZE_OLD to guess_is_rela(), dump_relocations(), get_machine_name(). * config.sub: Add microblaze target. * configure: Same. * configure.ac: Same. * gas/Makefile.am: add microblaze to CPU_TYPES, config/tc-microblaze.c to TARGET_CPU_CFILES, config/tc-microblaze.h to TARGET_CPU_HFILES, add DEP_microblaze_elf target. * gas/Makefile.in: Same. * gas/config/tc-microblaze.c: Add MicroBlaze assembler. * gas/config/tc-microblaze.h: Add header for tc-microblaze.c. * gas/configure: Add microblaze target. * gas/configure.in: Same. * gas/configure.tgt: Same. * gas/doc/Makefile.am: Add c-microblaze.texi to CPU_DOCS. * gas/doc/Makefile.in: Same. * gas/doc/all.texi: Set MICROBLAZE. * gas/doc/as.texinfo: Add MicroBlaze doc links. * gas/doc/c-microblaze.texi: New MicroBlaze docs. * include/dis-asm.h: Decl print_insn_microblaze(). * include/elf/common.h: Define EM_MICROBLAZE & EM_MICROBLAZE_OLD. * include/elf/microblaze.h: New reloc definitions. * ld/Makefile.am: Add eelf32mb_linux.o, eelf32microblaze.o to ALL_EMULATIONS, targets. * ld/Makefile.in: Same. * ld/configure.tgt: Add microblaze*-linux*, microblaze* targets. * ld/emulparams/elf32mb_linux.sh: New. * ld/emulparams/elf32microblaze.sh. New. * ld/scripttempl/elfmicroblaze.sc: New. * opcodes/Makefile.am: Add microblaze-opc.h to HFILES, microblaze-dis.c to CFILES, microblaze-dis.lo to ALL_MACHINES, targets. * opcodes/Makefile.in: Same. * opcodes/configure: Add bfd_microblaze_arch target. * opcodes/configure.in: Same. * opcodes/disassemble.c: Define ARCH_microblaze, return print_insn_microblaze(). * opcodes/microblaze-dis.c: New MicroBlaze disassembler. * opcodes/microblaze-opc.h: New MicroBlaze opcode definitions. * opcodes/microblaze-opcm.h: New MicroBlaze opcode types.
2009-07-29 * emulparams/elf32ppc.sh (PLT): Don't include ".iplt".Alan Modra1-9/+27
* emulparams/elf_i386.sh (IREL_IN_PLT): Define. * emulparams/elf_x86_64.sh (IREL_IN_PLT): Define. * scripttempl/elf.sc: Create separate .iplt and .rela.iplt sections when !IREL_IN_PLT.
2009-07-29 * scripttempl/mmo.sc: For relocateable links, set $OUTPUT_FORMAT toHans-Peter Nilsson1-3/+7
the new $RELOCATEABLE_OUTPUT_FORMAT, if set. (OUTPUT_FORMAT): Use the variable $OUTPUT_FORMAT. (ENTRY): Don't emit for relocateable links. (/DISCARD/): Don't discard .gnu.warning.* for relocateable links. * emulparams/mmo.sh (RELOCATEABLE_OUTPUT_FORMAT): Set, to elf64-mmix. * emulparams/elf64mmix.sh (OTHER_TEXT_SECTIONS): Empty, don't provide "Main" or set "_start.", for relocateable links.
2009-07-032009-07-03 Tristan Gingold <gingold@adacore.com>Tristan Gingold2-2/+10
* scripttempl/pep.sc: Put .eh_frame in its own section. * scripttempl/pe.sc: Ditto.
2009-06-272009-06-27 Kai Tietz <kai.tietz@onevision.com>Kai Tietz2-2/+2
* scripttempl/pe.sc (.debug_pubtypes): Fixed syntax error. * scripttempl/pep.sc (.debug_pubtypes): Likewise.
2009-06-262009-06-26 Kai Tietz <kai.tietz@onevision.com>Kai Tietz2-0/+10
* scripttempl/pe.sc (.debug_pubtypes): Added section rule. * scripttempl/pep.sc: Likewise.
2009-06-06bfd/H.J. Lu1-0/+2
2009-06-06 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_link_hash_table): Add irelifunc. (elf_i386_link_hash_table_create): Initialize irelifunc. (elf_i386_check_relocs): Updated. Set up irelifunc for shared objects. (elf_i386_allocate_dynrelocs): Use irelifunc for dynamic relocation for non-GOT reference of STT_GNU_IFUNC symbol in shared objects. (elf_i386_relocate_section): Likewise. * elf64-x86-64.c (elf64_x86_64_link_hash_table): Add irelifunc. (elf64_x86_64_link_hash_table_create): Initialize irelifunc. (elf64_x86_64_check_relocs): Updated. Set up irelifunc for shared objects. (elf64_x86_64_allocate_dynrelocs): Use irelifunc for dynamic relocation for non-GOT reference of STT_GNU_IFUNC symbol in shared objects. (elf64_x86_64_relocate_section): Likewise. * elf-bfd.h (_bfd_elf_create_static_ifunc_sections): Renamed to ... (_bfd_elf_create_ifunc_sections): This. * elflink.c (_bfd_elf_create_static_ifunc_sections): Renamd to ... (_bfd_elf_create_ifunc_sections): This. Create .rel[a].ifunc for shared objects. ld/ 2009-06-06 H.J. Lu <hongjiu.lu@intel.com> * scripttempl/elf.sc: Add .rel.ifunc and .rela.ifunc.
2009-06-052009-06-05 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu1-8/+0
* scripttempl/elf.sc: Remove .rel.ifunc.dyn and .rela.ifunc.dyn.
2009-06-01bfd/H.J. Lu1-6/+18
2009-06-01 H.J. Lu <hongjiu.lu@intel.com> * elf-bfd.h (struct bfd_elf_section_data): Remove indirect_relocs. (_bfd_elf_make_ifunc_reloc_section): Removed. (_bfd_elf_is_ifunc_symbol): Likewise. (_bfd_elf_create_static_ifunc_sections): New. * elflink.c (_bfd_elf_adjust_dynamic_symbol): Move STT_GNU_IFUNC symbol check to ... (elf_link_add_object_symbols): Here. (_bfd_elf_link_hash_hide_symbol): Don't clean plt on STT_GNU_IFUNC symbol. (elf_link_output_extsym): Call elf_backend_finish_dynamic_symbol if a STT_GNU_IFUNC symbol is referenced in a non-shared object. (IFUNC_INFIX): Removed. (get_ifunc_reloc_section_name): Likewise. (_bfd_elf_make_ifunc_reloc_section): Likewise. (_bfd_elf_is_ifunc_symbol): Likewise. (_bfd_elf_create_static_ifunc_sections): New. ld/ 2009-06-01 H.J. Lu <hongjiu.lu@intel.com> * scripttempl/elf.sc (PLT): Add "*(.iplt)". (GOT): Add "*(.igot.plt)a" and "*(.igot)". (GOTPLT): Add "*(.igot)". (__rel_iplt_start): New. (__rel_iplt_end): Likewise. (__rela_iplt_start): Likewise. (__rela_iplt_end): Likewise.
2009-05-05 * scripttempl/avr.sc (MEMORY): Use DATA_ORIGIN.Nick Clifton1-1/+1
* emulparams/avr1.sh (DATA_ORIGIN): Add. * emulparams/avr2.sh (DATA_ORIGIN): Add. * emulparams/avr25.sh (DATA_ORIGIN): Add. * emulparams/avr3.sh (DATA_ORIGIN): Add. * emulparams/avr31.sh (DATA_ORIGIN): Add. * emulparams/avr35.sh (DATA_ORIGIN): Add. * emulparams/avr4.sh (DATA_ORIGIN): Add. * emulparams/avr5.sh (DATA_ORIGIN): Add. * emulparams/avr51.sh (DATA_ORIGIN): Add. (DATA_LENGTH): Update. * emulparams/avr6.sh (DATA_ORIGIN): Add. (DATA_LENGTH): Update.
2009-04-16Add new binutils target: moxieNick Clifton1-0/+52
2009-03-01 * configure.tgt: Only use elf64hppa target emulation for hpux.Dave Anglin1-0/+574
* emulparams/elf64hppa.sh: Don't include hppa64linux.sh. (SCRIPT_NAME): Use new script elf64hppa. (SCRIPT_NAME, ELFSIZE, NO_REL_RELOCS, ARCH, MACHINE, ENTRY, TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT, OTHER_READONLY_SECTIONS, OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS, OTHER_GOT_RELOC_SECTIONS, DATA_START_SYMBOLS, OTHER_SYMBOLS, DATA_PLT, PLT_BEFORE_GOT, TEXT_DYNAMIC): Define. * emulparams/hppa64linux.sh: Adjust comments. * scripttempl/elf64hppa.sc: New file.
2009-01-16ld/H.J. Lu1-2/+5
2009-01-16 H.J. Lu <hongjiu.lu@intel.com> * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT. (ld_options): Add -Ttext-segment. (parse_args): Handle OPTION_TTEXT_SEGMENT. * ld.texinfo: Document -Ttext-segment. * NEWS: Mention -Ttext-segment. * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START. (SHLIB_TEXT_START_ADDR): Likewise. ld/testsuite/ 2009-01-16 H.J. Lu <hongjiu.lu@intel.com> * ld-elf/textaddr1.d: New. * ld-elf/textaddr2.d: Likewise.
2008-12-03include/elf/Nick Clifton1-0/+8
* common.h (STT_IFUNC): Define. elfcpp/ * elfcpp.h (enum STT): Add STT_IFUNC. bfd/ * syms.c (struct bfd_symbol): Add new flag BSF_INDIRECT_FUNCTION. Remove redundant flag BFD_FORT_COMM_DEFAULT_VALUE. Renumber flags to remove gaps. (bfd_print_symbol_vandf): Return 'i' for BSF_INDIRECT_FUNCTION. (bfd_decode_symclass): Likewise. * elf.c (swap_out_syms): Translate BSF_INDIRECT_FUNCTION into STT_IFUNC. (elf_find_function): Treat STT_IFUNC in the same way as STT_FUNC. (_bfd_elf_is_function_type): Likewise. * elf32-arm.c (arm_elf_find_function): Likewise. (elf32_arm_adjust_dynamic_symbol): Likewise. (elf32_arm_swap_symbol_in): Likewise. (elf32_arm_additional_program_headers): Likewise. * elf32-i386.c (is_indirect_symbol): New function. (elf_i386_check_relocs): Also generate dynamic relocs for relocations against STT_IFUNC symbols. (allocate_dynrelocs): Likewise. (elf_i386_relocate_section): Likewise. * elf64-x86-64.c (is_indirect_symbol): New function. (elf64_x86_64_check_relocs): Also generate dynamic relocs for relocations against STT_IFUNC symbols. (allocate_dynrelocs): Likewise. (elf64_x86_64_relocate_section): Likewise. * elfcode.h (elf_slurp_symbol_table): Translate STT_IFUNC into BSF_INDIRECT_FUNCTION. * elflink.c (_bfd_elf_adjust_dynamic_reloc_section): Add support for STT_IFUNC symbols. (get_ifunc_reloc_section_name): New function. (_bfd_elf_make_ifunc_reloc_section): New function. * elf-bfd.h (struct bfd_elf_section_data): Add indirect_relocs field. * bfd-in2.h: Regenerate. gas/ * config/obj-elf.c (obj_elf_type): Add support for STT_IFUNC type. * doc/as.texinfo: Document new feature. * NEWS: Mention new feature. gas/testsuite/ * gas/elf/type.s: Add test of STT_IFUNC symbol type. * gas/elf/type.e: Update expected disassembly. * gas/elf/elf.exp: Update grep of symbol types. ld/ * NEWS: Mention new feature. * pe-dll.c (process_def_file): Replace use of redundant BFD_FORT_COMM_DEFAULT_VALUE with 0. * scripttempl/elf.sc: Add .rel.ifunc.dyn and .rela.ifunc.dyn sections. ld/testsuite/ * ld-mips-elf/reloc-1-n32.d: Updated expected output for reloc descriptions. * ld-mips-elf/reloc-1-n64.d: Likewise. * ld-i386/ifunc.d: New test. * ld-i386/ifunc.s: Source file for the new test. * ld-i386/i386.exp: Run the new test.
2008-11-03 * emulparams/elf32xtensa.sh (NO_REL_RELOCS): Set.Bob Wilson1-8/+50
* scripttempl/elfxtensa.sc (NO_REL_RELOCS, NO_RELA_RELOCS) (NON_ALLOC_DYN): Import changes from elf.sc.
2008-10-22 * scripttempl/elf.sc (NO_REL_RELOCS, NO_RELA_RELOCS, NON_ALLOC_DYN):Alan Modra1-8/+50
Handle these defines. * emulparams/criself.sh, * emulparams/crislinux.sh, * emulparams/elf32am33lin.sh, * emulparams/elf32fr30.sh, * emulparams/elf32_i860.sh, * emulparams/elf32ip2k.sh, * emulparams/elf32mcore.sh, * emulparams/elf32ppccommon.sh, * emulparams/elf32ppcwindiss.sh, * emulparams/elf32_sparc.sh, * emulparams/elf32_spu.sh, * emulparams/elf32vax.sh, * emulparams/elf64alpha.sh, * emulparams/elf64mmix.sh, * emulparams/elf64ppc.sh, * emulparams/elf64_s390.sh, * emulparams/elf64_sparc.sh, * emulparams/elf_s390.sh, * emulparams/elf_x86_64.sh, * emulparams/h8300elf.sh, * emulparams/hppa64linux.sh, * emulparams/hppalinux.sh, * emulparams/m68kelf.sh, * emulparams/mn10200.sh, * emulparams/pjelf.sh, * emulparams/ppclynx.sh, * emulparams/shelf32.sh, * emulparams/shelf_nto.sh, * emulparams/shelf.sh, * emulparams/shelf_vxworks.sh, * emulparams/shlelf32_linux.sh, * emulparams/shlelf_linux.sh, * emulparams/shlelf_nto.sh (NO_REL_RELOCS): Set. * emulparams/arcelf.sh, * emulparams/elf32_i960.sh, * emulparams/elf32openrisc.sh, * emulparams/elf_i386_be.sh, * emulparams/elf_i386_ldso.sh, * emulparams/elf_i386.sh, * emulparams/elf_i386_vxworks.sh, * emulparams/i386lynx.sh, * emulparams/i386moss.sh, * emulparams/i386nto.sh, * emulparams/or32elf.sh, * emulparams/scoreelf.sh (NO_RELA_RELOCS): Set.
2008-10-05 PR 6943Alan Modra1-3/+3
* scripttempl/avr.sc (.bss): Set lma when relocating. (.bss, .noinit): No need to set vma when relocating. (.text, .bss, ,noinit): Set vma to zero when not relocating.
2008-04-18[patch]: ctor/dtor section must start at alignment of 8 for x86_64-pc-mingw32.Kai Tietz1-0/+1
* scripttempl/pep.sc: Align start of symbol __CTOR_LIST__.
2008-02-18 * scripttempl/armbpabi.sc (ENTRY): Do not define when performing aNick Clifton15-19/+18
relocatable link. * scripttempl/elf32cr16.sc: Likewise. * scripttempl/elf32cr16c.sc: Likewise. * scripttempl/elf32crx.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf_chaos.sc: Likewise. * scripttempl/elfd10v.sc: Likewise. * scripttempl/elfi370.sc: Likewise. * scripttempl/elfm68hc11.sc: Likewise. * scripttempl/elfm68hc12.sc: Likewise. * scripttempl/ip2k.sc: Likewise. * scripttempl/iq2000.sc: Likewise. * scripttempl/mep.sc: Likewise. * scripttempl/v850.sc: Likewise. * scripttempl/xstormy16.sc: Likewise.
2008-01-18 * scripttempl/elfxtensa.sc: Merge ENTRY and .note.gnu.build-idBob Wilson1-1/+2
changes from elf.sc.
2008-01-11ld:Tristan Gingold1-1/+1
2008-01-11 Tristan Gingold <gingold@adacore.com> Eric Botcazou <ebotcazou@adacore.com> * ldlang.c (lang_end): Warns if the entry point is not found when --gc-sections. Emit an error if no root is specified when --gc-sections -r. * ld.texinfo (Options): Document that --gc-sections is compatible with -r and -q. * ldmain.c (main): Do not error out if -r and --gc-sections. * scripttempl/elf.sc: Emit ENTRY command only if relocating. ld/testsuite: 2008-01-11 Tristan Gingold <gingold@adacore.com> * lib/ld-lib.exp (check_gc_sections_available): Now available on VxWorks. * ld-gc: New directory for testing --gc-sections. * ld-gc/gc.c: New file. * ld-gc/gc.exp: New file. * ld-gc/noent.s: New file. * ld-gc/noent.d: New file.
2007-12-15ld/Richard Sandiford4-8/+0
* scripttempl/armbpabi.sc (.text): Don't KEEP (*(.text.*personality*)). (.data): Don't KEEP (*(.gnu.linkonce.d.*personality*)). * scripttempl/elf.sc: As for armbpabi.sc. * scripttempl/elfxtensa.sc: Likewise. * scripttempl/mep.sc: Likewise.
2007-10-01PR linker/4844Nick Clifton2-8/+22
* genscript.sh: Add support for generating a .xa script for use with the --auto-import option. * ld.texinfo: Document the new behaviour of the --auto-import option. * ldint.texinfo: Document new script generation. * emulparams/i386pe.sh (GENERATE_AUTO_IMPORT): Define. * emulparams/i386pe_posix.sh (GENERATE_AUTO_IMPORT): Define. * emulparams/i386pep.sh (GENERATE_AUTO_IMPORT): Define. * emultemp/pe.em (..._get_script): Support the use of the auto import script. * scripttempl/pe.sc: Put the .rdata input sections into the .data output section when creating an auto import script. * scripttempl/pep.sc: Likewise.
2007-07-27 * scripttempl/elf.sc: Add .note.gnu.build-id.Jakub Jelinek1-0/+1