The 3rd patch for aarch64 gold.
authorHan Shen <shenhan@chromium.org>
Sat, 30 Aug 2014 00:53:03 +0000 (17:53 -0700)
committerHan Shen <shenhan@chromium.org>
Sat, 30 Aug 2014 00:53:03 +0000 (17:53 -0700)
commit8e33481e13facdf33c732e25d18b4b9772cc4e9c
treec06550eb34185412f4c1b98fa785a838f06d6de6
parent6128f9cf2b2c4188145faba45596ce49dd0f08be
The 3rd patch for aarch64 gold.

This enables -
1. static linking hello world
2. limited support for TLSIE and TLSLE
3. limited support for linking shared library, linking executable against shared
   library.

gold/ChangeLog
2014-08-29 Han Shen <shenhan@google.com>
       Jing Yu <jingyu@google.com>

    * aarch64-reloc-property.cc
    (AArch64_reloc_property_table::reloc_name_in_error_message): Fix bug in
    reference reloc property in the table.
    * aarch64-reloc.def: Add TLSLE reloc types and fix some errors in
    3 other entries.
    * aarch64.cc: (Output_data_got_aarch64::add_static_reloc):
    2 new overloaded methods.
    (Output_data_got_aarch64::do_write): Add code to write out
    static relocs.
    (class Output_data_got_aarch64::Static_reloc): New class to wrap
    static relocs.
    (Output_data_got_aarch64::static_relocs): New vector to
    hold static relocs.
    (Target_aarch64::TCB_SIZE): New const static memeber.
    (Target_aarch64::tcb_size): New method.
    (Target_aarch64::Relocate::relocate): Add code handling new reloc types.
    (Target_aarch64::Relocate::relocate_tls): New method.
    (Target_aarch64::Scan::local): Add code handling new reloc types.
    (Target_aarch64::Scan::global): Add code handling new reloc types.
gold/ChangeLog
gold/aarch64-reloc-property.cc
gold/aarch64-reloc.def
gold/aarch64.cc