From: nobody <> Date: Sun, 9 Sep 2012 16:31:13 +0000 (+0000) Subject: This commit was manufactured by cvs2svn to create branch 'binutils- X-Git-Tag: binutils-2_23~68 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e7e02051dd0d88dce41706ac2b173716faf64246;p=thirdparty%2Fbinutils-gdb.git This commit was manufactured by cvs2svn to create branch 'binutils- 2_23-branch'. Cherrypick from master 2012-09-09 16:31:12 UTC Hans-Peter Nilsson ' * ld-mmix/sec-1.d, ld-mmix/sec-3.d: Force end-of-section symbols': ld/testsuite/ld-mmix/data-1.s ld/testsuite/ld-mmix/orph-.d ld/testsuite/ld-mmix/orph-awp.d ld/testsuite/ld-mmix/orph-d-a.d ld/testsuite/ld-mmix/orph-d-awn.d ld/testsuite/ld-mmix/orph-d-awp.d ld/testsuite/ld-mmix/orph-d-awpe.d ld/testsuite/ld-mmix/orph-d.d ld/testsuite/ld-mmix/orph-dc-ap.d ld/testsuite/ld-mmix/orph-dc-awp.d ld/testsuite/ld-mmix/orph-dc.d ld/testsuite/ld-mmix/tm-ae.s ld/testsuite/ld-mmix/tm-ape.s ld/testsuite/ld-mmix/tm-awne.s ld/testsuite/ld-mmix/tm-awpe.s ld/testsuite/ld-mmix/tm-d-ap.s ld/testsuite/ld-mmix/tm-d-awp.s ld/testsuite/ld-mmix/tm-d.s ld/testsuite/ld-mmix/tm-e.s ld/testsuite/ld-mmix/tm-orph1.s --- diff --git a/ld/testsuite/ld-mmix/data-1.s b/ld/testsuite/ld-mmix/data-1.s new file mode 100644 index 00000000000..5b033697e1d --- /dev/null +++ b/ld/testsuite/ld-mmix/data-1.s @@ -0,0 +1,2 @@ + .data + OCTA #42 diff --git a/ld/testsuite/ld-mmix/orph-.d b/ld/testsuite/ld-mmix/orph-.d new file mode 100644 index 00000000000..4aac2369abd --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-.d @@ -0,0 +1,26 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: tm-orph1.s +#source: tm-e.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# Like orph-d.d but without data. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 +g +\.text __etext +0+ +g +\.text __TMC_END__ +20+ +g +\*ABS\* __Ebss +20+ +g +\*ABS\* __Edata +0+ +g +\.text _start +20+ +g +\*ABS\* __Eall +20+ +g +\*ABS\* __Sdata +20+ +g +\*ABS\* __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section .MMIX.reg_contents: + 07f0 00000000 00000007 .* diff --git a/ld/testsuite/ld-mmix/orph-awp.d b/ld/testsuite/ld-mmix/orph-awp.d new file mode 100644 index 00000000000..eee47b8a125 --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-awp.d @@ -0,0 +1,26 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: tm-orph1.s +#source: tm-awpe.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# Like orph-d-awp.d, but without .data contents. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 +g +\.text __etext +20+ +g +\*ABS\* __TMC_END__ +20+ +g +\*ABS\* __Ebss +20+ +g +\*ABS\* __Edata +0+ +g +\.text _start +20+ +g +\*ABS\* __Eall +20+ +g +\*ABS\* __Sdata +20+ +g +\*ABS\* __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.MMIX\.reg_contents: + 07f0 20000000 00000007 .* diff --git a/ld/testsuite/ld-mmix/orph-d-a.d b/ld/testsuite/ld-mmix/orph-d-a.d new file mode 100644 index 00000000000..560c0721529 --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-d-a.d @@ -0,0 +1,30 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-ae.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# A section that's just allocated (but not writable and no @progbits). +# Should attach to the .text section due to being read-only. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 +g +\.text __etext +0+8 +g +\.text __TMC_END__ +20+8 +g +\.data __Ebss +20+8 +g +\.data __Edata +0+ +g +\.text _start +20+8 +g +\.data __Eall +20+ +g +\.data __Sdata +20+8 +g +\.data __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.data: + 2000000000000004 00000042 .* +Contents of section \.MMIX\.reg_contents: + 07f0 00000000 0000000f .* diff --git a/ld/testsuite/ld-mmix/orph-d-awn.d b/ld/testsuite/ld-mmix/orph-d-awn.d new file mode 100644 index 00000000000..0fe1f882e9a --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-d-awn.d @@ -0,0 +1,31 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-awne.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# A section that's "aw",@nobits, i.e. naturally .bss. +# Should attach to the .bss section (but we'll see it as attached to +# .data). + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 +g +\.text __etext +20+8 +g +\.data __TMC_END__ +20+8 +g +\.data __Ebss +20+8 +g +\.data __Edata +0+ +g +\.text _start +20+8 +g +\.data __Eall +20+ +g +\.data __Sdata +20+8 +g +\.data __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.data: + 2000000000000004 00000042 .* +Contents of section \.MMIX\.reg_contents: + 07f0 20000000 0000000f .* diff --git a/ld/testsuite/ld-mmix/orph-d-awp.d b/ld/testsuite/ld-mmix/orph-d-awp.d new file mode 100644 index 00000000000..43f0a0f4bf2 --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-d-awp.d @@ -0,0 +1,33 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-awpe.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# An orphan section (.tm_clone_table) would attach after the register +# section, and contents and symbols and related relocations would be +# reduced to be relative to the register section, which is an error. +# We check the original case ("aw",@progbits, to .data or .bss), +# PR ld/1xxxx. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 +g +\.text __etext +20+8 +g +\.data __TMC_END__ +20+8 +g +\.data __Ebss +20+8 +g +\.data __Edata +0+ +g +\.text _start +20+8 +g +\.data __Eall +20+ +g +\.data __Sdata +20+8 +g +\.data __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.data: + 2000000000000004 00000042 .* +Contents of section \.MMIX\.reg_contents: + 07f0 20000000 0000000f .* diff --git a/ld/testsuite/ld-mmix/orph-d-awpe.d b/ld/testsuite/ld-mmix/orph-d-awpe.d new file mode 100644 index 00000000000..89290feaa87 --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-d-awpe.d @@ -0,0 +1,13 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-d.s +#source: tm-awpe.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#error: overlaps section .text + +# Like orph-d-awp.d but with contents in that section. Also, mismatching +# section flags for the contents will cause a linker error, but we'll +# call this a doctor-it-hurts situation; either list the section in +# the linker script or have consistent section flags. diff --git a/ld/testsuite/ld-mmix/orph-d.d b/ld/testsuite/ld-mmix/orph-d.d new file mode 100644 index 00000000000..8bfaf248a5e --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-d.d @@ -0,0 +1,30 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-e.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# Like orph-d-awp.d but a section without specified flags; should +# attach to .debug_info, i.e. have address 0. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 +g +\.text __etext +0+ +g +\.text __TMC_END__ +20+8 +g +\.data __Ebss +20+8 +g +\.data __Edata +0+ +g +\.text _start +20+8 +g +\.data __Eall +20+ +g +\.data __Sdata +20+8 +g +\.data __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.data: + 2000000000000004 00000042 .* +Contents of section .MMIX.reg_contents: + 07f0 00000000 00000007 .* diff --git a/ld/testsuite/ld-mmix/orph-dc-ap.d b/ld/testsuite/ld-mmix/orph-dc-ap.d new file mode 100644 index 00000000000..cebfbf0d23c --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-dc-ap.d @@ -0,0 +1,34 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-d-ap.s +#source: tm-ape.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# Like orph-d-a.d but with contents in that section (and with +# @progbits, which doesn't reflect in flags), making sure it's really +# treated as .text contents. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+18 +g +\*ABS\* __etext +0+18 +g +\*ABS\* __TMC_END__ +20+8 +g +\.data __Ebss +20+8 +g +\.data __Edata +0+ +g +\.text _start +20+8 +g +\.data __Eall +20+ +g +\.data __Sdata +20+8 +g +\.data __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.tm_clone_table: + 0008 000004d2 0000162e 008adf38 00c8860c .* +Contents of section \.data: + 2000000000000004 00000042 .* +Contents of section \.MMIX\.reg_contents: + 07f0 00000000 0000001f .* diff --git a/ld/testsuite/ld-mmix/orph-dc-awp.d b/ld/testsuite/ld-mmix/orph-dc-awp.d new file mode 100644 index 00000000000..61196c13769 --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-dc-awp.d @@ -0,0 +1,32 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-d-awp.s +#source: tm-awpe.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# Like orph-d-awp.d, but with contents in the extra section. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 g +\.text __etext +2000000000000018 +g +\*ABS\* __TMC_END__ +2000000000000018 g +\*ABS\* __Ebss +2000000000000018 g +\*ABS\* __Edata +0+ g +\.text _start +2000000000000018 g +\*ABS\* __Eall +20+ g +.data __Sdata +2000000000000018 g +\*ABS\* __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.data: + 2000000000000004 00000042 .* +Contents of section \.tm_clone_table: + 2000000000000008 000004d2 0000162e 008adf38 00c8860c .* +Contents of section \.MMIX\.reg_contents: + 07f0 20000000 0000001f .* diff --git a/ld/testsuite/ld-mmix/orph-dc.d b/ld/testsuite/ld-mmix/orph-dc.d new file mode 100644 index 00000000000..69c8d4edcbe --- /dev/null +++ b/ld/testsuite/ld-mmix/orph-dc.d @@ -0,0 +1,32 @@ +#as: -linker-allocated-gregs +#source: start.s +#source: data-1.s +#source: tm-orph1.s +#source: tm-d.s +#source: tm-e.s +#ld: -m mmo -u __etext -u __Sdata -u __Edata -u __Sbss -u __Ebss -u __Eall +#objdump: -rst + +# Like orph-d.d but with contents in the section without specified flags. + +.*: file format mmo + +SYMBOL TABLE: +0+ +g +\.text Main +0+8 g +.text __etext +0+10 +g +\*ABS\* __TMC_END__ +2000000000000008 g +\.data __Ebss +2000000000000008 g +\.data __Edata +0+ +g +\.text _start +2000000000000008 g +\.data __Eall +2000000000000000 g +\.data __Sdata +2000000000000008 g +\.data __Sbss + +Contents of section \.text: + 0000 e3fd0001 23fcfe00 .* +Contents of section \.data: + 2000000000000004 00000042 .* +Contents of section \.tm_clone_table: + 0000 000004d2 0000162e 008adf38 00c8860c .* +Contents of section .MMIX.reg_contents: + 07f0 00000000 00000017 .* diff --git a/ld/testsuite/ld-mmix/tm-ae.s b/ld/testsuite/ld-mmix/tm-ae.s new file mode 100644 index 00000000000..c2bf0c8d30f --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-ae.s @@ -0,0 +1,3 @@ + .section .tm_clone_table,"a" + .global __TMC_END__ +__TMC_END__ IS @ diff --git a/ld/testsuite/ld-mmix/tm-ape.s b/ld/testsuite/ld-mmix/tm-ape.s new file mode 100644 index 00000000000..262526dc9c6 --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-ape.s @@ -0,0 +1,3 @@ + .section .tm_clone_table,"a",@progbits + .global __TMC_END__ +__TMC_END__ IS @ diff --git a/ld/testsuite/ld-mmix/tm-awne.s b/ld/testsuite/ld-mmix/tm-awne.s new file mode 100644 index 00000000000..d293bfb806b --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-awne.s @@ -0,0 +1,3 @@ + .section .tm_clone_table,"aw",@nobits + .global __TMC_END__ +__TMC_END__ IS @ diff --git a/ld/testsuite/ld-mmix/tm-awpe.s b/ld/testsuite/ld-mmix/tm-awpe.s new file mode 100644 index 00000000000..7bec1bb603c --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-awpe.s @@ -0,0 +1,3 @@ + .section .tm_clone_table,"aw",@progbits + .global __TMC_END__ +__TMC_END__ IS @ diff --git a/ld/testsuite/ld-mmix/tm-d-ap.s b/ld/testsuite/ld-mmix/tm-d-ap.s new file mode 100644 index 00000000000..3d8da96155a --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-d-ap.s @@ -0,0 +1,3 @@ + .section .tm_clone_table,"a",@progbits + TETRA 1234,5678 + TETRA 9101112,13141516 diff --git a/ld/testsuite/ld-mmix/tm-d-awp.s b/ld/testsuite/ld-mmix/tm-d-awp.s new file mode 100644 index 00000000000..ddae51a96e4 --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-d-awp.s @@ -0,0 +1,3 @@ + .section .tm_clone_table,"aw",@progbits + TETRA 1234,5678 + TETRA 9101112,13141516 diff --git a/ld/testsuite/ld-mmix/tm-d.s b/ld/testsuite/ld-mmix/tm-d.s new file mode 100644 index 00000000000..8e2e79f220a --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-d.s @@ -0,0 +1,3 @@ + .section .tm_clone_table + TETRA 1234,5678 + TETRA 9101112,13141516 diff --git a/ld/testsuite/ld-mmix/tm-e.s b/ld/testsuite/ld-mmix/tm-e.s new file mode 100644 index 00000000000..a9e09344b12 --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-e.s @@ -0,0 +1,3 @@ + .section .tm_clone_table + .global __TMC_END__ +__TMC_END__ IS @ diff --git a/ld/testsuite/ld-mmix/tm-orph1.s b/ld/testsuite/ld-mmix/tm-orph1.s new file mode 100644 index 00000000000..4d1ae7fd2ee --- /dev/null +++ b/ld/testsuite/ld-mmix/tm-orph1.s @@ -0,0 +1,3 @@ + .text +f: + LDA $252,__TMC_END__+7