From: Vineet Gupta Date: Mon, 30 May 2016 09:49:22 +0000 (+0530) Subject: [ARC] Don't convert _DYNAMIC@ to _GLOBAL_OFFSET_TABLE_ X-Git-Tag: binutils-2_29~342 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7ef0acc15ec011371a3901a997c867165bf7a733;p=external%2Fbinutils.git [ARC] Don't convert _DYNAMIC@ to _GLOBAL_OFFSET_TABLE_ Historically the arc abi demanded that a GOT[0] should be referencible as [pc+_DYNAMIC@gotpc]. Hence we convert a _DYNAMIC@gotpc to a GOTPC reference to _GLOBAL_OFFSET_TABLE_. This is no longer the case and uClibc and upcomming GNU libc don't expect this to happen. gas/ChangeLog: Vineet Gupta Cupertino Miranda * config/tc-arc.c (md_undefined_symbol): Changed. * config/tc-arc.h (DYNAMIC_STRUCT_NAME): Removed. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a436e2e..7fd3322 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,10 @@ 2017-06-08 Cupertino Miranda + * config/tc-arc.c (md_undefined_symbol): Changed. + * config/tc-arc.h (DYNAMIC_STRUCT_NAME): Removed. + +2017-06-08 Cupertino Miranda + * elf32-arc.c (elf_arc_relocate_section): Fixed reassign of indirect symbols. diff --git a/gas/config/tc-arc.c b/gas/config/tc-arc.c index 55aaf07..a56b2a5 100644 --- a/gas/config/tc-arc.c +++ b/gas/config/tc-arc.c @@ -3280,10 +3280,7 @@ md_undefined_symbol (char *name) GOTPC reference to _GLOBAL_OFFSET_TABLE_. */ if (((*name == '_') && (*(name+1) == 'G') - && (strcmp (name, GLOBAL_OFFSET_TABLE_NAME) == 0)) - || ((*name == '_') - && (*(name+1) == 'D') - && (strcmp (name, DYNAMIC_STRUCT_NAME) == 0))) + && (strcmp (name, GLOBAL_OFFSET_TABLE_NAME) == 0))) { if (!GOT_symbol) { diff --git a/gas/config/tc-arc.h b/gas/config/tc-arc.h index f4cafe9..f887fcc 100644 --- a/gas/config/tc-arc.h +++ b/gas/config/tc-arc.h @@ -171,7 +171,6 @@ extern long md_pcrel_from_section (struct fix *, segT); #define tc_frob_label(S) arc_frob_label (S) #define GLOBAL_OFFSET_TABLE_NAME "_GLOBAL_OFFSET_TABLE_" -#define DYNAMIC_STRUCT_NAME "_DYNAMIC" /* We need to take care of not having section relative fixups for the fixups with respect to Position Independent Code. */