[gold][aarch64]patch3: static link/shared objects
Hán Shěn (沈涵)
shenhan@google.com
Tue Aug 12 00:48:00 GMT 2014
Here is the third patch for aarch64 backend.
This patches 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.
Builds pass -
On x86:
$ ../binutils-gdb/configure --enable-plugins --disable-multilib
--disable-nls --enable-threads --enable-gold=default
--enable-targets=all
On aarch64:
$ ../binutils-gdb/configure --enable-plugins --disable-multilib
--disable-nls --enable-threads --enable-gold=default
--enable-targets=all
2014-08-11 Han Shen <shenhan@google.com>
Jing Yu <jingyu@google.com>
* gold/aarch64-reloc-property.cc(AArch64_reloc_property_table::reloc_name_in_error_message):
Fix bug in reference reloc property in the table.
* gold/aarch64-reloc.def: Add TLSLE reloc types and fix some errors in
3 other entries.
* gold/aarch64.cc:
(TARGET_TCB_SIZE): New macro defining how tcb size is computed.
(Output_data_got_aarch64::add_static_reloc): 2 new methods
(overloaded version).
(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 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.
Thanks,
Han
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gold.patch3
Type: application/octet-stream
Size: 38195 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20140812/a2490bf1/attachment.obj>
More information about the Binutils
mailing list