summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-elf
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2012-08-31 02:52:12 +0000
committerH.J. Lu <hjl.tools@gmail.com>2012-08-31 02:52:12 +0000
commite7d9ae3cd6e1f55d342749c944ddd09c9a5795bf (patch)
tree66c217619e6785c3b6cef8c8b7928b7a06b83285 /ld/testsuite/ld-elf
parent024f601003c91cb75086bf60bf09edcfeca0cd28 (diff)
downloadbinutils-redhat-e7d9ae3cd6e1f55d342749c944ddd09c9a5795bf.tar.gz
Provide __executable_start for PIE
ld/ PR ld/14525 * scripttempl/elf.sc: Also provide __executable_start for PIE. ld/testsuite/ PR ld/14525 * ld-elf/elf.exp: Run pr14525. * ld-elf/pr14525.c: New. * ld-elf/pr14525.out: Likewise.
Diffstat (limited to 'ld/testsuite/ld-elf')
-rw-r--r--ld/testsuite/ld-elf/elf.exp1
-rw-r--r--ld/testsuite/ld-elf/pr14525.c11
-rw-r--r--ld/testsuite/ld-elf/pr14525.out1
3 files changed, 13 insertions, 0 deletions
diff --git a/ld/testsuite/ld-elf/elf.exp b/ld/testsuite/ld-elf/elf.exp
index 1780b50e16..a97e3df8e6 100644
--- a/ld/testsuite/ld-elf/elf.exp
+++ b/ld/testsuite/ld-elf/elf.exp
@@ -151,6 +151,7 @@ set array_tests_pie {
{"PIE init array" "-pie" "" {init.c} "init" "init.out" "-fPIE"}
{"PIE fini array" "-pie" "" {fini.c} "fini" "fini.out" "-fPIE"}
{"PIE init array mixed" "-pie" "" {init-mixed.c} "init-mixed" "init-mixed.out" "-I. -fPIE"}
+ {"PIE PR ld/14525" "-pie" "" {pr14525.c} "pr14525" "pr14525.out" "-fPIE"}
}
set array_tests_static {
{"static preinit array" "-static" "" {preinit.c} "preinit" "preinit.out"}
diff --git a/ld/testsuite/ld-elf/pr14525.c b/ld/testsuite/ld-elf/pr14525.c
new file mode 100644
index 0000000000..082eb87bef
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr14525.c
@@ -0,0 +1,11 @@
+#include <stdio.h>
+
+extern void *__executable_start;
+
+int
+main()
+{
+ if ((void **) &main >= &__executable_start)
+ printf ("OK\n");
+ return 0;
+}
diff --git a/ld/testsuite/ld-elf/pr14525.out b/ld/testsuite/ld-elf/pr14525.out
new file mode 100644
index 0000000000..d86bac9de5
--- /dev/null
+++ b/ld/testsuite/ld-elf/pr14525.out
@@ -0,0 +1 @@
+OK