* ldlang.h (struct lang_input_statement_flags): New, extract from..
[external/binutils.git] / ld / ChangeLog
1 2012-03-06  Alan Modra  <amodra@gmail.com>
2
3         * ldlang.h (struct lang_input_statement_flags): New, extract from..
4         (lang_input_statement_type): ..here.  New field "flags".
5         (input_flags): Declare.
6         (missing_file): Delete.
7         * ldmain.h (whole_archive): Delete.
8         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
9         * ld.h (ld_config_type <dynamic_link>): Delete.
10         * ldmain.c (whole_archive): Delete.
11         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
12         * ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
13         (input_flags): New variable.  Replace all uses of config.dynamic_link,
14         missing_file, ldlang_sysrooted_script, whole_archive,
15         add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
16         from here.
17         * ldfile.c: Likewise.
18         * ldgram.y: Likewise.
19         * ldmain.c: Likewise.
20         * ldwrite.c: Likewise.
21         * lexsup.c: Likewise.
22         * plugin.c: Likewise.
23         * emultempl/aix.em: Likewise.
24         * emultempl/armelf.em: Likewise.
25         * emultempl/elf32.em: Likewise.
26         * emultempl/hppaelf.em: Likewise.
27         * emultempl/linux.em: Likewise.
28         * emultempl/pe.em: Likewise.
29         * emultempl/pep.em: Likewise.
30         * emultempl/ppc64elf.em: Likewise.
31         * emultempl/scoreelf.em: Likewise.
32         * emultempl/spuelf.em: Likewise.
33         * emultempl/sunos.em: Likewise.
34         * emultempl/vms.em: Likewise.
35         * ldlang.c (new_afile): Use memset to init zero fields.
36         (load_symbols): Simplify save and restore of flags around command
37         file processing.
38         * ldfile.c (is_sysrooted_pathname): Tidy.
39
40 2012-03-05  Hans-Peter Nilsson  <hp@axis.com>
41
42         * configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
43         (mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
44         replacing trailing "-*" with "*".
45
46 2012-02-25  Walter Lee  <walt@tilera.com>
47
48         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
49         (ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
50         (eelf32tilegx_be.c): Add rule to build this file.
51         (eelf64tilegx_be.c): Ditto.
52         * Makefile.in: Regenerate.
53         * configure.tgt (tilegx-*-*): Support big endian.
54         (tilegxbe-*-*): New.
55         * emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
56         (BIG_OUTPUT_FORMAT): Define.
57         (LITTLE_OUTPUT_FORMAT): Define.
58         * emulparams/elf32tilegx_be.sh: New.
59         * emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
60         (BIG_OUTPUT_FORMAT): Define.
61         (LITTLE_OUTPUT_FORMAT): Define.
62         * emulparams/elf64tilegx_be.sh: New.
63
64 2012-02-24  Kai Tietz  <ktietz@redhat.com>
65
66         PR binutils/13710
67         * deffilep.y (keyword_as_name): Disable LIBRARY
68         keyword.
69
70 2012-02-22  Alan Modra  <amodra@gmail.com>
71
72         PR ld/13683
73         * ldlang.c (lang_process): Rerun lang_do_assignments before
74         starting garbage collection.
75         * ldexp.c (fold_name): Generate a reloc for defined symbols
76         found without an associated output section during the mark phase.
77         (exp_fold_tree_1): Continue processing an expression, even if we
78         are unable to fold it, if we are in the first two evaluation
79         phases.
80         * ldexp.h (enum lang_phase_type): Add descriptions of the phases.
81
82 2012-02-19  Kai Tietz  <ktietz@redhat.com>
83
84         * deffilep.y (cmp_import_elem): Sort first by module name.
85         * pe-dll.c (process_def_file_and_drectve): Free strings
86         from removed export-element.
87         (add_bfd_to_link): Optimize loop on import-elements and lower
88         allocated memory.
89         (pe_implied_import_dll): Pass NULL instead of 0 for pointer
90         argument.
91
92 2012-02-18  Hans-Peter Nilsson  <hp@axis.com>
93
94         * ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
95         temporary variable node used for NULL argument.
96
97 2012-02-18  Alan Modra  <amodra@gmail.com>
98
99         PR ld/13343
100         * ld.h (parsing_defsym): Delete.
101         * ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
102         (fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
103         exp_get_abs_int): Add tree arg for %S in error messages.  Don't
104         fudge lineno.
105         (exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
106         type.filename from sub-tree.
107         (exp_trinop): Likewise, and use "cond" rather than "lhs".
108         * ldexp.h (node_type): Add filename field to struct.
109         * ldfile.c (ldfile_input_filename): Delete.  Remove all refs.
110         * ldfile.h (ldfile_input_filename): Delete.
111         * ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
112         %S in error messages.
113         * ldemul.c (syslib_default, hll_default): Likewise.
114         * ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
115         lang_get_regions, lang_new_phdr): Likewise.
116         (lang_size_sections_1): Pass addr_tree for %S.
117         * ldlex.h (lex_redirect): Update prototype.
118         (ldlex_filename): Declare.
119         * ldlex.l (<EOF>): Don't set ldfile_input_filename.
120         (lex_redirect): Add fake_filename and count params.  Push
121         fake_filename to file_name_stack and init lineno from count.
122         (ldlex_filename): New function.
123         (lex_warn_invalid): Use above.
124         * ldmain.c (main): Update lex_redirect call.
125         * ldmisc.c (vfinfo <%S>): Take file name and line number from
126         etree_type arg, or use current if arg is NULL.
127         * lexsup.c (parsing_defsym): Delete.
128         (parse_args <OPTION_DEFSYM>): Update lex_redirect call.
129
130 2012-02-13  Kai Tietz  <ktietz@redhat.com>
131
132         * deffilep.y (find_export_in_list): Set is_indent for
133         first or last element, if identical.
134         (find_import_in_list): Likewise.
135
136 2012-02-11  Kai Tietz  <ktietz@redhat.com>
137
138         * deffilep.y (%union): New type id_const.
139         (opt_name2): New rule.
140         (keyword_as_name): New rule.
141         (dot_name): Replaced by opt_name2 rule.
142         (opt_name): Adjust rule.
143         (opt_equal_name): Likewise.
144
145 2012-02-11  Pascal Obry  <pascal@obry.net>
146
147         * pe-dll.c (auto_export): Use bsearch to speed up scan of exports
148         table.
149         (process_def_file_and_drectve): Maintain sorting of exports table
150         after stripping leading @ signs.
151
152 2012-02-09  Alan Modra  <amodra@gmail.com>
153
154         * ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
155
156 2012-01-31  H.J. Lu  <hongjiu.lu@intel.com>
157
158         PR ld/13616
159         * emulparams/elf32_x86_64.sh: Remove NOP.
160         * emulparams/elf_i386.sh: Likewise.
161         * emulparams/elf_i386_be.sh: Likewise.
162         * emulparams/elf_i386_ldso.sh: Likewise.
163         * emulparams/elf_i386_vxworks.sh: Likewise.
164         * emulparams/elf_k1om.sh: Likewise.
165         * emulparams/elf_l1om.sh: Likewise.
166         * emulparams/elf_x86_64.sh: Likewise.
167
168         * ldlang.c (zero_fill): Initialized to 0.
169
170         * ldwrite.c (build_link_order): Set data size to linker odrder
171         size when they are the same.
172
173         * scripttempl/elf.sc: Don't specify fill if NOP is undefined.
174
175 2012-01-17  Alan Modra  <amodra@gmail.com>
176
177         * ldver.c (ldversion): Update copyright message year.
178
179 2012-01-15  Alan Modra  <amodra@gmail.com>
180
181         PR ld/12758
182         * ldlang.c (lang_process): Don't reopen all files, just those
183         newly added by plugin.
184
185 2012-01-11  Alan Modra  <amodra@gmail.com>
186
187         * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
188         PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
189         PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
190         --{no-,}plt-align.
191         (plt_thread_safe, plt_stub_align): New vars.
192         (gld${EMULATION_NAME}_after_allocation): Pass them to
193         ppc64_elf_size_stubs.  Align stub sections according to plt_stub_align.
194         * ld.texinfo: Document new command line options, and an old
195         undocumented option.
196
197 2012-01-09  Roland McGrath  <mcgrathr@google.com>
198
199         * configure.in: Use AM_ZLIB.
200         * configure: Regenerated.
201
202 For older changes see ChangeLog-2011
203 \f
204 Local Variables:
205 mode: change-log
206 left-margin: 8
207 fill-column: 74
208 version-control: never
209 End: