binutils-gdb/ld/testsuite/ld-powerpc
Alan Modra 2edab91c10 Make assignments to dot keep an empty output section.
An assignment to dot in an output section that allocates space of
course keeps the output section.  Here, I'm changing the behaviour for
assignments that don't allocate space.  The idea is not so much to
allow people to force output of an empty section with ". = .", but
to fix cases where an otherwise empty section has padding added by an
alignment expression that changes with relaxation or .eh_frame
editing.  Such a section might have zero size before relaxation and so
be stripped incorrectly.

ld/
	* ld.texinfo (Output Section Discarding): Mention assigning to dot
	as a way of keeping otherwise empty sections.
	* ldexp.c (is_dot, is_value, is_sym_value, is_dot_ne_0,
	is_dot_plus_0, is_align_conditional): New predicates.
	(exp_fold_tree_1): Set SEC_KEEP when assigning to dot inside an
	output section, except for some special cases.
	* scripttempl/elfmicroblaze.sc: Use canonical form to align at
	end of .heap and .stack.
ld/testsuite/
	* ld-shared/elf-offset.ld: Align end of .bss with canonical form
	of ALIGN that allows an empty .bss to be removed.
	* ld-arm/arm-dyn.ld: Likewise.
	* ld-arm/arm-lib.ld: Likewise.
	* ld-elfvsb/elf-offset.ld: Likewise.
	* ld-mips-elf/mips-dyn.ld: Likewise.
	* ld-mips-elf/mips-lib.ld: Likewise.
	* ld-arm/arm-no-rel-plt.ld: Remove duplicate ALIGN.
	* ld-powerpc/vle-multiseg-1.ld: Remove ALIGN at start of section.
	ALIGN address of section instead.
	* ld-powerpc/vle-multiseg-2.ld: Likewise.
	* ld-powerpc/vle-multiseg-3.ld: Likewise.
	* ld-powerpc/vle-multiseg-4.ld: Likewise.
	* ld-powerpc/vle-multiseg-6.ld: Likewise.
	* ld-scripts/empty-aligned.d: Check section headers not program
	headers.  Remove xfail and notarget.
	* ld-scripts/empty-aligned.t: Use canonical ALIGN for end of .text2.
