diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2012-06-12 12:55:07 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2012-06-12 12:55:07 +0000 |
commit | d67a62d36b0d3a709789b52425eb34ba4edbad6c (patch) | |
tree | 5428f17d65f3caaa2610f904e61cd4beb63e3d8d /ld/testsuite/ld-x86-64 | |
parent | 2d6cce641124d25230506a1797c6fe996641eafa (diff) | |
download | binutils-redhat-d67a62d36b0d3a709789b52425eb34ba4edbad6c.tar.gz |
Abort if PT_GNU_RELRO segment doesn't fit in PT_LOAD segment
bfd/
PR bfd/14207
* elf.c (assign_file_positions_for_non_load_sections): Abort if
PT_GNU_RELRO segment doesn't fit in PT_LOAD segment.
ld/testsuite/
PR ld/14207
* ld-x86-64/x86-64.exp: Run pr14207.
* ld-x86-64/pr14207.d: New file.
* ld-x86-64/pr14207.s: Likewise.
Diffstat (limited to 'ld/testsuite/ld-x86-64')
-rw-r--r-- | ld/testsuite/ld-x86-64/pr14207.d | 9 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr14207.s | 24 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/x86-64.exp | 1 |
3 files changed, 34 insertions, 0 deletions
diff --git a/ld/testsuite/ld-x86-64/pr14207.d b/ld/testsuite/ld-x86-64/pr14207.d new file mode 100644 index 0000000000..2362e88b96 --- /dev/null +++ b/ld/testsuite/ld-x86-64/pr14207.d @@ -0,0 +1,9 @@ +#name: PR ld/14207 +#as: --64 +#ld: -melf_x86_64 -shared -z relro -z now +#readelf: -l --wide + +#failif +#... + NULL +.* +#... diff --git a/ld/testsuite/ld-x86-64/pr14207.s b/ld/testsuite/ld-x86-64/pr14207.s new file mode 100644 index 0000000000..496e67e27d --- /dev/null +++ b/ld/testsuite/ld-x86-64/pr14207.s @@ -0,0 +1,24 @@ + + .section .ctors, "aw" + .space 0x10, 1 + + .section .dtors, "aw" + .space 0x10, 2 + + .section .jcr, "aw" + .space 0x8, 3 + + .section .data.rel.ro + .p2align 4 + .space 0x20, 3 + + .section .dynamic + .space 0xb0, 2 + + .section .got + .space 0x2a8, 4 + + .bss + .zero 0x840 + + diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp index b9af8dea93..1eb1b1c64c 100644 --- a/ld/testsuite/ld-x86-64/x86-64.exp +++ b/ld/testsuite/ld-x86-64/x86-64.exp @@ -209,6 +209,7 @@ run_dump_test "pr13947" run_dump_test "pr12570a" run_dump_test "pr12570b" run_dump_test "pr14215" +run_dump_test "pr14207" if { ![istarget "x86_64-*-linux*"] && ![istarget "x86_64-*-nacl*"]} { return |