aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-mips-elf/pic-reloc-7.d
diff options
context:
space:
mode:
authorFaraz Shahbazker <fshahbazker@wavecomp.com>2019-05-18 01:19:03 -0700
committerFaraz Shahbazker <fshahbazker@wavecomp.com>2019-05-21 11:55:08 -0700
commit304f09d0d4b519f143144d213e1280a0691de8ba (patch)
treed5baa5160d5ed5001a91c77672f14a95ce5abde3 /ld/testsuite/ld-mips-elf/pic-reloc-7.d
parentba6cd17f0a28e54d9b4ef46397d448f1d208d9a0 (diff)
downloadgdb-304f09d0d4b519f143144d213e1280a0691de8ba.zip
gdb-304f09d0d4b519f143144d213e1280a0691de8ba.tar.gz
gdb-304f09d0d4b519f143144d213e1280a0691de8ba.tar.bz2
MIPS/LD: Fix memory fault linking non-PIC object in to shared library
bfd/ * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer checks. Search the RELA table for n64 relocations. ld/ * testsuite/ld-mips-elf/pic-reloc-5.d: New test. * testsuite/ld-mips-elf/pic-reloc-6.d: New test. * testsuite/ld-mips-elf/pic-reloc-7.d: New test. * testsuite/ld-mips-elf/pic-reloc-5.s: New test source. * testsuite/ld-mips-elf/pic-reloc-6.s: New test source. * testsuite/ld-mips-elf/pic-reloc-7.s: New test source. * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
Diffstat (limited to 'ld/testsuite/ld-mips-elf/pic-reloc-7.d')
-rw-r--r--ld/testsuite/ld-mips-elf/pic-reloc-7.d8
1 files changed, 8 insertions, 0 deletions
diff --git a/ld/testsuite/ld-mips-elf/pic-reloc-7.d b/ld/testsuite/ld-mips-elf/pic-reloc-7.d
new file mode 100644
index 0000000..e5dfa58
--- /dev/null
+++ b/ld/testsuite/ld-mips-elf/pic-reloc-7.d
@@ -0,0 +1,8 @@
+#name: MIPS PIC relocation 7
+#ld: -shared -T pic-reloc-ordinary.ld
+#target: [check_shared_lib_support]
+#error: \A[^\n]*: in function `foo':\n
+#error: \(\.text\+0x0\): relocation R_(MICRO|)MIPS_HIGHEST against `a local symbol' cannot be used when making a shared object; recompile with -fPIC\n
+#error: \(\.text\+0x4\): relocation R_(MICRO|)MIPS_HIGHER against `a local symbol' cannot be used when making a shared object; recompile with -fPIC\n
+#error: \(\.text\+0x8\): relocation R_(MICRO|)MIPS_HIGHEST against `bar' cannot be used when making a shared object; recompile with -fPIC\n
+#error: \(\.text\+0xc\): relocation R_(MICRO|)MIPS_HIGHER against `bar' cannot be used when making a shared object; recompile with -fPIC\Z