summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoland McGrath <[email protected]>2005-12-12 00:04:33 +0000
committerRoland McGrath <[email protected]>2005-12-12 00:04:33 +0000
commitba72ab102a8ca35371072311379d2474f8ec674f (patch)
treeae3d29685a0d0e5a61df84cdbfe3b888af132fb3
parentf64a44262134500154f96c368a7d3d6e59f593c6 (diff)
merge of 9439e2a1c1530d75ff753bccf8e64bd1f560e60f
and c32e76fd50f8c65de92bccb5f68a19d91d1dedc9
-rw-r--r--backends/ChangeLog4
-rw-r--r--backends/common-reloc.c11
-rw-r--r--tests/ChangeLog6
-rw-r--r--tests/Makefile.am4
-rwxr-xr-xtests/run-readelf-test1.sh40
5 files changed, 58 insertions, 7 deletions
diff --git a/backends/ChangeLog b/backends/ChangeLog
index defd725f..2c05737b 100644
--- a/backends/ChangeLog
+++ b/backends/ChangeLog
@@ -1,3 +1,7 @@
+2005-12-10 Ulrich Drepper
+
+ * common-reloc.c (R_NAME): Generate string correctly.
+
2005-12-05 Roland McGrath <[email protected]>
* i386_regs.c (i386_register_name): Use a table for the first 8 regs.
diff --git a/backends/common-reloc.c b/backends/common-reloc.c
index 0575e131..b1805373 100644
--- a/backends/common-reloc.c
+++ b/backends/common-reloc.c
@@ -14,11 +14,12 @@
#include "libebl_CPU.h"
#include <assert.h>
-#define R_TYPE(name) PASTE (RELOC_PREFIX, name)
-#define PASTE(a, b) PASTE_1 (a, b)
-#define PASTE_1(a, b) a##b
-#define R_NAME(name) R_NAME_1 (R_TYPE (name))
-#define R_NAME_1(type) #type
+#define R_TYPE(name) PASTE (RELOC_PREFIX, name)
+#define PASTE(a, b) PASTE_1 (a, b)
+#define PASTE_1(a, b) a##b
+#define R_NAME(name) R_NAME_1 (RELOC_PREFIX, name)
+#define R_NAME_1(prefix, type) R_NAME_2 (prefix, type)
+#define R_NAME_2(prefix, type) #prefix #type
#define RELOC_TYPES STRINGIFIED_PASTE (BACKEND, reloc.def)
#define STRINGIFIED_PASTE(a, b) STRINGIFY (PASTE (a, b))
diff --git a/tests/ChangeLog b/tests/ChangeLog
index 43e6bbe5..d2e38759 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,9 @@
+2005-12-10 Ulrich Drepper <[email protected]
+
+ * run-readelf-test1.sh: New file.
+ * Makefile.am (TESTS): Add run-readelf-test1.sh.
+ (EXTRA_DIST): Likewise.
+
2005-12-07 Roland McGrath <[email protected]>
* ecp.c (main): Use elf_end to clean up.
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 04467596..4da3bed4 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -58,7 +58,7 @@ TESTS = run-arextract.sh run-arsymtest.sh newfile test-nlist \
run-elflint-test.sh run-elflint-self.sh run-ranlib-test.sh \
run-ranlib-test2.sh run-ranlib-test3.sh run-ranlib-test4.sh \
run-addrscopes.sh run-strings-test.sh run-funcscopes.sh \
- run-find-prologues.sh run-allregs.sh
+ run-find-prologues.sh run-allregs.sh run-readelf-test1.sh
# run-show-ciefde.sh
if !STANDALONE
@@ -94,7 +94,7 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh \
testfile20.bz2 testfile20.index.bz2 \
testfile21.bz2 testfile21.index.bz2 \
testfile22.bz2 testfile23.bz2 testfile24.bz2 testfile25.bz2 \
- coverage.sh test-subr.sh test-wrapper.sh
+ coverage.sh test-subr.sh test-wrapper.sh run-readelf-test1.sh
installed_TESTS_ENVIRONMENT = libdir=$(DESTDIR)$(libdir) \
bindir=$(DESTDIR)$(bindir) \
diff --git a/tests/run-readelf-test1.sh b/tests/run-readelf-test1.sh
new file mode 100755
index 00000000..5cd4a2ce
--- /dev/null
+++ b/tests/run-readelf-test1.sh
@@ -0,0 +1,40 @@
+#! /bin/sh
+# Copyright (C) 2005 Red Hat, Inc.
+# Written by Ulrich Drepper <[email protected]>, 2005.
+#
+# This program is Open Source software; you can redistribute it and/or
+# modify it under the terms of the Open Software License version 1.0 as
+# published by the Open Source Initiative.
+#
+# You should have received a copy of the Open Software License along
+# with this program; if not, you may obtain a copy of the Open Software
+# License version 1.0 from http://www.opensource.org/licenses/osl.php or
+# by writing the Open Source Initiative c/o Lawrence Rosen, Esq.,
+# 3001 King Ranch Road, Ukiah, CA 95482.
+. $srcdir/test-subr.sh
+
+original=${original:-testfile11}
+stripped=${stripped:-testfile7}
+debugout=${debugfile:+-f testfile.debug.temp -F $debugfile}
+
+testfiles testfile3
+
+tempfiles testfile.temp
+
+testrun ../src/readelf -r testfile3 > testfile.temp
+
+diff -u - testfile.temp <<EOF
+
+Relocation section [ 8] '.rel.got' for section [19] '.got' at offset 0x294 contains 1 entry:
+ Offset Type Value Name
+ 0x08049544 386_GLOB_DAT 0000000000 __gmon_start__
+
+Relocation section [ 9] '.rel.plt' for section [11] '.plt' at offset 0x29c contains 4 entries:
+ Offset Type Value Name
+ 0x08049534 386_JMP_SLOT 0x080482e4 __register_frame_info
+ 0x08049538 386_JMP_SLOT 0x080482f4 __deregister_frame_info
+ 0x0804953c 386_JMP_SLOT 0x08048304 __libc_start_main
+ 0x08049540 386_JMP_SLOT 0x08048314 __cxa_finalize
+EOF
+
+exit 0