2014-01-22 11:58:29 +10:30
..
aix52.exp * lib/ld-lib.exp (run_ld_link_tests): Add another argument, pass 2013-02-19 01:10:06 +00:00
aix-abs-branch-1.dd
aix-abs-branch-1.ex
aix-abs-branch-1.im
aix-abs-branch-1.nd
aix-abs-branch-1.s
aix-abs-reloc-1.ex
aix-abs-reloc-1.im
aix-abs-reloc-1.nd
aix-abs-reloc-1.od
aix-abs-reloc-1.s
aix-core-sec-1.ex
aix-core-sec-1.hd XCOFF/AIX: Remove SEC_ALLOC flags for unmapped sections. 2013-05-10 13:08:24 +00:00
aix-core-sec-1.s
aix-core-sec-2.ex
aix-core-sec-2.hd XCOFF/AIX: Remove SEC_ALLOC flags for unmapped sections. 2013-05-10 13:08:24 +00:00
aix-core-sec-2.s
aix-core-sec-3.ex
aix-core-sec-3.hd XCOFF/AIX: Remove SEC_ALLOC flags for unmapped sections. 2013-05-10 13:08:24 +00:00
aix-core-sec-3.s
aix-export-1-all.dd
aix-export-1-full.dd
aix-export-1a.s
aix-export-1b.s
aix-export-2.nd
aix-export-2.s
aix-gc-1-32.dd
aix-gc-1-64.dd
aix-gc-1.ex
aix-gc-1.nd
aix-gc-1.s
aix-glink-1-32.d
aix-glink-1-32.dd
aix-glink-1-64.d
aix-glink-1-64.dd
aix-glink-1.ex
aix-glink-1.s
aix-glink-2-32.dd
aix-glink-2-64.dd
aix-glink-2a.ex
aix-glink-2a.s
aix-glink-2b.s
aix-glink-2c.ex
aix-glink-2c.s
aix-glink-2d.s
aix-glink-3-32.d
aix-glink-3-64.d
aix-glink-3.dd
aix-glink-3.s
aix-glink-3a.s
aix-glink-3b.s
aix-lineno-1.s
aix-lineno-1.txt
aix-lineno-1a.dd
aix-lineno-1a.nd
aix-lineno-1b.dd
aix-lineno-1b.nd
aix-no-dup-syms-1-dso.dnd
aix-no-dup-syms-1-dso.drd
aix-no-dup-syms-1-dso.nd
aix-no-dup-syms-1-dso.rd
aix-no-dup-syms-1-rel.nd
aix-no-dup-syms-1-rel.rd
aix-no-dup-syms-1.ex
aix-no-dup-syms-1.im
aix-no-dup-syms-1a.s
aix-no-dup-syms-1b.s
aix-ref-1-32.od bfd/ 2010-01-23 12:05:33 +00:00
aix-ref-1-64.od bfd/ 2010-01-23 12:05:33 +00:00
aix-ref-1.s bfd/ 2010-01-23 12:05:33 +00:00
aix-rel-1.od
aix-rel-1.s
aix-toc-1-32.dd
aix-toc-1-64.dd
aix-toc-1.ex
aix-toc-1a.s
aix-toc-1b.s
aix-weak-1-dso.dnd
aix-weak-1-dso.hd
aix-weak-1-dso.nd
aix-weak-1-gcdso.dnd
aix-weak-1-gcdso.hd
aix-weak-1-gcdso.nd
aix-weak-1-rel.hd
aix-weak-1-rel.nd
aix-weak-1.ex
aix-weak-1a.s
aix-weak-1b.s
aix-weak-2a.ex
aix-weak-2a.nd
aix-weak-2a.s
aix-weak-2b.nd
aix-weak-2b.s
aix-weak-2c.ex
aix-weak-2c.nd
aix-weak-2c.od
aix-weak-2c.s
aix-weak-3-32.d
aix-weak-3-32.dd
aix-weak-3-64.d
aix-weak-3-64.dd
aix-weak-3a.ex
aix-weak-3a.s
aix-weak-3b.ex
aix-weak-3b.s
apuinfo1.s
apuinfo2.s
apuinfo-nul1.s bfd/ 2010-04-01 10:02:28 +00:00
apuinfo-nul.rd * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
apuinfo-nul.s bfd/ 2010-02-08 07:09:39 +00:00
apuinfo.rd * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
attr-gnu-4-0.s
attr-gnu-4-1.s
attr-gnu-4-2.s
attr-gnu-4-3.s
attr-gnu-4-4.s
attr-gnu-4-00.d
attr-gnu-4-01.d
attr-gnu-4-02.d
attr-gnu-4-03.d
attr-gnu-4-10.d
attr-gnu-4-11.d
attr-gnu-4-12.d
attr-gnu-4-13.d
attr-gnu-4-14.d
attr-gnu-4-20.d
attr-gnu-4-21.d
attr-gnu-4-22.d
attr-gnu-4-23.d
attr-gnu-4-24.d
attr-gnu-4-31.d
attr-gnu-4-32.d
attr-gnu-4-33.d
attr-gnu-4-34.d
attr-gnu-4-41.d
attr-gnu-8-1.s
attr-gnu-8-2.s
attr-gnu-8-3.s
attr-gnu-8-11.d
attr-gnu-8-23.d
attr-gnu-8-31.d
attr-gnu-12-1.s
attr-gnu-12-2.s
attr-gnu-12-11.d
attr-gnu-12-21.d
elfv2.s Add PowerPC64 ELFv2 tests. 2013-10-30 13:44:10 +10:30
elfv2exe.d Edit ELFv2 global entry prologue to non-PIC 2013-11-04 10:21:32 +10:30
elfv2so.d Add PowerPC64 ELFv2 tests. 2013-10-30 13:44:10 +10:30
export-class.exp * ld-powerpc/export-class.exp (supports_ppc64): Delete. 2013-05-21 01:37:41 +00:00
oldtlslib.s
plt1.d include/opcode/ 2012-11-23 03:28:13 +00:00
plt1.s
powerpc-32-export-class.rd * ld-elf/export-class.sd: New test. 2012-08-28 20:29:19 +00:00
powerpc-32-export-class.xd * ld-elf/export-class.sd: New test. 2012-08-28 20:29:19 +00:00
powerpc-64-export-class.rd * ld-elf/export-class.sd: New test. 2012-08-28 20:29:19 +00:00
powerpc-64-export-class.xd * ld-powerpc/export-class.exp (supports_ppc64): Delete. 2013-05-21 01:37:41 +00:00
powerpc.exp Add PowerPC64 ELFv2 tests. 2013-10-30 13:44:10 +10:30
relax.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
relax.s bfd/ 2010-07-06 09:29:47 +00:00
relaxr.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
relbrlt.d Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
relbrlt.s
reloc.d
reloc.s
sdadyn.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
sdadyn.s
sdalib.s
symtocbase-1.s
symtocbase-2.s
symtocbase.d * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tls32.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tls32.g * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tls32.s
tls32.t * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tls.d Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tls.g Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tls.s Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tls.t * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tlsexe32.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsexe32.g * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsexe32.r * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsexe32.t * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsexe.d Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsexe.g Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsexe.r Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsexe.t * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsexetoc.d Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsexetoc.g Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsexetoc.r Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsexetoc.t * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlslib32.s
tlslib.s
tlsmark32.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsmark32.s bfd/ 2011-03-23 15:25:06 +00:00
tlsmark.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsmark.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt1_32.d include/opcode/ 2012-11-23 03:28:13 +00:00
tlsopt1_32.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt1.d include/opcode/ 2012-11-23 03:28:13 +00:00
tlsopt1.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt2_32.d include/opcode/ 2012-11-23 03:28:13 +00:00
tlsopt2_32.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt2.d include/opcode/ 2012-11-23 03:28:13 +00:00
tlsopt2.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt3_32.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsopt3_32.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt3.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsopt3.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt4_32.d include/opcode/ 2012-11-23 03:28:13 +00:00
tlsopt4_32.s bfd/ 2011-03-23 15:25:06 +00:00
tlsopt4.d include/opcode/ 2012-11-23 03:28:13 +00:00
tlsopt4.s bfd/ 2011-03-23 15:25:06 +00:00
tlsso32.d * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsso32.g * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsso32.r * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsso32.t * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlsso.d Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsso.g Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsso.r Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlsso.t * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tlstoc.d Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlstoc.g Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlstoc.s Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlstoc.t * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tlstocso.d Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlstocso.g Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlstocso.r Change plt stubs to have destination in r12. 2013-10-30 13:35:47 +10:30
tlstocso.t * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tocopt2.d * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tocopt2.out * ld-powerpc/tocopt2.s, * ld-powerpc/tocopt2.out, 2011-07-11 12:03:55 +00:00
tocopt2.s * ld-powerpc/tocopt2.s, * ld-powerpc/tocopt2.out, 2011-07-11 12:03:55 +00:00
tocopt3.d * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tocopt3.s * ld-powerpc/tocopt2.s, * ld-powerpc/tocopt2.out, 2011-07-11 12:03:55 +00:00
tocopt4.d * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tocopt4a.s * ld-powerpc/tocopt4a.s, * ld-powerpc/tocopt4b.s, 2011-08-22 14:28:54 +00:00
tocopt4b.s * ld-powerpc/tocopt4a.s, * ld-powerpc/tocopt4b.s, 2011-08-22 14:28:54 +00:00
tocopt5.d * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tocopt5.s PR ld/13235 2011-09-30 05:11:04 +00:00
tocopt.d * ld-powerpc/powerpc.exp: Substitute for le in options_regsub(ld). 2013-08-22 07:34:28 +00:00
tocopt.out * ld-powerpc/powerpc.exp: Modify emulation option passed to ld 2012-10-29 09:25:53 +00:00
tocopt.s * ld-powerpc/tocopt.s, * ld-powerpc/tocopt.d: New test. 2010-08-05 14:38:10 +00:00
vle-multiseg-1.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-1.ld Make assignments to dot keep an empty output section. 2014-01-22 11:58:29 +10:30
vle-multiseg-2.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-2.ld Make assignments to dot keep an empty output section. 2014-01-22 11:58:29 +10:30
vle-multiseg-3.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-3.ld Make assignments to dot keep an empty output section. 2014-01-22 11:58:29 +10:30
vle-multiseg-4.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-4.ld Make assignments to dot keep an empty output section. 2014-01-22 11:58:29 +10:30
vle-multiseg-5.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-5.ld Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-6.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-6.ld Make assignments to dot keep an empty output section. 2014-01-22 11:58:29 +10:30
vle-multiseg-6a.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-6b.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-6c.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg-6d.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-multiseg.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-1.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-1.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-2.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-2.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-3.d Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-3.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-def-1.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-def-2.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle-reloc-def-3.s Add support for PowerPC VLE. 2012-05-14 19:45:30 +00:00
vle.ld bfd/ 2012-05-19 06:58:48 +00:00
vxworks1-lib.dd
vxworks1-lib.nd Tolerate some whitespace differences in readelf output. 2009-09-23 03:12:28 +00:00
vxworks1-lib.rd Adjust testcases for readelf addend change 2012-05-12 13:46:26 +00:00
vxworks1-lib.s
vxworks1-lib.sd
vxworks1-lib.td
vxworks1-static.d
vxworks1.dd
vxworks1.ld
vxworks1.rd
vxworks1.s
vxworks2-static.sd
vxworks2.s
vxworks2.sd
vxworks-relax-2.rd bfd/ 2012-06-06 10:50:18 +00:00
vxworks-relax-2.s * ld-powerpc/vxworks-relax.s: Add branches to match expected output. 2010-07-20 07:22:37 +00:00
vxworks-relax.rd ld/ 2012-03-25 06:45:16 +00:00
vxworks-relax.s * ld-powerpc/vxworks-relax.s: Add branches to match expected output. 2010-07-20 07:22:37 +00:00