From: Iain Sandoe Date: Wed, 18 Aug 2010 08:21:43 +0000 (+0000) Subject: re PR debug/42487 (FAIL: gcc.dg/debug/dwarf2/aranges-fnsec-1.c scan-assembler DW_AT_r... X-Git-Tag: releases/gcc-4.6.0~4960 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=257f5167d8eaf554f6ed21a25883925d31ac26f5;p=thirdparty%2Fgcc.git 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 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 60c856d4ec06..5b5fb1f5ca6e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2010-08-18 Iain Sandoe + + 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 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 124e28eb7cea..8a97e4dc2ac4 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 */ /* { 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 1f591d85ecce..9cc9b6077b7e 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.