diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2013-11-17 10:30:28 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2013-11-18 09:55:09 -0800 |
commit | f49fe902baaeff0cc73e86330ed0468d48203046 (patch) | |
tree | 422f230106e3ea93fee3247c99fa507c4d92344a /elfcpp | |
parent | Add support for armv7ve to gas. (diff) | |
download | binutils-gdb-f49fe902baaeff0cc73e86330ed0468d48203046.tar.gz binutils-gdb-f49fe902baaeff0cc73e86330ed0468d48203046.tar.bz2 binutils-gdb-f49fe902baaeff0cc73e86330ed0468d48203046.zip |
Add R_X86_64_PC32_BND/R_X86_64_PLT32_BND suppor to gold
elfcpp/
* x86_64.h (R_X86_64_PC32_BND): New.
(R_X86_64_PLT32_BND): Likewise.
gold/
* x86_64.cc (Target_x86_64<size>::Scan::get_reference_flags):
Handle R_X86_64_PC32_BND and R_X86_64_PLT32_BND just like
R_X86_64_PC32 and R_X86_64_PLT32, respectively.
(Target_x86_64<size>::Scan::local): Likewise.
(Target_x86_64<size>::Scan::global): Likewise.
(Target_x86_64<size>::Relocate::relocate): Likewise.
(Target_x86_64<size>::Relocatable_size_for_reloc::get_size_for_reloc):
Likewise.
(Target_x86_64<size>::Scan::check_non_pic(): Handle
R_X86_64_PC32_BND.
* testsuite/Makefile.am (check_PROGRAMS): Add
exception_x86_64_bnd_test.
(exception_x86_64_bnd_test_SOURCES): New macro.
(exception_x86_64_bnd_test_DEPENDENCIES): Likewise.
(exception_x86_64_bnd_test_LDFLAGS): Likewise.
(exception_x86_64_bnd_test_LDADD): Likewise.
(exception_x86_64_bnd_1.o): New rule.
(exception_x86_64_bnd_2.o): Likewise.
* testsuite/Makefile.in: Regenerated.
Diffstat (limited to 'elfcpp')
-rw-r--r-- | elfcpp/ChangeLog | 5 | ||||
-rw-r--r-- | elfcpp/x86_64.h | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/elfcpp/ChangeLog b/elfcpp/ChangeLog index 4d0a5037f76..2399da69ec6 100644 --- a/elfcpp/ChangeLog +++ b/elfcpp/ChangeLog @@ -1,3 +1,8 @@ +2013-11-17 H.J. Lu <hongjiu.lu@intel.com> + + * x86_64.h (R_X86_64_PC32_BND): New. + (R_X86_64_PLT32_BND): Likewise. + 2013-10-30 Alan Modra <amodra@gmail.com> * powerpc.h (EF_PPC64_ABI): New enum constant. diff --git a/elfcpp/x86_64.h b/elfcpp/x86_64.h index a53beac947c..79fa13fcf53 100644 --- a/elfcpp/x86_64.h +++ b/elfcpp/x86_64.h @@ -92,6 +92,8 @@ enum R_X86_64_TLSDESC = 36, // 2 by 64-bit TLS descriptor R_X86_64_IRELATIVE = 37, // Adjust indirectly by program base R_X86_64_RELATIVE64 = 38, // 64-bit adjust by program base + R_X86_64_PC32_BND = 39, // PC relative 32 bit signed with BND prefix + R_X86_64_PLT32_BND = 40, // 32 bit PLT address with BND prefix // GNU vtable garbage collection extensions. R_X86_64_GNU_VTINHERIT = 250, R_X86_64_GNU_VTENTRY = 251 |