Commit | Line | Data |
---|---|---|
9af7cc78 AM |
1 | 2018-12-05 Alan Modra <amodra@gmail.com> |
2 | ||
3 | * symtab.h (Symbol::Symbol): Avoid -Wclass-memaccess warning. | |
4 | ||
f4238194 AN |
5 | 2018-12-03 Alexey Neyman <stilor@att.net> |
6 | ||
7 | PR gold/23594 | |
8 | * configure.ac: Add checks for link, mkdtemp. | |
9 | * configure: Regenerate. | |
10 | * config.in: Regenerate. | |
11 | * plugin.cc (Plugin_recorder::init): Fall back to mktemp | |
12 | if mkdtemp is not available. | |
13 | (link_or_copy_file): Fall back to copy if link() is not available. | |
14 | ||
5f6c22ae L |
15 | 2018-12-02 H.J. Lu <hongjiu.lu@intel.com> |
16 | ||
17 | PR binutils/23919 | |
18 | * merge.cc (Output_merge_string<Char_type>::do_add_input_section): | |
19 | Get addralign from decompressed_section_contents. | |
20 | * object.cc (build_compressed_section_map): Set info.addralign. | |
21 | (Object::decompressed_section_contents): Add a palign | |
22 | argument and store p->second.addralign in *palign if it isn't | |
23 | NULL. | |
24 | * object.h (Compressed_section_info): Add addralign. | |
25 | (section_is_compressed): Add a palign argument, default it | |
26 | to NULL, store p->second.addralign in *palign if it isn't NULL. | |
27 | (Object::decompressed_section_contents): Likewise. | |
28 | * output.cc (Output_section::add_input_section): Get addralign | |
29 | from section_is_compressed. | |
30 | ||
9b4e3a5e AM |
31 | 2018-11-26 Alan Modra <amodra@gmail.com> |
32 | ||
33 | * testsuite/Makefile.am (justsyms_lib): Link with -z norelro. | |
34 | * testsuite/Makefile.in: Regenerate. | |
35 | * testsuite/justsyms_exec.c (main): Do check exported_func | |
36 | on PowerPC64 ELFv2. | |
37 | ||
2eccb8f9 AM |
38 | 2018-11-26 Alan Modra <amodra@gmail.com> |
39 | ||
40 | * testsuite/ver_test_14.sh: Accept objdump -T display of st_other | |
41 | bits on powerpc64le. | |
42 | ||
5acaada7 AM |
43 | 2018-11-08 Alan Modra <amodra@gmail.com> |
44 | ||
45 | * Makefile.am (gcctestdir1/ld): Use $@ and absolute paths. | |
46 | (gcctestdir1/collect-ld): New. | |
47 | (ld1_DEPENDENCIES): Add gcctestdir1/collect-ld. | |
48 | (ld1_LDFLAGS): Remove -Bgcctestdir1/. | |
49 | (editcc1, ld1_LINK): Define. | |
50 | (gcctestdir2/ld, gcctestdir2/collect-ld, ld2_DEPENDENCIES), | |
51 | (ld2_LDFLAGS, editcc2, ld2_LINK), | |
52 | (ld1_r_DEPENDENCIES, ld1_r_LDFLAGS, ld1_r_LINK), | |
53 | (gcctestdir2-r/ld, gcctestdir2-r/collect-ld, ld2_r_DEPENDENCIES), | |
54 | (ld2_r_LDFLAGS, editcc2r, ld2_r_LINK), | |
55 | (gcctestdir3/ld, gcctestdir3/collect-ld, ld3_DEPENDENCIES), | |
56 | (ld3_LDFLAGS, editcc3, ld3_LINK), | |
57 | (gcctestdir4/ld, gcctestdir4/collect-ld, ld4_DEPENDENCIES), | |
58 | (ld4_LDFLAGS, editcc4, ld4_LINK): Similarly. | |
59 | * Makefile.in: Regenerate. | |
60 | * testsuite/Makefile.am (editcc): Define sed command to put | |
61 | our -B option first. Remove other occurrences of -Bgcctestdir/ | |
62 | throughout file. | |
63 | (editcc1): Define for -D_FORTIFY_SOURCE stripping. | |
64 | (editcc2): Define for -static-libgcc/libstdc++ stripping. | |
65 | (LINK1, CXXLINK1): Don't use CCLD or CXXLD. | |
66 | (CCLD, CXXLD, COMPILE, LINK, CXXCOMPILE, CXXLINK, CXXLINK_S): Define | |
67 | using editcc macros. | |
68 | (gcctestdir/collect-ld): New rule, add as a dependency of.. | |
69 | (gcctestdir/ld): ..this. Use $@ and abs_top_buildir. | |
70 | (gcctestdir/as): Use $@. | |
71 | * testsuite/Makefile.in: Regenerate. | |
72 | * testsuite/incremental_test.sh (actual): Match collect-ld too. | |
73 | ||
396ce998 AM |
74 | 2018-11-02 Alan Modra <amodra@gmail.com> |
75 | ||
76 | * Makefile.am (MOSTLYCLEANFILES): Define. | |
77 | * Makefile.in: Regnerate. | |
78 | * testsuite/Makefile.am (MOSTLYCLEANFILES): Add ver_test_14 and | |
79 | gnu_property_test. | |
80 | * testsuite/Makefile.in: Regnerate. | |
81 | ||
08ea4a78 CZ |
82 | 2018-10-16 Cherry Zhang <cherryyz@google.com> |
83 | ||
84 | PR 23769 | |
85 | * gold.cc (queue_middle_tasks): Correct split-stack error message. | |
86 | ||
ac8cb70f CX |
87 | 2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com> |
88 | ||
89 | * mips.cc (Mips_mach, add_machine_extensions, elf_mips_mach): | |
90 | Rename loongson3a to gs464. | |
91 | (mips_isa_ext_mach, mips_isa_ext): Delete loongson3a. | |
92 | (infer_abiflags): Use ases instead of isa_ext for infer ABI | |
93 | flags. | |
94 | (elf_mips_mach_name): Rename loongson3a to gs464. | |
95 | ||
f6f9ed01 TMQMF |
96 | 2018-07-10 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com> |
97 | ||
98 | * object.cc (Sized_relobj_file::map_to_kept_section): Initialize | |
99 | kept_file. | |
100 | ||
a9fc784b CC |
101 | 2018-08-07 Cary Coutant <ccoutant@gmail.com> |
102 | ||
103 | PR ld/23486 | |
104 | * x86_64.cc (Target_x86_64::Target_x86_64): Initialize | |
105 | object_isa_1_used_. | |
106 | (Target_x86_64::object_isa_1_used_): New data member. | |
107 | (Target_x86_64::record_gnu_property): Save ISA_1_USED bits for object. | |
108 | (Target_x86_64::merge_gnu_properties): Merge ISA_1_USED bits. | |
109 | ||
3a12c78d CC |
110 | 2018-08-06 Cary Coutant <ccoutant@gmail.com> |
111 | ||
112 | PR gold/23455 | |
113 | * options.h (General_options): Add --warn-drop-version option. | |
114 | * symtab.cc (Symbol_table::set_dynsym_indexes): Check it. | |
115 | ||
dc1f2887 CC |
116 | 2018-08-06 Cary Coutant <ccoutant@gmail.com> |
117 | ||
118 | * target.h (Sized_target::record_gnu_property): Change first two | |
119 | parameters to unsigned int. | |
120 | * x86_64.cc (Target_x86_64::record_gnu_property): Likewise. | |
121 | ||
7d8a3166 NC |
122 | 2018-07-30 Nick Clifton <nickc@redhat.com> |
123 | ||
124 | * layout.cc (section_name_mapping): Add an entry for | |
125 | .gnu.build.attributes. | |
126 | ||
0984c34e NC |
127 | 2018-07-18 Nick Clifton <nickc@redhat.com> |
128 | ||
129 | * po/fr.po: Updated French translation. | |
130 | ||
1074bc6d CC |
131 | 2018-07-14 Cary Coutant <ccoutant@gmail.com> |
132 | ||
133 | PR gold/23397 | |
134 | * object.cc (Sized_relobj_file::do_layout): Mark section as deferred. | |
135 | * testsuite/Makefile.am (plugin_test_1): Add --emit-relocs option to | |
136 | existing test case. | |
137 | * testsuite/Makefile.in: Regenerate. | |
138 | ||
1b115e8e CC |
139 | 2018-07-14 Cary Coutant <ccoutant@gmail.com> |
140 | ||
141 | PR gold/23409 | |
142 | * symtab.cc (Symbol_table::define_special_symbol): Add check for | |
143 | version name on existing symbol. | |
144 | * testsuite/Makefile.am (ver_test_pr23409): New test case. | |
145 | * testsuite/Makefile.in: Regenerate. | |
146 | * testsuite/ver_test_pr23409.sh: New test script. | |
147 | * testsuite/ver_test_pr23409_1.script: New version script. | |
148 | * testsuite/ver_test_pr23409_2.script: New version script. | |
149 | ||
04879304 FS |
150 | 2018-07-11 Franz Sirl <franz.sirl-kernel@lauterbach.com> |
151 | ||
152 | * main.cc (main): Print m.arena as long long. | |
153 | ||
c3c5e486 CC |
154 | 2018-07-09 Cary Coutant <ccoutant@gmail.com> |
155 | ||
156 | * incremental.cc (Sized_incremental_binary::setup_readers): Use | |
157 | emplace_back for C++ 11 or later. | |
158 | ||
724436fc AM |
159 | 2018-07-06 Alan Modra <amodra@gmail.com> |
160 | ||
161 | * powerpc.cc: Include attributes.h. | |
162 | (Powerpc_relobj::attributes_section_data_): New variable, with | |
163 | accessor and associated constructor and destructor support. | |
164 | (Powerpc_dynobj::attributes_section_data_): Likewise. | |
165 | (Powerpc_relobj::do_read_symbols): Stash SHT_GNU_ATTRIBUTES section | |
166 | contents in attributes_section_data_. | |
167 | (Powerpc_dynobj::do_read_symbols): Likewise. | |
168 | (Target_powerpc): Add attributes_section_data_, last_fp_, last_ld_, | |
169 | last_vec_, and last_struct_ vars. | |
170 | (Target_powerpc::merge_object_attributes): New function. | |
171 | (Target_powerpc::do_finalize_sections): Iterate over input objects | |
172 | merging attributes. Create output attributes section. | |
173 | ||
30aa1306 NC |
174 | 2018-06-26 Nick Clifton <nickc@redhat.com> |
175 | ||
176 | * po/uk.po: Updated Ukranian translation. | |
177 | ||
71300e2c NC |
178 | 2018-06-24 Nick Clifton <nickc@redhat.com> |
179 | ||
180 | * po/gold.pot: Regenerate. | |
181 | ||
719d8288 NC |
182 | 2018-06-24 Nick Clifton <nickc@redhat.com> |
183 | ||
184 | 2.31 branch created. | |
185 | ||
155ea1bc CC |
186 | 2018-06-23 Cary Coutant <ccoutant@gmail.com> |
187 | ||
188 | * version.cc (version_string): Bump to 1.16. | |
189 | * NEWS: Add new features in 1.16. | |
190 | ||
add41311 CC |
191 | 2018-06-23 Cary Coutant <ccoutant@gmail.com> |
192 | ||
193 | PR gold/22914 | |
194 | * x86_64.cc (Target_x86_64::record_gnu_property): Initialize val. | |
195 | ||
750ea5ed CC |
196 | 2018-06-23 Cary Coutant <ccoutant@gmail.com> |
197 | ||
198 | PR gold/22915 | |
199 | * x86_64.cc (Output_data_plt_x86_64_ibt): New class. | |
200 | (Target_x86_64::do_make_data_plt): (All instantiations) Check for | |
201 | IBT feature bit and create IBT PLTs. | |
202 | ||
a2575bec CC |
203 | 2018-06-22 Cary Coutant <ccoutant@gmail.com> |
204 | ||
205 | PR gold/22914 | |
206 | * layout.cc (read_sized_value): Fix spelling of section name. | |
207 | (Layout::layout_gnu_property): Call Sized_target::record_gnu_property | |
208 | for target-specific properties; | |
209 | don't store them with target-independent properties yet. | |
210 | (Layout::merge_gnu_properties): New method. | |
211 | (Layout::add_gnu_property): New method. | |
212 | (Layout::create_gnu_properties_note): Call target to finalize | |
213 | target-specific properties. Fix spelling of output section name. | |
214 | * layout.h (Layout::merge_gnu_properties): New method. | |
215 | (Layout::add_gnu_property): New method. | |
216 | * object.cc (Sized_relobj_file::do_layout): Call | |
217 | Layout::merge_gnu_properties. | |
218 | * target.h (Target::merge_gnu_property): Remove. | |
219 | (Target::finalize_gnu_properties): New method. | |
220 | (Target::do_merge_gnu_property): Move to Sized_target and rename. | |
221 | (Target::do_finalize_gnu_properties): New virtual method. | |
222 | (Sized_target::record_gnu_property): Moved and renamed from | |
223 | Target::do_merge_gnu_property. | |
224 | (Sized_target::merge_gnu_properties): New virtual method. | |
225 | * x86_64.cc (Target_x86_64::isa_1_used_, isa_1_needed_) | |
226 | (feature_1_, object_feature_1_, seen_first_object_): New data members. | |
227 | (Target_x86_64::do_merge_gnu_property): Rename to ... | |
228 | (Target_x86_64::record_gnu_property): ... this. Save target-specific | |
229 | properties in Target class object. | |
230 | (Target_x86_64::merge_gnu_properties): New method. | |
231 | (add_property): New static inline function. | |
232 | (Target_x86_64::do_finalize_gnu_properties): New method. | |
233 | * testsuite/Makefile.am (gnu_property_test): Remove C source file; | |
234 | link directly without compiler driver. | |
235 | * testsuite/Makefile.in: Regenerate. | |
236 | * testsuite/gnu_property_a.S: Add _start. | |
237 | ||
a1893a82 CC |
238 | 2018-06-22 Cary Coutant <ccoutant@gmail.com> |
239 | ||
240 | * incremental.cc (Sized_incremental_binary::setup_readers): Use | |
241 | emplace_back for GCC 5 and later. | |
242 | * incremental.h (Incremental_binary::Input_reader): Provide copy | |
243 | constructor. | |
244 | (Sized_incremental_binary::Sized_input_reader): Likewise. | |
245 | ||
6c04fd9b CC |
246 | 2018-06-22 Cary Coutant <ccoutant@gmail.com> |
247 | ||
248 | PR gold/22914 | |
249 | * layout.cc (Layout::Layout): Initialize gnu_properties_. | |
250 | (read_sized_value, write_sized_value): New functions. | |
251 | (Layout::layout_gnu_property): New method. | |
252 | (Layout::create_notes): Call create_gnu_properties_note. | |
253 | (Layout::create_gnu_properties_note): New method. | |
254 | * layout.h (Layout::layout_gnu_property): New method. | |
255 | (Layout::create_gnu_properties_note): New method. | |
256 | (Layout::Gnu_property, Layout::Gnu_properties): New types. | |
257 | (Layout::gnu_properties_): New data member. | |
258 | * object.cc (Sized_relobj_file::layout_gnu_property_section): New | |
259 | method. | |
260 | (Sized_relobj_file::do_layout): Handle .note.gnu.property sections. | |
261 | * object.h (Sized_relobj_file::layout_gnu_property_section): New | |
262 | method. | |
263 | * target.h (Target::merge_gnu_property): New method. | |
264 | (Target::do_merge_gnu_property): New virtual method. | |
265 | * x86_64.cc (Target_x86_64::do_merge_gnu_property): New method. | |
266 | * testsuite/Makefile.am (gnu_property_test): New test case. | |
267 | * testsuite/Makefile.in: Regenerate. | |
268 | * testsuite/gnu_property_a.S: New source file. | |
269 | * testsuite/gnu_property_b.S: New source file. | |
270 | * testsuite/gnu_property_c.S: New source file. | |
271 | * testsuite/gnu_property_main.c: New source file. | |
272 | * testsuite/gnu_property_test.sh: New test script. | |
273 | ||
cea6ffbd CC |
274 | 2018-06-21 Cary Coutant <ccoutant@gmail.com> |
275 | ||
276 | * resolve.cc (Symbol_table::resolve): Rename tobinding to | |
277 | orig_tobinding. Call set_is_needed() for objects that resolve | |
278 | non-weak references. | |
279 | (Symbol_table::should_override): Allow a dynamic definition to | |
280 | override an earlier one in a not-needed library. | |
281 | * symtab.cc (Symbol_table::set_dynsym_indexes): Remove separate | |
282 | processing for as-needed symbols. Add warning when discarding | |
283 | version informatin. | |
284 | * testsuite/Makefile.am (weak_as_needed): New test case. | |
285 | * testsuite/Makefile.in: Regenerate. | |
286 | * testsuite/weak_as_needed.sh: New test script. | |
287 | * testsuite/weak_as_needed_a.c: New source file. | |
288 | * testsuite/weak_as_needed_b.c: New source file. | |
289 | * testsuite/weak_as_needed_b.script: New version script. | |
290 | * testsuite/weak_as_needed_c.c: New source file. | |
291 | * testsuite/weak_as_needed_c.script: New version script. | |
292 | ||
ebb13322 CC |
293 | 2018-06-20 Cary Coutant <ccoutant@gmail.com> |
294 | ||
295 | PR gold/23268 | |
296 | * dynobj.cc (Versions::Versions): Change init for needs_base_version_. | |
297 | (Versions::record_version): Add verdefs for both shared objects and | |
298 | executables. | |
299 | (Versions::add_def): Likewise for base version. | |
300 | (Versions::add_need): Don't add base version for executables. | |
301 | (Versions::version_index): Look up version for both shared objects and | |
302 | executables. | |
303 | * testsuite/Makefile.am (ver_test_14): New test case. | |
304 | * testsuite/Makefile.in: Regenerate. | |
305 | * testsuite/ver_test_14.script: New version script. | |
306 | * testsuite/ver_test_14.sh: New test script. | |
307 | ||
c8dc28bc CC |
308 | 2018-06-19 Joshua Watt <jpewhacker@gmail.com> |
309 | Cary Coutant <ccoutant@gmail.com> | |
310 | ||
311 | * configure.ac: Replace manual thread configuration with AX_PTHREAD. | |
312 | Add --enable-threads=auto. | |
313 | * Makefile.am (THREADFLAGS, THREADLIBS): New defines. | |
4ef2c1b9 | 314 | (AM_CFLAGS, AM_CXXFLAGS): Add $(THREADFLAGS). |
c8dc28bc CC |
315 | (THREADSLIB): Remove; change all references to THREADLIBS. |
316 | * Makefile.in: Regenerate. | |
317 | * aclocal.m4: Regenerate. | |
318 | * config.in: Regenerate. | |
319 | * configure: Regenerate. | |
320 | * testsuite/Makefile.am (THREADSLIB): Replace with... | |
321 | (THREADFLAGS, THREADLIBS): ... these. | |
322 | (LDADD): Remove; add as individual defines for... | |
323 | (object_unittest, binary_unittest, leb128_unittest) | |
324 | (overflow_unittest): ... these tests. | |
325 | (tls_test, tls_pic_test, tls_pie_test, tls_pie_pic_test) | |
326 | (tls_shared_test, tls_shared_ie_test, tls_shared_gd_to_ie_test) | |
327 | (tls_shared_gnu2_gd_to_ie_test, tls_shared_gnu2_test_LDFLAGS) | |
328 | (tls_shared_nonpic_test_LDFLAGS): Add $(THREADFLAGS) and ($THREADLIBS). | |
329 | * testsuite/Makefile.in: Regenerate. | |
330 | ||
27ab0424 CC |
331 | 2018-06-19 Cary Coutant <ccoutant@gmail.com> |
332 | ||
333 | * testsuite/Makefile.am (MOSTLYCLEANFILES): Add *.stderr. | |
334 | * testsuite/Makefile.in: Regenerate. | |
335 | ||
d0ac1c44 SM |
336 | 2018-06-19 Simon Marchi <simon.marchi@ericsson.com> |
337 | ||
338 | * configure.ac: Remove AC_PREREQ, add missing quoting and usage | |
339 | of AC_LANG_SOURCE. | |
340 | * Makefile.in: Re-generate. | |
341 | * aclocal.m4: Re-generate. | |
342 | * configure: Re-generate. | |
343 | * testsuite/Makefile.in: Re-generate. | |
344 | ||
a45a8f91 SC |
345 | 2018-05-10 Stephen Crane <sjc@immunant.com> |
346 | ||
347 | * aarch64.cc (Target_aarch64::do_finalize_sections): Use size of | |
348 | .got section for the _GLOBAL_OFFSET_TABLE_ symbol computation. | |
349 | ||
651d1620 CC |
350 | 2018-04-24 Cary Coutant <ccoutant@gmail.com> |
351 | ||
352 | PR gold/20642 | |
353 | PR gold/22820 | |
354 | * gc.h (gc_process_relocs): Flag STT_SECTION symbols in symvec. | |
355 | * icf.cc (get_section_contents): For merge sections, ignore the | |
356 | addend for relocations against non-section symbols. | |
357 | ||
890d1555 CC |
358 | 2018-04-24 Cary Coutant <ccoutant@gmail.com> |
359 | ||
360 | PR gold/16504 | |
361 | * dynobj.cc (Versions::symbol_section_contents): Don't set | |
362 | VERSYM_HIDDEN flag for undefined symbols. | |
363 | * symtab.cc (Symbol_table::add_from_object): Don't override default | |
364 | version definition with a different default version. | |
365 | * symtab.h (Symbol::from_dyn): New method. | |
366 | * testsuite/plugin_test.c (struct sym_info): Add ver field. | |
367 | (claim_file_hook): Pass symbol version to plugin API. | |
368 | (parse_readelf_line): Parse symbol version. | |
369 | * testsuite/Makefile.am (ver_test_pr16504): New test case. | |
370 | * testsuite/Makefile.in: Regenerate. | |
371 | * testsuite/ver_test_pr16504.sh: New test script. | |
372 | * testsuite/ver_test_pr16504_a.c: New source file. | |
373 | * testsuite/ver_test_pr16504_a.script: New version script. | |
374 | * testsuite/ver_test_pr16504_b.c: New source file. | |
375 | * testsuite/ver_test_pr16504_b.script: New version script. | |
376 | ||
d83d5403 CC |
377 | 2018-04-19 Cary Coutant <ccoutant@gmail.com> |
378 | ||
379 | PR gold/23046 | |
380 | * gc.h (gc_process_relocs): Pass target to | |
381 | scan.local_reloc_may_be_function_pointer. | |
382 | ||
f792cedd NC |
383 | 2018-04-18 Nick Clifton <nickc@redhat.com> |
384 | ||
385 | * po/es.po: Updated Spanish translation. | |
386 | ||
aae82809 CC |
387 | 2018-04-14 Cary Coutant <ccoutant@gmail.com> |
388 | ||
389 | PR gold/23046 | |
390 | * gc.h (gc_process_relocs): Pass target to | |
391 | scan.global_reloc_may_be_function_pointer. | |
392 | ||
c4a614e2 AM |
393 | 2018-04-09 Alan Modra <amodra@gmail.com> |
394 | ||
395 | * configure: Regenerate. | |
396 | ||
23cedd1d AM |
397 | 2018-04-09 Alan Modra <amodra@gmail.com> |
398 | ||
399 | * powerpc.cc (Target_powerpc::Track_tls::maybe_skip_tls_get_addr_call): | |
400 | Handle inline plt sequence relocs. | |
401 | (Stub_table::Plt_stub_key::Plt_stub_key): Likewise. | |
402 | (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Likewise. | |
403 | (Target_powerpc::Relocate::relocate): Likewise. | |
404 | ||
2d7ad24e AM |
405 | 2018-04-09 Alan Modra <amodra@gmail.com> |
406 | ||
407 | * powerpc.cc (Target_powerpc::lplt_): New variable. | |
408 | (Target_powerpc::lplt_section): Associated accessor. | |
409 | (Target_powerpc::plt_off): Handle local non-ifunc symbols. | |
410 | (Target_powerpc::make_lplt_section): New function. | |
411 | (Target_powerpc::make_local_plt_entry): New function. | |
412 | (Powerpc_relobj::do_relocate_sections): Write out lplt. | |
413 | (Output_data_plt_powerpc::first_plt_entry_offset): Zero for lplt. | |
414 | (Output_data_plt_powerpc::add_local_entry): New function. | |
415 | (Output_data_plt_powerpc::do_write): Ignore lplt. | |
416 | (Target_powerpc::make_iplt_section): Make lplt first. | |
417 | (Target_powerpc::make_brlt_section): Make .branch_lt relro. | |
418 | (Target_powerpc::Scan::local): Handle PLT16 relocs. | |
419 | ||
08be3224 AM |
420 | 2018-04-09 Alan Modra <amodra@gmail.com> |
421 | ||
422 | * powerpc.cc (Target_powerpc::plt_off): New functions. | |
423 | (is_plt16_reloc): New function. | |
424 | (Stub_table::plt_off): Use Target_powerpc::plt_off. | |
425 | (Stub_table::plt_call_size): Use plt_off. | |
426 | (Stub_table::do_write): Likewise. | |
427 | (Target_powerpc::Scan::get_reference_flags): Return RELATIVE_REF | |
428 | for PLT16 relocations. | |
429 | (Target_powerpc::Scan::reloc_needs_plt_for_ifunc): Return true | |
430 | for PLT16 relocations. | |
431 | (Target_powerpc::Scan::global): Make a PLT entry for PLT16 relocations. | |
432 | (Target_powerpc::Relocate::relocate): Support PLT16 relocations. | |
433 | (Powerpc_scan_relocatable_reloc::global_strategy): Return RELOC_SPECIAL | |
434 | for ppc32 plt16 relocs. | |
435 | ||
43193fe9 CC |
436 | 2018-04-06 Cary Coutant <ccoutant@gmail.com> |
437 | ||
438 | * object.cc (Sized_relobj_file::include_section_group): Store | |
439 | reference to Kept_section info for discarded comdat sections | |
440 | regardless of size. Move size checking to map_to_kept_section. | |
441 | (Sized_relobj_file::include_linkonce_section): Likewise. | |
442 | (Sized_relobj_file::map_to_kept_section): Add section name parameter. | |
443 | Insert size checking logic from above functions. | |
444 | (Sized_relobj_file::find_kept_section_object): New method. | |
445 | (Sized_relobj_file::get_symbol_name): New method. | |
446 | * object.h (Sized_relobj_file::map_to_kept_section): Add section_name | |
447 | parameter. Adjust all callers. | |
448 | (Sized_relobj_file::find_kept_section_object): New method. | |
449 | (Sized_relobj_file::get_symbol_name): New method. | |
450 | (Sized_relobj_file::Kept_comdat_section): Replace object and shndx | |
451 | fields with sh_size, kept_section, symndx, and is_comdat fields. | |
452 | (Sized_relobj_file::set_kept_comdat_section): Replace kept_object | |
453 | and kept_shndx parameters with is_comdat, symndx, sh_size, and | |
454 | kept_section. | |
455 | (Sized_relobj_file::get_kept_comdat_section): Likewise. | |
456 | * target-reloc.h (enum Comdat_behavior): Change CB_WARNING to CB_ERROR. | |
457 | Adjust all references. | |
458 | (issue_undefined_symbol_error): New function template. | |
459 | (relocate_section): Pass section name to map_to_kept_section. | |
460 | Move discarded section code to new function above. | |
461 | * aarch64.cc (Target_aarch64::scan_reloc_section_for_stubs): Move | |
462 | declaration for gsym out one level. Call issue_discarded_error. | |
463 | * arm.cc (Target_arm::scan_reloc_section_for_stubs): Likewise. | |
464 | * powerpc.cc (Relocate_comdat_behavior): Change CB_WARNING to CB_ERROR. | |
465 | ||
c54b27d1 CC |
466 | 2018-04-05 Cary Coutant <ccoutant@gmail.com> |
467 | ||
468 | * target-reloc.h (relocate_section): Add local symbol index or global | |
469 | symbol name to warning about relocation that refers to discarded | |
470 | section. | |
471 | ||
494e49c9 CC |
472 | 2018-04-05 James Cowgill <james.cowgill@mips.com> |
473 | ||
474 | Revert previous patch and apply revised patch. | |
475 | ||
476 | PR gold/22770 | |
477 | * mips.cc (Mips_got_info::record_got_page_entry): Don't insert | |
478 | Got_page_entry for object's GOT. | |
479 | (Mips_got_info::add_got_page_entries): Add all pages from from's GOT. | |
480 | Rename to add_got_page_count. | |
481 | (Got_page_entry): Remove num_pages. | |
482 | ||
67faf1f4 JC |
483 | 2018-04-05 James Cowgill <james.cowgill@mips.com> |
484 | ||
485 | PR gold/22770 | |
486 | * mips.cc (Mips_got_info::record_got_page_entry): Fetch existing | |
487 | page entries for the object's GOT. | |
488 | ||
54483898 AM |
489 | 2018-04-05 Alan Modra <amodra@gmail.com> |
490 | ||
491 | * powerpc.cc (Target_powerpc::make_brlt_section): Make .branch_lt relro. | |
492 | ||
4fb0d2b9 NC |
493 | 2018-04-04 Nick Clifton <nickc@redhat.com> |
494 | ||
495 | * po/es.po: Updated Spanish translation. | |
496 | ||
bce5a025 CC |
497 | 2018-04-02 Cary Coutant <ccoutant@gmail.com> |
498 | ||
499 | PR gold/23016 | |
500 | * incremental.cc (can_incremental_update): Check for unwind section | |
501 | type. | |
502 | * layout.h (Layout::layout): Add sh_type parameter. | |
503 | * layout.cc (Layout::layout): Likewise. | |
504 | (Layout::layout_reloc): Create new output reloc section if data | |
505 | section does not already have one. | |
506 | (Layout::layout_eh_frame): Check for unwind section type. | |
507 | (Layout::make_eh_frame_section): Use unwind section type for .eh_frame | |
508 | and .eh_frame_hdr. | |
509 | * object.h (Sized_relobj_file::Shdr_write): New typedef. | |
510 | (Sized_relobj_file::layout_section): Add sh_type parameter. | |
511 | (Sized_relobj_file::Deferred_layout::Deferred_layout): Add sh_type | |
512 | parameter. | |
513 | * object.cc (Sized_relobj_file::check_eh_frame_flags): Check for | |
514 | unwind section type. | |
515 | (Sized_relobj_file::layout_section): Add sh_type parameter; pass it | |
516 | to Layout::layout. | |
517 | (Sized_relobj_file::do_layout): Make local copy of sh_type. | |
518 | Force .eh_frame sections to unwind section type. | |
519 | Pass sh_type to layout_section. | |
520 | (Sized_relobj_file<size, big_endian>::do_layout_deferred_sections): | |
521 | Pass sh_type to layout_section. | |
522 | * output.cc (Output_section::Output_section): Initialize reloc_section_. | |
523 | * output.h (Output_section::reloc_section): New method. | |
524 | (Output_section::set_reloc_section): New method. | |
525 | (Output_section::reloc_section_): New data member. | |
526 | * target.h (Target::unwind_section_type): New method. | |
527 | (Target::Target_info::unwind_section_type): New data member. | |
528 | ||
529 | * aarch64.cc (aarch64_info): Add unwind_section_type. | |
530 | * arm.cc (arm_info, arm_nacl_info): Likewise. | |
531 | * i386.cc (i386_info, i386_nacl_info, iamcu_info): Likewise. | |
532 | * mips.cc (mips_info, mips_nacl_info): Likewise. | |
533 | * powerpc.cc (powerpc_info): Likewise. | |
534 | * s390.cc (s390_info): Likewise. | |
535 | * sparc.cc (sparc_info): Likewise. | |
536 | * tilegx.cc (tilegx_info): Likewise. | |
537 | * x86_64.cc (x86_64_info, x86_64_nacl_info): Likewise. | |
538 | ||
539 | * testsuite/Makefile.am (pr23016_1, pr23016_2): New test cases. | |
540 | * testsuite/Makefile.in: Regenerate. | |
541 | * testsuite/testfile.cc: Add unwind_section_type. | |
542 | * testsuite/pr23016_1.sh: New test script. | |
543 | * testsuite/pr23016_1a.s: New source file. | |
544 | * testsuite/pr23016_1b.s: New source file. | |
545 | * testsuite/pr23016_2.sh: New test script. | |
546 | * testsuite/pr23016_2a.s: New source file. | |
547 | * testsuite/pr23016_2b.s: New source file. | |
548 | ||
24538276 CC |
549 | 2018-03-28 Cary Coutant <ccoutant@gmail.com> |
550 | ||
551 | PR gold/21423 | |
552 | PR gold/22500 | |
553 | * configure.ac: Call AC_USE_SYSTEM_EXTENSIONS. | |
554 | Replace check for --enable-plugins with AC_PLUGINS. | |
555 | * options.cc (parse_plugin, parse_plugin_opt): Remove #ifdef. | |
556 | (General_options::finalize): Check if plugins enabled. | |
557 | * options.h (--plugin, --plugin-opt): Define even if plugins not | |
558 | enabled. | |
559 | * Makefile.in: Regenerate. | |
560 | * aclocal.m4: Regenerate. | |
561 | * configure: Regenerate. | |
562 | * testsuite/Makefile.in: Regenerate. | |
563 | ||
e82e6b2b CC |
564 | 2018-03-28 Cary Coutant <ccoutant@gmail.com> |
565 | ||
566 | PR gold/22969 | |
567 | * aarch64-reloc.def: Add TLSLE_LDST* relocations. | |
568 | * aarch64.cc (Target_aarch64::optimize_tls_reloc): Likewise. | |
569 | (Target_aarch64::Scan::local): Likewise. | |
570 | (Target_aarch64::Scan::global): Likewise. | |
571 | (Target_aarch64::Relocate::relocate): Likewise. | |
572 | (Target_aarch64::Relocate::relocate_tls): Likewise. | |
573 | ||
9c75b456 RM |
574 | 2018-03-27 Roland McGrath <mcgrathr@google.com> |
575 | ||
576 | * testsuite/split_x86_64.sh: Fix bad regexp. | |
577 | ||
0b7a4aa6 CC |
578 | 2018-03-26 Cary Coutant <ccoutant@gmail.com> |
579 | ||
0b7a4aa6 CC |
580 | PR gold/22868 |
581 | * plugin.cc (Sized_pluginobj::do_add_symbols): Use a real section | |
582 | index instead of SHN_ABS for defined symbols. | |
583 | * testsuite/Makefile.am (plugin_pr22868): New test case. | |
584 | * testsuite/Makefile.in: Regenerate | |
585 | * testsuite/plugin_pr22868.sh: New test script. | |
586 | * testsuite/plugin_pr22868_a.c: New source file. | |
587 | * testsuite/plugin_pr22868_b.c: New source file. | |
588 | ||
8da9a904 CC |
589 | 2018-03-23 Cary Coutant <ccoutant@gmail.com> |
590 | ||
591 | * plugin.cc (link_or_copy_file): Remove newlines from warning messages. | |
592 | Add pedantic check for return value from ::write. | |
593 | ||
3215deaa CC |
594 | 2018-03-23 Cary Coutant <ccoutant@gmail.com> |
595 | ||
596 | * debug.h (DEBUG_PLUGIN): New constant. | |
597 | (DEBUG_ALL): Add DEBUG_PLUGIN. | |
598 | (debug_string_to_enum): Likewise. | |
599 | * plugin.cc (make_sized_plugin_object): Add filename parameter. | |
600 | (Plugin_recorder): New class. | |
601 | (Plugin_manager::~Plugin_manager): Delete recorder_. | |
602 | (Plugin_manager::load_plugins): Create and initialize recorder_. | |
603 | (Plugin_manager::claim_file): Record claimed and unclaimed files. | |
604 | (Plugin_manager::make_plugin_object): Use object name as name for | |
605 | plugin object, if available. | |
606 | (Plugin_manager::add_input_file): Record replacement files. | |
607 | (Sized_pluginobj::do_add_symbols): Record plugin symbols. | |
608 | (Plugin_finish::run): Call Plugin_recorder::finish(). | |
609 | (make_sized_plugin_object): Add filename parameter and pass to | |
610 | Sized_pluginobj constructor. | |
611 | * plugin.h (Plugin::filename): New method. | |
612 | (Plugin::recorder): New method. | |
613 | (Plugin::recorder_): New data member. | |
614 | ||
779bdadb ST |
615 | 2018-03-07 Sriraman Tallam <tmsriram@google.com> |
616 | ||
617 | * layout.cc (Layout::default_section_order): Check for text section | |
618 | prefixes. | |
619 | (Layout::text_section_name_mapping): New static member. | |
620 | (Layout::text_section_name_mapping_count): New static member. | |
621 | (Layout::match_section_name): New static function. | |
622 | (Layout::output_section_name): Check for text section prefixes. | |
623 | * layout.h (Output_section_order::ORDER_TEXT_HOT): New enum value. | |
624 | (Output_section_order::ORDER_TEXT_STARTUP): New enum value. | |
625 | (Output_section_order::ORDER_TEXT_EXIT): New enum value. | |
626 | (Output_section_order::ORDER_TEXT_UNLIKELY): New enum value. | |
627 | (Layout::text_section_name_mapping): New static member. | |
628 | (Layout::text_section_name_mapping_count): New static member. | |
629 | (Layout::match_section_name): New static function. | |
630 | * options.h (keep_text_section_prefix): New -z option. | |
631 | * testsuite/Makefile.am (keep_text_section_prefix): New test. | |
632 | * testsuite/Makefile.in: Regenerate. | |
633 | * testsuite/keep_text_section_prefix.cc: New test source. | |
634 | * testsuite/keep_text_section_prefix.sh: New test script. | |
635 | ||
0b65c07b ST |
636 | 2018-02-22 Sriraman Tallam <tmsriram@google.com> |
637 | ||
638 | * plugin.cc (get_wrap_symbols): New plugin interface. | |
639 | (load): Add get_wrap_symbols to transfer vector. | |
640 | * plugin-api.h (ld_plugin_get_wrap_symbols): New plugin interface. | |
641 | * testsuite/plugin_test.c (onload): Call and check get_wrap_symbols | |
642 | interface. | |
643 | * testsuite/plugin_test_wrap_symbols.sh: New test script. | |
644 | * testsuite/plugin_test_wrap_symbols_1.cc: New file. | |
645 | * testsuite/plugin_test_wrap_symbols_2.cc: New file. | |
646 | * testsuite/Makefile.am (plugin_test_wrap_symbols): New test. | |
647 | * testsuite/Makefile.in: Regenerate. | |
648 | ||
3281b315 ST |
649 | 2018-02-07 Sriraman Tallam <tmsriram@google.com> |
650 | ||
651 | * expression.cc (Symbol_expression::set_expr_sym_in_real_elf): | |
652 | New method. | |
653 | (Unary_expression::set_expr_sym_in_real_elf): New method. | |
654 | (Binary_expression::set_expr_sym_in_real_elf): New method. | |
655 | (Trinary_expression::set_expr_sym_in_real_elf): New method. | |
656 | * plugin.cc (get_symbol_resolution_info): Fix symbol resolution if | |
657 | defined or used in defsyms. | |
658 | * plugin.h (Plugin_manager::is_defsym_def): New method. | |
659 | (Plugin_manager::Plugin_manager): Initialize defsym_defines_set_. | |
660 | (Plugin_manager::defsym_defines_set_): New member. | |
661 | (Plugin_manager::Defsym_defines_set): New typedef. | |
662 | * script.cc (Script_options::set_defsym_uses_in_real_elf): New method. | |
663 | (Script_options::find_defsym_defs): New method. | |
664 | * script.h (Expression::set_expr_sym_in_real_elf): New method. | |
665 | (Symbol_assignment::is_defsym): New method. | |
666 | (Symbol_assignment::value): New method. | |
667 | (Script_options::find_defsym_defs): New method. | |
668 | (Script_options::set_defsym_uses_in_real_elf): New method. | |
669 | * testsuite/Makefile.am (plugin_test_defsym): New test. | |
670 | * testsuite/Makefile.in: Regenerate. | |
671 | * testsuite/plugin_test.c: Check for new symbol resolution. | |
672 | * testsuite/plugin_test_defsym.sh: New script. | |
673 | * testsuite/plugin_test_defsym.c: New test source. | |
674 | ||
407aa07c AM |
675 | 2018-02-07 Alan Modra <amodra@gmail.com> |
676 | ||
677 | Revert 2018-01-17 Alan Modra <amodra@gmail.com> | |
678 | * options.h: Remove --speculate-indirect-jumps support. | |
679 | * powerpc.cc: Likewise. | |
680 | ||
c8334458 CC |
681 | 2018-02-02 Cary Coutant <ccoutant@gmail.com> |
682 | ||
683 | * PR gold/22776 | |
684 | * dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog): Add | |
685 | support for DWARF-4 line number tables. | |
686 | * dwarf_reader.h (Sized_dwarf_line_info::max_ops_per_insn): New field. | |
687 | ||
691d2e9a AM |
688 | 2018-01-18 Alan Modra <amodra@gmail.com> |
689 | ||
690 | * powerpc.cc (param_plt_align): New function supplying default | |
691 | --plt-align values. Use it.. | |
692 | (Stub_table::plt_call_align): ..here, and.. | |
693 | (Output_data_glink::global_entry_align): ..here. | |
694 | (Stub_table::stub_align): Correct 32-bit minimum alignment. | |
695 | ||
1be5d8d3 AM |
696 | 2018-01-17 Alan Modra <amodra@gmail.com> |
697 | ||
698 | * options.h (speculate_indirect_jumps): New option. | |
699 | * powerpc.cc (beqctrm, beqctrlm, crseteq): New insn constants. | |
700 | (output_bctr): New function. | |
701 | (Stub_table::plt_call_size): Add space for speculation barrier. | |
702 | (Stub_table::branch_stub_size): Likewise. | |
703 | (Output_data_glink::pltresolve_size): Likewise. | |
704 | (Stub_table::do_write): Output speculation barriers. | |
705 | ||
9e390558 AM |
706 | 2018-01-17 Alan Modra <amodra@gmail.com> |
707 | ||
708 | * options.h (plt_align): Support for PowerPC32 too. | |
709 | * powerpc.cc (Stub_table::stub_align): Heed --plt-align for 32-bit. | |
710 | (Stub_table::plt_call_size, branch_stub_size): Tidy. | |
711 | (Stub_table::plt_call_align): Implement using stub_align. | |
712 | (Output_data_glink::global_entry_align): New function. | |
713 | (Output_data_glink::global_entry_off): New function. | |
714 | (Output_data_glink::global_entry_address): Use global_entry_off. | |
715 | (Output_data_glink::pltresolve_size): New function, replacing | |
716 | pltresolve_size_ constant. Update all uses. | |
717 | (Output_data_glink::add_global_entry): Align offset. | |
718 | (Output_data_glink::set_final_data_size): Use global_entry_align. | |
719 | (Stub_table::do_write): Don't pad __glink_PLTrelsolve with nops. | |
720 | Tidy stub output. Use global_entry_off. | |
721 | ||
930b5f8b CC |
722 | 2018-01-15 Cary Coutant <ccoutant@gmail.com> |
723 | ||
724 | PR gold/22694 | |
725 | * options.h (-fuse-ld): Add correct helparg. | |
726 | ||
616dcb87 NC |
727 | 2018-01-15 Nick Clifton <nickc@redhat.com> |
728 | ||
729 | * po/uk.po: Updated Ukranian translation. | |
730 | ||
3957a496 NC |
731 | 2018-01-13 Nick Clifton <nickc@redhat.com> |
732 | ||
733 | * po/gold.pot: Regenerated. | |
734 | ||
faf766e3 NC |
735 | 2018-01-13 Nick Clifton <nickc@redhat.com> |
736 | ||
737 | 2.30 branch created. | |
738 | ||
27f7b092 CC |
739 | 2018-01-12 Cary Coutant <ccoutant@gmail.com> |
740 | ||
741 | * NEWS: Add new features in 1.15. | |
742 | * version.cc (version_string): Bump to 1.15. | |
743 | ||
744 | 2018-01-12 Sterling Augustine <saugustine@google.com> | |
b4b07ef1 EC |
745 | |
746 | * cref.cc (Cref_inputs::Cref_table_compare::operator): Add | |
747 | conditionals and calls to is_forwarder. | |
748 | ||
219d1afa AM |
749 | 2018-01-03 Alan Modra <amodra@gmail.com> |
750 | ||
751 | Update year range in copyright notice of all files. | |
752 | ||
1e563868 | 753 | For older changes see ChangeLog-2017 |
3499769a | 754 | \f |
1e563868 | 755 | Copyright (C) 2018 Free Software Foundation, Inc. |
3499769a AM |
756 | |
757 | Copying and distribution of this file, with or without modification, | |
758 | are permitted in any medium without royalty provided the copyright | |
759 | notice and this notice are preserved. | |
760 | ||
761 | Local Variables: | |
762 | mode: change-log | |
763 | left-margin: 8 | |
764 | fill-column: 74 | |
765 | version-control: never | |
766 | End: |