aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2010-01-07 13:44:37 +0000
committerH.J. Lu <hjl.tools@gmail.com>2010-01-07 13:44:37 +0000
commit16583161e14cbe747e78da035790c48951884556 (patch)
treee1fbc701c4f2f9fde24733620bad0513cd286ac9 /ld
parent089b4803bf8f591e762c475dbabceb3c37d97ffc (diff)
downloadfsf-binutils-gdb-16583161e14cbe747e78da035790c48951884556.zip
fsf-binutils-gdb-16583161e14cbe747e78da035790c48951884556.tar.gz
fsf-binutils-gdb-16583161e14cbe747e78da035790c48951884556.tar.bz2
Always keep SHT_NOTE sections
bfd/ 2010-01-07 H.J. Lu <hongjiu.lu@intel.com> PR ld/11143 * elflink.c (elf_gc_sweep): Keep SHT_NOTE section. ld/testsuite/ 2010-01-07 H.J. Lu <hongjiu.lu@intel.com> PR ld/11143 * ld-gc/gc.exp: Run abi-note. * ld-gc/abi-note.d: New. * ld-gc/abi-note.s: Likewise.
Diffstat (limited to 'ld')
-rw-r--r--ld/testsuite/ChangeLog7
-rw-r--r--ld/testsuite/ld-gc/abi-note.d8
-rw-r--r--ld/testsuite/ld-gc/abi-note.s15
-rw-r--r--ld/testsuite/ld-gc/gc.exp3
4 files changed, 32 insertions, 1 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 4a2a6da..3320c13 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/11143
+ * ld-gc/gc.exp: Run abi-note.
+
+ * ld-gc/abi-note.d: New.
+ * ld-gc/abi-note.s: Likewise.
For older changes see ChangeLog-2009
diff --git a/ld/testsuite/ld-gc/abi-note.d b/ld/testsuite/ld-gc/abi-note.d
new file mode 100644
index 0000000..e802fe5
--- /dev/null
+++ b/ld/testsuite/ld-gc/abi-note.d
@@ -0,0 +1,8 @@
+#name: --gc-sections with note section
+#ld: --gc-sections -e _start
+#readelf: -S --wide
+#target: *-*-linux*
+
+#...
+.* .note.ABI-tag[ ]+NOTE.*
+#...
diff --git a/ld/testsuite/ld-gc/abi-note.s b/ld/testsuite/ld-gc/abi-note.s
new file mode 100644
index 0000000..22536c0
--- /dev/null
+++ b/ld/testsuite/ld-gc/abi-note.s
@@ -0,0 +1,15 @@
+ .text
+ .global _start
+_start:
+ .long 1
+
+ .section ".note.ABI-tag", "a"
+ .p2align 2
+ .long 1f - 0f /* name length */
+ .long 3f - 2f /* data length */
+ .long 1 /* note type */
+0: .asciz "GNU" /* vendor name */
+1: .p2align 2
+2: .long 1
+ .long 2
+3: .p2align 2 /* pad out section */
diff --git a/ld/testsuite/ld-gc/gc.exp b/ld/testsuite/ld-gc/gc.exp
index c85d4f2..36df233 100644
--- a/ld/testsuite/ld-gc/gc.exp
+++ b/ld/testsuite/ld-gc/gc.exp
@@ -1,5 +1,5 @@
# Expect script for ld-gc tests
-# Copyright 2008, 2009
+# Copyright 2008, 2009, 2010
# Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
@@ -90,3 +90,4 @@ test_gc "Check --gc-section/-r/-e" "gcrel" $ld "-r --gc-sections -e main"
test_gc "Check --gc-section/-r/-u" "gcrel" $ld "-r --gc-sections -u used_func"
run_dump_test "noent"
+run_dump_test "abi-note"