diff options
author | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | 2010-11-18 16:00:23 +0000 |
---|---|---|
committer | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | 2010-11-18 16:00:23 +0000 |
commit | f9db4104edf142ed72d71b9d2456386f958b1eec (patch) | |
tree | edf597962d945ecb0f14d8c2b47f482c8e195384 /gas | |
parent | 867df9734188c7493284e3f1e1f08e2de837fb0b (diff) | |
download | binutils-redhat-f9db4104edf142ed72d71b9d2456386f958b1eec.tar.gz |
PR gas/12181
* config/obj-elf.c (elf_adjust_symtab) [TE_SOLARIS]: Make sy
weak hidden.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 6 | ||||
-rw-r--r-- | gas/config/obj-elf.c | 7 |
2 files changed, 13 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index e3d35b68ac..cd8a7723f9 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2010-11-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR gas/12181 + * config/obj-elf.c (elf_adjust_symtab) [TE_SOLARIS]: Make sy + weak hidden. + 2010-11-17 Nick Clifton <nickc@redhat.com> * input-file.c (input_file_open): Check for empty input files. diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c index 8eb66eda16..c6dc8d6e54 100644 --- a/gas/config/obj-elf.c +++ b/gas/config/obj-elf.c @@ -2142,7 +2142,14 @@ elf_adjust_symtab (void) { /* Create the symbol now. */ sy = symbol_new (group_name, now_seg, (valueT) 0, frag_now); +#ifdef TE_SOLARIS + /* Before Solaris 11 build 154, Sun ld rejects local group + signature symbols, so make them weak hidden instead. */ + symbol_get_bfdsym (sy)->flags |= BSF_WEAK; + S_SET_OTHER (sy, STV_HIDDEN); +#else symbol_get_obj (sy)->local = 1; +#endif symbol_table_insert (sy); } elf_group_id (s) = symbol_get_bfdsym (sy); |