summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.nd
diff options
context:
space:
mode:
Diffstat (limited to 'ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.nd')
-rw-r--r--ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.nd40
1 files changed, 40 insertions, 0 deletions
diff --git a/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.nd b/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.nd
new file mode 100644
index 0000000..f93c741
--- /dev/null
+++ b/ld/testsuite/ld-mips-elf/pic-and-nonpic-6-n32.nd
@@ -0,0 +1,40 @@
+
+Symbol table '\.dynsym' contains .*:
+#
+# extf4 is referenced by a JAL and .word. The former requires a PLT entry
+# and the latter requires pointer equality, which means a symbol value is
+# needed.
+#...
+.*: 0+43060 +0 +FUNC +GLOBAL +DEFAULT \[MIPS PLT\] +UND +extf4
+#
+# extf5 is called but does not have its address taken. It needs a PLT
+# but no symbol value should be set.
+#...
+.*: 0+ +0 +FUNC +GLOBAL +DEFAULT +UND +extf5
+#
+# extd2 is referenced by %got, .word and %hi/%lo. The last pair forces
+# a copy reloc.
+#
+.*: 0+a2000 +24 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +extd2
+#
+# extf3 is referenced by a JAL and a GOT CALL reloc. The JAL forces a PLT
+# that the GOT CALL reloc will also use, but pointer equality isn't needed
+# and so no symbol value should be set.
+#
+.*: 0+ +0 +FUNC +GLOBAL +DEFAULT +UND +extf3
+#
+# extd3 is referenced by .word and %hi/%lo. The latter pair forces
+# a copy reloc.
+#...
+.*: 0+a2018 +28 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +extd3
+#
+# The index on the next line should correspond to MIPS_GOTSYM,
+# and the remaining symbols should have the same order as the
+# GOT layout given in the *.dd dump.
+#
+ *8: 0+ +0 +FUNC +GLOBAL +DEFAULT +UND +extf2
+ *9: 0+440a0 +0 +FUNC +GLOBAL +DEFAULT +UND +extf1
+ *10: 0+ +0 +OBJECT +GLOBAL +DEFAULT +UND +extd1
+ *11: 0+ +0 +OBJECT +GLOBAL +DEFAULT +UND +extd4
+
+#pass