diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2011-04-04 16:36:28 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2011-04-04 16:36:28 +0000 |
commit | 43f3e514384f2f3698816344b716118d93c20e9c (patch) | |
tree | cdfb604d4282dd79b1d99e6a43594949711ee7ba | |
parent | 4343fe025606f408702861ae40660a5d9eef6133 (diff) | |
download | binutils-redhat-43f3e514384f2f3698816344b716118d93c20e9c.tar.gz |
Add a testcase for PR ld/12627.
2011-04-04 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12627
* ld-i386/i386.exp: Run pr12627.
* ld-i386/pr12627.d: New.
* ld-i386/pr12627.s: Likewise.
* ld-i386/pr12627.t: Likewise.
-rw-r--r-- | ld/testsuite/ChangeLog | 9 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/i386.exp | 1 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/pr12627.d | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/pr12627.s | 11 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/pr12627.t | 27 |
5 files changed, 56 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 4d41d8c3f7..ddbb461b7f 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2011-04-04 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/12627 + * ld-i386/i386.exp: Run pr12627. + + * ld-i386/pr12627.d: New. + * ld-i386/pr12627.s: Likewise. + * ld-i386/pr12627.t: Likewise. + 2011-03-31 Bernd Schmidt <bernds@codesourcery.com> * ld-scripts/crossref.exp: Add CFLAGS for tic6x*-*-*. diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp index de8f892e0a..ead0df1667 100644 --- a/ld/testsuite/ld-i386/i386.exp +++ b/ld/testsuite/ld-i386/i386.exp @@ -201,3 +201,4 @@ if { !([istarget "i?86-*-linux*"] } run_dump_test "compressed1" +run_dump_test "pr12627" diff --git a/ld/testsuite/ld-i386/pr12627.d b/ld/testsuite/ld-i386/pr12627.d new file mode 100644 index 0000000000..c0978218f4 --- /dev/null +++ b/ld/testsuite/ld-i386/pr12627.d @@ -0,0 +1,8 @@ +#name: PR ld/12627 +#as: --32 +#ld: -melf_i386 -T pr12627.t +#nm: -n + +#... +0+100 A __bss16_dwords +#pass diff --git a/ld/testsuite/ld-i386/pr12627.s b/ld/testsuite/ld-i386/pr12627.s new file mode 100644 index 0000000000..305dfd5a7a --- /dev/null +++ b/ld/testsuite/ld-i386/pr12627.s @@ -0,0 +1,11 @@ + .section ".text16","ax" + .globl _start +_start: + movl $__bss16_start, %edi + movl $__bss16_dwords, %ecx + xorl %eax, %eax + rep movsl + ret + + .section ".bss16","ax" + .space 1024 diff --git a/ld/testsuite/ld-i386/pr12627.t b/ld/testsuite/ld-i386/pr12627.t new file mode 100644 index 0000000000..d824920c81 --- /dev/null +++ b/ld/testsuite/ld-i386/pr12627.t @@ -0,0 +1,27 @@ +OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") +OUTPUT_ARCH(i386) +EXTERN(_start) +ENTRY(_start) + +SECTIONS +{ + . = 0x1000; + + .bss16 (NOLOAD) : { + __bss16_start = .; + *(.bss16) + __bss16_end = .; + } + __bss16_len = __bss16_end - __bss16_start; + __bss16_dwords = (__bss16_len + 3) >> 2; + + . = 0x8000; + + .text16 : { + FILL(0x90909090) + __text16_start = .; + *(.text16) + *(.text16.*) + __text16_end = .; + } +} |