summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-elf
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2012-11-21 21:31:14 +0000
committerH.J. Lu <hjl.tools@gmail.com>2012-11-21 21:31:14 +0000
commit6e3ddf7236b1ce6957e353aa2543c94dba761333 (patch)
tree2109f8ff79d8fdbfdc0e95c68da8b5768b01a1ca /ld/testsuite/ld-elf
parentf595c7cd36689288c80603532725ec6c9f5da376 (diff)
downloadbinutils-redhat-6e3ddf7236b1ce6957e353aa2543c94dba761333.tar.gz
Set output maxpagesize when rewriting program header
bfd/ PR binutils/14493 * elf.c (copy_elf_program_header): When rewriting program header, set the output maxpagesize to the maximum alignment of input PT_LOAD segments. 2012-11-21 H.J. Lu <hongjiu.lu@intel.com> PR binutils/14493 * ld-elf/maxpage5.d: New file. * ld-elf/maxpage5.s: Likewise. * ld-elf/maxpage5.t: Likewise.
Diffstat (limited to 'ld/testsuite/ld-elf')
-rw-r--r--ld/testsuite/ld-elf/maxpage5.d18
-rw-r--r--ld/testsuite/ld-elf/maxpage5.s8
-rw-r--r--ld/testsuite/ld-elf/maxpage5.t15
3 files changed, 41 insertions, 0 deletions
diff --git a/ld/testsuite/ld-elf/maxpage5.d b/ld/testsuite/ld-elf/maxpage5.d
new file mode 100644
index 0000000000..bcbd39c71e
--- /dev/null
+++ b/ld/testsuite/ld-elf/maxpage5.d
@@ -0,0 +1,18 @@
+#source: maxpage5.s
+#as: --32
+#ld: -z max-page-size=0x200000 -T maxpage5.t
+#objcopy_linked_file: -R .foo
+#readelf: -l --wide
+#target: x86_64-*-linux* i?86-*-linux-gnu
+
+#...
+Program Headers:
+ Type.*
+ LOAD +0x[0-9a-f]+ .*0x200000
+ NOTE +0x[0-9a-f]+ .*
+
+#...
+ Segment Sections...
+ 00[ \t]+.text *
+ 01[ \t]+.note *
+#pass
diff --git a/ld/testsuite/ld-elf/maxpage5.s b/ld/testsuite/ld-elf/maxpage5.s
new file mode 100644
index 0000000000..93d6b36fed
--- /dev/null
+++ b/ld/testsuite/ld-elf/maxpage5.s
@@ -0,0 +1,8 @@
+ .globl _entry
+ .text
+_entry:
+ .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+ .section .foo,"awx",%progbits
+ .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+ .section .note,"",%note
+ .byte 0
diff --git a/ld/testsuite/ld-elf/maxpage5.t b/ld/testsuite/ld-elf/maxpage5.t
new file mode 100644
index 0000000000..7f19343e90
--- /dev/null
+++ b/ld/testsuite/ld-elf/maxpage5.t
@@ -0,0 +1,15 @@
+OUTPUT_FORMAT("elf32-i386")
+OUTPUT_ARCH(i386)
+ENTRY(_entry)
+PHDRS
+{
+ data PT_LOAD;
+ note PT_NOTE;
+}
+SECTIONS
+{
+ .text : { *(.text) } :data
+ .foo : { *(.foo) } :data
+ .note : { *(.note) } :note
+ /DISCARD/ : { *(*) }
+}