aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-cris
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2013-10-18 02:38:35 +0000
committerHans-Peter Nilsson <hp@axis.com>2013-10-18 02:38:35 +0000
commit18080097c801138d94d3b845eaeb81cda922ead3 (patch)
treeaae7395a89da7ee34889ee704318d5eb83ba48f1 /ld/testsuite/ld-cris
parent6dd38d7935978de2a692f3042333a879eef18374 (diff)
downloadgdb-18080097c801138d94d3b845eaeb81cda922ead3.zip
gdb-18080097c801138d94d3b845eaeb81cda922ead3.tar.gz
gdb-18080097c801138d94d3b845eaeb81cda922ead3.tar.bz2
* ld-cris/asneed1.d: New test.
Diffstat (limited to 'ld/testsuite/ld-cris')
-rw-r--r--ld/testsuite/ld-cris/asneed1.d25
1 files changed, 25 insertions, 0 deletions
diff --git a/ld/testsuite/ld-cris/asneed1.d b/ld/testsuite/ld-cris/asneed1.d
new file mode 100644
index 0000000..00fba75
--- /dev/null
+++ b/ld/testsuite/ld-cris/asneed1.d
@@ -0,0 +1,25 @@
+#source: start1.s
+#source: dso-2.s
+#source: dso-1.s
+#as: --pic --no-underscore --em=criself
+#ld: -m crislinux --as-needed tmpdir/libdso-1.so
+#objdump: -p
+
+# Using --as-needed caused a elf_hash_table (info)->dynobj to be
+# registered before cris_elf_check_relocs was called, thereby
+# voiding an assumption that it was the sole setter of
+# htab->dynobj, trigging a SEGV due to a NULL dereference for
+# the variable holding the .got section.
+# The test-case would FAIL for the SEGV and we also check that
+# we don't get the DT_NEEDED tag (indeed no dynamic things at
+# all) because the library isn't needed and would have to move
+# to the end of the link-line to have effect if actually needed.
+
+.*: file format elf32-cris
+
+Program Header:
+ LOAD off .*
+ filesz .*
+ LOAD off .*
+ filesz .*
+private flags = 0: