Speed up direct linking with DLLs on Windows (2/2).
[external/binutils.git] / ld / ChangeLog
1 2018-04-04  Eric Botcazou  <ebotcazou@adacore.com>
2
3         * deffile.h (def_file_add_import_from): Declare.
4         (def_file_add_import_at): Likewise.
5         * deffilep.y (fill_in_import): New function extracted from...
6         (def_file_add_import): ...here.  Call it.
7         (def_file_add_import_from): New function.
8         (def_file_add_import_at): Likewise.
9         * pe-dll.c (pe_implied_import_dll): Use an optimized version of the
10         insertion loop for imported symbols if possible.
11
12 2018-04-04  Eric Botcazou  <ebotcazou@adacore.com>
13
14         * emultempl/pe.em (U_SIZE): Delete.
15         (pe_data_import_dll): Likewise.
16         (make_import_fixup): Return void, take 4th parameter and pass it down
17         in call to pe_create_import_fixup.
18         (pe_find_data_imports): Move to...
19         (gld_${EMULATION_NAME}_after_open): Run the stdcall fixup pass after
20         the auto-import pass and add a guard before running the latter.
21         * emultempl/pep.em (U_SIZE): Delete.
22         (pep_data_import_dll): Likewise.
23         (make_import_fixup): Return void, take 4th parameter and pass it down
24         in call to pe_create_import_fixup.
25         (pep_find_data_imports): Move to...
26         (gld_${EMULATION_NAME}_after_open): Run the stdcall fixup pass after
27         the auto-import pass and add a guard before running the latter.
28         * pe-dll.c (runtime_pseudp_reloc_v2_init): Change type to bfd_boolean.
29         (pe_walk_relocs_of_symbol): Rename into...
30         (pe_walk_relocs): ...this.  Add 2 more parameters,4th parameter to the
31         callback prototype and pass 4th parameter in calls to the callback.
32         If the import hash table is present, invoke the callback on the reloc
33         if the symbol name is in the table.
34         (pe_find_data_imports): ...here.  Take 2 parameters.  Build an import
35         hash table for the pseudo-relocation support version 2.  When it is
36         built, walk the relocations only once at the end; when it is not, do
37         not build a fixup when the symbol isn't part of an import table.
38         Issue the associated warning only after a first fixup is built.
39         (tmp_seq2): Delete.
40         (make_singleton_name_imp): Likewise.
41         (make_import_fixup_mark): Return const char * and a stable string.
42         (make_import_fixup_entry): Do not deal with the pseudo-relocation
43         support version 2.
44         (make_runtime_pseudo_reloc): Factor out code and fix formatting.
45         (pe_create_import_fixup): Add 5th parameter.  Clearly separate the
46         pseudo-relocation support version 2 from the rest.  Fix formatting.
47         * pe-dll.h (pe_walk_relocs_of_symbol): Delete.
48         (pe_find_data_imports): Declare.
49         (pe_create_import_fixup): Add 5th parameter.
50         * pep-dll.c (pe_data_import_dll): Delete.
51         (pe_find_data_imports): Define.
52         (pe_walk_relocs_of_symbol): Delete.
53         * pep-dll.h (pep_walk_relocs_of_symbol): Delete.
54         (pep_find_data_imports): Declare.
55         (pep_create_import_fixup): Add 5th parameter.
56         * ld.texinfo (--enable-auto-import): Adjust to new implementation.
57
58 2018-04-04  Nick Clifton  <nickc@redhat.com>
59
60         * po/es.po: Updated Spanish translation.
61
62 2018-04-03  Maciej W. Rozycki  <macro@mips.com>
63
64         * testsuite/ld-mips-elf/comm-data.exp: Correct support for
65         `mips*-*-kfreebsd*-gnu' targets.
66
67 2018-03-23  Renlin Li  <renlin.li@arm.com>
68
69         PR ld/22970
70         * testsuite/ld-aarch64/aarch64-elf.exp: Update to run new tests.
71         * testsuite/ld-aarch64/emit-relocs-552-overflow.d: New.
72         * testsuite/ld-aarch64/emit-relocs-552-overflow.s: New.
73         * testsuite/ld-aarch64/emit-relocs-552.d: New.
74         * testsuite/ld-aarch64/emit-relocs-552.s: New.
75         * testsuite/ld-aarch64/emit-relocs-553.d: New.
76         * testsuite/ld-aarch64/emit-relocs-553.s: New.
77         * testsuite/ld-aarch64/emit-relocs-554-overflow.d: New.
78         * testsuite/ld-aarch64/emit-relocs-554-overflow.s: New.
79         * testsuite/ld-aarch64/emit-relocs-554.d: New.
80         * testsuite/ld-aarch64/emit-relocs-554.s: New.
81         * testsuite/ld-aarch64/emit-relocs-555.d: New.
82         * testsuite/ld-aarch64/emit-relocs-555.s: New.
83         * testsuite/ld-aarch64/emit-relocs-556-overflow.d: New.
84         * testsuite/ld-aarch64/emit-relocs-556-overflow.s: New.
85         * testsuite/ld-aarch64/emit-relocs-556.d: New.
86         * testsuite/ld-aarch64/emit-relocs-556.s: New.
87         * testsuite/ld-aarch64/emit-relocs-557.d: New.
88         * testsuite/ld-aarch64/emit-relocs-557.s: New.
89         * testsuite/ld-aarch64/emit-relocs-558-overflow.d: New.
90         * testsuite/ld-aarch64/emit-relocs-558-overflow.s: New.
91         * testsuite/ld-aarch64/emit-relocs-558.d: New.
92         * testsuite/ld-aarch64/emit-relocs-558.s: New.
93         * testsuite/ld-aarch64/emit-relocs-559.d: New.
94         * testsuite/ld-aarch64/emit-relocs-559.s: New.
95         * testsuite/ld-aarch64/emit-relocs-112-overflow.d: New.
96         * testsuite/ld-aarch64/emit-relocs-112-overflow.s: New.
97         * testsuite/ld-aarch64/emit-relocs-112.d: New.
98         * testsuite/ld-aarch64/emit-relocs-112.s: New.
99         * testsuite/ld-aarch64/emit-relocs-113.d: New.
100         * testsuite/ld-aarch64/emit-relocs-113.s: New.
101         * testsuite/ld-aarch64/emit-relocs-114-overflow.d: New.
102         * testsuite/ld-aarch64/emit-relocs-114-overflow.s: New.
103         * testsuite/ld-aarch64/emit-relocs-114.d: New.
104         * testsuite/ld-aarch64/emit-relocs-114.s: New.
105         * testsuite/ld-aarch64/emit-relocs-115.d: New.
106         * testsuite/ld-aarch64/emit-relocs-115.s: New.
107         * testsuite/ld-aarch64/emit-relocs-116-overflow.d: New.
108         * testsuite/ld-aarch64/emit-relocs-116-overflow.s: New.
109         * testsuite/ld-aarch64/emit-relocs-116.d: New.
110         * testsuite/ld-aarch64/emit-relocs-116.s: New.
111         * testsuite/ld-aarch64/emit-relocs-117.d: New.
112         * testsuite/ld-aarch64/emit-relocs-117.s: New.
113         * testsuite/ld-aarch64/emit-relocs-118-overflow.d: New.
114         * testsuite/ld-aarch64/emit-relocs-118-overflow.s: New.
115         * testsuite/ld-aarch64/emit-relocs-118.d: New.
116         * testsuite/ld-aarch64/emit-relocs-118.s: New.
117         * testsuite/ld-aarch64/emit-relocs-119.d: New.
118         * testsuite/ld-aarch64/emit-relocs-119.s: New.
119
120 2018-03-28  Eric Botcazou  <ebotcazou@adacore.com>
121
122         PR ld/22972
123         * testsuite/ld-sparc/sparc.exp: Add test for mixed GOTDATA/GOT relocs.
124         * testsuite/ld-sparc/gotop-hidden.c: New file.
125         * testsuite/ld-sparc/got-hidden32.s: Likewise.
126         * testsuite/ld-sparc/got-hidden64.s: Likewise.
127         * testsuite/ld-sparc/pass.out: Likewise.
128
129 2018-03-25  H.J. Lu  <hongjiu.lu@intel.com>
130
131         PR ld/23000
132         * testsuite/ld-x86-64/tlsdesc.pd: Updated.
133
134 2018-03-23  Nick Clifton  <nickc@redhat.com>
135
136         PR 22948
137         * emultempl/pe.em (open_dynamic_archive): Add libXXX.lib template
138         to library name list.
139         * emultempl/pep.em (open_dynamic_archive): Likewise.
140         * ld.texinfo (WIN32): Update documentation.
141
142 2018-03-20  Roland McGrath  <mcgrathr@google.com>
143
144         * testsuite/ld-elf/shared.exp (pr20995-2): XFAIL on aarch64*-*-elf*,
145         another target without RELRO.
146
147 2018-03-20  H.J. Lu  <hongjiu.lu@intel.com>
148
149         * testsuite/ld-plugin/pr22983.d: Allow leading underscore as
150         well as extra lines between symbols.
151
152 2018-03-20  Maciej W. Rozycki  <macro@mips.com>
153
154         * testsuite/ld-gc/gc.exp: Remove extraneous LD flags from the
155         personality test.
156
157 2018-03-20  H.J. Lu  <hongjiu.lu@intel.com>
158
159         PR ld/22983
160         * testsuite/ld-plugin/lto.exp: Run PR ld/22983 test.
161         * testsuite/ld-plugin/pr22983.d: New file.
162         * testsuite/ld-plugin/pr22983.t: Likewise.
163         * testsuite/ld-plugin/pr22983a.c: Likewise.
164         * testsuite/ld-plugin/pr22983b.c: Likewise.
165
166 2018-03-15  Andreas Schwab  <schwab@suse.de>
167
168         PR ld/22949
169         * emultempl/riscvelf.em (riscv_elf_before_allocation): Don't
170         enable relaxation in relocatable link.
171
172 2018-03-15  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
173
174         * emultempl/nds32elf.em (nds32_elf_after_allocation): Remove
175         unsupported target feature.
176
177 2018-03-14  H.J. Lu  <hongjiu.lu@intel.com>
178
179         PR ld/20882
180         * testsuite/ld-gc/pr20882.d: Also dump and check .debug_abbrev
181         section.
182         * testsuite/ld-gc/pr20882b.s: Add .debug_abbrev section.
183
184 2018-03-14  H.J. Lu  <hongjiu.lu@intel.com>
185
186         * testsuite/ld-gc/gc.exp: Fix a typo: $LFLAGS -> $LDFLAGS.
187
188 2018-03-13  Nick Clifton  <nickc@redhat.com>
189
190         * po/pt_BR.po: Updated Brazilian Portuguese translation.
191
192 2018-03-09  Nick Clifton  <nickc@redhat.com>
193
194         * testsuite/ld-ifunc/ifuncmod5.s: New test.  Checks that targets
195         that support IFUNC symbols can handle relocations against those
196         symbols in NOTE sections.
197         * testsuite/ld-ifunc/ifuncmod5.d: New file:  Driver for the new
198         test.
199         * testsuite/ld-ifunc/ifunc.exp: Run the new test.
200
201 2018-03-08  H.J. Lu  <hongjiu.lu@intel.com>
202
203         PR ld/22929
204         * testsuite/ld-i386/i386.exp: Run PR ld/22929 test.
205         * testsuite/ld-x86-64/x86-64.exp: Likewise.
206         * testsuite/ld-i386/pr22929.d: New file.
207         * testsuite/ld-i386/pr22929.s: Likewise.
208         * testsuite/ld-x86-64/pr22929.d: Likewise.
209         * testsuite/ld-x86-64/pr22929.s: Likewise.
210
211 2018-03-07  Max Filippov  <jcmvbkbc@gmail.com>
212
213         * emulparams/elf32xtensa.sh (COMMONPAGESIZE): Define.
214
215 2018-03-07  Renlin Li  <renlin.li@arm.com>
216
217         PR ld/20402
218         * testsuite/ld-aarch64/aarch64-elf.exp: Run new test.
219         * testsuite/ld-aarch64/pr20402.s: New.
220         * testsuite/ld-aarch64/pr20402.d: New.
221
222 2018-03-06  Jim Wilson  <jimw@sifive.com>
223
224         PR 22920
225         * emultempl/riscvelf.em (riscv_create_output_section_statements): New.
226         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): New.
227         * testsuite/ld-elf/pr21884.d (#notarget): Add riscv*-*-*.
228         * testsuite/ld-unique/pr21529.d (#notarget): Likewise.
229         * testsuite/ld-srec/srec.exp (run_srec_test): For riscv*-*-* target,
230         call setup_xfail.
231
232 2018-03-03  James Cowgill  <james.cowgill@mips.com>
233             Maciej W. Rozycki  <macro@mips.com>
234
235         PR ld/21900
236         * testsuite/ld-mips-elf/undefined-warn.d: New test.
237         * testsuite/ld-mips-elf/undefined.s: Add padding at the end.
238         * testsuite/ld-mips-elf/mips-elf.exp: Run the new test.
239
240 2018-03-02  Jim Wilson  <jimw@sifive.com>
241
242         PR 22903
243         * emultempl/aarch64elf.em (elf${ELFSIZE}_aarch64_add_stub_section):
244         Give stub_sec 8 byte alignment.
245         * emulparams/aarch64cloudabi.sh (NOP): Set to 0x1f2003d5.
246         * emulparams/aarch64elf.sh (NOP): Likewise.
247         * emulparams/aarch64elf32.sh (NOP): Likewise.
248         * emulparams/aarch64fbsd.sh (NOP): Likewise.
249         * emulparams/aarch64linux.sh (NOP): Likewise.
250         * emulparams/aarch64linux32.sh (NOP): Likewise.
251         * testsuite/ld-aarch64/erratum835769.d: Adjust for added nop.
252         * testsuite/ld-aarch64/erratum843419.d: Likewise.
253         * testsuite/ld-aarch64/farcall-b-defsym.d: Likewise.
254         * testsuite/ld-aarch64/farcall-b-none-function.d: Likewise.
255         * testsuite/ld-aarch64/farcall-b-plt.d: Likewise.
256         * testsuite/ld-aarch64/farcall-b-section.d: Likewise.
257         * testsuite/ld-aarch64/farcall-b.d: Likewise.
258         * testsuite/ld-aarch64/farcall-back.d: Likewise.
259         * testsuite/ld-aarch64/farcall-bl-defsym.d: Likewise.
260         * testsuite/ld-aarch64/farcall-bl-none-function.d: Likewise.
261         * testsuite/ld-aarch64/farcall-bl-plt.d: Likewise.
262         * testsuite/ld-aarch64/farcall-bl-section.d: Likewise.
263         * testsuite/ld-aarch64/farcall-bl.d: Likewise.
264
265 2018-03-01  Alan Modra  <amodra@gmail.com>
266
267         * configure.ac (ALL_LINGUAS): Add ja.  Sort.
268         * configure: Regenerate.
269
270 2018-02-28  Douglas B Rupp  <rupp@adacore.com>
271
272         * ldmain.c (main): Remove directory separator, if any, from the
273         end of the canonicalized sysroot.
274
275 2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
276
277         * NEWS: Mention --enable-separate-code.
278         * configure.ac: Add --enable-separate-code.
279         (DEFAULT_LD_Z_SEPARATE_CODE): New AC_DEFINE_UNQUOTED.
280         * configure.tgt: Default ac_default_ld_z_separate_code to 1 for
281         Linux/x86 targets.
282         * config.in: Regenerated.
283         * configure: Likewise.
284         * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
285         link_info.separate_code DEFAULT_LD_Z_SEPARATE_CODE.
286
287 2018-02-26  Alan Modra  <amodra@gmail.com>
288
289         * emulparams/call_nop.sh, * emulparams/cet.sh,
290         * emulparams/elf32mcore.sh, * emultempl/aarch64elf.em
291         * emultempl/aix.em, * emultempl/alphaelf.em, * emultempl/armcoff.em,
292         * emultempl/armelf.em, * emultempl/avrelf.em, * emultempl/beos.em,
293         * emultempl/bfin.em, * emultempl/cr16elf.em, * emultempl/elf32.em,
294         * emultempl/elf-generic.em, * emultempl/hppaelf.em,
295         * emultempl/linux.em, * emultempl/lnk960.em,
296         * emultempl/m68hc1xelf.em, * emultempl/m68kcoff.em,
297         * emultempl/m68kelf.em, * emultempl/metagelf.em,
298         * emultempl/mipself.em, * emultempl/mmix-elfnmmo.em,
299         * emultempl/mmo.em, * emultempl/msp430.em, * emultempl/nds32elf.em,
300         * emultempl/nios2elf.em, * emultempl/pe.em, * emultempl/pep.em,
301         * emultempl/ppc32elf.em, * emultempl/ppc64elf.em,
302         * emultempl/scoreelf.em, * emultempl/sh64elf.em,
303         * emultempl/spuelf.em, * emultempl/sunos.em, * emultempl/tic6xdsbt.em,
304         * emultempl/ticoff.em, * emultempl/v850elf.em, * emultempl/vms.em,
305         * emultempl/vxworks.em, * emultempl/xtensaelf.em, * ldcref.c,
306         * ldctor.c, * ldexp.c, * ldfile.c, * ldgram.y, * ldlang.c,
307         * ldmain.c, * ldmisc.c, * ldwrite.c, * lexsup.c, * mri.c, * pe-dll.c,
308         * plugin.c: Standardize error/warning messages.
309         * testsuite/ld-arc/jli-overflow.err,
310         * testsuite/ld-arm/cmse-implib-errors.out,
311         * testsuite/ld-arm/cmse-new-earlier-later-implib.out,
312         * testsuite/ld-arm/cmse-new-implib-not-sg-in-implib.out,
313         * testsuite/ld-arm/cmse-new-wrong-implib.out,
314         * testsuite/ld-arm/cmse-veneers-no-gnu_sgstubs.out,
315         * testsuite/ld-arm/cmse-veneers-wrong-entryfct.out,
316         * testsuite/ld-arm/vxworks1-static.d,
317         * testsuite/ld-cris/tls-err-20x.d, * testsuite/ld-cris/tls-err-29.d,
318         * testsuite/ld-cris/tls-err-31.d, * testsuite/ld-cris/tls-err-33.d,
319         * testsuite/ld-cris/tls-err-35.d, * testsuite/ld-cris/tls-err-37.d,
320         * testsuite/ld-cris/tls-err-39.d, * testsuite/ld-cris/tls-err-41.d,
321         * testsuite/ld-cris/tls-err-43.d, * testsuite/ld-cris/tls-err-45.d,
322         * testsuite/ld-cris/tls-err-47.d, * testsuite/ld-cris/tls-err-49.d,
323         * testsuite/ld-cris/tls-err-51.d, * testsuite/ld-cris/tls-err-67.d,
324         * testsuite/ld-elf/dwarf2.err, * testsuite/ld-elf/dwarf3.err,
325         * testsuite/ld-elf/orphan-5.l, * testsuite/ld-elf/orphan-6.l,
326         * testsuite/ld-i386/vxworks1-static.d,
327         * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d,
328         * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d,
329         * testsuite/ld-mips-elf/bal-jalx-pic-micromips.d,
330         * testsuite/ld-mips-elf/bal-jalx-pic-n32.d,
331         * testsuite/ld-mips-elf/bal-jalx-pic-n64.d,
332         * testsuite/ld-mips-elf/bal-jalx-pic.d,
333         * testsuite/ld-mips-elf/jal-global-overflow-1.d,
334         * testsuite/ld-mips-elf/jal-local-overflow-1.d,
335         * testsuite/ld-mips-elf/mode-change-error-1.d,
336         * testsuite/ld-mips-elf/unaligned-branch-2.d,
337         * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d,
338         * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d,
339         * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d,
340         * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d,
341         * testsuite/ld-mips-elf/unaligned-branch-micromips.d,
342         * testsuite/ld-mips-elf/unaligned-branch-mips16.d,
343         * testsuite/ld-mips-elf/unaligned-branch-r6-1.d,
344         * testsuite/ld-mips-elf/unaligned-branch-r6-2.d,
345         * testsuite/ld-mips-elf/unaligned-branch.d,
346         * testsuite/ld-mips-elf/unaligned-jalx-1.d,
347         * testsuite/ld-mips-elf/unaligned-jalx-3.d,
348         * testsuite/ld-mips-elf/unaligned-jalx-addend-1.d,
349         * testsuite/ld-mips-elf/unaligned-jalx-addend-3.d,
350         * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d,
351         * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d,
352         * testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d,
353         * testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d,
354         * testsuite/ld-mips-elf/unaligned-jump-micromips.d,
355         * testsuite/ld-mips-elf/unaligned-jump-mips16.d,
356         * testsuite/ld-mips-elf/unaligned-jump.d,
357         * testsuite/ld-mips-elf/unaligned-ldpc-1.d,
358         * testsuite/ld-mips-elf/unaligned-lwpc-1.d,
359         * testsuite/ld-mips-elf/undefined.d,
360         * testsuite/ld-mips-elf/vxworks1-static.d,
361         * testsuite/ld-mmix/bpo-20.d, * testsuite/ld-mmix/bpo-20m.d,
362         * testsuite/ld-mmix/bpo-7.d, * testsuite/ld-mmix/bpo-7m.d,
363         * testsuite/ld-mmix/bpo-8.d, * testsuite/ld-mmix/bpo-8m.d,
364         * testsuite/ld-mmix/greg-17.d, * testsuite/ld-mmix/greg-18.d,
365         * testsuite/ld-mmix/greg-8.d, * testsuite/ld-mmix/greg-9.d,
366         * testsuite/ld-plugin/plugin-14.d, * testsuite/ld-plugin/plugin-15.d,
367         * testsuite/ld-plugin/plugin-16.d, * testsuite/ld-plugin/plugin-20.d,
368         * testsuite/ld-plugin/plugin-21.d, * testsuite/ld-plugin/plugin-22.d,
369         * testsuite/ld-plugin/plugin-23.d, * testsuite/ld-plugin/plugin-6.d,
370         * testsuite/ld-plugin/plugin-7.d, * testsuite/ld-plugin/plugin-8.d,
371         * testsuite/ld-powerpc/aix-weak-3-32.d,
372         * testsuite/ld-powerpc/aix-weak-3-64.d,
373         * testsuite/ld-powerpc/vxworks1-static.d,
374         * testsuite/ld-sh/vxworks1-static.d,
375         * testsuite/ld-sparc/vxworks1-static.d,
376         * testsuite/ld-undefined/undefined.exp,
377         * testsuite/ld-x86-64/pie1.d: Update for changed errors and warnings.
378         * testsuite/ld-elf/warn1.d, * testsuite/ld-elf/warn2.d: Correct regex.
379
380 2018-02-26  Alan Modra  <amodra@gmail.com>
381
382         * Makefile.am (EMULATION_FILES, POTFILES): Delete.
383         (SRC_POTFILES, BLD_POTFILES): Define.
384         (po/POTFILES.in): Delete rule.
385         (po/SRC-POTFILES.in, po/BLD-POTFILES.in): New rules.
386         * configure.ac: Add AC_CONFIG_COMMANDS to create po/Makefile.
387         * po/Make-in (DISTFILES): Remove POTFILES.in, add SRC-POTFILES.in
388         and BLD-POTFILES.in.
389         (POTFILES): Delete.
390         (SRC-POTFILES, BLD-POTFILES): Define place marker.
391         (ld.pot): Build from SRC-POTFILES plus BLD-POTFILES.
392         (distclean, maintainer-clean): Tidy up new files.
393         (POTFILES, POTFILES.in): Delete rules.
394         (SRC-POTFILES, BLD-POTFILES, SRC-POTFILES.in, BLD-POTFILES.in):
395         New rules.
396         (Makefile): Depend on SRC-POTFILES and BLD-POTFILES.
397         * po/SRC-POTFILES.in: Rename from po/POTFILES.in.
398         * po/BLD-POTFILES.in: New file.
399         * Makefile.in: Regenerate.
400         * configure: Regenerate.
401
402 2018-02-26  Alan Modra  <amodra@gmail.com>
403
404         * testsuite/ld-cris/pcrelcp-1.d,
405         * testsuite/ld-mmix/start-2.d: Update.
406
407 2018-02-26  Alan Modra  <amodra@gmail.com>
408
409         * testsuite/ld-arm/cmse-implib-errors.out,
410         * testsuite/ld-arm/cmse-new-earlier-later-implib.out,
411         * testsuite/ld-arm/cmse-new-implib-not-sg-in-implib.out,
412         * testsuite/ld-arm/cmse-new-wrong-implib.out,
413         * testsuite/ld-arm/cmse-veneers-no-gnu_sgstubs.out,
414         * testsuite/ld-arm/cmse-veneers-wrong-entryfct.out,
415         * testsuite/ld-cris/badgotr1.d,
416         * testsuite/ld-cris/tls-err-24.d,
417         * testsuite/ld-cris/tls-err-25.d,
418         * testsuite/ld-cris/tls-err-26.d,
419         * testsuite/ld-cris/tls-err-27.d,
420         * testsuite/ld-cris/tls-err-28.d,
421         * testsuite/ld-cris/tls-err-40.d,
422         * testsuite/ld-cris/tls-err-44.d,
423         * testsuite/ld-cris/tls-err-48.d,
424         * testsuite/ld-cris/tls-err-52.d,
425         * testsuite/ld-cris/tls-err-53.d,
426         * testsuite/ld-cris/tls-err-55.d,
427         * testsuite/ld-cris/tls-err-56.d,
428         * testsuite/ld-cris/tls-err-62.d,
429         * testsuite/ld-cris/tls-err-65.d,
430         * testsuite/ld-cris/tls-err-77.d,
431         * testsuite/ld-elf/empty-implib.out,
432         * testsuite/ld-elf/indirect.exp: Update.
433
434 2018-02-26  Alan Modra  <amodra@gmail.com>
435
436         * testsuite/ld-aarch64/reloc-overflow-bad.d,
437         * testsuite/ld-arm/attr-merge-9.out,
438         * testsuite/ld-arm/attr-merge-arch-2.d,
439         * testsuite/ld-arm/attr-merge-unknown-1.d,
440         * testsuite/ld-arm/attr-merge-unknown-2.d,
441         * testsuite/ld-arm/attr-merge-unknown-2r.d,
442         * testsuite/ld-arm/attr-merge-unknown-3.d,
443         * testsuite/ld-arm/cmse-implib-errors.out,
444         * testsuite/ld-arm/cmse-new-earlier-later-implib.out,
445         * testsuite/ld-arm/cmse-new-implib-no-output.out,
446         * testsuite/ld-arm/cmse-new-implib-not-sg-in-implib.out,
447         * testsuite/ld-arm/cmse-new-implib.out,
448         * testsuite/ld-arm/cmse-new-wrong-implib.out,
449         * testsuite/ld-arm/cmse-veneers-no-gnu_sgstubs.out,
450         * testsuite/ld-arm/cmse-veneers-wrong-entryfct.out,
451         * testsuite/ld-arm/group-relocs-alu-bad-2.d,
452         * testsuite/ld-arm/group-relocs-alu-bad.d,
453         * testsuite/ld-arm/group-relocs-ldc-bad-2.d,
454         * testsuite/ld-arm/group-relocs-ldc-bad.d,
455         * testsuite/ld-arm/group-relocs-ldr-bad-2.d,
456         * testsuite/ld-arm/group-relocs-ldr-bad.d,
457         * testsuite/ld-arm/group-relocs-ldrs-bad-2.d,
458         * testsuite/ld-arm/group-relocs-ldrs-bad.d,
459         * testsuite/ld-arm/stm32l4xx-cannot-fix-far-ldm.d: Update.
460
461 2018-02-26  Alan Modra  <amodra@gmail.com>
462
463         * testsuite/ld-mips-elf/attr-gnu-4-12.d,
464         * testsuite/ld-mips-elf/attr-gnu-4-13.d,
465         * testsuite/ld-mips-elf/attr-gnu-4-14.d,
466         * testsuite/ld-mips-elf/attr-gnu-4-16.d,
467         * testsuite/ld-mips-elf/attr-gnu-4-17.d,
468         * testsuite/ld-mips-elf/attr-gnu-4-18.d,
469         * testsuite/ld-mips-elf/attr-gnu-4-19.d,
470         * testsuite/ld-mips-elf/attr-gnu-4-21.d,
471         * testsuite/ld-mips-elf/attr-gnu-4-23.d,
472         * testsuite/ld-mips-elf/attr-gnu-4-24.d,
473         * testsuite/ld-mips-elf/attr-gnu-4-25.d,
474         * testsuite/ld-mips-elf/attr-gnu-4-26.d,
475         * testsuite/ld-mips-elf/attr-gnu-4-27.d,
476         * testsuite/ld-mips-elf/attr-gnu-4-28.d,
477         * testsuite/ld-mips-elf/attr-gnu-4-29.d,
478         * testsuite/ld-mips-elf/attr-gnu-4-31.d,
479         * testsuite/ld-mips-elf/attr-gnu-4-32.d,
480         * testsuite/ld-mips-elf/attr-gnu-4-34.d,
481         * testsuite/ld-mips-elf/attr-gnu-4-35.d,
482         * testsuite/ld-mips-elf/attr-gnu-4-36.d,
483         * testsuite/ld-mips-elf/attr-gnu-4-37.d,
484         * testsuite/ld-mips-elf/attr-gnu-4-38.d,
485         * testsuite/ld-mips-elf/attr-gnu-4-39.d,
486         * testsuite/ld-mips-elf/attr-gnu-4-41.d,
487         * testsuite/ld-mips-elf/attr-gnu-4-42.d,
488         * testsuite/ld-mips-elf/attr-gnu-4-43.d,
489         * testsuite/ld-mips-elf/attr-gnu-4-45.d,
490         * testsuite/ld-mips-elf/attr-gnu-4-46.d,
491         * testsuite/ld-mips-elf/attr-gnu-4-47.d,
492         * testsuite/ld-mips-elf/attr-gnu-4-48.d,
493         * testsuite/ld-mips-elf/attr-gnu-4-49.d,
494         * testsuite/ld-mips-elf/attr-gnu-4-52.d,
495         * testsuite/ld-mips-elf/attr-gnu-4-53.d,
496         * testsuite/ld-mips-elf/attr-gnu-4-54.d,
497         * testsuite/ld-mips-elf/attr-gnu-4-58.d,
498         * testsuite/ld-mips-elf/attr-gnu-4-59.d,
499         * testsuite/ld-mips-elf/attr-gnu-4-61.d,
500         * testsuite/ld-mips-elf/attr-gnu-4-62.d,
501         * testsuite/ld-mips-elf/attr-gnu-4-63.d,
502         * testsuite/ld-mips-elf/attr-gnu-4-64.d,
503         * testsuite/ld-mips-elf/attr-gnu-4-68.d,
504         * testsuite/ld-mips-elf/attr-gnu-4-69.d,
505         * testsuite/ld-mips-elf/attr-gnu-4-71.d,
506         * testsuite/ld-mips-elf/attr-gnu-4-72.d,
507         * testsuite/ld-mips-elf/attr-gnu-4-73.d,
508         * testsuite/ld-mips-elf/attr-gnu-4-74.d,
509         * testsuite/ld-mips-elf/attr-gnu-4-78.d,
510         * testsuite/ld-mips-elf/attr-gnu-4-79.d,
511         * testsuite/ld-mips-elf/attr-gnu-4-81.d,
512         * testsuite/ld-mips-elf/attr-gnu-4-89.d,
513         * testsuite/ld-mips-elf/attr-gnu-8-12.d,
514         * testsuite/ld-mips-elf/attr-gnu-8-21.d,
515         * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d,
516         * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d,
517         * testsuite/ld-mips-elf/bal-jalx-pic-micromips.d,
518         * testsuite/ld-mips-elf/bal-jalx-pic-n32.d,
519         * testsuite/ld-mips-elf/bal-jalx-pic-n64.d,
520         * testsuite/ld-mips-elf/bal-jalx-pic.d,
521         * testsuite/ld-mips-elf/mode-change-error-1.d,
522         * testsuite/ld-mips-elf/unaligned-branch-2.d,
523         * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d,
524         * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d,
525         * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d,
526         * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d,
527         * testsuite/ld-mips-elf/unaligned-branch-micromips.d,
528         * testsuite/ld-mips-elf/unaligned-branch-mips16.d,
529         * testsuite/ld-mips-elf/unaligned-branch-r6-1.d,
530         * testsuite/ld-mips-elf/unaligned-branch-r6-2.d,
531         * testsuite/ld-mips-elf/unaligned-branch.d,
532         * testsuite/ld-mips-elf/unaligned-jalx-1.d,
533         * testsuite/ld-mips-elf/unaligned-jalx-3.d,
534         * testsuite/ld-mips-elf/unaligned-jalx-addend-1.d,
535         * testsuite/ld-mips-elf/unaligned-jalx-addend-3.d,
536         * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d,
537         * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d,
538         * testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d,
539         * testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d,
540         * testsuite/ld-mips-elf/unaligned-jump-micromips.d,
541         * testsuite/ld-mips-elf/unaligned-jump-mips16.d,
542         * testsuite/ld-mips-elf/unaligned-jump.d: Update.
543
544 2018-02-26  Alan Modra  <amodra@gmail.com>
545
546         * testsuite/ld-elf/indirect.exp,
547         * testsuite/ld-elf/pr22649-2ab-mips.msg,
548         * testsuite/ld-elf/pr22649-2cd-mips.msg,
549         * testsuite/ld-elf/pr22649.msg,
550         * testsuite/ld-elf/tls_common.exp,
551         * testsuite/ld-elfcomm/elfcomm.exp,
552         * testsuite/ld-arm/attr-merge-incompatible.d,
553         * testsuite/ld-tic6x/attr-compatibility-gnu-other.d,
554         * testsuite/ld-tic6x/attr-compatibility-other-gnu.d,
555         * testsuite/ld-tic6x/attr-compatibility-other-other.d,
556         * testsuite/ld-i386/warn1.d: Update expected error/warning messages.
557
558 2018-02-26  Alan Modra  <amodra@gmail.com>
559
560         * testsuite/ld-powerpc/attr-gnu-12-21.d,
561         * testsuite/ld-powerpc/attr-gnu-4-12.d,
562         * testsuite/ld-powerpc/attr-gnu-4-13.d,
563         * testsuite/ld-powerpc/attr-gnu-4-21.d,
564         * testsuite/ld-powerpc/attr-gnu-4-23.d,
565         * testsuite/ld-powerpc/attr-gnu-4-31.d,
566         * testsuite/ld-powerpc/attr-gnu-4-32.d,
567         * testsuite/ld-powerpc/attr-gnu-8-23.d: Update.
568
569 2018-02-21  Alan Modra  <amodra@gmail.com>
570
571         * testsuite/ld-elf/group8b.d: Run test on ia64.  Use xfail rather
572         than notarget.
573         * testsuite/ld-elf/pr12851.d: Likewise.
574         * testsuite/ld-elf/pr12975.d: Likewise.
575         * testsuite/ld-elf/pr13177.d: Likewise.
576         * testsuite/ld-elf/pr13195.d: Likewise.
577         * testsuite/ld-elf/pr17615.d: Likewise.
578         * testsuite/ld-elf/pr21562a.d: Likewise.
579         * testsuite/ld-elf/pr21562b.d: Likewise.
580         * testsuite/ld-elf/pr21562c.d: Likewise.
581         * testsuite/ld-elf/pr21562d.d: Likewise.
582         * testsuite/ld-elf/pr21562i.d: Likewise.
583         * testsuite/ld-elf/pr21562j.d: Likewise.
584         * testsuite/ld-elf/pr21562k.d: Likewise.
585         * testsuite/ld-elf/pr21562l.d: Likewise.
586         * testsuite/ld-elf/pr21562m.d: Likewise.
587         * testsuite/ld-elf/pr21562n.d: Likewise.
588         * testsuite/ld-elf/group9a.d: Run test on ia64 and alpha.  Use xfail
589         rather than notarget.
590         * testsuite/ld-elf/group9b.d: Likewise.
591         * testsuite/ld-elf/pr22677.d: Likewise.
592
593 2018-02-19  Maciej W. Rozycki  <macro@mips.com>
594
595         * testsuite/ld-mips-elf/reginfo-0.d: New test.
596         * testsuite/ld-mips-elf/reginfo-0r.d: New test.
597         * testsuite/ld-mips-elf/reginfo-1.d: New test.
598         * testsuite/ld-mips-elf/reginfo-1r.d: New test.
599         * testsuite/ld-mips-elf/reginfo-2.d: New test.
600         * testsuite/ld-mips-elf/reginfo-2r.d: New test.
601         * testsuite/ld-mips-elf/mips-abiflags-0.d: New test.
602         * testsuite/ld-mips-elf/mips-abiflags-0r.d: New test.
603         * testsuite/ld-mips-elf/mips-abiflags-1.d: New test.
604         * testsuite/ld-mips-elf/mips-abiflags-1r.d: New test.
605         * testsuite/ld-mips-elf/mips-abiflags-2.d: New test.
606         * testsuite/ld-mips-elf/mips-abiflags-2r.d: New test.
607         * testsuite/ld-mips-elf/reginfo-0.ld: New test linker script.
608         * testsuite/ld-mips-elf/reginfo-1.ld: New test linker script.
609         * testsuite/ld-mips-elf/mips-abiflags-0.ld: New test linker
610         script.
611         * testsuite/ld-mips-elf/mips-abiflags-1.ld: New test linker
612         script.
613         * testsuite/ld-mips-elf/reginfo-1.s: New test source.
614         * testsuite/ld-mips-elf/reginfo-2.s: New test source.
615         * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
616
617 2018-02-19  Maciej W. Rozycki  <macro@mips.com>
618
619         * ldlang.c (insert_pad): Do not change output section's size if
620         SEC_FIXED_SIZE is set in the flags.
621         (size_input_section): Likewise.
622         (lang_size_sections_1): Likewise.
623         (lang_reset_memory_regions): Likewise.
624
625 2018-02-19  Alan Modra  <amodra@gmail.com>
626
627         * ldmisc.c (vfinfo) Handle %pI, %pR, %pS and %pT in place of
628         %I, %R, %S and %T.
629         * ldcref.c, * ldctor.c, * ldemul.c, * ldexp.c, * ldgram.y,
630         * ldlang.c, * ldlex.l, * ldmain.c, * ldmisc.c, * pe-dll.c,
631         * emultempl/sh64elf.em: Replace use of of %I, %R, %S and %T in
632         format strings passed to einfo and friends by %pI, %pR, %pS and %pT.
633
634 2018-02-19  Alan Modra  <amodra@gmail.com>
635
636         * ldmisc.c (vfinfo): Handle %pA and %pB in place of %A and %B.
637         * ldcref.c: Update all messages using %A and %B.
638         * ldexp.c: Likewise.
639         * ldlang.c: Likewise.
640         * ldmain.c: Likewise.
641         * ldmisc.c: Likewise.
642         * pe-dll.c: Likewise.
643         * plugin.c: Likewise.
644         * emultempl/beos.em: Likewise.
645         * emultempl/cr16elf.em: Likewise.
646         * emultempl/elf32.em: Likewise.
647         * emultempl/m68kcoff.em: Likewise.
648         * emultempl/m68kelf.em: Likewise.
649         * emultempl/mmo.em: Likewise.
650         * emultempl/nds32elf.em: Likewise.
651         * emultempl/pe.em: Likewise.
652         * emultempl/pep.em: Likewise.
653         * emultempl/spuelf.em: Likewise.
654         * emultempl/sunos.em: Likewise.
655         * emultempl/xtensaelf.em: Likewise.
656
657 2018-02-19  H.J. Lu  <hongjiu.lu@intel.com>
658
659         PR ld/22845
660         * testsuite/ld-elf/frame.exp: Skip if -shared isn't supported.
661         Add tests for "-z noseparate-code" and "-z separate-code".
662         Remove unsupported -shared check.
663
664 2018-02-17  H.J. Lu  <hongjiu.lu@intel.com>
665
666         PR ld/22845
667         * testsuite/ld-elf/ehdr_start.d: Pass --build-id to ld.
668
669 2018-02-17  H.J. Lu  <hongjiu.lu@intel.com>
670
671         PR ld/22845
672         * testsuite/ld-elf/binutils.exp (tls_opts): Add tests for
673         "-z noseparate-code" and "-z separate-code".
674
675 2018-02-17  H.J. Lu  <hongjiu.lu@intel.com>
676
677         PR ld/22845
678         * ld-elf/eh4.d: Pass -z max-page-size=0x200000 -z noseparate-code
679         to ld.
680
681 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
682
683         * testsuite/ld-x86-64/bnd-branch-1-now.d: Add  -z
684         max-page-size=0x200000 -z noseparate-code.
685         * testsuite/ld-x86-64/bnd-ifunc-1-now.d: Likewise.
686         * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise.
687         * testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise.
688         * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise.
689         * testsuite/ld-x86-64/bnd-plt-1.d: Likewise.
690         * testsuite/ld-x86-64/ibt-plt-1-x32.d: Likewise.
691         * testsuite/ld-x86-64/ibt-plt-1.d: Likewise.
692         * testsuite/ld-x86-64/ibt-plt-2a-x32.d: Likewise.
693         * testsuite/ld-x86-64/ibt-plt-2a.d: Likewise.
694         * testsuite/ld-x86-64/ibt-plt-2b-x32.d: Likewise.
695         * testsuite/ld-x86-64/ibt-plt-2b.d: Likewise.
696         * testsuite/ld-x86-64/ibt-plt-2c-x32.d: Likewise.
697         * testsuite/ld-x86-64/ibt-plt-2c.d: Likewise.
698         * testsuite/ld-x86-64/ibt-plt-2d-x32.d: Likewise.
699         * testsuite/ld-x86-64/ibt-plt-2d.d: Likewise.
700         * testsuite/ld-x86-64/ibt-plt-3a-x32.d: Likewise.
701         * testsuite/ld-x86-64/ibt-plt-3a.d: Likewise.
702         * testsuite/ld-x86-64/ibt-plt-3b-x32.d: Likewise.
703         * testsuite/ld-x86-64/ibt-plt-3b.d: Likewise.
704         * testsuite/ld-x86-64/ibt-plt-3c-x32.d: Likewise.
705         * testsuite/ld-x86-64/ibt-plt-3c.d: Likewise.
706         * testsuite/ld-x86-64/ibt-plt-3d-x32.d: Likewise.
707         * testsuite/ld-x86-64/ibt-plt-3d.d: Likewise.
708         * testsuite/ld-x86-64/load1a.d: Likewise.
709         * testsuite/ld-x86-64/load1b.d: Likewise.
710         * testsuite/ld-x86-64/load1c.d: Likewise.
711         * testsuite/ld-x86-64/load1d.d: Likewise.
712         * testsuite/ld-x86-64/pie3.d: Likewise.
713         * testsuite/ld-x86-64/pr14207.d: Likewise.
714         * testsuite/ld-x86-64/pr17618.d: Likewise.
715         * testsuite/ld-x86-64/pr19162.d: Likewise.
716         * testsuite/ld-x86-64/pr19636-2d.d: Likewise.
717         * testsuite/ld-x86-64/pr19636-2l.d: Likewise.
718         * testsuite/ld-x86-64/pr20253-1b.d: Likewise.
719         * testsuite/ld-x86-64/pr20253-1d.d: Likewise.
720         * testsuite/ld-x86-64/pr20253-1f.d: Likewise.
721         * testsuite/ld-x86-64/pr20253-1h.d: Likewise.
722         * testsuite/ld-x86-64/pr20253-1j.d: Likewise.
723         * testsuite/ld-x86-64/pr20253-1l.d: Likewise.
724         * testsuite/ld-x86-64/pr20830a-now.d: Likewise.
725         * testsuite/ld-x86-64/pr20830a.d: Likewise.
726         * testsuite/ld-x86-64/pr20830b-now.d: Likewise.
727         * testsuite/ld-x86-64/pr20830b.d: Likewise.
728         * testsuite/ld-x86-64/pr21038a-now.d: Likewise.
729         * testsuite/ld-x86-64/pr21038a.d: Likewise.
730         * testsuite/ld-x86-64/pr21038b-now.d: Likewise.
731         * testsuite/ld-x86-64/pr21038b.d: Likewise.
732         * testsuite/ld-x86-64/pr21038c-now.d: Likewise.
733         * testsuite/ld-x86-64/pr21038c.d: Likewise.
734
735 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
736
737         * testsuite/ld-x86-64/bnd-ifunc-1.d: Updated.
738         * testsuite/ld-x86-64/ilp32-4.d: Likewise.
739
740 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
741
742         * testsuite/ld-x86-64/mpx.exp: Add -z max-page-size=0x200000
743         -z noseparate-code.
744
745 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
746
747         * testsuite/ld-x86-64/x86-64.exp: Add -z noseparate-code
748         -z max-page-size=0x200000, excluding NaCl target.
749
750 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
751
752         * testsuite/ld-ifunc/ifunc-2-i386-now.d: Likewise.
753         * testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise.
754         * testsuite/ld-ifunc/ifunc-2-local-x86-64.d: Likewise.
755         * testsuite/ld-ifunc/ifunc-21-i386.d: Likewise.
756         * testsuite/ld-ifunc/ifunc-22-i386.d: Likewise.
757         * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise.
758         * testsuite/ld-ifunc/pr17154-i386.d: Likewise.
759
760 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
761
762         * testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d: Add
763          -z max-page-size=0x200000 -z noseparate-code.
764         * testsuite/ld-ifunc/ifunc-2-x86-64-now.d: Likewise.
765         * testsuite/ld-ifunc/ifunc-2-x86-64.d: Likewise.
766         * testsuite/ld-ifunc/ifunc-21-x86-64.d: Likewise.
767         * testsuite/ld-ifunc/ifunc-22-x86-64.d: Likewise.
768         * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise.
769         * testsuite/ld-ifunc/pr17154-x86-64.d: Likewise.
770
771 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
772
773         * testsuite/ld-ifunc/ifunc-1-local-x86.d: Updated for i386.
774         * testsuite/ld-ifunc/ifunc-1-x86.d: Likewise.
775         * testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise.
776
777 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
778
779         * testsuite/ld-ifunc/ifunc-1-local-x86.d: Updated.
780         * testsuite/ld-ifunc/ifunc-1-x86.d: Likewise.
781         * testsuite/ld-ifunc/ifunc-3a-x86.d: Likewise.
782
783 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
784
785         * testsuite/ld-i386/ibt-plt-1.d: Add -z noseparate-code.
786         * testsuite/ld-i386/ibt-plt-2a.d: Likewise.
787         * testsuite/ld-i386/ibt-plt-2b.d: Likewise.
788         * testsuite/ld-i386/ibt-plt-2c.d: Likewise.
789         * testsuite/ld-i386/ibt-plt-2d.d: Likewise.
790         * testsuite/ld-i386/ibt-plt-3a.d: Likewise.
791         * testsuite/ld-i386/ibt-plt-3b.d: Likewise.
792         * testsuite/ld-i386/ibt-plt-3c.d: Likewise.
793         * testsuite/ld-i386/ibt-plt-3d.d: Likewise.
794         * testsuite/ld-i386/load1.d: Likewise.
795         * testsuite/ld-i386/pie1.d: Likewise.
796         * testsuite/ld-i386/pr20244-1a.d: Likewise.
797         * testsuite/ld-i386/pr20244-1b.d: Likewise.
798         * testsuite/ld-i386/pr20244-2a.d: Likewise.
799         * testsuite/ld-i386/pr20244-2b.d: Likewise.
800         * testsuite/ld-i386/pr20244-2c.d: Likewise.
801         * testsuite/ld-i386/pr20244-4a.d: Likewise.
802         * testsuite/ld-i386/pr20244-4b.d: Likewise.
803         * testsuite/ld-i386/pr20830.d: Likewise.
804
805 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
806
807         * testsuite/ld-i386/pr19636-1a.d: Updated.
808         * testsuite/ld-i386/pr19636-1b.d: Likewise.
809         * testsuite/ld-i386/pr19636-1j.d: Likewise.
810         * testsuite/ld-i386/pr19636-1k.d: Likewise.
811         * testsuite/ld-i386/pr19636-2a.d: Likewise.
812         * testsuite/ld-i386/pr19636-2b.d: Likewise.
813
814 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
815
816         * testsuite/ld-i386/i386.exp: Add -z noseparate-code.
817
818 2018-02-16  H.J. Lu  <hongjiu.lu@intel.com>
819
820         * testsuite/ld-elf/pr19162.d: Add -z noseparate-code.
821         * testsuite/ld-elf/textaddr1.d: Likewise.
822         * testsuite/ld-elf/textaddr2.d: Likewise.
823         * testsuite/ld-elf/textaddr4.d: Likewise.
824         * testsuite/ld-elf/textaddr6.d: Likewise.
825
826 2018-02-15  Jim Wilson  <jimw@sifive.com>
827
828         * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Run pcrel-lo-addend test.
829         * testsuite/ld-riscv-elf/pcrel-lo-addend.d: New.
830         * testsuite/ld-riscv-elf/pcrel-lo-addend.s: New.
831
832 2018-02-14  H.J. Lu  <hongjiu.lu@intel.com>
833
834         PR ld/22842
835         * testsuite/ld-i386/i386.exp: Run PR ld/22842 tests.
836         * testsuite/ld-x86-64/x86-64.exp: Likewise.
837         * testsuite/ld-i386/pr22842a.c: New file.
838         * testsuite/ld-i386/pr22842b.S: Likewise.
839         * testsuite/ld-x86-64/pr22842a.c: Likewise.
840         * testsuite/ld-x86-64/pr22842a.rd: Likewise.
841         * testsuite/ld-x86-64/pr22842b.S: Likewise.
842         * testsuite/ld-x86-64/pr22842b.rd: Likewise.
843
844 2018-02-14  Maciej W. Rozycki  <macro@mips.com>
845
846         * ldlex.h (ldlex_command): Remove prototype.
847
848 2018-02-13  H.J. Lu  <hongjiu.lu@intel.com>
849
850         * testsuite/ld-x86-64/x86-64.exp: Replace pr22393-2a.so and
851         pr22393-2a-now.so with pr22393-3a.so and pr22393-3a-now.so.
852
853 2018-02-14  H.J. Lu  <hongjiu.lu@intel.com>
854
855         PR 22836
856         * testsuite/ld-elf/pr22836-1.s: New file.
857         * testsuite/ld-elf/pr22836-1a.d: Likewise.
858         * testsuite/ld-elf/pr22836-1b.d: Likewise.
859
860 2018-02-13  H.J. Lu  <hongjiu.lu@intel.com>
861
862         PR gas/22791
863         * testsuite/ld-x86-64/mpx1c.rd: Updated.
864         * testsuite/ld-x86-64/pr22791-1.err: New file.
865         * testsuite/ld-x86-64/pr22791-1a.c: Likewise.
866         * testsuite/ld-x86-64/pr22791-1b.s: Likewise.
867         * testsuite/ld-x86-64/pr22791-2.rd: Likewise.
868         * testsuite/ld-x86-64/pr22791-2a.s: Likewise.
869         * testsuite/ld-x86-64/pr22791-2b.c: Likewise.
870         * testsuite/ld-x86-64/pr22791-2c.s: Likewise.
871         * testsuite/ld-x86-64/x86-64.exp: Run PR ld/22791 tests.
872
873 2018-02-13  Alan Modra  <amodra@gmail.com>
874
875         PR 22836
876         * testsuite/ld-elf/pr22836-2.d,
877         * testsuite/ld-elf/pr22836-2.s: New test.
878
879 2018-02-13  Alan Modra  <amodra@gmail.com>
880
881         * testsuite/ld-x86-64/pr14207.d: Adjust relro p_filesz.
882
883 2018-02-07  Alan Modra  <amodra@gmail.com>
884
885         Revert 2018-01-17  Alan Modra  <amodra@gmail.com>
886         * emultempl/ppc32elf.em: Remove --speculate-indirect-jumps support.
887         * emultempl/ppc64elf.em: Likesize
888         * ld.texinfo: Likewise
889         * testsuite/ld-powerpc/elfv2exe.d,
890         * testsuite/ld-powerpc/elfv2so.d,
891         * testsuite/ld-powerpc/relbrlt.d,
892         * testsuite/ld-powerpc/powerpc.exp: Likewise.
893
894 2018-02-06  Eric Botcazou  <ebotcazou@adacore.com>
895
896         * testsuite/ld-elf/tls.exp (AFLAGS_PIC): Define on SPARC.
897         (pr22263-1): Pass AFLAGS_PIC to the assembler.
898         * testsuite/ld-sparc/tlspie32.s: Add test for other 3 transitions.
899         * testsuite/ld-sparc/tlspie32.dd: Adjust to above.
900         * testsuite/ld-sparc/tlspie64.s: Add test for other 3 transitions.
901         * testsuite/ld-sparc/tlspie64.dd: Adjust to above.
902
903 2018-02-05  Renlin Li  <renlin.li@arm.com>
904
905         PR ld/22764
906         * testsuite/ld-aarch64/emit-relocs-258.s: Define symbol as an address.
907         * testsuite/ld-aarch64/emit-relocs-259.s: Likewise.
908         * testsuite/ld-aarch64/pr22764.s: New.
909         * testsuite/ld-aarch64/pr22764.d: New.
910
911 2018-02-05  H.J. Lu  <hongjiu.lu@intel.com>
912
913         PR ld/22782
914         * testsuite/ld-i386/discarded1.s: Replace mov with div.
915         * testsuite/ld-x86-64/discarded1.s: Likewise.
916         * testsuite/ld-i386/i386.exp: Run pr22782.
917         * testsuite/ld-i386/load1-nacl.d: Updated for removing
918         _GLOBAL_OFFSET_TABLE_ from output.
919         * testsuite/ld-i386/load1.d: Likewise.
920         * testsuite/ld-x86-64/load1a-nacl.d: Likewise.
921         * testsuite/ld-x86-64/load1a.d: Likewise.
922         * testsuite/ld-x86-64/load1b-nacl.d: Likewise.
923         * testsuite/ld-x86-64/load1b.d: Likewise.
924         * testsuite/ld-i386/pr22782.d: New file.
925         * testsuite/ld-i386/pr22782.s: Likewise.
926         * testsuite/ld-x86-64/pr22782.s: Likewise.
927         * testsuite/ld-x86-64/pr22782a.d: Likewise.
928         * testsuite/ld-x86-64/pr22782b.d: Likewise.
929         * testsuite/ld-x86-64/x86-64.exp: Run pr22782a and pr22782b.
930
931 2018-02-05  Nick Clifton  <nickc@redhat.com>
932
933         * po/pt_BR.po: Updated Brazilian Portuguese translation.
934
935 2018-02-04  H.J. Lu  <hongjiu.lu@intel.com>
936
937         * testsuite/ld-i386/lea1d.d: Replace -Sw with -SW.
938         * testsuite/ld-i386/lea1e.d: Likewise.
939         * testsuite/ld-i386/lea1f.d: Likewise.
940         * testsuite/ld-x86-64/lea1g.d: Likewise.
941         * testsuite/ld-x86-64/lea1h.d: Likewise.
942         * testsuite/ld-x86-64/lea1i.d: Likewise.
943         * testsuite/ld-x86-64/lea1j.d: Likewise.
944         * testsuite/ld-x86-64/lea1k.d: Likewise.
945         * testsuite/ld-x86-64/lea1l.d: Likewise.
946
947 2018-02-03  Nick Clifton  <nickc@redhat.com>
948
949         PR 22762
950         * scripttempl/pe.sc: Remove PROVIDE()s from __CTOR_LIST__ and
951         __DTOR_LIST__ symbols.  Add a comment explaining why this is
952         necessary.
953         * scripttemp/pep.sc: Likewise.
954         * ld.texinfo (PROVIDE): Add a note about the effect of common
955         symbols.
956
957 2018-02-03  Sandra Loosemore  <sandra@codesourcery.com>
958
959         * emulparams/nios2elf.sh (GENERATE_SHLIB_SCRIPT): Don't set.
960
961 2018-02-02  Maciej W. Rozycki  <macro@mips.com>
962
963         * testsuite/ld-elf/shared.exp: Add $AFLAGS_PIC throughout to PIC
964         assembly builds where missing and remove `tic6x-*-*' XFAIL
965         markings accordingly.
966
967 2018-02-01  Simon Marchi  <simon.marchi@ericsson.com>
968
969         * ldexp.c (fold_name, exp_fold_tree_1): Avoid pointer arithmetic
970         on NULL pointer.
971
972 2018-01-31  H.J. Lu  <hongjiu.lu@intel.com>
973
974         * testsuite/ld-elf/pr21964-5.c (my_var): Mark as used.
975
976 2018-01-31  Maciej W. Rozycki  <macro@mips.com>
977
978         * testsuite/ld-elf/shared.exp: Fix a typo s/scrip/script/.
979
980 2018-01-31  Maciej W. Rozycki  <macro@mips.com>
981
982         * testsuite/ld-elf/comm-data.exp: Pass `-call_shared' to links
983         involving a shared library for `mips*vr4100*-*-elf*',
984         `mips*vr4300*-*-elf*' and `mips*vr5000*-*-elf*' targets.
985         * testsuite/ld-elf/provide-hidden.exp: Likewise.
986         * testsuite/ld-elf/shared.exp: Likewise.
987         * testsuite/ld-gc/gc.exp: Likewise.
988         * testsuite/ld-mips-elf/comm-data.exp: Likewise.
989
990 2018-01-31  Maciej W. Rozycki  <macro@mips.com>
991
992         * testsuite/ld-elf/elf.exp: Move shared library tests over to...
993         * testsuite/ld-elf/shared.exp: ... here.
994
995 2018-01-31  Michael Matz  <matz@suse.de>
996
997         * testsuite/ld-elf/pr21964-5.c: New test.
998         * testsuite/ld-elf/shared.exp: Run it.
999
1000 2018-01-31  H.J. Lu  <hongjiu.lu@intel.com>
1001
1002         PR ld/21964
1003         * testsuite/ld-elf/pr21964-4.c: New file.
1004         * testsuite/ld-elf/shared.exp: Run pr21964-4 test on Linux.
1005
1006 2018-01-30  Alan Modra  <amodra@gmail.com>
1007
1008         * testsuite/ld-gc/stop.d,
1009         * testsuite/ld-gc/stop.s: New test.
1010         * testsuite/ld-gc/gc.exp: Run it.
1011
1012 2018-01-30  Maciej W. Rozycki  <macro@mips.com>
1013
1014         PR ld/22649
1015         * testsuite/ld-elf/pr22649-2ab-mips.msg: New stderr output.
1016         * testsuite/ld-elf/pr22649-2cd-mips.msg: New stderr output.
1017         * testsuite/ld-elf/shared.exp: Use the new outputs with
1018         `mips*-*-*' targets.
1019
1020 2018-01-30  Maciej W. Rozycki  <macro@mips.com>
1021
1022         * testsuite/ld-elf/comm-data1.sd: Alternatively accept
1023         `PRC[0xff02]' in place of a regular section index.
1024         * testsuite/ld-elf/pr21703-shared.sd: Likewise `PRC[0xff01]'.
1025
1026 2018-01-29  Alan Modra  <amodra@gmail.com>
1027
1028         * testsuite/ld-elf/pr21964-3a.c: New file.
1029         * testsuite/ld-elf/pr21964-3c.c: New file.
1030         * testsuite/ld-elf/shared.exp: Run new __start/__stop testcase.
1031
1032 2018-01-29  Eric Botcazou  <ebotcazou@adacore.com>
1033
1034         * testsuite/ld-elf/shared.exp (AFLAGS_PIC): Define on SPARC.
1035         (pr22269-1): Pass AFLAGS_PIC to the assembler.
1036
1037 2018-01-29  Eric Botcazou  <ebotcazou@adacore.com>
1038
1039         * testsuite/ld-elf/pr22450.d: Remove reference to SPARC64.
1040
1041 2018-01-29  Maciej W. Rozycki  <macro@mips.com>
1042
1043         * testsuite/ld-mips-elf/comm-data.exp: Correct support for
1044         targets using non-traditional MIPS emulation or having a limited
1045         selection of ABIs available.  Don't force big endianness, use
1046         defaults.
1047
1048 2018-01-29  H.J. Lu  <hongjiu.lu@intel.com>
1049
1050         PR ld/22732
1051         * testsuite/config/default.exp (STATIC_LDFLAGS): New.  Set to
1052         "-static" if target compiler supports it.
1053         * testsuite/ld-bootstrap/bootstrap.exp: Skip static executable
1054         tests if target compiler doesn't support it.
1055         * testsuite/ld-ifunc/ifunc.exp: Likewise.
1056         * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Likewise.
1057         (run_cc_link_tests): Likewise.
1058
1059 2018-01-27  H.J. Lu  <hongjiu.lu@intel.com>
1060
1061         PR ld/22751
1062         * testsuite/config/default.exp (INT128_CFLAGS): New.
1063         * testsuite/ld-plugin/lto.exp (INT128_CFLAGS): New.
1064         Run ld/22751 tests.
1065         * testsuite/ld-plugin/pr22751.c: New file.
1066         * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Add
1067         ld trailing options.
1068
1069 2018-01-28  Alan Modra  <amodra@gmail.com>
1070
1071         PR 22751
1072         * ldlang.c (find_rescan_insertion): Look past bfds with claim_archive
1073         set.
1074
1075 2018-01-26  Maciej W. Rozycki  <macro@mips.com>
1076
1077         * emulparams/elf32mipswindiss.sh (EXTRA_EM_FILE): Set to
1078         `mipself'.
1079
1080 2018-01-25  Eric Botcazou  <ebotcazou@adacore.com>
1081
1082         * testsuite/ld-sparc/sparc.exp (32-bit: Helper shared library):
1083         Link with a version script.
1084         (32-bit: TLS -fpie): New test.
1085         (64-bit: Helper shared library): Link with a version script.
1086         (64-bit: TLS -fpie): New test.
1087         (64-bit: GOTDATA relocations): Pass -Av9 to the assembler.
1088         * testsuite/ld-sparc/tlslib.ver: New file.
1089         * testsuite/ld-sparc/tlspie32.dd: Likewise.
1090         * testsuite/ld-sparc/tlspie32.s: Likewise.
1091         * testsuite/ld-sparc/tlspie64.dd: Likewise.
1092         * testsuite/ld-sparc/tlspie64.s: Likewise.
1093         * testsuite/ld-sparc/tlssunbin32.dd: Adjust for versioned symbol.
1094         * testsuite/ld-sparc/tlssunbin32.rd: Likewise.
1095         * testsuite/ld-sparc/tlssunbin32.sd: Likewise.
1096         * testsuite/ld-sparc/tlssunbin64.dd: Likewise.
1097         * testsuite/ld-sparc/tlssunbin64.rd: Likewise.
1098         * testsuite/ld-sparc/tlssunbin64.sd: Likewise.
1099
1100 2018-01-24  Renlin Li  <renlin.li@arm.com>
1101
1102         * testsuite/ld-aarch64/aarch64-elf.exp: Run new testes.
1103         * testsuite/ld-aarch64/emit-relocs-287.s: Fix test case.
1104         * testsuite/ld-aarch64/emit-relocs-287.d: Fix expected output.
1105         * testsuite/ld-aarch64/emit-relocs-287-overflow.s: New.
1106         * testsuite/ld-aarch64/emit-relocs-287-overflow.d: New.
1107         * testsuite/ld-aarch64/emit-relocs-288.d: New.
1108         * testsuite/ld-aarch64/emit-relocs-288.s: New.
1109         * testsuite/ld-aarch64/emit-relocs-289.d: New.
1110         * testsuite/ld-aarch64/emit-relocs-289.s: New.
1111         * testsuite/ld-aarch64/emit-relocs-289-overflow.s: New.
1112         * testsuite/ld-aarch64/emit-relocs-289-overflow.d: New.
1113         * testsuite/ld-aarch64/emit-relocs-290.d: New.
1114         * testsuite/ld-aarch64/emit-relocs-290.s: New.
1115         * testsuite/ld-aarch64/emit-relocs-291.d: New.
1116         * testsuite/ld-aarch64/emit-relocs-291.s: New.
1117         * testsuite/ld-aarch64/emit-relocs-291-overflow.s: New.
1118         * testsuite/ld-aarch64/emit-relocs-291-overflow.d: New.
1119         * testsuite/ld-aarch64/emit-relocs-292.d: New.
1120         * testsuite/ld-aarch64/emit-relocs-292.s: New.
1121         * testsuite/ld-aarch64/emit-relocs-293.d: New.
1122         * testsuite/ld-aarch64/emit-relocs-293.s: New.
1123
1124 2018-01-20  H.J. Lu  <hongjiu.lu@intel.com>
1125
1126         PR ld/22721
1127         * testsuite/ld-plugin/lto.exp: Run PR ld/22721 tests.
1128         * testsuite/ld-plugin/pr22721.t: New file.
1129         * testsuite/ld-plugin/pr22721a.s: Likewise.
1130         * testsuite/ld-plugin/pr22721b.c: Likewise.
1131
1132 2018-01-18  H.J. Lu  <hongjiu.lu@intel.com>
1133
1134         * testsuite/ld-elf/group1.d: Also xfail Solaris.
1135
1136 2018-01-18  H.J. Lu  <hongjiu.lu@intel.com>
1137
1138         * testsuite/ld-elf/linkinfo1a.d: Updated for slightly different
1139         PLT/GOT order/layout for Solaris/x86 targets.
1140         * testsuite/ld-elf/linkinfo1b.d: Likewise.
1141
1142 2018-01-18  H.J. Lu  <hongjiu.lu@intel.com>
1143
1144         PR ld/22728
1145         * emultempl/solaris2.em (elf_solaris2_after_allocation): Fold
1146         into ...
1147         (elf_solaris2_before_allocation): This.
1148         (LDEMUL_AFTER_ALLOCATION): Removed.
1149
1150 2018-01-18  Alan Modra  <amodra@gmail.com>
1151
1152         * emultempl/ppc32elf.em: Support optional --plt-align arg.
1153         * emultempl/ppc64elf.em: Support negative --plt-align arg.
1154
1155 2018-01-17  Alan Modra  <amodra@gmail.com>
1156
1157         * emultempl/ppc32elf.em (params): Init new field.
1158         (OPTION_SPECULATE_INDIRECT_JUMPS): Define.
1159         (OPTION_NO_SPECULATE_INDIRECT_JUMPS): Define.
1160         (PARSE_AND_LIST_LONGOPTS): Handle new options.
1161         (PARSE_AND_LIST_ARGS_CASES): Likewise.
1162         (PARSE_AND_LIST_OPTIONS): Likewise.
1163         * emultempl/ppc64elf.em (params): Init new field.
1164         (OPTION_SPECULATE_INDIRECT_JUMPS): Define.
1165         (OPTION_NO_SPECULATE_INDIRECT_JUMPS): Define.
1166         (PARSE_AND_LIST_LONGOPTS): Handle --speculate-indirect-jumps.
1167         (PARSE_AND_LIST_OPTIONS): Likewise.
1168         (PARSE_AND_LIST_ARGS_CASES): Likewise.
1169         * ld.texinfo (--no-plt-thread-safe): Correct itemx.
1170         (--speculate-indirect-jumps): Document.
1171         * testsuite/ld-powerpc/elfv2exe.d,
1172         * testsuite/ld-powerpc/elfv2so.d,
1173         * testsuite/ld-powerpc/relbrlt.d,
1174         * testsuite/ld-powerpc/powerpc.exp: Disable plt alignment and
1175         speculation barriers on various tests.
1176
1177 2018-01-17  Alan Modra  <amodra@gmail.com>
1178
1179         * emultempl/ppc32elf.em (params): Init new field.
1180         (enum ppc32_opt): New enum to define OPTION_* values.  Add
1181         OPTION_PLT_ALIGN and OPTION_NO_PLT_ALIGN.
1182         (PARSE_AND_LIST_LONGOPTS): Handle new options.
1183         (PARSE_AND_LIST_ARGS_CASES): Likewise.
1184         (PARSE_AND_LIST_OPTIONS): Likewise.  Break up help output.
1185         * emultempl/ppc64elf.em (ppc_add_stub_section): Init alignment
1186         correctly for negative --plt-stub-align.
1187         * testsuite/ld-powerpc/elfv2exe.d,
1188         * testsuite/ld-powerpc/elfv2so.d,
1189         * testsuite/ld-powerpc/relbrlt.d,
1190         * testsuite/ld-powerpc/relbrlt.s,
1191         * testsuite/ld-powerpc/tlsexe.d,
1192         * testsuite/ld-powerpc/tlsexe.r,
1193         * testsuite/ld-powerpc/tlsexe32.d,
1194         * testsuite/ld-powerpc/tlsexe32.g,
1195         * testsuite/ld-powerpc/tlsexe32.r,
1196         * testsuite/ld-powerpc/tlsexetoc.d,
1197         * testsuite/ld-powerpc/tlsexetoc.r,
1198         * testsuite/ld-powerpc/tlsopt5_32.d,
1199         * testsuite/ld-powerpc/tlsso.d,
1200         * testsuite/ld-powerpc/tlstocso.d: Update for changed stub order.
1201
1202 2018-01-16  Nick Clifton  <nickc@redhat.com>
1203
1204         * po/pt_BR.po: Updated Brazilian Portuguese translation.
1205
1206 2018-01-15  Nick Clifton  <nickc@redhat.com>
1207
1208         * po/uk.po: Updated Ukranian translation.
1209
1210 2018-01-13  Nick Clifton  <nickc@redhat.com>
1211
1212         * po/ld.pot: Regenerated.
1213
1214 2018-01-13  Nick Clifton  <nickc@redhat.com>
1215
1216         * configure: Regenerate.
1217
1218 2018-01-13  Nick Clifton  <nickc@redhat.com>
1219
1220         2.30 branch created.
1221         * NEWS: Add marker for 2.30.
1222
1223 2018-01-12  Alan Modra  <amodra@gmail.com>
1224
1225         * testsuite/ld-elf/elf.exp: xfail "pr22374 function pointer
1226         initialization" for currently failing targets.
1227
1228 2018-01-12  Alan Modra  <amodra@gmail.com>
1229
1230         PR ld/22649
1231         * testsuite/ld-elf/pr22649.msg: Allow other messages.
1232         * testsuite/ld-elf/shared.exp: Check that --gc-sections is
1233         supported before running ld/22649 tests.
1234
1235 2018-01-12  Nick Clifton  <nickc@redhat.com>
1236
1237         * emultempl/elf32.em (_handle_option): Add support for "-z undefs"
1238         as the opposite of "-z defs".
1239         * ld.texinfo: Document the new option.  Update the description of
1240         the -z defs option to make it clear that it does generate an error
1241         if an undefined symbol reference is found in an object file whilst
1242         creating a shared library.
1243         * NEWS: Document this new feature.
1244
1245 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1246
1247         * testsuite/ld-elf/pr22393-2a.rd: Replace "-z textonly" with
1248         "-z separate-code".
1249         * testsuite/ld-elf/pr22393-2b.rd: Likewise.
1250         * testsuite/ld-x86-64/pr22393-3a.rd: Likewise.
1251         * testsuite/ld-x86-64/pr22393-3b.rd: Likewise.
1252
1253 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1254
1255         PR ld/22393
1256         * testsuite/ld-x86-64/pr22393-3a.c: New file.
1257         * testsuite/ld-x86-64/pr22393-3a.rd: Likewise.
1258         * testsuite/ld-x86-64/pr22393-3b.c: Likewise.
1259         * testsuite/ld-x86-64/pr22393-3b.rd: Likewise.
1260         * testsuite/ld-x86-64/x86-64.exp: Run tests for -z separate-code
1261         -z max-page-size=0x1000.
1262
1263 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1264
1265         PR ld/22393
1266         * testsuite/ld-elf/pr16322.d: Add -z noseparate-code.
1267         * testsuite/ld-elf/pr22393-1.s: New file.
1268         * testsuite/ld-elf/pr22393-1a.d: Likewise.
1269         * testsuite/ld-elf/pr22393-1b.d: Likewise.
1270         * testsuite/ld-elf/pr22393-1c.d: Likewise.
1271         * testsuite/ld-elf/pr22393-1d.d: Likewise.
1272         * testsuite/ld-elf/pr22393-1e.d: Likewise.
1273         * testsuite/ld-elf/pr22393-1f.d: Likewise.
1274         * testsuite/ld-elf/pr22393-2a.c: Likewise.
1275         * testsuite/ld-elf/pr22393-2a.rd: Likewise.
1276         * testsuite/ld-elf/pr22393-2b.c: Likewise.
1277         * testsuite/ld-elf/pr22393-2b.rd: Likewise.
1278         * testsuite/ld-elf/shared.exp: Run tests for -z separate-code.
1279
1280 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1281
1282         PR ld/22393
1283         * NEWS: Mention "-z separate-code".
1284         * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Get
1285         builtin linker scripts and return linker scripts from disk for
1286         "-z separate-code".
1287         (gld${EMULATION_NAME}_handle_option): Handle "-z separate-code"
1288         and "-z noseparate-code".
1289         * genscripts.sh: Generate linker scripts for "-z separate-code".
1290         (LD_FLAG): Set to *textonly for "-z separate-code".
1291         * ld.texinfo: Document "-z separate-code".
1292         * lexsup.c (elf_shlib_list_options): Add linker help messsages
1293         for "-z separate-code" and "-z noseparate-code".
1294         * scripttempl/elf.sc (SEPARATE_TEXT): New
1295         (TEXT_SEGMENT_ALIGN): Likewise.
1296         Use ${TEXT_SEGMENT_ALIGN} to align and pad text segment to
1297         ${MAXPAGESIZE}.
1298
1299 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1300
1301         PR ld/22649
1302         * testsuite/ld-elf/pr22649-1.s: New file.
1303         * testsuite/ld-elf/pr22649-2a.s: Likewise.
1304         * testsuite/ld-elf/pr22649-2b.s: Likewise.
1305         * testsuite/ld-elf/pr22649.msg: Likewise.
1306         * testsuite/ld-elf/shared.exp: Run ld/22649 tests.
1307
1308 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1309
1310         PR ld/22677
1311         * scripttempl/elf.sc (PREINIT_ARRAY): New.
1312         Don't add .preinit_array for ld -r.
1313         * testsuite/ld-elf/pr22677.d: New file.
1314         * testsuite/ld-elf/pr22677.s: Likewise.
1315
1316 2018-01-11  Andrew Burgess  <andrew.burgess@embecosm.com>
1317
1318         * ldexp.h (union etree_union): Remove defsym field.
1319         * ldexp.c (exp_assop): Remove defsym parameter, and use of defsym
1320         parameter.
1321         (exp_assign): Remove passing of defsym parameter.
1322         (exp_defsym): Likewise.
1323         (exp_provide): Likewise.
1324
1325 2018-01-11  Andrew Burgess  <andrew.burgess@embecosm.com>
1326
1327         * ldexp.c (exp_fold_tree_1): Rework condition underwhich provide
1328         nodes are ignored in the tree walk, and move the location at which
1329         we change provide nodes into provided nodes.
1330         (exp_init_os): Add etree_provided.
1331         * testsuite/ld-scripts/provide-6.d: New file.
1332         * testsuite/ld-scripts/provide-6.t: New file.
1333         * testsuite/ld-scripts/provide-7.d: New file.
1334         * testsuite/ld-scripts/provide-7.t: New file.
1335         * testsuite/ld-scripts/provide-8.d: New file.
1336         * testsuite/ld-scripts/provide-8.t: New file.
1337
1338 2018-01-11  Andrew Burgess  <andrew.burgess@embecosm.com>
1339
1340         * testsuite/ld-scripts/provide-3.d: Add xfail directive.
1341         * testsuite/ld-scripts/provide-4.d: Use new map file name.
1342         * testsuite/ld-scripts/provide-5.d: Use new map file name.
1343         * testsuite/ld-scripts/provide-4-map.d: Renamed to...
1344         * testsuite/ld-scripts/provide-4.map: ...this.
1345         * testsuite/ld-scripts/provide-5-map.d: Renamed to...
1346         * testsuite/ld-scripts/provide-5.map: ...this.
1347         * testsuite/ld-scripts/provide.exp: Move xfail into provide-3.d
1348         file, and run tests in a loop.
1349
1350 2018-01-11  Andrew Burgess  <andrew.burgess@embecosm.com>
1351
1352         * ldexp.c (exp_print_tree): Use '=' instead of ',' when printing
1353         PROVIDE statements.
1354         * testsuite/ld-scripts/provide-4.map: Update expected output.
1355         * testsuite/ld-scripts/provide-5.map: Likewise.
1356
1357 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
1358
1359         PR ld/22696
1360         * scripttempl/elf.sc: Fix the order of SHLIB_RODATA_ADDR.
1361
1362 2018-01-09  Jim Wilson  <jimw@sifive.com>
1363
1364         * testsuite/ld-elf/eh-frame-hdr.d (#xfail): Delete
1365         (#alltargets): Renamed from #target.  Add shared.
1366         * testsuite/lib/ld-lib.exp (run_dump_test): Document shared target.
1367         Document alltargets option.  Add support for alltargets option.
1368         (istarget): Add support for shared target.
1369
1370 2018-01-08  Jim Wilson  <jimw@sifive.com>
1371
1372         * testsuite/ld-riscv-elf/c-lui.d: Don't use -shared.  Check for _start
1373         instead of .text.
1374         * testsuite/ld-riscv-elf/c-lui.s: Add _start label.
1375         * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Before __global_pointer$
1376         tests, add call to check_shared_lib_support.
1377
1378 2018-01-05  Jim Wilson  <jimw@sifive.com>
1379
1380         * testsuite/ld-riscv-elf/disas-jalr.d: New.
1381         * testsuite/ld-riscv-elf/disas-jalr.s: New.
1382         * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Run new testcase.
1383
1384         * emulparams/elf32lriscv-defs.sh (GENERATE_SHLIB_SCRIPT): Move inside
1385         case on $target, and don't set for riscv*-elf targets.
1386         (GENERATE_PIE_SCRIPT): Likewise.
1387
1388 2018-01-03  Alan Modra  <amodra@gmail.com>
1389
1390         Update year range in copyright notice of all files.
1391
1392 For older changes see ChangeLog-2017
1393 \f
1394 Copyright (C) 2018 Free Software Foundation, Inc.
1395
1396 Copying and distribution of this file, with or without modification,
1397 are permitted in any medium without royalty provided the copyright
1398 notice and this notice are preserved.
1399
1400 Local Variables:
1401 mode: change-log
1402 left-margin: 8
1403 fill-column: 74
1404 version-control: never
1405 End: