1 2013-03-29 H.J. Lu <hongjiu.lu@intel.com>
4 * ld-plugin/lto.exp (lto_link_tests): Add pr15323a-r.o.
5 (lto_run_tests): Add a test for PR ld/15323.
7 * ld-plugin/pr15323.out: New file.
8 * ld-plugin/pr15323a.c: Likewise.
9 * ld-plugin/pr15323b.c: Likewise.
11 2013-03-22 Nick Clifton <nickc@redhat.com>
13 * ld-elf/init0.s: Add alloc attribute to .section directive.
14 * ld-elf/fini1.s: Likewise.
15 * ld-elf/fini2.s: Likewise.
16 * ld-elf/fini3.s: Likewise.
17 * ld-elf/finin.s: Likewise.
18 * ld-elf/init0.s: Likewise.
19 * ld-elf/init1.s: Likewise.
20 * ld-elf/init2.s: Likewise.
21 * ld-elf/init3.s: Likewise.
22 * ld-elf/initn.s: Likewise.
24 2013-02-02 Michael Schewe <michael.schewe@gmx.net>
26 * ld-h8300/h8300.exp: Add new relax-7 test on ELF.
27 * ld-h8300/relax-2.s: Add other direction and .w/.l variants of
29 * ld-h8300/relax-2.d: Update expected disassembly.
30 * ld-h8300/relax-7a.s: New: tests for mov @(disp:32,ERx) -> mov
32 * ld-h8300/relax-7b.s: New: Likewise.
33 * ld-h8300/relax-7.d: New: expected disassembly.
35 2013-03-20 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
37 * ld-elf/group8a.d (notarget): Remove aarch64*-*-*.
38 * ld-elf/group8b.d: Likewise.
39 * ld-elf/group9a.d: Likewise.
40 * ld-elf/group9b.d: Likewise.
41 * ld-elf/pr12851.d: Likewise.
42 * ld-elf/pr12975.d: Likewise.
43 * ld-elf/pr13177.d: Likewise.
44 * ld-elf/pr13195.d: Likewise.
46 2013-03-20 Will Newton <will.newton@linaro.org>
48 * ld-elfvers/vers.exp (objdump_symstuff): Sort objdump output
49 based on the symbol name rather than address.
50 * ld-elfvers/vers1.sym: Reorder contents to match changes to vers.exp.
51 * ld-elfvers/vers15.sym: Likewise.
52 * ld-elfvers/vers18.sym: Likewise.
53 * ld-elfvers/vers21.sym: Likewise.
54 * ld-elfvers/vers9.sym: Likewise.
56 2013-03-20 Alan Modra <amodra@gmail.com>
58 * ld-elf/rel.c, ld-elf/relmain.c, ld-elf/relmain.out: New test.
59 * ld-elf/shared.exp: Build and run it.
61 2013-03-20 Alan Modra <amodra@gmail.com>
62 Will Newton <will.newton@linaro.org
64 * ld-elfvers/vers.exp: Add -Wl,--no-as-needed to all tests
65 linking against shared libraries.
66 * ld-elfweak/elfweak.exp: Likewise. Enable for x86_64-linux.
67 Build main1.o using $picflag.
69 2013-03-18 Alan Modra <amodra@gmail.com>
71 * ld-elf/pr14862.out: Expect no output.
73 2013-03-15 Will Newton <will.newton@linaro.org>
75 * ld-arm/arm-elf.exp: Expand *-*eabi test to cover *-*eabi*.
76 * ld-arm/gc-hidden-1.d: Likewise.
77 * ld-elfvsb/elfvsb.exp: Likewise.
78 * ld-shared/shared.exp: Likewise.
80 2013-03-08 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
82 * lib/ld-lib.exp (check_gc_sections_available): Remove aarch64
83 from list of targets that don't support gc-section.
85 2013-03-05 Alan Modra <amodra@gmail.com>
87 * ld-scripts/rgn-at6.s, * ld-scripts/rgn-at6.t, * ld-scripts/rgn-at6.d,
88 * ld-scripts/rgn-at7.t, * ld-scripts/rgn-at7.d: New tests.
90 2013-02-28 Nathan Sidwell <nathan@codesourcery.com>
92 * ld-arm/tls-local-static.s: New test.
93 * ld-arm/tls-local-static.d: New.
94 * ld-arm/arm-elf.exp (tls-local-static): Add test.
96 2013-02-21 H.J. Lu <hongjiu.lu@intel.com>
99 * ld-unique/unique.exp: Add a test for shared library with
102 2013-02-19 Maciej W. Rozycki <macro@codesourcery.com>
104 * lib/ld-lib.exp (run_ld_link_tests): Add another argument, pass
105 its contents to ar_simple_create and ld_simple_link after
107 * ld-aarch64/aarch64-elf.exp: Adjust accordingly.
108 * ld-alpha/alpha.exp: Likewise.
109 * ld-arm/arm-elf.exp: Likewise.
110 * ld-arm/export-class.exp: Likewise.
111 * ld-elf/comm-data.exp: Likewise.
112 * ld-elf/eh-group.exp: Likewise.
113 * ld-elf/elf.exp: Likewise.
114 * ld-elf/export-class.exp: Likewise.
115 * ld-elfvers/vers.exp: Likewise.
116 * ld-frv/tls.exp: Likewise.
117 * ld-i386/export-class.exp: Likewise.
118 * ld-i386/i386.exp: Likewise.
119 * ld-ia64/ia64.exp: Likewise.
120 * ld-libs/libs.exp: Likewise.
121 * ld-m68k/m68k.exp: Likewise.
122 * ld-metag/metag.exp: Likewise.
123 * ld-mips-elf/comm-data.exp: Likewise.
124 * ld-mips-elf/export-class.exp: Likewise.
125 * ld-mips-elf/mips-elf.exp: Likewise.
126 * ld-mn10300/mn10300.exp: Likewise.
127 * ld-pe/pe-compile.exp: Likewise.
128 * ld-pe/pe.exp: Likewise.
129 * ld-plugin/plugin.exp: Likewise.
130 * ld-powerpc/aix52.exp: Likewise.
131 * ld-powerpc/export-class.exp: Likewise.
132 * ld-powerpc/powerpc.exp: Likewise.
133 * ld-s390/s390.exp: Likewise.
134 * ld-sh/sh-vxworks.exp: Likewise.
135 * ld-sh/sh64/sh64.exp: Likewise.
136 * ld-sparc/sparc.exp: Likewise.
137 * ld-tic6x/tic6x.exp: Likewise.
138 * ld-tilegx/tilegx.exp: Likewise.
139 * ld-tilepro/tilepro.exp: Likewise.
140 * ld-undefined/entry.exp: Likewise.
141 * ld-vax-elf/vax-elf.exp: Likewise.
142 * ld-x86-64/dwarfreloc.exp: Likewise.
143 * ld-x86-64/export-class.exp: Likewise.
144 * ld-x86-64/x86-64.exp: Likewise.
145 * ld-xc16x/xc16x.exp: Likewise.
146 * ld-xstormy16/xstormy16.exp: Likewise.
147 * ld-xtensa/xtensa.exp: Likewise.
149 2013-02-18 Maciej W. Rozycki <macro@codesourcery.com>
151 * ld-mips-elf/jalx-2.ld: Include .rel.plt in output, give .plt a
153 * ld-mips-elf/jalx-2.dd: Adjust disassembly accordingly.
155 2013-02-18 Alan Modra <amodra@gmail.com>
157 * ld-plugin/lto.exp (Build pr15146b.so) Add -Wl,--no-as-needed.
158 (PR ld/15146 (1), (2)): Likewise.
161 2013-02-16 H.J. Lu <hongjiu.lu@intel.com>
164 * ld-plugin/pr15146.d: New file.
165 * ld-plugin/pr15146a.c: Likewise.
166 * ld-plugin/pr15146b.c: Likewise.
167 * ld-plugin/pr15146c.c: Likewise.
168 * ld-plugin/pr15146d.c: Likewise.
170 * ld-plugin/lto.exp: Add tests for PR ld/15146.
172 2013-02-15 Markos Chandras <markos.chandras@imgtec.com>
174 * ld-metag/pcrel.d: Fix the expected disassembler
175 output to be in little endian format
176 * ld-metag/shared.d: likewise
177 * ld-metag/stub.d: likewise
178 * ld-metag/stub_pic_app.d: likewise
179 * ld-metag/stub_pic_shared.d: likewise
180 * ld-metag/stub_shared.d: likewise
182 2013-02-13 Richard Sandiford <rdsandiford@googlemail.com>
184 * ld-mips-elf/mips16-pic-2.dd,
185 ld-mips-elf/mips16-pic-2.gd: Remove 3 unused local GOT entries.
186 * ld-mips-elf/got-page-4a.s, ld-mips-elf/got-page-4b.s,
187 ld-mips-elf/got-page-4a.d, ld-mips-elf/got-page-4a.got,
188 ld-mips-elf/got-page-4b.d, ld-mips-elf/got-page-4b.got,
189 ld-mips-elf/got-page-5.s, ld-mips-elf/got-page-5.d,
190 ld-mips-elf/got-page-5.got, ld-mips-elf/got-page-6.s,
191 ld-mips-elf/got-page-6.d, ld-mips-elf/got-page-6.got,
192 ld-mips-elf/got-page-7a.s, ld-mips-elf/got-page-7b.s,
193 ld-mips-elf/got-page-7c.s, ld-mips-elf/got-page-7d.s,
194 ld-mips-elf/got-page-7e.s, ld-mips-elf/got-page-7.d,
195 ld-mips-elf/got-page-7.got: New tests.
196 * ld-mips-elf/mips-elf.exp: Run them.
198 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
200 * ld-mips-elf/tlsdyn-o32-1.d, ld-mips-elf/tlsdyn-o32-1.got,
201 ld-mips-elf/tlsdyn-o32-2.d, ld-mips-elf/tlsdyn-o32-2.got,
202 ld-mips-elf/tlsdyn-o32-3.d, ld-mips-elf/tlsdyn-o32-3.got,
203 ld-mips-elf/tls-hidden3.d, ld-mips-elf/tls-hidden3.got: Update
204 for new hash table order.
206 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
208 * ld-mips-elf/tls-hidden4.got, ld-mips-elf/tls-multi-got-1.d,
209 ld-mips-elf/tls-multi-got-1.got: Update for changes in the order
210 that symbols are added to per-bfd GOTs.
212 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
214 * ld-mips-elf/tls-hidden3.d, ld-mips-elf/tls-hidden3.got,
215 ld-mips-elf/tls-multi-got-1.got, ld-mips-elf/tlsbin-o32.d,
216 ld-mips-elf/tlsbin-o32.got, ld-mips-elf/tlsdyn-o32-1.d,
217 ld-mips-elf/tlsdyn-o32-1.got, ld-mips-elf/tlsdyn-o32-2.d,
218 ld-mips-elf/tlsdyn-o32-2.got, ld-mips-elf/tlsdyn-o32-3.d,
219 ld-mips-elf/tlsdyn-o32-3.got, ld-mips-elf/tlsdyn-o32.d,
220 ld-mips-elf/tlsdyn-o32.got, ld-mips-elf/tlslib-o32.d,
221 ld-mips-elf/tlslib-o32.got, ld-mips-elf/tlslib-o32-hidden.got,
222 ld-mips-elf/tlslib-o32-ver.got: Adjust GOT layout for new
223 got_entry hash function.
225 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
227 * ld-mips-elf/tlsdyn-o32-2.got, ld-mips-elf/tlsdyn-o32-3.got: Remove
230 2013-02-07 H.J. Lu <hongjiu.lu@intel.com>
233 * ld-unique/unique_empty.s: Add reference to "b".
235 2013-02-06 H.J. Lu <hongjiu.lu@intel.com>
237 * ld-size/size-10.rd: Updated.
238 * ld-size/size-8.rd: Likewise.
239 * ld-size/size32-2-i386.d: Likewise.
240 * ld-size/size32-2-x32.d: Likewise.
241 * ld-size/size32-2-x86-64.d: Likewise.
242 * ld-size/size64-2-x32.d: Likewise.
243 * ld-size/size64-2-x86-64.d: Likewise.
245 * ld-size/size.exp (run_time_tests): Pass --hash-styl=gnu to
246 linker for size-8 test.
248 2013-02-06 Sandra Loosemore <sandra@codesourcery.com>
249 Andrew Jenner <andrew@codesourcery.com>
251 Based on patches from Altera Corporation.
253 * ld-nios2/emit-relocs-1a.s: New.
254 * ld-nios2/emit-relocs-1b.s: New.
255 * ld-nios2/emit-relocs-1.d: New.
256 * ld-nios2/emit-relocs-1.ld: New.
257 * ld-nios2/gprel.d: New.
258 * ld-nios2/gprel.s: New.
259 * ld-nios2/hilo16.d: New.
260 * ld-nios2/hilo16.s: New.
261 * ld-nios2/hilo16_symbol.s: New.
262 * ld-nios2/imm5.d: New.
263 * ld-nios2/imm5.s: New.
264 * ld-nios2/imm5_symbol.s: New.
265 * ld-nios2/nios2.exp: New.
266 * ld-nios2/pcrel16.d: New.
267 * ld-nios2/pcrel16_label.s: New.
268 * ld-nios2/pcrel16.s: New.
269 * ld-nios2/relax_callr.d: New.
270 * ld-nios2/relax_callr.ld: New.
271 * ld-nios2/relax_callr.s: New.
272 * ld-nios2/relax_cjmp.d: New.
273 * ld-nios2/relax_cjmp.s: New.
274 * ld-nios2/relax_jmp.ld: New.
275 * ld-nios2/relax_section.d: New.
276 * ld-nios2/relax_section.s: New.
277 * ld-nios2/relax_ujmp.d: New.
278 * ld-nios2/relax_ujmp.s: New.
279 * ld-nios2/reloc.d: New.
280 * ld-nios2/reloc.s: New.
281 * ld-nios2/reloc_symbol.s: New.
282 * ld-nios2/s16.d: New.
283 * ld-nios2/s16.s: New.
284 * ld-nios2/s16_symbol.s: New.
285 * ld-nios2/u16.d: New.
286 * ld-nios2/u16.s: New.
287 * ld-nios2/u16_symbol.s: New.
288 * ld-elf/indirect.exp: Skip on targets that don't support
290 * ld-elfcomm/elfcomm.exp: Build with -G0 for nios2.
291 * ld-plugin/lto.exp: Skip shared library tests on targets that
292 don't support them. Skip execution tests on non-native targets.
294 2013-02-06 H.J. Lu <hongjiu.lu@intel.com>
296 * ld-elf/now-1.d: New file.
297 * ld-elf/now-2.d: Likewise.
298 * ld-elf/now-3.d: Likewise.
299 * ld-elf/now-4.d: Likewise.
300 * ld-elf/rpath-1.d: Likewise.
301 * ld-elf/rpath-2.d: Likewise.
302 * ld-elf/runpath-1.d: Likewise.
303 * ld-elf/runpath-2.d: Likewise.
305 2013-02-06 Alan Modra <amodra@gmail.com>
308 * ld-elf/new-dtags-1.d: Delete.
309 * ld-elf/new-dtags-2.d: Likewise.
310 * ld-elf/new-dtags-3.d: Likewise.
311 * ld-elf/new-dtags-4.d: Likewise.
312 * ld-elf/new-dtags-5.d: Likewise.
313 * ld-elf/new-dtags-6.d: Likewise.
314 * ld-elf/new-dtags-7.d: Likewise.
315 * ld-elf/new-dtags-8.d: Likewise.
317 2013-02-04 H.J. Lu <hongjiu.lu@intel.com>
320 * ld-elf/new-dtags-1.d: New test.
321 * ld-elf/new-dtags-2.d: Likewise.
322 * ld-elf/new-dtags-3.d: Likewise.
323 * ld-elf/new-dtags-4.d: Likewise.
324 * ld-elf/new-dtags-5.d: Likewise.
325 * ld-elf/new-dtags-6.d: Likewise.
326 * ld-elf/new-dtags-7.d: Likewise.
327 * ld-elf/new-dtags-8.d: Likewise.
329 2013-01-31 Alan Modra <amodra@gmail.com>
331 * ld-powerpc/tlsexe.d: Update for changed stub names.
332 * ld-powerpc/tlsexe.r: Likewise.
333 * ld-powerpc/tlsexetoc.d: Likewise.
334 * ld-powerpc/tlsexetoc.r: Likewise.
335 * ld-powerpc/tlsso.d: Likewise.
336 * ld-powerpc/tlsso.r: Likewise.
337 * ld-powerpc/tlstocso.d: Likewise.
338 * ld-powerpc/tlstocso.r: Likewise.
340 2013-01-31 Hans-Peter Nilsson <hp@axis.com>
342 * ld-cris/libdso-13.d: Adjust for --enable-new-dtags now
343 default for *-*-linux-* by passing explicitly for all targets.
345 2013-01-21 Alan Modra <amodra@gmail.com>
347 * ld-size/size.exp (build_tests <size-7, size-8>): Pass
348 --no-as-needed in cflags.
350 2013-01-19 H.J. Lu <hongjiu.lu@intel.com>
352 * config/default.exp (get_target_emul): Also set HOSTING_SCRT0.
354 * lib/ld-lib.exp (default_ld_link): Use HOSTING_SCRT0 for -pie.
356 2013-01-18 H.J. Lu <hongjiu.lu@intel.com>
358 * ld-size/size-10.rd: Updated.
359 * ld-size/size-8.rd: Likewise.
360 * ld-size/size32-2-i386.d: Likewise.
361 * ld-size/size32-2-x32.d: Likewise.
362 * ld-size/size32-2-x86-64.d: Likewise.
363 * ld-size/size64-2-x32.d: Likewise.
364 * ld-size/size64-2-x86-64.d: Likewise.
366 2013-01-17 H.J. Lu <hongjiu.lu@intel.com>
368 * ld-size/size-7.out: New file.
369 * ld-size/size-8.out: Likewise.
370 * ld-size/size-9.out: Likewise.
371 * ld-size/size-9.rd: Likewise.
372 * ld-size/size-9a.c: Likewise.
373 * ld-size/size-9b.c: Likewise.
374 * ld-size/size-10.out: Likewise.
375 * ld-size/size-10.rd: Likewise.
376 * ld-size/size-10a.c: Likewise.
377 * ld-size/size-10b.c: Likewise.
379 * ld-size/size.exp (build_tests): Build libsize-9.so and
381 Run-time size relocation tests if supported.
382 (run_time_tests): New.
384 2013-01-17 H.J. Lu <hongjiu.lu@intel.com>
386 * ld-size/size-1.c: New file.
387 * ld-size/size-1.out: Likewise.
388 * ld-size/size-1a.c: Likewise.
389 * ld-size/size-1b.c: Likewise.
390 * ld-size/size-2.c: Likewise.
391 * ld-size/size-2.out: Likewise.
392 * ld-size/size-2a.c: Likewise.
393 * ld-size/size-2b.c: Likewise.
395 * ld-size/size.exp (build_tests): Build libsize-1.so and
397 (run_tests): Run size-1 and size-2.
399 2013-01-17 H.J. Lu <hongjiu.lu@intel.com>
401 * ld-size/size32-3-i386.d: New file.
402 * ld-size/size32-3-x32.d: Likewise.
403 * ld-size/size32-3-x86-64.d: Likewise.
404 * ld-size/size32-3a.s: Likewise.
405 * ld-size/size32-3b.s: Likewise.
407 2013-01-16 H.J. Lu <hongjiu.lu@intel.com>
409 * ld-size/size.exp: New file.
410 * ld-size/size32-1-i386.d: Likewise.
411 * ld-size/size32-1-x32.d: Likewise.
412 * ld-size/size32-1-x86-64.d: Likewise.
413 * ld-size/size32-1.s: Likewise.
414 * ld-size/size32-2-i386.d: Likewise.
415 * ld-size/size32-2-x32.d: Likewise.
416 * ld-size/size32-2-x86-64.d: Likewise.
417 * ld-size/size32-2.s: Likewise.
418 * ld-size/size64-1-x32.d: Likewise.
419 * ld-size/size64-1-x86-64.d: Likewise.
420 * ld-size/size64-1.s: Likewise.
421 * ld-size/size64-2-x32.d: Likewise.
422 * ld-size/size64-2-x86-64.d: Likewise.
423 * ld-size/size64-2.s: Likewise.
424 * ld-size/size-3.c: Likewise.
425 * ld-size/size-3.out: Likewise.
426 * ld-size/size-3a.c: Likewise.
427 * ld-size/size-3b.c: Likewise.
428 * ld-size/size-3c.c: Likewise.
429 * ld-size/size-4.out: Likewise.
430 * ld-size/size-4a.c: Likewise.
431 * ld-size/size-4b.c: Likewise.
432 * ld-size/size-5.out: Likewise.
433 * ld-size/size-5a.c: Likewise.
434 * ld-size/size-5b.c: Likewise.
435 * ld-size/size-6.out: Likewise.
436 * ld-size/size-6a.c: Likewise.
437 * ld-size/size-6b.c: Likewise.
438 * ld-size/size-7.rd: Likewise.
439 * ld-size/size-7a.c: Likewise.
440 * ld-size/size-7b.c: Likewise.
441 * ld-size/size-8.rd: Likewise.
442 * ld-size/size-8a.c: Likewise.
443 * ld-size/size-8b.c: Likewise.
445 2013-01-16 Alan Modra <amodra@gmail.com>
447 * ld-plugin/lto.exp (lto-9.o, pr13229.o): Pass -finline.
449 2013-01-15 Alan Modra <amodra@gmail.com>
451 * ld-powerpc/tlsso.d: Adjust for plt-thread-safe stubs.
452 * ld-powerpc/tlsso.g: Likewise.
453 * ld-powerpc/tlsso.r: Likewise.
454 * ld-powerpc/tlstocso.d: Likewise.
455 * ld-powerpc/tlstocso.g: Likewise.
457 2013-01-15 Alan Modra <amodra@gmail.com>
459 * ld-plugin/lto-16a.d: Match powerpc64 function symbol type.
460 * ld-plugin/lto-16b.d: Likewise.
461 * ld-plugin/lto-17a.d: Likewise.
462 * ld-plugin/lto-17b-2.d: Likewise.
464 2013-01-14 Alan Modra <amodra@gmail.com>
466 * ld-elf/pr14926.d: Disable for d10v, msp, xstormy.
467 * ld-elf/sec-to-seg.exp: Choose correct variant output to suit
468 updated microblaze page size.
470 2013-01-10 Will Newton <will.newton@imgtec.com>
472 * ld-elf/merge.d: Mark Meta as xfail.
473 * ld-gc/start.d: Skip this test on Meta.
474 * ld-gc/personality.d: Skip this test on Meta.
475 * ld-metag/external.s: New file.
476 * ld-metag/metag.exp: New file.
477 * ld-metag/pcrel.d: New file.
478 * ld-metag/pcrel.s: New file.
479 * ld-metag/shared.d: New file.
480 * ld-metag/shared.r: New file.
481 * ld-metag/shared.s: New file.
482 * ld-metag/stub.d: New file.
483 * ld-metag/stub.s: New file.
484 * ld-metag/stub_pic_app.d: New file.
485 * ld-metag/stub_pic_app.r: New file.
486 * ld-metag/stub_pic_app.s: New file.
487 * ld-metag/stub_pic_shared.d: New file.
488 * ld-metag/stub_pic_shared.s: New file.
489 * ld-metag/stub_shared.d: New file.
490 * ld-metag/stub_shared.r: New file.
491 * ld-metag/stub_shared.s: New file.
493 2013-01-08 Thomas Schwinge <thomas@codesourcery.com>
495 * ld-i386/export-class.exp: Restore (and reword) comment about
498 2013-01-04 Yufeng Zhang <yufeng.zhang@arm.com>
500 * ld-aarch64/emit-relocs-264.d: Append the '-Mno-aliases' option to
501 the objdump directive.
502 * ld-aarch64/emit-relocs-266.d: Ditto.
503 * ld-aarch64/emit-relocs-268.d: Ditto.
504 * ld-aarch64/emit-relocs-269.d: Ditto.
505 * ld-aarch64/emit-relocs-270.d: Ditto.
506 * ld-aarch64/emit-relocs-271.d: Ditto.
507 * ld-aarch64/emit-relocs-272.d: Ditto.
509 For older changes see ChangeLog-2012
511 Copyright (C) 2013 Free Software Foundation, Inc.
513 Copying and distribution of this file, with or without modification,
514 are permitted in any medium without royalty provided the copyright
515 notice and this notice are preserved.
521 version-control: never