This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] Fix PR43751/target
- From: Jack Howarth <howarth at bromo dot med dot uc dot edu>
- To: gcc-patches at gcc dot gnu dot org
- Cc: mikestump at comcast dot net, iains at gcc dot gnu dot org
- Date: Sun, 5 Dec 2010 16:42:44 -0500
- Subject: [PATCH] Fix PR43751/target
Currently gcc trunk doesn't execute dsymutil for the fortran source types
so that the .dSYM directory for debugging on darwin isn't created. The
attached patch expands the source types in the definition of DSYMUTIL_SPEC.
Since dsymutil prior to Xcode 3.2.3 suffers from radar://7851516, regsub
statements are required in libstdc++-v3/testsuite/lib/prune.exp and
gcc/testsuite/lib/prune.exp to prune the additional warnings of the form...
warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4.
warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item TAG_subrange_type: attr = AT_lower_bound form = FORM_ref4.
warning: {0x0000026d} TAG_variable: AT_location( 0x00000000 ) didn't have valid function low pc, the location list will be incorrect.
which occurs in the gfortran and libstdc++-v3 testsuite under darwin9.
Bootstrap and regression tested on x86_64-apple-darwin9.
http://gcc.gnu.org/ml/gcc-testresults/2010-12/msg00380.html
Okay for gcc trunk?
Jack
2010-12-05 Jack Howarth <howarth@bromo.med.uc.edu>
Iain Sandoe <iains@gcc.gnu.org>
libstdc++-v3/testsuite/
PR 43751/target
lib/prune.exp: Prune dymutil warnings.
gcc/testsuite/
PR 43751/target
lib/prune.exp: Prune dymutil warnings.
gcc/
PR 43751/target
config/darwin9.h (DSYMUTIL_SPEC): Add fortran source types.
Index: libstdc++-v3/testsuite/lib/prune.exp
===================================================================
--- libstdc++-v3/testsuite/lib/prune.exp (revision 167457)
+++ libstdc++-v3/testsuite/lib/prune.exp (working copy)
@@ -49,6 +49,8 @@
# Ignore errata warning from IA64 assembler.
regsub -all "(^|\n)\[^\n\]*: Additional NOP may be necessary to workaround Itanium processor A/B step errata" $text "" text
regsub -all "(^|\n)\[^\n*\]*: Assembler messages:\[^\n\]*" $text "" text
+ # Ignore harmless warnings from Xcode earlier than 3.2.3.
+ regsub -all "(^|\n)\[^\n\]*warning: DWARFDebugInfoEntry::AppendDependants\[^\n\]*AT_\[^\n\]*_bound\[^\n\]*FORM_ref4\[^\n\]*" $text "" text
foreach p $additional_prunes {
if { [string length $p] > 0 } {
Index: gcc/testsuite/lib/prune.exp
===================================================================
--- gcc/testsuite/lib/prune.exp (revision 167457)
+++ gcc/testsuite/lib/prune.exp (working copy)
@@ -54,6 +54,9 @@
# Ignore harmless warnings from Xcode 3.2.x.
regsub -all "(^|\n)\[^\n\]*ld: warning: can't add line info to anonymous symbol\[^\n\]*" $text "" text
+ # Ignore harmless warnings from Xcode earlier than 3.2.3.
+ regsub -all "(^|\n)\[^\n\]*warning: DWARFDebugInfoEntry::AppendDependants\[^\n\]*AT_\[^\n\]*_bound\[^\n\]*FORM_ref4\[^\n\]*" $text "" text
+ regsub -all "(^|\n)\[^\n\]*warning:\[^\n\]*TAG_variable: AT_location\[^\n\]*didn't have valid function low pc\[^\n\]*" $text "" text
#send_user "After:$text\n"
Index: gcc/config/darwin9.h
===================================================================
--- gcc/config/darwin9.h (revision 167457)
+++ gcc/config/darwin9.h (working copy)
@@ -27,7 +27,7 @@
#undef DSYMUTIL_SPEC
#define DSYMUTIL_SPEC \
"%{!fdump=*:%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S:\
- %{.c|.cc|.C|.cpp|.cp|.c++|.cxx|.CPP|.m|.mm|.s: \
+ %{.c|.cc|.C|.cpp|.cp|.c++|.cxx|.CPP|.m|.mm|.s|.f|.f90|.f95|.f03|.f77|.for|.F|.F90|.F95|.F03: \
%{g*:%{!gstabs*:%{!g0: " DSYMUTIL " %{o*:%*}%{!o:a.out}}}}}}}}}}}}"
/* libSystem contains unwind information for signal frames. */