Re: [PATCH] More trivial bits from early LTO debug merge

2016-10-12 Thread Thomas Schwinge
Hi!

On Mon, 19 Sep 2016 09:53:13 +0200 (CEST), Richard Biener  
wrote:
>   * debug.h (gcc_debug_hooks): Add filename parameter to early_finish
>   hook.
>   [...]

With contrib/config-list.mk testing, I noticed another one that needed to
be updated; log/alpha-dec-vms-make.out, log/alpha64-dec-vms-make.out,
log/ia64-hp-vms-make.out:

[...]/source-gcc/gcc/vmsdbgout.c:209:1: error: invalid conversion from 
'void (*)()' to 'void (*)(const char*)' [-fpermissive]
 };
 ^
make[2]: *** [vmsdbgout.o] Error 1

As obvious, committed to trunk in r241042:

commit 706cf22169f5881765aa12affda63d80b372e47d
Author: tschwinge 
Date:   Wed Oct 12 13:08:53 2016 +

Fix gcc/vmsdbgout.c:vmsdbg_debug_hooks for "More trivial bits from early 
LTO debug merge"

gcc/
* vmsdbgout.c (vmsdbg_debug_hooks): Add filename parameter to
early_finish hook.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@241042 
138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog   | 5 +
 gcc/vmsdbgout.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git gcc/ChangeLog gcc/ChangeLog
index 8044af0..e57438e 100644
--- gcc/ChangeLog
+++ gcc/ChangeLog
@@ -1,3 +1,8 @@
+2016-10-12  Thomas Schwinge  
+
+   * vmsdbgout.c (vmsdbg_debug_hooks): Add filename parameter to
+   early_finish hook.
+
 2016-10-12  Georg-Johann Lay  
 
