[ARC] don't force _init/_fini as DT_INIT/DT_FINI.
Recent gcc commit b4371b277f1e ("[ARC] Enable init_array support") inhibits DT_"INIT,FINI} in favor of DT_{INIT,FINI}ARRAY. Even prior to that, it seems ARC port is the only one with this special DT_INIT/FINI handling in linker emulation. Removing it doesn't seem to change any uClibc/glibc testsuite results, so this can RIP anyways. bfd/ 2019-02-01 Vineet Gupta <vgupta@synopsys.com> * elf32-arc.c: Delete init_str, fini_str ld/ 2019-02-01 Vineet Gupta <vgupta@synopsys.com> * emultempl/arclinux.em : Delete special INIT/FINI handling.
This commit is contained in:
parent
d1ea488747
commit
a0e90a73f0
@ -1,3 +1,10 @@
|
||||
2019-02-09 Vineet Gupta <vgupta@synopsys.com>
|
||||
|
||||
* elf32-arc (INIT_SYM_STRING): Delete.
|
||||
(FINI_SYM_STRING): Likewise.
|
||||
(init_str): Likewise.
|
||||
(fini_str): Likewise.
|
||||
|
||||
2019-02-08 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
|
||||
|
@ -71,16 +71,6 @@ name_for_global_symbol (struct elf_link_hash_entry *h)
|
||||
} \
|
||||
}
|
||||
|
||||
|
||||
/* The default symbols representing the init and fini dyn values.
|
||||
TODO: Check what is the relation of those strings with arclinux.em
|
||||
and DT_INIT. */
|
||||
#define INIT_SYM_STRING "_init"
|
||||
#define FINI_SYM_STRING "_fini"
|
||||
|
||||
char * init_str = INIT_SYM_STRING;
|
||||
char * fini_str = FINI_SYM_STRING;
|
||||
|
||||
#define ARC_RELOC_HOWTO(TYPE, VALUE, SIZE, BITSIZE, RELOC_FUNCTION, OVERFLOW, FORMULA) \
|
||||
case VALUE: \
|
||||
return "R_" #TYPE; \
|
||||
|
@ -1,3 +1,7 @@
|
||||
2019-02-09 Vineet Gupta <vgupta@synopsys.com>
|
||||
|
||||
* emultempl/arclinux.em: Delete special INIT/FINI handling.
|
||||
|
||||
2019-02-07 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
PR 24175
|
||||
|
@ -1,7 +1,7 @@
|
||||
# This shell script emits a C file. -*- C -*-
|
||||
# Copyright (C) 2007-2019 Free Software Foundation, Inc.
|
||||
#
|
||||
# Copyright 2008-2012 Synopsys Inc.
|
||||
# Copyright 2008-2019 Synopsys Inc.
|
||||
#
|
||||
# This file is part of GLD, the Gnu Linker.
|
||||
#
|
||||
@ -23,30 +23,3 @@
|
||||
# This file is sourced from elf32.em, and defines extra arc-linux
|
||||
# specific routines.
|
||||
#
|
||||
cat >>e${EMULATION_NAME}.c <<EOF
|
||||
extern char * init_str;
|
||||
extern char * fini_str;
|
||||
EOF
|
||||
|
||||
PARSE_AND_LIST_PROLOGUE='
|
||||
#define OPTION_INIT 300+1
|
||||
#define OPTION_FINI (OPTION_INIT+1)
|
||||
'
|
||||
PARSE_AND_LIST_LONGOPTS='
|
||||
/* PE options */
|
||||
{ "init", required_argument, NULL, OPTION_INIT },
|
||||
{ "fini", required_argument, NULL, OPTION_FINI },
|
||||
'
|
||||
|
||||
# FIXME: Should set PARSE_AND_LIST_OPTIONS to provide a short description
|
||||
# of the options.
|
||||
|
||||
PARSE_AND_LIST_ARGS_CASES='
|
||||
case OPTION_FINI:
|
||||
fini_str = optarg;
|
||||
break;
|
||||
|
||||
case OPTION_INIT:
|
||||
init_str = optarg;
|
||||
break;
|
||||
'
|
||||
|
Loading…
Reference in New Issue
Block a user