Allow self-assignment for absolute symbols defined in a linker script
[platform/upstream/binutils.git] / ld / ChangeLog
1 2014-01-20  Alan Modra  <amodra@gmail.com>
2
3         * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
4         by_script.  Make iteration a single bit field.
5         (lang_track_definedness, lang_symbol_definition_iteration): Delete.
6         (lang_symbol_defined): Declare.
7         * ldlang.c (lang_statement_iteration): Expand comment a little.
8         (lang_init <lang_definedness_table>): Make it bigger.
9         (lang_track_definedness, lang_symbol_definition): Delete.
10         (lang_definedness_newfunc): Update.
11         (lang_symbol_defined): New function.
12         (lang_update_definedness): Create entries here.  Do track whether
13         script definition of symbol is valid, even when also defined in
14         an object file.
15         * ldexp.c (fold_name <DEFINED>): Update.
16         (fold_name <NAME>): Allow self-assignment for absolute symbols
17         defined in a linker script.
18
19 2014-01-20  Guy Martin <gmsoft@tuxicoman.be>
20             Alan Modra  <amodra@gmail.com>
21
22         * ldlang.h (lang_output_section_get): Define.
23         * ldlang.c (lang_output_section_get): Likewise.
24         (init_os): Set the output_section userdata to the output
25         section statement.
26         * emultempl/hppaelf.em: Use lang_output_section_get instead of
27         lang_output_section_find where applicable.
28         * emultempl/aarch64elf.em: Likewise.
29         * emultempl/aix.em: Likewise.
30         * emultempl/armelf.em: Likewise.
31         * emultempl/m68hc1xelf.em: Likewise.
32         * emultempl/metagelf.em: Likewise.
33         * emultempl/mipself.em: Likewise.
34         * emultempl/ppc64elf.em: Likewise.
35         * emultempl/spuelf.em: Likewise.
36
37 2014-01-17  Alan Modra  <amodra@gmail.com>
38
39         * genscripts.sh (COMPILE_IN): Don't set if already set.
40         * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
41         COMPILE_IN=no.
42         * emulparams/nds32elf16m.sh: Likewise.
43         * emulparams/nds32elf_linux.sh: Likewise.
44         * emultempl/aix.em: Test COMPILE_IN value is "yes".
45         * emultempl/armcoff.em: Likewise.
46         * emultempl/elf32.em: Likewise.
47         * emultempl/generic.em: Likewise.
48         * emultempl/gld960.em: Likewise.
49         * emultempl/gld960c.em: Likewise.
50         * emultempl/linux.em: Likewise.
51         * emultempl/lnk960.em: Likewise.
52         * emultempl/m68kcoff.em: Likewise.
53         * emultempl/sunos.em: Likewise.
54         * emultempl/ticoff.em: Likewise.
55
56 2014-01-16  H.J. Lu  <hongjiu.lu@intel.com>
57
58         PR ld/16456
59         * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
60         suffix.
61         * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
62         for elf32_x86_64 emulation.
63         * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
64         for elf_i386 emulation.
65
66 2014-01-16  Alan Modra  <amodra@gmail.com>
67
68         * ld.h (fat_section_userdata_type, get_userdata): Move to..
69         * ldlang.h (input_section_userdata_type, get_userdata): ..here.
70         * ldlang.c (init_map_userdata): Delete.  Fold into..
71         (sort_def_symbol): ..here.  Don't attach input section userdata
72         to output sections or global bfd sections.
73         (lang_map): Don't pre-allocate input section userdata.
74         (init_os): Don't allocate userdata for output sections.
75         (print_all_symbols): Update.
76
77 2014-01-15  H.J. Lu  <hongjiu.lu@intel.com>
78
79         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
80         Silence uninitialized warning on ehdr_start_save with older
81         GCC.
82
83 2014-01-15  Alan Modra  <amodra@gmail.com>
84
85         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
86         __ehdr_start before size_dynamic_sections and restore afterwards.
87
88 2014-01-10  Alan Modra  <amodra@gmail.com>
89
90         PR ld/14207
91         PR ld/16322
92         PR binutils/16323
93         * ldlang.c (lang_size_sections): Remove unneeded RELRO base
94         adjust.  Tidy comments.
95         * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
96
97 2014-01-10  Hans-Peter Nilsson  <hp@axis.com>
98
99         * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
100
101 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
102
103         PR ld/14207
104         PR ld/16322
105         PR binutils/16323
106         * ldlang.c (lang_size_sections): Properly align RELRO base.
107
108 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
109
110         * ldver.c (ldversion): Update copyright year to 2014.
111
112 For older changes see ChangeLog-2013
113 \f
114 Copyright (C) 2014 Free Software Foundation, Inc.
115
116 Copying and distribution of this file, with or without modification,
117 are permitted in any medium without royalty provided the copyright
118 notice and this notice are preserved.
119
120 Local Variables:
121 mode: change-log
122 left-margin: 8
123 fill-column: 74
124 version-control: never
125 End: