Patchwork fix PR bootstrap/48471

login
register
mail settings
Submitter Tristan Gingold
Date April 6, 2011, 7:44 a.m.
Message ID <8A64F4A5-F1F5-48D9-B3EF-CFB63546D531@adacore.com>
Download mbox | patch
Permalink /patch/89993/
State New
Headers show

Comments

Tristan Gingold - April 6, 2011, 7:44 a.m.
On Apr 6, 2011, at 3:06 AM, Nathan Froyd wrote:

> My changes that moved bits of final.c to dbxout.c caused compilation
> failures on targets that *didn't* enable DBX_DEBUGGING_INFO, since some
> now-static symbols could be unused.  To fix this, the patch below moves
> all the new static variables and two macros that use some of said
> variables below an #ifdef DBX_DEBUGGING_INFO.  Steve Ellcey verified
> that the patch fixes the problems on ia64-hp-hpux11.23 (thanks Steve!)
> and I verified that the changes still bootstrap on
> x86_64-unknown-linux-gnu.
> 
> Committed as obvious.  Sorry about all the build breakage today, not one
> of my better cleanup days...

Nathan,

bootstrap still fails for xcoff targets (eg aix).  I can fix the failure with this patch.

Ok for trunk ?

Tristan.

2011-04-06  Tristan Gingold  <gingold@adacore.com>

	* dbxout.c: (debug_nesting, symbol_queue, symbol_queue_index)
	(symbol_queue_size, DBXOUT_DECR_NESTING)
	(DBXOUT_DECR_NESTING_AND_RETURN): Also define
	if XCOFF_DEBUGGING_INFO.
Richard Guenther - April 6, 2011, 9:19 a.m.
On Wed, Apr 6, 2011 at 9:44 AM, Tristan Gingold <gingold@adacore.com> wrote:
>
> On Apr 6, 2011, at 3:06 AM, Nathan Froyd wrote:
>
>> My changes that moved bits of final.c to dbxout.c caused compilation
>> failures on targets that *didn't* enable DBX_DEBUGGING_INFO, since some
>> now-static symbols could be unused.  To fix this, the patch below moves
>> all the new static variables and two macros that use some of said
>> variables below an #ifdef DBX_DEBUGGING_INFO.  Steve Ellcey verified
>> that the patch fixes the problems on ia64-hp-hpux11.23 (thanks Steve!)
>> and I verified that the changes still bootstrap on
>> x86_64-unknown-linux-gnu.
>>
>> Committed as obvious.  Sorry about all the build breakage today, not one
>> of my better cleanup days...
>
> Nathan,
>
> bootstrap still fails for xcoff targets (eg aix).  I can fix the failure with this patch.
>
> Ok for trunk ?

Ok.

Thanks,
Richard.

> Tristan.
>
> 2011-04-06  Tristan Gingold  <gingold@adacore.com>
>
>        * dbxout.c: (debug_nesting, symbol_queue, symbol_queue_index)
>        (symbol_queue_size, DBXOUT_DECR_NESTING)
>        (DBXOUT_DECR_NESTING_AND_RETURN): Also define
>        if XCOFF_DEBUGGING_INFO.
>
> --- a/gcc/dbxout.c
> +++ b/gcc/dbxout.c
> @@ -903,7 +903,7 @@ dbxout_finish_complex_stabs (tree sym, stab_code_type code,
>   obstack_free (&stabstr_ob, str);
>  }
>
> -#if defined (DBX_DEBUGGING_INFO)
> +#if defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO)
>
>  /* When -gused is used, emit debug info for only used symbols. But in
>    addition to the standard intercepted debug_hooks there are some
> @@ -926,6 +926,10 @@ static int symbol_queue_size = 0;
>  #define DBXOUT_DECR_NESTING_AND_RETURN(x) \
>   do {--debug_nesting; return (x);} while (0)
>
> +#endif /* DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO */
> +
> +#if defined (DBX_DEBUGGING_INFO)
> +
>  static void
>  dbxout_function_end (tree decl ATTRIBUTE_UNUSED)
>  {
>
>

Patch

--- a/gcc/dbxout.c
+++ b/gcc/dbxout.c
@@ -903,7 +903,7 @@  dbxout_finish_complex_stabs (tree sym, stab_code_type code,
   obstack_free (&stabstr_ob, str);
 }
 
-#if defined (DBX_DEBUGGING_INFO)
+#if defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO)
 
 /* When -gused is used, emit debug info for only used symbols. But in
    addition to the standard intercepted debug_hooks there are some
@@ -926,6 +926,10 @@  static int symbol_queue_size = 0;
 #define DBXOUT_DECR_NESTING_AND_RETURN(x) \
   do {--debug_nesting; return (x);} while (0)
 
+#endif /* DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO */
+
+#if defined (DBX_DEBUGGING_INFO)
+
 static void
 dbxout_function_end (tree decl ATTRIBUTE_UNUSED)
 {