aboutsummaryrefslogtreecommitdiff
path: root/gold/Makefile.in
AgeCommit message (Collapse)AuthorFilesLines
2008-04-17 * common.cc (Symbol_table::allocate_commons): Remove optionsIan Lance Taylor1-0/+2
parameter. Change caller. (Symbol_table::do_allocate_commons): Remove options parameter. Change caller. Just call do_allocate_commons_list twice. (Symbol_table::do_allocate_commons_list): New function, broken out of do_allocate_commons. * common.h (class Allocate_commons_task): Remove options_ field. Update constructor. * symtab.cc (Symbol_table::Symbol_table): Initialize tls_commons_. (Symbol_table::add_from_object): Put TLS common symbols on tls_commons_ list. (Symbol_table::sized_finalize_symbol): Handle STT_TLS symbols which are IN_OUTPUT_DATA. * symtab.h (class Symbol_table): Add tls_commons_ field. Update allocate_commons and do_allocate_commons declarations. Declare do_allocate_commons_list. * gold.cc (queue_middle_tasks): Update creation of Allocate_commons_task to not pass options. * testsuite/Makefile.am (INCLUDES): Add -I.. . (TLS_TEST_C_FLAGS): New variable. (tls_test_c_pic.o): New target. (tls_test_shared.so): Link in tls_test_c_pic.o. (tls_test_c_pic_ie.o): New target. (tls_test_ie_shared.so): Link in tls_test_c_pic_ie.o. (tls_test_DEPENDENCIES, tls_test_LDADD): Add tls_test_c.o. (tls_test_c.o): New target. (tls_pic_test_DEPENDENCIES): Add tls_test_c_pic.o. (tls_pic_test_LDADD): Likewise. (tls_shared_gd_to_ie_test_DEPENDENCIES): Add tls_test_c_pic.o. (tls_shared_gd_to_ie_test_LDADD): Likewise. (tls_test_c_gnu2.o): New target. (tls_shared_gnu2_gd_to_ie_test_DEPENDENCIES): Add tls_test_c_gnu2.o. (tls_shared_gnu2_gd_to_ie_test_LDADD): Likewise. (tls_test_gnu2_shared.so): Link in tls_test_c_gnu2.o. (tls_test_shared_nonpic.so): Link in tls_test_c.o. * testsuite/tls_test.cc: Include "config.h". (t_last): Call t11_last. * testsuite/tls_test.h (t11, t11_last): Declare. * testsuite/tls_test_c.c: New file. * testsuite/tls_test_main.cc (thread_routine): Call t11. * configure.ac: Check for OpenMP support. * configure, config.in, Makefile.in: Rebuild. * testsuite/Makefile.in: Rebuild.
2008-04-16 * copy-relocs.cc: New file.Ian Lance Taylor1-8/+11
* copy-relocs.h: New file. * reloc.cc: Remove Copy_relocs code. * reloc.h: Likewise. * reloc-types.h (struct Reloc_types) [both versions]: Add get_reloc_addend_noerror. * output.h (class Output_data_reloc<elfcpp::SHT_REL>): Add variants of add_global which take an addend which must be zero. * i386.cc: Include "copy-relocs.h". (class Target_i386): Change type of copy_relocs_ to variable, update initializer. (Target_i386::copy_reloc): Rewrite to pass to Copy_relocs class. Change all callers. (Target_i386::do_finalize_sections): Change handling of copy_relocs_. * sparc.cc: Include "copy-relocs.h". (class Target_sparc): Change type of copy_relocs_ to variable, update initializer. (Target_sparc::copy_reloc): Rewrite to pass to Copy_relocs class. Change all callers. (Target_sparc::do_finalize_sections): Change handling of copy_relocs_. * x86_64.cc: Include "copy-relocs.h". (class Target_x86_64): Change type of copy_relocs_ to variable, update initializer. (Target_x86_64::copy_reloc): Rewrite to pass to Copy_relocs class. Change all callers. (Target_x86_64::do_finalize_sections): Change handling of copy_relocs_. * Makefile.am (CCFILES): Add copy-relocs.cc. (HFILES): Add copy-relocs.h.
2008-04-16 * Makefile.in, aclocal.m4, testsuite/Makefile.in: Rebuild.Ian Lance Taylor1-11/+5
2008-04-15 * script-sections.cc (Script_sections::create_segments): UseIan Lance Taylor1-5/+11
header_size_adjustment even when there is enough room for the headers. * testsuite/script_test_4.sh: New file. * testsuite/script_test_4.t: New file. * testsuite/Makefile.am (check_SCRIPTS): Add script_test_4.sh. (check_DATA): Add script_test_4.stdout. (MOSTLYCLEANFILES): Likewise. (script_test_4): New target. (script_test_4.stdout): New target. * testsuite/Makefile.in: Rebuild.
2008-04-15toplevel/David S. Miller1-4/+6
* configure.ac: Add sparc*-*-* to gold supported targets. * configure: Regenerate. gold/ * sparc.cc: New file. * Makefile.am (TARGETSOURCES): Add sparc.cc (ALL_TARGETOBJS): Add sparc.$(OBJEXT) * configure.tgt: Document targ_extra_size and targ_extra_big_endian. Add entries for sparc-* and sparc64-*. * configure.ac: Handle targ_extra_size and targ_extra_big_endian. * Makefile.in: Rebuild. * configure: Likewise. * po/POTFILES.in: Likewise. * po/gold.pot: Likewise.
2008-04-112008-04-11 Cary Coutant <ccoutant@google.com>Cary Coutant1-9/+6
Add support for TLS descriptors for i386 and x86_64. * i386.cc (Target_i386::Relocate::tls_desc_gd_to_ie): New function. (Target_i386::Relocate::tls_desc_gd_to_le): New function. (Target_i386::Got_type): Add GOT_TYPE_TLS_NOFFSET and GOT_TYPE_TLS_DESC. (Target_i386::got_mod_index_entry): Remove unnecessary code. (Target_i386::Scan::local): Implement R_386_TLS_GOTDESC and R_386_TLS_DESC_CALL relocations. Fix problem with initial-exec relocations. (Target_i386::Scan::global): Fix problem with GD-to-IE relaxation. Implement R_386_TLS_GOTDESC and R_386_TLS_DESC_CALL relocations; Fix problem with initial-exec relocations. (Target_i386::Relocate::relocate_tls): Likewise. (Target_i386::Relocate::tls_gd_to_ie): Fix problem with GD-to-IE relaxation. * output.cc (Output_data_dynamic::Dynamic_entry::write): Add support for section-plus-offset dynamic table entries. * output.h (Output_data_dynamic::add_section_plus_offset): New function. (Output_data_dynamic::Dynamic_entry): Add support for section-plus-offset dynamic table entries. (Output_data_dynamic::Classification): Likewise. (Output_data_dynamic::classification_): Renamed offset_. * x86_64.cc (Target_x86_64::Relocate::tls_desc_gd_to_ie): New function. (Target_x86_64::Relocate::tls_desc_gd_to_le): New function. (Target_x86_64::make_plt_section): New function. (Target_x86_64::reserve_tlsdesc_entries): New function. (Output_data_plt_x86_64::Output_data_plt_x86_64): Add new parameter. (Output_data_plt_x86_64::reserve_tlsdesc_entry): New function. (Output_data_plt_x86_64::has_tlsdesc_entry): New function. (Output_data_plt_x86_64::get_tlsdesc_got_offset): New function. (Output_data_plt_x86_64::get_tlsdesc_plt_offset): New function. (Output_data_plt_x86_64::tlsdesc_plt_entry): New field. (Output_data_plt_x86_64::set_final_data_size): Move out of line; add extra PLT entry for TLS descriptors. (Output_data_plt_x86_64::got_): New field. (Output_data_plt_x86_64::tlsdesc_got_offset_): New field. (Output_data_plt_x86_64::Output_data_plt_x86_64): Initialize new fields. (Output_data_plt_x86_64::do_write): Write extra PLT entry for TLS descriptors. (Target_x86_64::make_plt_entry): Factor out make_plt_section. (Target_x86_64::got_mod_index_entry): Remove unnecessary code. (Target_x86_64::Scan::local): Implement R_386_TLS_GOTDESC and R_386_TLS_DESC_CALL relocations. (Target_x86_64::Scan::global): Likewise. (Target_x86_64::do_finalize_sections): Add dynamic table entries for TLS descriptors. (Relocate::relocate_tls): Fix problem with GD-to-IE relaxation. Implement R_386_TLS_GOTDESC and R_386_TLS_DESC_CALL relocations. (Target_x86_64::Relocate::tls_gd_to_ie): Fix problem with GD-to-IE relaxation. * configure.ac: Export new conditional variables TLS_GNU2_DIALECT and TLS_DESCRIPTORS. * Makefile.in: Rebuild. * configure: Rebuild. * testsuite/Makefile.am (tls_shared_gd_to_ie_test): New target. (tls_test_shared2.so): New target. (tls_shared_gd_to_ie_test_SOURCES): New variable. (tls_shared_gd_to_ie_test_DEPENDENCIES): New variable. (tls_shared_gd_to_ie_test_LDFLAGS): New variable. (tls_shared_gd_to_ie_test_LDADD): New variable. (tls_shared_gnu2_gd_to_ie_test): New target. (tls_test_gnu2.o, tls_test_file2_gnu2.o, tls_test_gnu2_shared2.so): New targets. (tls_shared_gnu2_gd_to_ie_test_SOURCES): New variable. (ls_shared_gnu2_gd_to_ie_test_DEPENDENCIES): New variable. (tls_shared_gnu2_gd_to_ie_test_LDFLAGS): New variable. (tls_shared_gnu2_gd_to_ie_test_LDADD): New variable. (tls_shared_gnu2_test): New target. (tls_test_gnu2_shared.so): New target. (tls_shared_gnu2_test_SOURCES): New variable. (tls_shared_gnu2_test_DEPENDENCIES): New variable. (tls_shared_gnu2_test_LDFLAGS): New variable. (tls_shared_gnu2_test_LDADD): New variable. * testsuite/Makefile.in: Rebuild. * testsuite/Makefile.
2008-04-11 * testsuite/Makefile.am (justsyms_2r.o): Add dependency onIan Lance Taylor1-2/+9
justsyms.t. * testsuite/Makefile.in: Rebuild. * testsuite/script_test_2a.cc (script_test_string_a): Make 8 bytes long. * testsuite/script_test_2.cc (main): Adjust test.
2008-04-08 * configure.ac: Export new conditional variable HAVE_ZLIB.Ian Lance Taylor1-0/+2
* testsuite/Makefile.am (flagstest_o_specialfile): Condition on HAVE_ZLIB. (flagstest_o_specialfile_and_compress_debug_sections): Likewise. * configure, Makefile.in, testsuite/Makefile.in: Rebuild.
2008-04-07 * configure.ac: Don't test for objdump, c++filt, or readelf.Ian Lance Taylor1-4/+0
* testsuite/Makefile.am: Remove READELF and OBJDUMP_AND_CPPFILT conditionals. (TEST_READELF): New variable. (TEST_OBJDUMP, TEST_CXXFILT, TEST_STRIP): New variables. (check_PROGRAMS): Add two_file_strip_test. (two_file_strip_test): New target. (check_PROGRAMS): Add two_file_same_shared_strip_test. (two_file_same_shared_strip_test_SOURCES): New variable. (two_file_same_shared_strip_test_DEPENDENCIES): New variable. (two_file_same_shared_strip_test_LDFLAGS): New variable. (two_file_same_shared_strip_test_LDADD): New variable. (two_file_shared_strip.so): New target. (ver_test_2.syms, ver_test_4.syms): Use TEST_READELF. (ver_test_5.syms, ver_test_7.syms): Likewise. (ver_matching_test.stdout): Use TEST_OBJDUMP and TEST_CXXFILT. (strip_test_3.stdout): Use TEST_OBJDUMP. * configure, Makefile.in, testsuite/Makefile.in: Rebuild.
2008-04-03 * compressed_output.h (class Output_compressed_section): UseIan Lance Taylor1-1/+1
unsigned buffer. * compressed_output.cc (zlib_compress): Use unsigned buffers, add zlib header. (zlib_compressed_suffix): Removed. (Output_compressed_section::set_final_data_size): Use unsigned buffers. * testsuite/Makefile.am (flagstest_compress_debug_sections): Fix linker invocation. (flagstest_o_specialfile_and_compress_debug_sections): Likewise. * testsuite/Makefile.in: Regenerated.
2008-03-28 * layout.cc (Layout::layout): If we see an input section with aIan Lance Taylor1-0/+2
name that needs sorting, set the must_sort flag for the output section. (Layout::make_output_section): If the name of the output section indicates that it might require sorting, set the may_sort flag. * output.h (Output_section::may_sort_attached_input_sections): New function. (Output_section::set_may_sort_attached_input_sections): New function. (Output_section::must_sort_attached_input_sections): New function. (Output_section::set_must_sort_attached_input_sections): New function. (class Output_section): Declare Input_section_sort_entry. Define Input_section_sort_compare. Declare sort_attached_input_sections. Add new fields: may_sort_attached_input_sections_, must_sort_attached_input_sections_, attached_input_sections_are_sorted_. * output.cc (Output_section::Output_section): Initialize new fields. (Output_section::add_input_section): Add an entry to input_sections_ if may_sort or must_sort are true. (Output_section::set_final_data_size): Call sort_attached_input_sections if necessary. (Output_section::Input_section_sort_entry): Define new class. (Output_section::Input_section_sort_compare::operator()): New function. (Output_section::sort_attached_input_sections): New function. * configure.ac: Check whether the compiler supports constructor priorities. Define a CONSTRUCTOR_PRIORITY automake conditional. * testsuite/initpri1.c: New file. * testsuite/Makefile.am (check_PROGRAMS): Add initpri1 if CONSTRUCTOR_PRIORITY. (initpri1_SOURCES, initpri1_DEPENDENCIES): New variables. (initpri1_LDFLAGS): New variable. * configure, Makefile.in, testsuite/Makefile.in: Rebuild.
2008-03-27 * symtab.cc (Symbol_table::add_from_relobj): Don't set the versionIan Lance Taylor1-2/+2
of an undefined symbol from a version script. * testsuite/Makefile.am (ver_test_5.so): New target. (ver_test_5.o): New target. (check_SCRIPTS): Add ver_test_5.sh. (check_DATA): Add ver_test_5.syms. (ver_test_5.syms): New target. * testsuite/ver_test_5.cc: New file. * testsuite/ver_test_5.script: New file. * testsuite/ver_test_5.sh: New file. * Makefile.in, testsuite/Makefile.in: Rebuild.
2008-03-14Don't get confused about whether a symbol is the default version if weIan Lance Taylor1-0/+2
see a later reference to it. Add tests for this case.
2008-02-08Add support for --format binary for input files.Ian Lance Taylor1-1/+4
2008-02-06Fix group signature handling for relocatable link, add bootstrapIan Lance Taylor1-4/+44
relocatable test.
2008-02-05From Ollie Wild: add missing backquote to install-exec-local.Ian Lance Taylor1-1/+1
2008-01-23Add explicit dependencies on yyscript.h to make sure that it isIan Lance Taylor1-0/+2
built.
2008-01-23Parse a SECTIONS clause in a linker script.Ian Lance Taylor1-5/+10
2008-01-15From Andrew Chatham and Craig Silverstein: Add support for versionIan Lance Taylor1-0/+2
scripts.
2008-01-09Support assignments and expressions in linker scripts.Ian Lance Taylor1-7/+9
2007-12-14Rewrite workqueue. This version eliminates the master thread, andIan Lance Taylor1-0/+1
reduces the amount of locking required to find a new thread to run.
2007-12-01Compile shared library code with -fPIC. Also, alphabetize.Ian Lance Taylor1-2/+2
2007-11-30From Craig Silverstein: Add support for compressing .debug_str section.Ian Lance Taylor1-1/+6
2007-11-22Add threading support.Ian Lance Taylor1-3/+7
2007-11-02From Craig Silverstein: Add first version of generating error messagesIan Lance Taylor1-8/+11
with file name and line number.
2007-10-24Use AC_GNU_SOURCE.Ian Lance Taylor1-1/+1
2007-10-17Add infrastructure for threading support.Ian Lance Taylor1-2/+6
2007-10-14Run all error handling through an Errors object. Delete output fileIan Lance Taylor1-6/+10
on error.
2007-10-14Only run static TLS tests on glibc 2.4 or later.Ian Lance Taylor1-0/+2
2007-10-08From Craig Silverstein: add tls.h, use it in i386.cc.Ian Lance Taylor1-0/+1
2007-10-07Add --version option.Ian Lance Taylor1-1/+3
2007-10-07Add a TLS test case.Ian Lance Taylor1-0/+2
2007-10-04Full support for --sysroot.Ian Lance Taylor1-5/+8
2007-10-02From Craig Silverstein: don't run function pointer non-PIC tests whenIan Lance Taylor1-0/+2
they won't work.
2007-10-01From Craig Silverstein: x86_64 support.Ian Lance Taylor1-2/+3
2007-09-30Clean up target handling--only build required files, warn aboutIan Lance Taylor1-18/+24
unsupported targets.
2007-09-26Add basic exception frame header, plus test.Ian Lance Taylor1-7/+10
2007-09-25Rework File_read interface. Get file size. Use pread whenIan Lance Taylor1-6/+8
available.
2007-09-22Change YFLAGS to AM_YFLAGS.Ian Lance Taylor1-1/+1
2007-09-22Add bootstrap test.Ian Lance Taylor1-23/+156
2007-09-21Add global parameters.Ian Lance Taylor1-3/+6
2007-05-16Add support for SHF_MERGE sections.Ian Lance Taylor1-4/+8
2006-11-30Added a testsuite. More support for COPY relocations.Ian Lance Taylor1-33/+58
2006-11-16Snapshot. Includes first cut at output relocation sections.Ian Lance Taylor1-0/+2
2006-11-14More dynamic object support, initial scripting support.Ian Lance Taylor1-15/+76
2006-11-03Can now do a full static link of hello, world in C or C++Ian Lance Taylor1-14/+18
2006-09-29Snapshot. Now able to produce a minimal executable which actuallyIan Lance Taylor1-3/+11
runs.
2006-09-26More section layout code.Ian Lance Taylor1-0/+2
2006-09-21New drop, with first cut of section layout code.Ian Lance Taylor1-5/+10
2006-08-18Another snapshot of the current state of the sources. Gets to theIan Lance Taylor1-5/+22
point of symbol resolution and can now issue a multiple definition error. Also added target selection infrastructure.