Make __start/__stop symbols dynamic and add testcase
[deliverable/binutils-gdb.git] / ld / ChangeLog
1 2018-01-29 Alan Modra <amodra@gmail.com>
2
3 * testsuite/ld-elf/pr21964-3a.c: New file.
4 * testsuite/ld-elf/pr21964-3c.c: New file.
5 * testsuite/ld-elf/shared.exp: Run new __start/__stop testcase.
6
7 2018-01-29 Eric Botcazou <ebotcazou@adacore.com>
8
9 * testsuite/ld-elf/shared.exp (AFLAGS_PIC): Define on SPARC.
10 (pr22269-1): Pass AFLAGS_PIC to the assembler.
11
12 2018-01-29 Eric Botcazou <ebotcazou@adacore.com>
13
14 * testsuite/ld-elf/pr22450.d: Remove reference to SPARC64.
15
16 2018-01-29 Maciej W. Rozycki <macro@mips.com>
17
18 * testsuite/ld-mips-elf/comm-data.exp: Correct support for
19 targets using non-traditional MIPS emulation or having a limited
20 selection of ABIs available. Don't force big endianness, use
21 defaults.
22
23 2018-01-29 H.J. Lu <hongjiu.lu@intel.com>
24
25 PR ld/22732
26 * testsuite/config/default.exp (STATIC_LDFLAGS): New. Set to
27 "-static" if target compiler supports it.
28 * testsuite/ld-bootstrap/bootstrap.exp: Skip static executable
29 tests if target compiler doesn't support it.
30 * testsuite/ld-ifunc/ifunc.exp: Likewise.
31 * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Likewise.
32 (run_cc_link_tests): Likewise.
33
34 2018-01-27 H.J. Lu <hongjiu.lu@intel.com>
35
36 PR ld/22751
37 * testsuite/config/default.exp (INT128_CFLAGS): New.
38 * testsuite/ld-plugin/lto.exp (INT128_CFLAGS): New.
39 Run ld/22751 tests.
40 * testsuite/ld-plugin/pr22751.c: New file.
41 * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Add
42 ld trailing options.
43
44 2018-01-28 Alan Modra <amodra@gmail.com>
45
46 PR 22751
47 * ldlang.c (find_rescan_insertion): Look past bfds with claim_archive
48 set.
49
50 2018-01-26 Maciej W. Rozycki <macro@mips.com>
51
52 * emulparams/elf32mipswindiss.sh (EXTRA_EM_FILE): Set to
53 `mipself'.
54
55 2018-01-25 Eric Botcazou <ebotcazou@adacore.com>
56
57 * testsuite/ld-sparc/sparc.exp (32-bit: Helper shared library):
58 Link with a version script.
59 (32-bit: TLS -fpie): New test.
60 (64-bit: Helper shared library): Link with a version script.
61 (64-bit: TLS -fpie): New test.
62 (64-bit: GOTDATA relocations): Pass -Av9 to the assembler.
63 * testsuite/ld-sparc/tlslib.ver: New file.
64 * testsuite/ld-sparc/tlspie32.dd: Likewise.
65 * testsuite/ld-sparc/tlspie32.s: Likewise.
66 * testsuite/ld-sparc/tlspie64.dd: Likewise.
67 * testsuite/ld-sparc/tlspie64.s: Likewise.
68 * testsuite/ld-sparc/tlssunbin32.dd: Adjust for versioned symbol.
69 * testsuite/ld-sparc/tlssunbin32.rd: Likewise.
70 * testsuite/ld-sparc/tlssunbin32.sd: Likewise.
71 * testsuite/ld-sparc/tlssunbin64.dd: Likewise.
72 * testsuite/ld-sparc/tlssunbin64.rd: Likewise.
73 * testsuite/ld-sparc/tlssunbin64.sd: Likewise.
74
75 2018-01-24 Renlin Li <renlin.li@arm.com>
76
77 * testsuite/ld-aarch64/aarch64-elf.exp: Run new testes.
78 * testsuite/ld-aarch64/emit-relocs-287.s: Fix test case.
79 * testsuite/ld-aarch64/emit-relocs-287.d: Fix expected output.
80 * testsuite/ld-aarch64/emit-relocs-287-overflow.s: New.
81 * testsuite/ld-aarch64/emit-relocs-287-overflow.d: New.
82 * testsuite/ld-aarch64/emit-relocs-288.d: New.
83 * testsuite/ld-aarch64/emit-relocs-288.s: New.
84 * testsuite/ld-aarch64/emit-relocs-289.d: New.
85 * testsuite/ld-aarch64/emit-relocs-289.s: New.
86 * testsuite/ld-aarch64/emit-relocs-289-overflow.s: New.
87 * testsuite/ld-aarch64/emit-relocs-289-overflow.d: New.
88 * testsuite/ld-aarch64/emit-relocs-290.d: New.
89 * testsuite/ld-aarch64/emit-relocs-290.s: New.
90 * testsuite/ld-aarch64/emit-relocs-291.d: New.
91 * testsuite/ld-aarch64/emit-relocs-291.s: New.
92 * testsuite/ld-aarch64/emit-relocs-291-overflow.s: New.
93 * testsuite/ld-aarch64/emit-relocs-291-overflow.d: New.
94 * testsuite/ld-aarch64/emit-relocs-292.d: New.
95 * testsuite/ld-aarch64/emit-relocs-292.s: New.
96 * testsuite/ld-aarch64/emit-relocs-293.d: New.
97 * testsuite/ld-aarch64/emit-relocs-293.s: New.
98
99 2018-01-20 H.J. Lu <hongjiu.lu@intel.com>
100
101 PR ld/22721
102 * testsuite/ld-plugin/lto.exp: Run PR ld/22721 tests.
103 * testsuite/ld-plugin/pr22721.t: New file.
104 * testsuite/ld-plugin/pr22721a.s: Likewise.
105 * testsuite/ld-plugin/pr22721b.c: Likewise.
106
107 2018-01-18 H.J. Lu <hongjiu.lu@intel.com>
108
109 * testsuite/ld-elf/group1.d: Also xfail Solaris.
110
111 2018-01-18 H.J. Lu <hongjiu.lu@intel.com>
112
113 * testsuite/ld-elf/linkinfo1a.d: Updated for slightly different
114 PLT/GOT order/layout for Solaris/x86 targets.
115 * testsuite/ld-elf/linkinfo1b.d: Likewise.
116
117 2018-01-18 H.J. Lu <hongjiu.lu@intel.com>
118
119 PR ld/22728
120 * emultempl/solaris2.em (elf_solaris2_after_allocation): Fold
121 into ...
122 (elf_solaris2_before_allocation): This.
123 (LDEMUL_AFTER_ALLOCATION): Removed.
124
125 2018-01-18 Alan Modra <amodra@gmail.com>
126
127 * emultempl/ppc32elf.em: Support optional --plt-align arg.
128 * emultempl/ppc64elf.em: Support negative --plt-align arg.
129
130 2018-01-17 Alan Modra <amodra@gmail.com>
131
132 * emultempl/ppc32elf.em (params): Init new field.
133 (OPTION_SPECULATE_INDIRECT_JUMPS): Define.
134 (OPTION_NO_SPECULATE_INDIRECT_JUMPS): Define.
135 (PARSE_AND_LIST_LONGOPTS): Handle new options.
136 (PARSE_AND_LIST_ARGS_CASES): Likewise.
137 (PARSE_AND_LIST_OPTIONS): Likewise.
138 * emultempl/ppc64elf.em (params): Init new field.
139 (OPTION_SPECULATE_INDIRECT_JUMPS): Define.
140 (OPTION_NO_SPECULATE_INDIRECT_JUMPS): Define.
141 (PARSE_AND_LIST_LONGOPTS): Handle --speculate-indirect-jumps.
142 (PARSE_AND_LIST_OPTIONS): Likewise.
143 (PARSE_AND_LIST_ARGS_CASES): Likewise.
144 * ld.texinfo (--no-plt-thread-safe): Correct itemx.
145 (--speculate-indirect-jumps): Document.
146 * testsuite/ld-powerpc/elfv2exe.d,
147 * testsuite/ld-powerpc/elfv2so.d,
148 * testsuite/ld-powerpc/relbrlt.d,
149 * testsuite/ld-powerpc/powerpc.exp: Disable plt alignment and
150 speculation barriers on various tests.
151
152 2018-01-17 Alan Modra <amodra@gmail.com>
153
154 * emultempl/ppc32elf.em (params): Init new field.
155 (enum ppc32_opt): New enum to define OPTION_* values. Add
156 OPTION_PLT_ALIGN and OPTION_NO_PLT_ALIGN.
157 (PARSE_AND_LIST_LONGOPTS): Handle new options.
158 (PARSE_AND_LIST_ARGS_CASES): Likewise.
159 (PARSE_AND_LIST_OPTIONS): Likewise. Break up help output.
160 * emultempl/ppc64elf.em (ppc_add_stub_section): Init alignment
161 correctly for negative --plt-stub-align.
162 * testsuite/ld-powerpc/elfv2exe.d,
163 * testsuite/ld-powerpc/elfv2so.d,
164 * testsuite/ld-powerpc/relbrlt.d,
165 * testsuite/ld-powerpc/relbrlt.s,
166 * testsuite/ld-powerpc/tlsexe.d,
167 * testsuite/ld-powerpc/tlsexe.r,
168 * testsuite/ld-powerpc/tlsexe32.d,
169 * testsuite/ld-powerpc/tlsexe32.g,
170 * testsuite/ld-powerpc/tlsexe32.r,
171 * testsuite/ld-powerpc/tlsexetoc.d,
172 * testsuite/ld-powerpc/tlsexetoc.r,
173 * testsuite/ld-powerpc/tlsopt5_32.d,
174 * testsuite/ld-powerpc/tlsso.d,
175 * testsuite/ld-powerpc/tlstocso.d: Update for changed stub order.
176
177 2018-01-16 Nick Clifton <nickc@redhat.com>
178
179 * po/pt_BR.po: Updated Brazilian Portugese translation.
180
181 2018-01-15 Nick Clifton <nickc@redhat.com>
182
183 * po/uk.po: Updated Ukranian translation.
184
185 2018-01-13 Nick Clifton <nickc@redhat.com>
186
187 * po/ld.pot: Regenerated.
188
189 2018-01-13 Nick Clifton <nickc@redhat.com>
190
191 * configure: Regenerate.
192
193 2018-01-13 Nick Clifton <nickc@redhat.com>
194
195 2.30 branch created.
196 * NEWS: Add marker for 2.30.
197
198 2018-01-12 Alan Modra <amodra@gmail.com>
199
200 * testsuite/ld-elf/elf.exp: xfail "pr22374 function pointer
201 initialization" for currently failing targets.
202
203 2018-01-12 Alan Modra <amodra@gmail.com>
204
205 PR ld/22649
206 * testsuite/ld-elf/pr22649.msg: Allow other messages.
207 * testsuite/ld-elf/shared.exp: Check that --gc-sections is
208 supported before running ld/22649 tests.
209
210 2018-01-12 Nick Clifton <nickc@redhat.com>
211
212 * emultempl/elf32.em (_handle_option): Add support for "-z undefs"
213 as the opposite of "-z defs".
214 * ld.texinfo: Document the new option. Update the description of
215 the -z defs option to make it clear that it does generate an error
216 if an undefined symbol reference is found in an object file whilst
217 creating a shared library.
218 * NEWS: Document this new feature.
219
220 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
221
222 * testsuite/ld-elf/pr22393-2a.rd: Replace "-z textonly" with
223 "-z separate-code".
224 * testsuite/ld-elf/pr22393-2b.rd: Likewise.
225 * testsuite/ld-x86-64/pr22393-3a.rd: Likewise.
226 * testsuite/ld-x86-64/pr22393-3b.rd: Likewise.
227
228 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
229
230 PR ld/22393
231 * testsuite/ld-x86-64/pr22393-3a.c: New file.
232 * testsuite/ld-x86-64/pr22393-3a.rd: Likewise.
233 * testsuite/ld-x86-64/pr22393-3b.c: Likewise.
234 * testsuite/ld-x86-64/pr22393-3b.rd: Likewise.
235 * testsuite/ld-x86-64/x86-64.exp: Run tests for -z separate-code
236 -z max-page-size=0x1000.
237
238 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
239
240 PR ld/22393
241 * testsuite/ld-elf/pr16322.d: Add -z noseparate-code.
242 * testsuite/ld-elf/pr22393-1.s: New file.
243 * testsuite/ld-elf/pr22393-1a.d: Likewise.
244 * testsuite/ld-elf/pr22393-1b.d: Likewise.
245 * testsuite/ld-elf/pr22393-1c.d: Likewise.
246 * testsuite/ld-elf/pr22393-1d.d: Likewise.
247 * testsuite/ld-elf/pr22393-1e.d: Likewise.
248 * testsuite/ld-elf/pr22393-1f.d: Likewise.
249 * testsuite/ld-elf/pr22393-2a.c: Likewise.
250 * testsuite/ld-elf/pr22393-2a.rd: Likewise.
251 * testsuite/ld-elf/pr22393-2b.c: Likewise.
252 * testsuite/ld-elf/pr22393-2b.rd: Likewise.
253 * testsuite/ld-elf/shared.exp: Run tests for -z separate-code.
254
255 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
256
257 PR ld/22393
258 * NEWS: Mention "-z separate-code".
259 * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Get
260 builtin linker scripts and return linker scripts from disk for
261 "-z separate-code".
262 (gld${EMULATION_NAME}_handle_option): Handle "-z separate-code"
263 and "-z noseparate-code".
264 * genscripts.sh: Generate linker scripts for "-z separate-code".
265 (LD_FLAG): Set to *textonly for "-z separate-code".
266 * ld.texinfo: Document "-z separate-code".
267 * lexsup.c (elf_shlib_list_options): Add linker help messsages
268 for "-z separate-code" and "-z noseparate-code".
269 * scripttempl/elf.sc (SEPARATE_TEXT): New
270 (TEXT_SEGMENT_ALIGN): Likewise.
271 Use ${TEXT_SEGMENT_ALIGN} to align and pad text segment to
272 ${MAXPAGESIZE}.
273
274 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
275
276 PR ld/22649
277 * testsuite/ld-elf/pr22649-1.s: New file.
278 * testsuite/ld-elf/pr22649-2a.s: Likewise.
279 * testsuite/ld-elf/pr22649-2b.s: Likewise.
280 * testsuite/ld-elf/pr22649.msg: Likewise.
281 * testsuite/ld-elf/shared.exp: Run ld/22649 tests.
282
283 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
284
285 PR ld/22677
286 * scripttempl/elf.sc (PREINIT_ARRAY): New.
287 Don't add .preinit_array for ld -r.
288 * testsuite/ld-elf/pr22677.d: New file.
289 * testsuite/ld-elf/pr22677.s: Likewise.
290
291 2018-01-11 Andrew Burgess <andrew.burgess@embecosm.com>
292
293 * ldexp.h (union etree_union): Remove defsym field.
294 * ldexp.c (exp_assop): Remove defsym parameter, and use of defsym
295 parameter.
296 (exp_assign): Remove passing of defsym parameter.
297 (exp_defsym): Likewise.
298 (exp_provide): Likewise.
299
300 2018-01-11 Andrew Burgess <andrew.burgess@embecosm.com>
301
302 * ldexp.c (exp_fold_tree_1): Rework condition underwhich provide
303 nodes are ignored in the tree walk, and move the location at which
304 we change provide nodes into provided nodes.
305 (exp_init_os): Add etree_provided.
306 * testsuite/ld-scripts/provide-6.d: New file.
307 * testsuite/ld-scripts/provide-6.t: New file.
308 * testsuite/ld-scripts/provide-7.d: New file.
309 * testsuite/ld-scripts/provide-7.t: New file.
310 * testsuite/ld-scripts/provide-8.d: New file.
311 * testsuite/ld-scripts/provide-8.t: New file.
312
313 2018-01-11 Andrew Burgess <andrew.burgess@embecosm.com>
314
315 * testsuite/ld-scripts/provide-3.d: Add xfail directive.
316 * testsuite/ld-scripts/provide-4.d: Use new map file name.
317 * testsuite/ld-scripts/provide-5.d: Use new map file name.
318 * testsuite/ld-scripts/provide-4-map.d: Renamed to...
319 * testsuite/ld-scripts/provide-4.map: ...this.
320 * testsuite/ld-scripts/provide-5-map.d: Renamed to...
321 * testsuite/ld-scripts/provide-5.map: ...this.
322 * testsuite/ld-scripts/provide.exp: Move xfail into provide-3.d
323 file, and run tests in a loop.
324
325 2018-01-11 Andrew Burgess <andrew.burgess@embecosm.com>
326
327 * ldexp.c (exp_print_tree): Use '=' instead of ',' when printing
328 PROVIDE statements.
329 * testsuite/ld-scripts/provide-4.map: Update expected output.
330 * testsuite/ld-scripts/provide-5.map: Likewise.
331
332 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
333
334 PR ld/22696
335 * scripttempl/elf.sc: Fix the order of SHLIB_RODATA_ADDR.
336
337 2018-01-09 Jim Wilson <jimw@sifive.com>
338
339 * testsuite/ld-elf/eh-frame-hdr.d (#xfail): Delete
340 (#alltargets): Renamed from #target. Add shared.
341 * testsuite/lib/ld-lib.exp (run_dump_test): Document shared target.
342 Document alltargets option. Add support for alltargets option.
343 (istarget): Add support for shared target.
344
345 2018-01-08 Jim Wilson <jimw@sifive.com>
346
347 * testsuite/ld-riscv-elf/c-lui.d: Don't use -shared. Check for _start
348 instead of .text.
349 * testsuite/ld-riscv-elf/c-lui.s: Add _start label.
350 * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Before __global_pointer$
351 tests, add call to check_shared_lib_support.
352
353 2018-01-05 Jim Wilson <jimw@sifive.com>
354
355 * testsuite/ld-riscv-elf/disas-jalr.d: New.
356 * testsuite/ld-riscv-elf/disas-jalr.s: New.
357 * testsuite/ld-riscv-elf/ld-riscv-elf.exp: Run new testcase.
358
359 * emulparams/elf32lriscv-defs.sh (GENERATE_SHLIB_SCRIPT): Move inside
360 case on $target, and don't set for riscv*-elf targets.
361 (GENERATE_PIE_SCRIPT): Likewise.
362
363 2018-01-03 Alan Modra <amodra@gmail.com>
364
365 Update year range in copyright notice of all files.
366
367 For older changes see ChangeLog-2017
368 \f
369 Copyright (C) 2018 Free Software Foundation, Inc.
370
371 Copying and distribution of this file, with or without modification,
372 are permitted in any medium without royalty provided the copyright
373 notice and this notice are preserved.
374
375 Local Variables:
376 mode: change-log
377 left-margin: 8
378 fill-column: 74
379 version-control: never
380 End:
This page took 0.0373 seconds and 5 git commands to generate.