aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIain Sandoe <iains@gcc.gnu.org>2010-08-18 08:21:43 +0000
committerIain Sandoe <iains@gcc.gnu.org>2010-08-18 08:21:43 +0000
commit257f5167d8eaf554f6ed21a25883925d31ac26f5 (patch)
treef5506f9b52ae792aa93f78dae9d7130acdba793e /gcc
parent566ea2d10ee5c527aa2279c1ccfde6a79af7a33c (diff)
downloadgcc-257f5167d8eaf554f6ed21a25883925d31ac26f5.zip
gcc-257f5167d8eaf554f6ed21a25883925d31ac26f5.tar.gz
gcc-257f5167d8eaf554f6ed21a25883925d31ac26f5.tar.bz2
re PR debug/42487 (FAIL: gcc.dg/debug/dwarf2/aranges-fnsec-1.c scan-assembler DW_AT_ranges)
PR debug/42487 * lib/target-supports.exp (check_effective_target_function_sections): New. * gcc.dg/debug/dwarf2/aranges-fnsec-1.c: Check that the target supports function sections before proceding. From-SVN: r163326
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog8
-rw-r--r--gcc/testsuite/gcc.dg/debug/dwarf2/aranges-fnsec-1.c1
-rw-r--r--gcc/testsuite/lib/target-supports.exp14
3 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 60c856d..5b5fb1f 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2010-08-18 Iain Sandoe <iains@gcc.gnu.org>
+
+ PR debug/42487
+ * lib/target-supports.exp
+ (check_effective_target_function_sections): New.
+ * gcc.dg/debug/dwarf2/aranges-fnsec-1.c: Check that the target supports
+ function sections before proceding.
+
2010-08-17 Jakub Jelinek <jakub@redhat.com>
PR fortran/45308
diff --git a/gcc/testsuite/gcc.dg/debug/dwarf2/aranges-fnsec-1.c b/gcc/testsuite/gcc.dg/debug/dwarf2/aranges-fnsec-1.c
index 124e28e..8a97e4d 100644
--- a/gcc/testsuite/gcc.dg/debug/dwarf2/aranges-fnsec-1.c
+++ b/gcc/testsuite/gcc.dg/debug/dwarf2/aranges-fnsec-1.c
@@ -2,6 +2,7 @@
text section if nothing went in there. */
/* Origin: Joseph Myers <joseph@codesourcery.com> */
/* { dg-do compile } */
+/* { dg-require-effective-target function_sections } */
/* { dg-options "-gdwarf-2 -ffunction-sections -w -dA" } */
/* { dg-final { scan-assembler-not "\\.Letext0-\\.Ltext0" } } */
/* { dg-final { scan-assembler-not "\\.Ltext0\[^\n\r\]*Offset 0x0" } } */
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 1f591d8..9cc9b60 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -623,6 +623,20 @@ proc check_effective_target_tls_runtime {} {
}]
}
+# Return 1 if -ffunction-sections is supported, 0 otherwise.
+
+proc check_effective_target_function_sections {} {
+ # Darwin has its own scheme and silently accepts -ffunction-sections.
+ global target_triplet
+ if { [regexp ".*-.*-darwin.*" $target_triplet] } {
+ return 0
+ }
+
+ return [check_no_compiler_messages functionsections assembly {
+ void foo (void) { }
+ } "-ffunction-sections"]
+}
+
# Return 1 if compilation with -fgraphite is error-free for trivial
# code, 0 otherwise.