From fa89cc82f5ca51f3135a9f2043b85b6a16c205eb Mon Sep 17 00:00:00 2001 From: Han Shen Date: Thu, 29 Jan 2015 10:00:46 -0800 Subject: This patch adds IFUNC support for arm gold backend. This is a feature required in chromeos arm development work. Tested: 1) Built passed all-gold on x86_64 machine 2) Tested with basic gold aarch64 ifunc unittests - a) global ifunc, statically/non-statically linked b) local ifunc, statically/non-statically linked c) global/local, other shared library routine mixed, statically/non-statically linked d) arm/thumb mode ifunc e) linking chrome browser passed --- elfcpp/ChangeLog | 4 ++++ elfcpp/arm.h | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'elfcpp') diff --git a/elfcpp/ChangeLog b/elfcpp/ChangeLog index 0687860..47e6328 100644 --- a/elfcpp/ChangeLog +++ b/elfcpp/ChangeLog @@ -1,3 +1,7 @@ +2015-01-22 Han Shen + + * arm.h (R_ARM_IRELATIVE): New dynamic relocation. + 2015-01-01 Alan Modra Update year range in copyright notice of all files. diff --git a/elfcpp/arm.h b/elfcpp/arm.h index 2d30add..c9cb753 100644 --- a/elfcpp/arm.h +++ b/elfcpp/arm.h @@ -192,11 +192,12 @@ enum R_ARM_PRIVATE_14 = 126, R_ARM_PRIVATE_15 = 127, R_ARM_ME_TOO = 128, // Obsolete - R_ARM_THM_TLS_DESCSEQ16 = 129,// Static Thumb16 + R_ARM_THM_TLS_DESCSEQ16 = 129,// Static Thumb16 R_ARM_THM_TLS_DESCSEQ32 = 130,// Static Thumb32 // 131 - 139 Unallocated // 140 - 159 Dynamic Reserved for future allocation - // 160 - 255 Unallocated + R_ARM_IRELATIVE = 160, // Dynamic + // 161 - 255 Unallocated }; // e_flags values used for ARM. We only support flags defined in AAELF. -- cgit v1.1