* rtl.h (struct rtx_def): Comment how RTX_FLAGS will be
diff --git gcc/vmsdbgout.c gcc/vmsdbgout.c
index 7c6d64d..23f7631 100644
--- gcc/vmsdbgout.c
+++ gcc/vmsdbgout.c
@@ -174,7 +174,7 @@ static void vmsdbgout_abstract_function (tree);
 const struct gcc_debug_hooks vmsdbg_debug_hooks
 = {vmsdbgout_init,
vmsdbgout_finish,
-   debug_nothing_void,
+   debug_nothing_charstar,
vmsdbgout_assembly_start,
vmsdbgout_define,
vmsdbgout_undef,


Grüße
 Thomas


Re: [PATCH] More trivial bits from early LTO debug merge

2016-09-21 Thread Richard Biener
On Tue, 20 Sep 2016, David Edelsohn wrote:

> dbxout.c has two definitions of the structure: dbx and xcoff.  The
> patch forgot to update the xcoff one (lucky AIX :-).

Oops, sorry.  I wonder why this is all guarded by
#if defined (XCOFF_DEBUGGING_INFO)?  Ah, for some reason everything it
references is not in this file (ok, most of it ...).

Richard.

> * dbxout.c (xcoff_debug_hooks):  Add filename parameter to early_finish hook.
> 
> Thanks, David
> 
> Index: dbxout.c
> ===
> --- dbxout.c(revision 240270)
> +++ dbxout.c(working copy)
> @@ -388,8 +388,8 @@ const struct gcc_debug_hooks xcoff_debug_hooks =
>  {
>dbxout_init,
>dbxout_finish,
> +  debug_nothing_charstar,
>debug_nothing_void,
> -  debug_nothing_void,
>debug_nothing_int_charstar,
>debug_nothing_int_charstar,
>dbxout_start_source_file,
> 
> 

-- 
Richard Biener 
SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Graham Norton, HRB 
21284 (AG Nuernberg)


Re: [PATCH] More trivial bits from early LTO debug merge

2016-09-20 Thread David Edelsohn
dbxout.c has two definitions of the structure: dbx and xcoff.  The
patch forgot to update the xcoff one (lucky AIX :-).

* dbxout.c (xcoff_debug_hooks):  Add filename parameter to early_finish hook.

Thanks, David

Index: dbxout.c
===
--- dbxout.c(revision 240270)
+++ dbxout.c(working copy)
@@ -388,8 +388,8 @@ const struct gcc_debug_hooks xcoff_debug_hooks =
 {
   dbxout_init,
   dbxout_finish,
+  debug_nothing_charstar,
   debug_nothing_void,
-  debug_nothing_void,
   debug_nothing_int_charstar,
   debug_nothing_int_charstar,
   dbxout_start_source_file,


Re: [PATCH] More trivial bits from early LTO debug merge

2016-09-19 Thread Jason Merrill
OK.

On Mon, Sep 19, 2016 at 3:53 AM, Richard Biener  wrote:
>
> This merges moving filename and related CU annotation from late finish
> to early finish.  With this all changes to cgraphunit.c have been merged.
>
> [LTO] Bootstrap and test running on x86_64-unknown-linux-gnu.
>
> Richard.
>
> 2016-09-19  Richard Biener  
>
> * debug.h (gcc_debug_hooks): Add filename parameter to early_finish
> hook.
> * debug.c (do_nothing_debug_hooks): Adjust.
> * dbxout.c (dbx_debug_hooks): Likewise.
> * sdbout.c (sdb_debug_hooks): Likewise.
> * dwarf2out.c (dwarf2_lineno_debug_hooks): Likewise.
> (dwarf2out_finish): Move producer, filename and
> path annotation ...
> (dwarf2out_early_finish): ... here.  Remove in_lto_p special-casing.
> * cgraphunit.c (symbol_table::finalize_compilation_unit): Adjust.
>
> lto/
> * lto.c (lto_main): Call early_finish with "" as
> filename.
>
> Index: gcc/debug.h
> ===
> --- gcc/debug.h (revision 240228)
> +++ gcc/debug.h (working copy)
> @@ -31,7 +31,7 @@ struct gcc_debug_hooks
>void (* finish) (const char *main_filename);
>
>/* Run cleanups necessary after early debug generation.  */
> -  void (* early_finish) (void);
> +  void (* early_finish) (const char *main_filename);
>
>/* Called from cgraph_optimize before starting to assemble
>   functions/variables/toplevel asms.  */
> Index: gcc/debug.c
> ===
> --- gcc/debug.c (revision 240228)
> +++ gcc/debug.c (working copy)
> @@ -26,7 +26,7 @@ const struct gcc_debug_hooks do_nothing_
>  {
>debug_nothing_charstar,
>debug_nothing_charstar,
> -  debug_nothing_void,  /* early_finish */
> +  debug_nothing_charstar,  /* early_finish */
>debug_nothing_void,
>debug_nothing_int_charstar,
>debug_nothing_int_charstar,
> Index: gcc/dbxout.c
> ===
> --- gcc/dbxout.c(revision 240228)
> +++ gcc/dbxout.c(working copy)
> @@ -344,7 +344,7 @@ const struct gcc_debug_hooks dbx_debug_h
>  {
>dbxout_init,
>dbxout_finish,
> -  debug_nothing_void,
> +  debug_nothing_charstar,
>debug_nothing_void,
>debug_nothing_int_charstar,
>debug_nothing_int_charstar,
> Index: gcc/sdbout.c
> ===
> --- gcc/sdbout.c(revision 240228)
> +++ gcc/sdbout.c(working copy)
> @@ -277,7 +277,7 @@ const struct gcc_debug_hooks sdb_debug_h
>  {
>sdbout_init,  /* init */
>sdbout_finish,/* finish */
> -  debug_nothing_void,   /* early_finish */
> +  debug_nothing_charstar,   /* early_finish */
>debug_nothing_void,   /* assembly_start */
>debug_nothing_int_charstar,   /* define */
>debug_nothing_int_charstar,   /* undef */
> Index: gcc/cgraphunit.c
> ===
> --- gcc/cgraphunit.c(revision 240228)
> +++ gcc/cgraphunit.c(working copy)
> @@ -2561,7 +2564,7 @@ symbol_table::finalize_compilation_unit
>
>/* Clean up anything that needs cleaning up after initial debug
>  generation.  */
> -  (*debug_hooks->early_finish) ();
> +  (*debug_hooks->early_finish) (main_input_filename);
>  }
>
>/* Finally drive the pass manager.  */
> Index: gcc/lto/lto.c
> ===
> --- gcc/lto/lto.c   (revision 240228)
> +++ gcc/lto/lto.c   (working copy)
> @@ -3316,7 +3316,7 @@ lto_main (void)
> lto_promote_statics_nonwpa ();
>
>   /* Annotate the CU DIE and mark the early debug phase as finished.  
> */
> - debug_hooks->early_finish ();
> + debug_hooks->early_finish ("");
>
>   /* Let the middle end know that we have read and merged all of
>  the input files.  */
> Index: gcc/dwarf2out.c
> ===
> --- gcc/dwarf2out.c (revision 240228)
> +++ gcc/dwarf2out.c (working copy)
> @@ -2480,7 +2480,7 @@ build_cfa_aligned_loc (dw_cfa_location *
>
>  static void dwarf2out_init (const char *);
>  static void dwarf2out_finish (const char *);
> -static void dwarf2out_early_finish (void);
> +static void dwarf2out_early_finish (const char *);
>  static void dwarf2out_assembly_start (void);
>  static void dwarf2out_define (unsigned int, const char *);
>  static void dwarf2out_undef (unsigned int, const char *);
> @@ -2556,7 +2556,7 @@ const struct gcc_debug_hooks dwarf2_line
>  {
>dwarf2out_init,
>debug_nothing_charstar,
> -  debug_nothing_void,
> +  debug_nothing_charstar,
>debug_nothing_void,
>debug_nothing_int_charstar,
>debug_

[PATCH] More trivial bits from early LTO debug merge

2016-09-19 Thread Richard Biener

This merges moving filename and related CU annotation from late finish
to early finish.  With this all changes to cgraphunit.c have been merged.

[LTO] Bootstrap and test running on x86_64-unknown-linux-gnu.

Richard.

2016-09-19  Richard Biener  

* debug.h (gcc_debug_hooks): Add filename parameter to early_finish
hook.
* debug.c (do_nothing_debug_hooks): Adjust.
* dbxout.c (dbx_debug_hooks): Likewise.
* sdbout.c (sdb_debug_hooks): Likewise.
* dwarf2out.c (dwarf2_lineno_debug_hooks): Likewise.
(dwarf2out_finish): Move producer, filename and
path annotation ...
(dwarf2out_early_finish): ... here.  Remove in_lto_p special-casing.
* cgraphunit.c (symbol_table::finalize_compilation_unit): Adjust.

lto/
* lto.c (lto_main): Call early_finish with "" as
filename.

Index: gcc/debug.h
===
--- gcc/debug.h (revision 240228)
+++ gcc/debug.h (working copy)
@@ -31,7 +31,7 @@ struct gcc_debug_hooks
   void (* finish) (const char *main_filename);
 
   /* Run cleanups necessary after early debug generation.  */
-  void (* early_finish) (void);
+  void (* early_finish) (const char *main_filename);
 
   /* Called from cgraph_optimize before starting to assemble
  functions/variables/toplevel asms.  */
Index: gcc/debug.c
===
--- gcc/debug.c (revision 240228)
+++ gcc/debug.c (working copy)
@@ -26,7 +26,7 @@ const struct gcc_debug_hooks do_nothing_
 {
   debug_nothing_charstar,
   debug_nothing_charstar,
-  debug_nothing_void,  /* early_finish */
+  debug_nothing_charstar,  /* early_finish */
   debug_nothing_void,
   debug_nothing_int_charstar,
   debug_nothing_int_charstar,
Index: gcc/dbxout.c
===
--- gcc/dbxout.c(revision 240228)
+++ gcc/dbxout.c(working copy)
@@ -344,7 +344,7 @@ const struct gcc_debug_hooks dbx_debug_h
 {
   dbxout_init,
   dbxout_finish,
-  debug_nothing_void,
+  debug_nothing_charstar,
   debug_nothing_void,
   debug_nothing_int_charstar,
   debug_nothing_int_charstar,
Index: gcc/sdbout.c
===
--- gcc/sdbout.c(revision 240228)
+++ gcc/sdbout.c(working copy)
@@ -277,7 +277,7 @@ const struct gcc_debug_hooks sdb_debug_h
 {
   sdbout_init,  /* init */
   sdbout_finish,/* finish */
-  debug_nothing_void,   /* early_finish */
+  debug_nothing_charstar,   /* early_finish */
   debug_nothing_void,   /* assembly_start */
   debug_nothing_int_charstar,   /* define */
   debug_nothing_int_charstar,   /* undef */
Index: gcc/cgraphunit.c
===
--- gcc/cgraphunit.c(revision 240228)
+++ gcc/cgraphunit.c(working copy)
@@ -2561,7 +2564,7 @@ symbol_table::finalize_compilation_unit
 
   /* Clean up anything that needs cleaning up after initial debug
 generation.  */
-  (*debug_hooks->early_finish) ();
+  (*debug_hooks->early_finish) (main_input_filename);
 }
 
   /* Finally drive the pass manager.  */
Index: gcc/lto/lto.c
===
--- gcc/lto/lto.c   (revision 240228)
+++ gcc/lto/lto.c   (working copy)
@@ -3316,7 +3316,7 @@ lto_main (void)
lto_promote_statics_nonwpa ();
 
  /* Annotate the CU DIE and mark the early debug phase as finished.  */
- debug_hooks->early_finish ();
+ debug_hooks->early_finish ("");
 
  /* Let the middle end know that we have read and merged all of
 the input files.  */ 
Index: gcc/dwarf2out.c
===
--- gcc/dwarf2out.c (revision 240228)
+++ gcc/dwarf2out.c (working copy)
@@ -2480,7 +2480,7 @@ build_cfa_aligned_loc (dw_cfa_location *
 
 static void dwarf2out_init (const char *);
 static void dwarf2out_finish (const char *);
-static void dwarf2out_early_finish (void);
+static void dwarf2out_early_finish (const char *);
 static void dwarf2out_assembly_start (void);
 static void dwarf2out_define (unsigned int, const char *);
 static void dwarf2out_undef (unsigned int, const char *);
@@ -2556,7 +2556,7 @@ const struct gcc_debug_hooks dwarf2_line
 {
   dwarf2out_init,
   debug_nothing_charstar,
-  debug_nothing_void,
+  debug_nothing_charstar,
   debug_nothing_void,
   debug_nothing_int_charstar,
   debug_nothing_int_charstar,
@@ -27804,7 +27804,7 @@ flush_limbo_die_list (void)
and generate the DWARF-2 debugging info.  */
 
 static void
-dwarf2out_finish (const char *filename)
+dwarf2out_finish (const char *)
 {
   comdat_type_node *ctnode;
   dw_die_ref main_comp_unit_die;
@@ -27816,34 +