aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-x86-64/ifunc.d
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2008-12-04 11:00:18 +0000
committerNick Clifton <nickc@redhat.com>2008-12-04 11:00:18 +0000
commit137627db10bc0dedd3e2f58b9e4e054c816dd41c (patch)
tree080bf5bfc5e1e8f6eac407708e05800862e3a68f /ld/testsuite/ld-x86-64/ifunc.d
parent2f3bb96af7966880e7378a1633f6ffe1ea7a6587 (diff)
downloadgdb-137627db10bc0dedd3e2f58b9e4e054c816dd41c.zip
gdb-137627db10bc0dedd3e2f58b9e4e054c816dd41c.tar.gz
gdb-137627db10bc0dedd3e2f58b9e4e054c816dd41c.tar.bz2
* ld-x86-64/ifunc.d: New test (of STT_IFUNC for x86_64).
* ld-x86-64/ifunc.s: Source file for new test. * ld-x86-64/x86-64.exp: Run the new test. * ld-i386/ifunc.d: Tidy up regexps for expected output.
Diffstat (limited to 'ld/testsuite/ld-x86-64/ifunc.d')
-rw-r--r--ld/testsuite/ld-x86-64/ifunc.d14
1 files changed, 14 insertions, 0 deletions
diff --git a/ld/testsuite/ld-x86-64/ifunc.d b/ld/testsuite/ld-x86-64/ifunc.d
new file mode 100644
index 0000000..1f147e3
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/ifunc.d
@@ -0,0 +1,14 @@
+#name: Generation of dynamic relocs for STT_IFUNC symbols
+#source: ifunc.s
+#ld: --defsym _start=0 --defsym puts=0 --defsym rand=0 --defsym printf=0
+#readelf: --relocs --syms
+
+Relocation section '.rela.ifunc.dyn' at offset 0x[0-9a-f]+ contains 2 entries:
+ +Offset +Info +Type +Sym. Value +Sym. Name \+ Addend
+[0-9a-f]+ 0+20+2 R_X86_64_PC32 .*
+[0-9a-f]+ 0+10+2 R_X86_64_PC32 .*
+#...
+ ..: [0-9a-f]+ .. IFUNC GLOBAL DEFAULT .. long_func_name
+#...
+ ..: [0-9a-f]+ .. IFUNC GLOBAL DEFAULT .. func
+#pass