From 6782438df72d659f7ea62b40c274ca95b8a1ea54 Mon Sep 17 00:00:00 2001 From: Senthil Kumar Selvaraj Date: Wed, 10 Apr 2013 14:47:55 +0000 Subject: [PATCH] common.opt: Add -gdwarf. * common.opt: Add -gdwarf. * opts.c (common_handle_option): Handle it. * gcc.c (ASM_DEBUG_SPEC): Don't expect "-2" for DWARF. Co-Authored-By: Jason Merrill From-SVN: r197675 --- gcc/ChangeLog | 7 +++++++ gcc/common.opt | 6 +++++- gcc/gcc.c | 2 +- gcc/opts.c | 12 ++++++++++++ 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2a95de18..b9bee5e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2013-04-10 Senthil Kumar Selvaraj + Jason Merrill + + * common.opt: Add -gdwarf. + * opts.c (common_handle_option): Handle it. + * gcc.c (ASM_DEBUG_SPEC): Don't expect "-2" for DWARF. + 2013-04-10 Richard Biener * passes.c (execute_todo): Do not call ggc_collect conditional here. diff --git a/gcc/common.opt b/gcc/common.opt index e02e7ed..6b9b2e1 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -2308,9 +2308,13 @@ Common JoinedOrMissing Generate debug information in default format gcoff -Common JoinedOrMissing Negative(gdwarf-) +Common JoinedOrMissing Negative(gdwarf) Generate debug information in COFF format +gdwarf +Common JoinedOrMissing Negative(gdwarf-) +Generate debug information in default version of DWARF format + gdwarf- Common Joined UInteger Var(dwarf_version) Init(4) Negative(gstabs) Generate debug information in DWARF v2 (or later) format diff --git a/gcc/gcc.c b/gcc/gcc.c index 86077f8..bcfbfc8 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -627,7 +627,7 @@ proper position among the other output files. */ && defined(HAVE_AS_GDWARF2_DEBUG_FLAG) && defined(HAVE_AS_GSTABS_DEBUG_FLAG) # define ASM_DEBUG_SPEC \ (PREFERRED_DEBUGGING_TYPE == DBX_DEBUG \ - ? "%{!g0:%{gdwarf-2*:--gdwarf2}%{!gdwarf-2*:%{g*:--gstabs}}}" ASM_MAP \ + ? "%{!g0:%{gdwarf*:--gdwarf2}%{!gdwarf*:%{g*:--gstabs}}}" ASM_MAP \ : "%{!g0:%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}}" ASM_MAP) # else # if defined(DBX_DEBUGGING_INFO) && defined(HAVE_AS_GSTABS_DEBUG_FLAG) diff --git a/gcc/opts.c b/gcc/opts.c index 45b12fe..f96ed16 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -1699,6 +1699,18 @@ common_handle_option (struct gcc_options *opts, set_debug_level (SDB_DEBUG, false, arg, opts, opts_set, loc); break; + case OPT_gdwarf: + if (arg && strlen(arg) != 0) + { + error_at (loc, "%<-gdwarf%s%> is ambiguous; " + "use %<-gdwarf-%s%> for DWARF version " + "or %<-gdwarf -g%s%> for debug level", arg, arg, arg); + break; + } + else + { + value = opts->x_dwarf_version; + } case OPT_gdwarf_: if (value < 2 || value > 4) error_at (loc, "dwarf version %d is not supported", value); -- 2.7.4