summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog100
-rw-r--r--gcc/bitmap.c6
-rw-r--r--gcc/c-common.c2
-rw-r--r--gcc/c-pretty-print.c2
-rw-r--r--gcc/cfg.c8
-rw-r--r--gcc/cfganal.c4
-rw-r--r--gcc/cfghooks.c2
-rw-r--r--gcc/cfglayout.c2
-rw-r--r--gcc/cfgloop.c2
-rw-r--r--gcc/cgraph.c4
-rw-r--r--gcc/cgraphunit.c4
-rw-r--r--gcc/df-core.c22
-rw-r--r--gcc/dominance.c6
-rw-r--r--gcc/dwarf2out.c4
-rw-r--r--gcc/ebitmap.c2
-rw-r--r--gcc/emit-rtl.c2
-rw-r--r--gcc/except.c4
-rw-r--r--gcc/fold-const.c2
-rw-r--r--gcc/function.c2
-rw-r--r--gcc/genrecog.c4
-rw-r--r--gcc/ggc-page.c2
-rw-r--r--gcc/gimple-pretty-print.c4
-rw-r--r--gcc/graphite-clast-to-gimple.c6
-rw-r--r--gcc/graphite-dependences.c2
-rw-r--r--gcc/graphite-poly.c26
-rw-r--r--gcc/graphite-ppl.c6
-rw-r--r--gcc/ipa.c4
-rw-r--r--gcc/omega.c2
-rw-r--r--gcc/omp-low.c4
-rw-r--r--gcc/optabs.c2
-rw-r--r--gcc/passes.c8
-rw-r--r--gcc/plugin.c4
-rw-r--r--gcc/print-rtl.c10
-rw-r--r--gcc/print-tree.c4
-rw-r--r--gcc/regcprop.c2
-rw-r--r--gcc/reload.c4
-rw-r--r--gcc/sbitmap.c2
-rw-r--r--gcc/sched-deps.c2
-rw-r--r--gcc/sched-rgn.c10
-rw-r--r--gcc/sched-vis.c6
-rw-r--r--gcc/sel-sched-dump.c22
-rw-r--r--gcc/sese.c4
-rw-r--r--gcc/stor-layout.c2
-rw-r--r--gcc/system.h10
-rw-r--r--gcc/tree-affine.c2
-rw-r--r--gcc/tree-cfg.c12
-rw-r--r--gcc/tree-data-ref.c14
-rw-r--r--gcc/tree-dfa.c6
-rw-r--r--gcc/tree-eh.c4
-rw-r--r--gcc/tree-inline.c2
-rw-r--r--gcc/tree-into-ssa.c16
-rw-r--r--gcc/tree-loop-distribution.c2
-rw-r--r--gcc/tree-pretty-print.c6
-rw-r--r--gcc/tree-ssa-alias.c4
-rw-r--r--gcc/tree-ssa-ccp.c2
-rw-r--r--gcc/tree-ssa-dom.c2
-rw-r--r--gcc/tree-ssa-live.c4
-rw-r--r--gcc/tree-ssa-loop-manip.c2
-rw-r--r--gcc/tree-ssa-operands.c6
-rw-r--r--gcc/tree-ssa-pre.c6
-rw-r--r--gcc/tree-ssa-reassoc.c2
-rw-r--r--gcc/tree-ssa-structalias.c10
-rw-r--r--gcc/tree-ssa-ter.c2
-rw-r--r--gcc/tree-ssa.c2
-rw-r--r--gcc/tree-vrp.c8
-rw-r--r--gcc/value-prof.c2
-rw-r--r--gcc/var-tracking.c2
-rw-r--r--gcc/varpool.c2
68 files changed, 282 insertions, 170 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3cb2351f473..6e4e63efc79 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,103 @@
+2010-05-29 Jan Hubicka <jh@suse.cz>
+
+ * tree-vrp.c (debug_value_range, debug_all_value_ranges,
+ debug_asserts_for, debug_all_asserts): Annotate with DEBUG_FUNCTION.
+ * tree-into-ssa.c (debug_decl_set, debug_defs_stack, debug_currdefs,
+ debug_tree_ssa, debug_tree_ssa_stats, debug_def_blocks,
+ debug_names_replaced_by, debug_update_ssa): Likewise.
+ * sbitmap.c (debug_sbitmap): Likewise.
+ * genrecog.c (debug_decision, debug_decision_list): Likewise.
+ * tree-pretty-print.c (debug_generic_expr, debug_generic_stmt,
+ debug_tree_chain): Likewise.
+ * tree-loop-distribution.c (debug_rdg_partitions): Likewise.
+ * cgraph.c (debug_cgraph_node, debug_cgraph): Likewise.
+ * optabs.c (debug_optab_libfuncs): Likewise.
+ (verify_loop_closed_ssa): Likewise.
+ * value-prof.c (verify_histograms): Likewise.
+ * reload.c (debug_reload_to_stream, debug_reload): Likewise.
+ * bitmap.c (debug_bitmap_file, debug_bitmap, bitmap_print): Likewise.
+ * cfghooks.c (verify_flow_info): Likewise.
+ * fold-const.c (debug_fold_checksum): Likewise.
+ * omp-low.c (debug_omp_region, debug_all_omp_regions): Likewise.
+ * cfg.c (debug_regset, debug_flow_info, debug_bb, debug_bb_n):
+ Likewise.
+ * omega.c (debug_omega_problem): Likewise.
+ * cgraphunit.c (verify_cgraph_node, verify_cgraph): Likewise.
+ * tree-ssa-ccp.c (debug_lattice_value): Likewise.
+ * dominance.c (verify_dominators, debug_dominance_info,
+ debug_dominance_tree): Likewise.
+ * df-core.c (df_insn_uid_debug, df_insn_debug, df_insn_debug_regno,
+ * df_regno_debug, df_ref_debug,
+ debug_df_insn, debug_df_reg, debug_df_regno, debug_df_ref,
+ debug_df_defno, debug_df_useno, debug_df_chain): Likewise.
+ * tree-ssa-dom.c (debug_dominator_optimization_stats): Likewise.
+ * sel-sched.c (debug_state): Likewise.
+ * tree-ssa-alias.c (debug_alias_info, debug_points_to_info_for): Likewise.
+ * cfganal.c (print_edge_list, verify_edge_list): Likewise.
+ * dwarf2out.c (debug_dwarf_die, debug_dwarf): Likewise.
+ * tree-eh.c (verify_eh_edges, verify_eh_dispatch_edge): Likewise.
+ * gimple-pretty-print.c (debug_gimple_stmt, debug_gimple_seq): Likewise.
+ * c-pretty-print.c (debug_c_tree): Likewise.
+ * sel-sched-dump.c (debug_insn_rtx, debug_vinsn, debug_expr, debug_insn
+ debug_av_set, debug_lv_set, debug_ilist, debug_blist, debug_insn_vector,
+ debug_hard_reg_set, debug_mem_addr_value): Likewise.
+ * ebitmap.c (debug_ebitmap): Likewise.
+ * function.c (debug_find_var_in_block_tree): Likewise.
+ * print-rtl.c (debug_rtx): Likewise.
+ (debug_rtx_count): Likewise.
+ (debug_rtx_list, debug_rtx_range, debug_rtx_find): Likewise.
+ * stor-layout.c (debug_rli): Likewise.
+ * ipa.c (debug_cgraph_node_set, debug_varpool_node_set): Likewise.
+ * tree-data-ref.c (debug_data_references, debug_data_dependence_relations,
+ debug_data_reference, debug_data_dependence_relation, debug_rdg_vertex,
+ debug_rdg_component, debug_rdg): Likewise.
+ * tree-affine.c (debug_aff): Likewise.
+ * tree-dfa.c (debug_referenced_vars, debug_variable, debug_dfa_stats): Likewise.
+ * except.c (debug_eh_tree, verify_eh_tree): Likewise.
+ * emit-rtl.c (verify_rtl_sharing): Likewise.
+ * tree-ssa-pre.c (debug_pre_expr, debug_bitmap_set,
+ debug_value_expressions): Likewise.
+ * tree-ssa-live.c (debug_scope_block, debug_scope_blocks): Likewise.
+ * sese.c (debug_rename_map, debug_ivtype_map): Likewise.
+ * print-tree.c (debug_tree, debug_vec_tree): Likewise.
+ * cfglayout.c (verify_insn_chain): Likewise.
+ * graphite-clast-to-gimple.c (debug_clast_name_indexes,
+ debug_clast_stmt, debug_generated_program): Likewise.
+ * ggc-page.c (debug_print_page_list): Likewise.
+ * tree-ssa-ter.c (debug_ter): Likewise.
+ * graphite-dependences.c (debug_pddr): Likewise.
+ * sched-deps.c (debug_ds): Likewise.
+ * tree-ssa.c (verify_ssa): Likewise.
+ * graphite-poly.c (debug_scattering_function, debug_iteration_domain,
+ debug_scattering_functions, debug_iteration_domains, debug_pdr,
+ debug_pdrs, debug_pbb_domain, debug_pbb, debug_scop_context, debug_scop,
+ debug_cloog, debug_scop_params, debug_lst): Likewise.
+ * tree-inline.c (debug_find_tree): Likewise.
+ * graphite-ppl.c (debug_ppl_linear_expr, debug_ppl_polyhedron_matrix,
+ debug_ppl_powerset_matrix): Likewise.
+ * var-tracking.c (debug_dv): Likewise.
+ * system.h (DEBUG_FUNCTION, DEBUG_VARIABLE): Define.
+ * cfgloop.c (verify_loop_structure): Likewise.
+ * plugin.c (dump_active_plugins, debug_active_plugins): Likewise.
+ * c-common.c (verify_sequence_points): Likewise.
+ * sched-rgn.c (debug_regions, debug_region, debug_candidate,
+ debug_candidates, debug_rgn_dependencies): Likewise.
+ * tree-ssa-structalias.c (debug_constraint, debug_constraints,
+ * debug_constraint_graph, debug_solution_for_var,
+ debug_sa_points_to_info): Likewise.
+ * sched-vis.c (debug_insn_slim, debug_bb_slim, debug_bb_n_slim):
+ Likewie.
+ * tree-cfg.c (debug_cfg_stats, verify_stmts, debug_function,
+ debug_loops, debug_loop, debug_loop_num): Likewise.
+ * passes.c (debug_pass): Likewise.
+ (dump_properties): Likewise; add cfglayout property.
+ (debug_properties): Likewise.
+ * tree-ssa-reassoc.c (debug_ops_vector): Likewise.
+ * varpool.c (debug_varpool): Likewise.
+ * regcprop.c (debug_value_data): Likewise.
+ * tree-ssa-operands.c (verify_imm_links, debug_immediate_uses,
+ debug_immediate_uses_for): Likewise.
+
2010-05-29 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/44315
diff --git a/gcc/bitmap.c b/gcc/bitmap.c
index 93c13866b28..f7309a02c57 100644
--- a/gcc/bitmap.c
+++ b/gcc/bitmap.c
@@ -2023,7 +2023,7 @@ bitmap_ior_and_into (bitmap a, const_bitmap b, const_bitmap c)
/* Debugging function to print out the contents of a bitmap. */
-void
+DEBUG_FUNCTION void
debug_bitmap_file (FILE *file, const_bitmap head)
{
const bitmap_element *ptr;
@@ -2063,7 +2063,7 @@ debug_bitmap_file (FILE *file, const_bitmap head)
/* Function to be called from the debugger to print the contents
of a bitmap. */
-void
+DEBUG_FUNCTION void
debug_bitmap (const_bitmap head)
{
debug_bitmap_file (stdout, head);
@@ -2072,7 +2072,7 @@ debug_bitmap (const_bitmap head)
/* Function to print out the contents of a bitmap. Unlike debug_bitmap_file,
it does not print anything but the bits. */
-void
+DEBUG_FUNCTION void
bitmap_print (FILE *file, const_bitmap head, const char *prefix, const char *suffix)
{
const char *comma = "";
diff --git a/gcc/c-common.c b/gcc/c-common.c
index b20c4d2183f..115e30288ed 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -2705,7 +2705,7 @@ verify_tree (tree x, struct tlist **pbefore_sp, struct tlist **pno_sp,
/* Try to warn for undefined behavior in EXPR due to missing sequence
points. */
-void
+DEBUG_FUNCTION void
verify_sequence_points (tree expr)
{
struct tlist *before_sp = 0, *after_sp = 0;
diff --git a/gcc/c-pretty-print.c b/gcc/c-pretty-print.c
index ff9f67657fd..ca0608c79e2 100644
--- a/gcc/c-pretty-print.c
+++ b/gcc/c-pretty-print.c
@@ -2231,7 +2231,7 @@ print_c_tree (FILE *file, tree t)
/* Print the tree T in full, on stderr. */
-void
+DEBUG_FUNCTION void
debug_c_tree (tree t)
{
print_c_tree (stderr, t);
diff --git a/gcc/cfg.c b/gcc/cfg.c
index 07aee614b80..ee6af697468 100644
--- a/gcc/cfg.c
+++ b/gcc/cfg.c
@@ -514,7 +514,7 @@ dump_regset (regset r, FILE *outf)
stream. This function is designed to be used from within the
debugger. */
-void
+DEBUG_FUNCTION void
debug_regset (regset r)
{
dump_regset (r, stderr);
@@ -668,7 +668,7 @@ dump_flow_info (FILE *file, int flags)
putc ('\n', file);
}
-void
+DEBUG_FUNCTION void
debug_flow_info (void)
{
dump_flow_info (stderr, TDF_DETAILS);
@@ -868,13 +868,13 @@ free_aux_for_edges (void)
clear_aux_for_edges ();
}
-void
+DEBUG_FUNCTION void
debug_bb (basic_block bb)
{
dump_bb (bb, stderr, 0);
}
-basic_block
+DEBUG_FUNCTION basic_block
debug_bb_n (int n)
{
basic_block bb = BASIC_BLOCK (n);
diff --git a/gcc/cfganal.c b/gcc/cfganal.c
index e0c6443dcdd..5bb23b77adb 100644
--- a/gcc/cfganal.c
+++ b/gcc/cfganal.c
@@ -389,7 +389,7 @@ free_edge_list (struct edge_list *elist)
/* This function provides debug output showing an edge list. */
-void
+DEBUG_FUNCTION void
print_edge_list (FILE *f, struct edge_list *elist)
{
int x;
@@ -416,7 +416,7 @@ print_edge_list (FILE *f, struct edge_list *elist)
verifying that all edges are present, and that there are no
extra edges. */
-void
+DEBUG_FUNCTION void
verify_edge_list (FILE *f, struct edge_list *elist)
{
int pred, succ, index;
diff --git a/gcc/cfghooks.c b/gcc/cfghooks.c
index ad5fb6b6c4c..c3d51fd9e36 100644
--- a/gcc/cfghooks.c
+++ b/gcc/cfghooks.c
@@ -88,7 +88,7 @@ current_ir_type (void)
Currently it does following: checks edge and basic block list correctness
and calls into IL dependent checking then. */
-void
+DEBUG_FUNCTION void
verify_flow_info (void)
{
size_t *edge_checksum;
diff --git a/gcc/cfglayout.c b/gcc/cfglayout.c
index 5e120570b9a..62ca643348d 100644
--- a/gcc/cfglayout.c
+++ b/gcc/cfglayout.c
@@ -990,7 +990,7 @@ fixup_reorder_chain (void)
2. Count insns in chain, going both directions, and check if equal.
3. Check that get_last_insn () returns the actual end of chain. */
-void
+DEBUG_FUNCTION void
verify_insn_chain (void)
{
rtx x, prevx, nextx;
diff --git a/gcc/cfgloop.c b/gcc/cfgloop.c
index 0365f568b30..858e75b3f52 100644
--- a/gcc/cfgloop.c
+++ b/gcc/cfgloop.c
@@ -1316,7 +1316,7 @@ cancel_loop_tree (struct loop *loop)
-- loop latches have only single successor that is header of their loop
-- irreducible loops are correctly marked
*/
-void
+DEBUG_FUNCTION void
verify_loop_structure (void)
{
unsigned *sizes, i, j;
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index 04ff9c98f20..229f8a30e99 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -1915,7 +1915,7 @@ dump_cgraph_node (FILE *f, struct cgraph_node *node)
/* Dump call graph node NODE to stderr. */
-void
+DEBUG_FUNCTION void
debug_cgraph_node (struct cgraph_node *node)
{
dump_cgraph_node (stderr, node);
@@ -1937,7 +1937,7 @@ dump_cgraph (FILE *f)
/* Dump the call graph to stderr. */
-void
+DEBUG_FUNCTION void
debug_cgraph (void)
{
dump_cgraph (stderr);
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 39711a3b1a7..b9c8e79ac61 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -569,7 +569,7 @@ clone_of_p (struct cgraph_node *node, struct cgraph_node *node2)
#endif
/* Verify cgraph nodes of given cgraph node. */
-void
+DEBUG_FUNCTION void
verify_cgraph_node (struct cgraph_node *node)
{
struct cgraph_edge *e;
@@ -878,7 +878,7 @@ verify_cgraph_node (struct cgraph_node *node)
}
/* Verify whole cgraph structure. */
-void
+DEBUG_FUNCTION void
verify_cgraph (void)
{
struct cgraph_node *node;
diff --git a/gcc/df-core.c b/gcc/df-core.c
index 758e40e8eb7..0930a02ce29 100644
--- a/gcc/df-core.c
+++ b/gcc/df-core.c
@@ -2094,13 +2094,13 @@ df_insn_uid_debug (unsigned int uid,
}
-void
+DEBUG_FUNCTION void
df_insn_debug (rtx insn, bool follow_chain, FILE *file)
{
df_insn_uid_debug (INSN_UID (insn), follow_chain, file);
}
-void
+DEBUG_FUNCTION void
df_insn_debug_regno (rtx insn, FILE *file)
{
struct df_insn_info *insn_info = DF_INSN_INFO_GET (insn);
@@ -2118,7 +2118,7 @@ df_insn_debug_regno (rtx insn, FILE *file)
fprintf (file, "\n");
}
-void
+DEBUG_FUNCTION void
df_regno_debug (unsigned int regno, FILE *file)
{
fprintf (file, "reg %d defs ", regno);
@@ -2131,7 +2131,7 @@ df_regno_debug (unsigned int regno, FILE *file)
}
-void
+DEBUG_FUNCTION void
df_ref_debug (df_ref ref, FILE *file)
{
fprintf (file, "%c%d ",
@@ -2159,7 +2159,7 @@ df_ref_debug (df_ref ref, FILE *file)
/* Functions for debugging from GDB. */
-void
+DEBUG_FUNCTION void
debug_df_insn (rtx insn)
{
df_insn_debug (insn, true, stderr);
@@ -2167,42 +2167,42 @@ debug_df_insn (rtx insn)
}
-void
+DEBUG_FUNCTION void
debug_df_reg (rtx reg)
{
df_regno_debug (REGNO (reg), stderr);
}
-void
+DEBUG_FUNCTION void
debug_df_regno (unsigned int regno)
{
df_regno_debug (regno, stderr);
}
-void
+DEBUG_FUNCTION void
debug_df_ref (df_ref ref)
{
df_ref_debug (ref, stderr);
}
-void
+DEBUG_FUNCTION void
debug_df_defno (unsigned int defno)
{
df_ref_debug (DF_DEFS_GET (defno), stderr);
}
-void
+DEBUG_FUNCTION void
debug_df_useno (unsigned int defno)
{
df_ref_debug (DF_USES_GET (defno), stderr);
}
-void
+DEBUG_FUNCTION void
debug_df_chain (struct df_link *link)
{
df_chain_dump (link, stderr);
diff --git a/gcc/dominance.c b/gcc/dominance.c
index f7db0f10d6b..9c2dcf03707 100644
--- a/gcc/dominance.c
+++ b/gcc/dominance.c
@@ -989,7 +989,7 @@ bb_dom_dfs_out (enum cdi_direction dir, basic_block bb)
}
/* Verify invariants of dominator structure. */
-void
+DEBUG_FUNCTION void
verify_dominators (enum cdi_direction dir)
{
int err = 0;
@@ -1466,7 +1466,7 @@ dom_info_available_p (enum cdi_direction dir)
return dom_computed[dir_index] != DOM_NONE;
}
-void
+DEBUG_FUNCTION void
debug_dominance_info (enum cdi_direction dir)
{
basic_block bb, bb2;
@@ -1507,7 +1507,7 @@ debug_dominance_tree_1 (enum cdi_direction dir, basic_block root,
/* Prints to stderr representation of the dominance tree (for direction DIR)
rooted in ROOT. */
-void
+DEBUG_FUNCTION void
debug_dominance_tree (enum cdi_direction dir, basic_block root)
{
debug_dominance_tree_1 (dir, root, 0, false);
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index b4c626ba0c0..eec92d342e6 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -8239,7 +8239,7 @@ print_dwarf_line_table (FILE *outfile)
/* Print the information collected for a given DIE. */
-void
+DEBUG_FUNCTION void
debug_dwarf_die (dw_die_ref die)
{
print_die (die, stderr);
@@ -8248,7 +8248,7 @@ debug_dwarf_die (dw_die_ref die)
/* Print all DWARF information collected for the compilation unit.
This routine is a debugging aid only. */
-void
+DEBUG_FUNCTION void
debug_dwarf (void)
{
print_indent = 0;
diff --git a/gcc/ebitmap.c b/gcc/ebitmap.c
index 64c563487cf..cb52468fed6 100644
--- a/gcc/ebitmap.c
+++ b/gcc/ebitmap.c
@@ -410,7 +410,7 @@ dump_ebitmap (FILE *file, ebitmap bmap)
/* Dump ebitmap BMAP to stderr. */
-void
+DEBUG_FUNCTION void
debug_ebitmap (ebitmap bmap)
{
dump_ebitmap (stderr, bmap);
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 204f9df5c54..c1d2468e14e 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -2537,7 +2537,7 @@ verify_rtx_sharing (rtx orig, rtx insn)
/* Go through all the RTL insn bodies and check that there is no unexpected
sharing in between the subexpressions. */
-void
+DEBUG_FUNCTION void
verify_rtl_sharing (void)
{
rtx p;
diff --git a/gcc/except.c b/gcc/except.c
index 393a8011e0d..d166a9a1527 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -3307,7 +3307,7 @@ dump_eh_tree (FILE * out, struct function *fun)
/* Dump the EH tree for FN on stderr. */
-void
+DEBUG_FUNCTION void
debug_eh_tree (struct function *fn)
{
dump_eh_tree (stderr, fn);
@@ -3315,7 +3315,7 @@ debug_eh_tree (struct function *fn)
/* Verify invariants on EH datastructures. */
-void
+DEBUG_FUNCTION void
verify_eh_tree (struct function *fun)
{
eh_region r, outer;
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 17672ad6c43..b6e8ed68783 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -13768,7 +13768,7 @@ recursive_label:
by "call debug_fold_checksum (op0)", then just trace down till the
outputs differ. */
-void
+DEBUG_FUNCTION void
debug_fold_checksum (const_tree t)
{
int i;
diff --git a/gcc/function.c b/gcc/function.c
index a39ee7c1848..771552913f1 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -4084,7 +4084,7 @@ number_blocks (tree fn)
/* If VAR is present in a subblock of BLOCK, return the subblock. */
-tree
+DEBUG_FUNCTION tree
debug_find_var_in_block_tree (tree var, tree block)
{
tree t;
diff --git a/gcc/genrecog.c b/gcc/genrecog.c
index 16a7b56c6e9..b299b7c55fc 100644
--- a/gcc/genrecog.c
+++ b/gcc/genrecog.c
@@ -2897,13 +2897,13 @@ debug_decision_0 (struct decision *d, int indent, int maxdepth)
debug_decision_0 (n, indent + 2, maxdepth - 1);
}
-void
+DEBUG_FUNCTION void
debug_decision (struct decision *d)
{
debug_decision_0 (d, 0, 1000000);
}
-void
+DEBUG_FUNCTION void
debug_decision_list (struct decision *d)
{
while (d)
diff --git a/gcc/ggc-page.c b/gcc/ggc-page.c
index 807bded61fc..67483f19349 100644
--- a/gcc/ggc-page.c
+++ b/gcc/ggc-page.c
@@ -645,7 +645,7 @@ found:
/* Prints the page-entry for object size ORDER, for debugging. */
-void
+DEBUG_FUNCTION void
debug_print_page_list (int order)
{
page_entry *p;
diff --git a/gcc/gimple-pretty-print.c b/gcc/gimple-pretty-print.c
index 0480f9d4396..bf3bb723943 100644
--- a/gcc/gimple-pretty-print.c
+++ b/gcc/gimple-pretty-print.c
@@ -81,7 +81,7 @@ newline_and_indent (pretty_printer *buffer, int spc)
/* Print the GIMPLE statement GS on stderr. */
-void
+DEBUG_FUNCTION void
debug_gimple_stmt (gimple gs)
{
print_gimple_stmt (stderr, gs, 0, TDF_VOPS|TDF_MEMSYMS);
@@ -147,7 +147,7 @@ print_gimple_seq (FILE *file, gimple_seq seq, int spc, int flags)
/* Print the GIMPLE sequence SEQ on stderr. */
-void
+DEBUG_FUNCTION void
debug_gimple_seq (gimple_seq seq)
{
print_gimple_seq (stderr, seq, 0, TDF_VOPS|TDF_MEMSYMS);
diff --git a/gcc/graphite-clast-to-gimple.c b/gcc/graphite-clast-to-gimple.c
index 340c8fc4ecb..b0e1a94bc25 100644
--- a/gcc/graphite-clast-to-gimple.c
+++ b/gcc/graphite-clast-to-gimple.c
@@ -149,7 +149,7 @@ debug_clast_name_indexes_1 (void **slot, void *s ATTRIBUTE_UNUSED)
/* Print to stderr all the elements of MAP. */
-void
+DEBUG_FUNCTION void
debug_clast_name_indexes (htab_t map)
{
htab_traverse (map, debug_clast_name_indexes_1, NULL);
@@ -1481,7 +1481,7 @@ print_clast_stmt (FILE *file, struct clast_stmt *stmt)
/* Prints STMT to STDERR. */
-void
+DEBUG_FUNCTION void
debug_clast_stmt (struct clast_stmt *stmt)
{
print_clast_stmt (stderr, stmt);
@@ -1530,7 +1530,7 @@ print_generated_program (FILE *file, scop_p scop)
/* Prints to STDERR the code generated by CLooG for SCOP. */
-void
+DEBUG_FUNCTION void
debug_generated_program (scop_p scop)
{
print_generated_program (stderr, scop);
diff --git a/gcc/graphite-dependences.c b/gcc/graphite-dependences.c
index 8140812d5e7..f060ea008d9 100644
--- a/gcc/graphite-dependences.c
+++ b/gcc/graphite-dependences.c
@@ -202,7 +202,7 @@ print_pddr (FILE *file, poly_ddr_p pddr)
/* Prints to STDERR the poly_ddr_p PDDR. */
-void
+DEBUG_FUNCTION void
debug_pddr (poly_ddr_p pddr)
{
print_pddr (stderr, pddr);
diff --git a/gcc/graphite-poly.c b/gcc/graphite-poly.c
index 64222809ca2..7eb45ca0110 100644
--- a/gcc/graphite-poly.c
+++ b/gcc/graphite-poly.c
@@ -242,7 +242,7 @@ print_iteration_domains (FILE *file, scop_p scop, int verbosity)
/* Prints to STDERR the scattering function of PBB, at some VERBOSITY
level. */
-void
+DEBUG_FUNCTION void
debug_scattering_function (poly_bb_p pbb, int verbosity)
{
print_scattering_function (stderr, pbb, verbosity);
@@ -251,7 +251,7 @@ debug_scattering_function (poly_bb_p pbb, int verbosity)
/* Prints to STDERR the iteration domain of PBB, at some VERBOSITY
level. */
-void
+DEBUG_FUNCTION void
debug_iteration_domain (poly_bb_p pbb, int verbosity)
{
print_iteration_domain (stderr, pbb, verbosity);
@@ -260,7 +260,7 @@ debug_iteration_domain (poly_bb_p pbb, int verbosity)
/* Prints to STDERR the scattering functions of every PBB of SCOP, at
some VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_scattering_functions (scop_p scop, int verbosity)
{
print_scattering_functions (stderr, scop, verbosity);
@@ -269,7 +269,7 @@ debug_scattering_functions (scop_p scop, int verbosity)
/* Prints to STDERR the iteration domains of every PBB of SCOP, at
some VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_iteration_domains (scop_p scop, int verbosity)
{
print_iteration_domains (stderr, scop, verbosity);
@@ -500,7 +500,7 @@ print_pdr (FILE *file, poly_dr_p pdr, int verbosity)
/* Prints to STDERR the polyhedral data reference PDR, at some
VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_pdr (poly_dr_p pdr, int verbosity)
{
print_pdr (stderr, pdr, verbosity);
@@ -703,7 +703,7 @@ print_pdrs (FILE *file, poly_bb_p pbb, int verbosity)
/* Print to STDERR all the data references of PBB. */
-void
+DEBUG_FUNCTION void
debug_pdrs (poly_bb_p pbb, int verbosity)
{
print_pdrs (stderr, pbb, verbosity);
@@ -937,7 +937,7 @@ print_cloog (FILE *file, scop_p scop, int verbosity)
/* Print to STDERR the domain of PBB, at some VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_pbb_domain (poly_bb_p pbb, int verbosity)
{
print_pbb_domain (stderr, pbb, verbosity);
@@ -946,7 +946,7 @@ debug_pbb_domain (poly_bb_p pbb, int verbosity)
/* Print to FILE the domain and scattering function of PBB, at some
VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_pbb (poly_bb_p pbb, int verbosity)
{
print_pbb (stderr, pbb, verbosity);
@@ -954,7 +954,7 @@ debug_pbb (poly_bb_p pbb, int verbosity)
/* Print to STDERR the context of SCOP, at some VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_scop_context (scop_p scop, int verbosity)
{
print_scop_context (stderr, scop, verbosity);
@@ -962,7 +962,7 @@ debug_scop_context (scop_p scop, int verbosity)
/* Print to STDERR the SCOP, at some VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_scop (scop_p scop, int verbosity)
{
print_scop (stderr, scop, verbosity);
@@ -971,7 +971,7 @@ debug_scop (scop_p scop, int verbosity)
/* Print to STDERR the SCOP under CLooG format, at some VERBOSITY
level. */
-void
+DEBUG_FUNCTION void
debug_cloog (scop_p scop, int verbosity)
{
print_cloog (stderr, scop, verbosity);
@@ -980,7 +980,7 @@ debug_cloog (scop_p scop, int verbosity)
/* Print to STDERR the parameters of SCOP, at some VERBOSITY
level. */
-void
+DEBUG_FUNCTION void
debug_scop_params (scop_p scop, int verbosity)
{
print_scop_params (stderr, scop, verbosity);
@@ -1226,7 +1226,7 @@ print_lst (FILE *file, lst_p lst, int indent)
/* Print LST to STDERR. */
-void
+DEBUG_FUNCTION void
debug_lst (lst_p lst)
{
print_lst (stderr, lst, 0);
diff --git a/gcc/graphite-ppl.c b/gcc/graphite-ppl.c
index 5186d47d9dd..bbe202472a8 100644
--- a/gcc/graphite-ppl.c
+++ b/gcc/graphite-ppl.c
@@ -580,7 +580,7 @@ ppl_print_linear_expr (FILE *file, ppl_Linear_Expression_t le)
/* Print to STDERR the linear expression LE. */
-void
+DEBUG_FUNCTION void
debug_ppl_linear_expr (ppl_Linear_Expression_t le)
{
ppl_print_linear_expr (stderr, le);
@@ -618,7 +618,7 @@ ppl_print_powerset_matrix (FILE *file,
/* Print to STDERR the polyhedron PH under its PolyLib matrix form. */
-void
+DEBUG_FUNCTION void
debug_ppl_polyhedron_matrix (ppl_Polyhedron_t ph)
{
ppl_print_polyhedron_matrix (stderr, ph);
@@ -626,7 +626,7 @@ debug_ppl_polyhedron_matrix (ppl_Polyhedron_t ph)
/* Print to STDERR the powerset PS in its PolyLib matrix form. */
-void
+DEBUG_FUNCTION void
debug_ppl_powerset_matrix (ppl_Pointset_Powerset_C_Polyhedron_t ps)
{
ppl_print_powerset_matrix (stderr, ps);
diff --git a/gcc/ipa.c b/gcc/ipa.c
index 319a3f1b8bb..ebfc1a20ecd 100644
--- a/gcc/ipa.c
+++ b/gcc/ipa.c
@@ -1004,7 +1004,7 @@ dump_cgraph_node_set (FILE *f, cgraph_node_set set)
/* Dump content of SET to stderr. */
-void
+DEBUG_FUNCTION void
debug_cgraph_node_set (cgraph_node_set set)
{
dump_cgraph_node_set (stderr, set);
@@ -1161,7 +1161,7 @@ dump_varpool_node_set (FILE *f, varpool_node_set set)
/* Dump content of SET to stderr. */
-void
+DEBUG_FUNCTION void
debug_varpool_node_set (varpool_node_set set)
{
dump_varpool_node_set (stderr, set);
diff --git a/gcc/omega.c b/gcc/omega.c
index e1c1adfbc48..d218c0e39b6 100644
--- a/gcc/omega.c
+++ b/gcc/omega.c
@@ -363,7 +363,7 @@ omega_print_vars (FILE *file, omega_pb pb)
/* Debug problem PB. */
-void
+DEBUG_FUNCTION void
debug_omega_problem (omega_pb pb)
{
omega_print_problem (stderr, pb);
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index 12bd4c65608..3a93cdeb798 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -1112,13 +1112,13 @@ dump_omp_region (FILE *file, struct omp_region *region, int indent)
dump_omp_region (file, region->next, indent);
}
-void
+DEBUG_FUNCTION void
debug_omp_region (struct omp_region *region)
{
dump_omp_region (stderr, region, 0);
}
-void
+DEBUG_FUNCTION void
debug_all_omp_regions (void)
{
dump_omp_region (stderr, root_omp_region, 0);
diff --git a/gcc/optabs.c b/gcc/optabs.c
index a81d2e660dd..f753def97ba 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -6676,7 +6676,7 @@ init_optabs (void)
/* Print information about the current contents of the optabs on
STDERR. */
-void
+DEBUG_FUNCTION void
debug_optab_libfuncs (void)
{
int i;
diff --git a/gcc/passes.c b/gcc/passes.c
index 7ae4787d211..ebbfd97cece 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -121,7 +121,7 @@ print_current_pass (FILE *file)
/* Call from the debugger to get the current pass name. */
-void
+DEBUG_FUNCTION void
debug_pass (void)
{
print_current_pass (stderr);
@@ -1988,7 +1988,7 @@ execute_all_ipa_stmt_fixups (struct cgraph_node *node, gimple *stmts)
extern void debug_properties (unsigned int);
extern void dump_properties (FILE *, unsigned int);
-void
+DEBUG_FUNCTION void
dump_properties (FILE *dump, unsigned int props)
{
fprintf (dump, "Properties:\n");
@@ -2012,9 +2012,11 @@ dump_properties (FILE *dump, unsigned int props)
fprintf (dump, "PROP_gimple_lomp\n");
if (props & PROP_gimple_lcx)
fprintf (dump, "PROP_gimple_lcx\n");
+ if (props & PROP_cfglayout)
+ fprintf (dump, "PROP_cfglayout\n");
}
-void
+DEBUG_FUNCTION void
debug_properties (unsigned int props)
{
dump_properties (stderr, props);
diff --git a/gcc/plugin.c b/gcc/plugin.c
index 1c737a5cd25..6de4a8b0739 100644
--- a/gcc/plugin.c
+++ b/gcc/plugin.c
@@ -778,7 +778,7 @@ plugins_active_p (void)
/* Dump to FILE the names and associated events for all the active
plugins. */
-void
+DEBUG_FUNCTION void
dump_active_plugins (FILE *file)
{
int event;
@@ -804,7 +804,7 @@ dump_active_plugins (FILE *file)
/* Dump active plugins to stderr. */
-void
+DEBUG_FUNCTION void
debug_active_plugins (void)
{
dump_active_plugins (stderr);
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index d8c76443d00..5cf0f9b6185 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -626,7 +626,7 @@ print_inline_rtx (FILE *outf, const_rtx x, int ind)
/* Call this function from the debugger to see what X looks like. */
-void
+DEBUG_FUNCTION void
debug_rtx (const_rtx x)
{
outfile = stderr;
@@ -638,7 +638,7 @@ debug_rtx (const_rtx x)
/* Count of rtx's to print with debug_rtx_list.
This global exists because gdb user defined commands have no arguments. */
-int debug_rtx_count = 0; /* 0 is treated as equivalent to 1 */
+DEBUG_VARIABLE int debug_rtx_count = 0; /* 0 is treated as equivalent to 1 */
/* Call this function to print list from X on.
@@ -646,7 +646,7 @@ int debug_rtx_count = 0; /* 0 is treated as equivalent to 1 */
rtx on. Negative values print a window around the rtx.
EG: -5 prints 2 rtx's on either side (in addition to the specified rtx). */
-void
+DEBUG_FUNCTION void
debug_rtx_list (const_rtx x, int n)
{
int i,count;
@@ -673,7 +673,7 @@ debug_rtx_list (const_rtx x, int n)
/* Call this function to print an rtx list from START to END inclusive. */
-void
+DEBUG_FUNCTION void
debug_rtx_range (const_rtx start, const_rtx end)
{
while (1)
@@ -690,7 +690,7 @@ debug_rtx_range (const_rtx start, const_rtx end)
and then call debug_rtx_list to print it, using DEBUG_RTX_COUNT.
The found insn is returned to enable further debugging analysis. */
-const_rtx
+DEBUG_FUNCTION const_rtx
debug_rtx_find (const_rtx x, int uid)
{
while (x != 0 && INSN_UID (x) != uid)
diff --git a/gcc/print-tree.c b/gcc/print-tree.c
index 0c2318851be..10ac8f32062 100644
--- a/gcc/print-tree.c
+++ b/gcc/print-tree.c
@@ -50,7 +50,7 @@ static struct bucket **table;
Most nodes referred to by this one are printed recursively
down to a depth of six. */
-void
+DEBUG_FUNCTION void
debug_tree (tree node)
{
table = XCNEWVEC (struct bucket *, HASH_SIZE);
@@ -64,7 +64,7 @@ debug_tree (tree node)
Most nodes referred to by this one are printed recursively
down to a depth of six. */
-void
+DEBUG_FUNCTION void
debug_vec_tree (VEC(tree,gc) *vec)
{
table = XCNEWVEC (struct bucket *, HASH_SIZE);
diff --git a/gcc/regcprop.c b/gcc/regcprop.c
index 2666f785389..039c8b0769b 100644
--- a/gcc/regcprop.c
+++ b/gcc/regcprop.c
@@ -1057,7 +1057,7 @@ copyprop_hardreg_forward (void)
/* Dump the value chain data to stderr. */
-void
+DEBUG_FUNCTION void
debug_value_data (struct value_data *vd)
{
HARD_REG_SET set;
diff --git a/gcc/reload.c b/gcc/reload.c
index af520ef1515..d4b7982bc0a 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -7337,7 +7337,7 @@ static const char *const reload_when_needed_name[] =
/* These functions are used to print the variables set by 'find_reloads' */
-void
+DEBUG_FUNCTION void
debug_reload_to_stream (FILE *f)
{
int r;
@@ -7432,7 +7432,7 @@ debug_reload_to_stream (FILE *f)
}
}
-void
+DEBUG_FUNCTION void
debug_reload (void)
{
debug_reload_to_stream (stderr);
diff --git a/gcc/sbitmap.c b/gcc/sbitmap.c
index 8ffc6f334b7..4796c37df82 100644
--- a/gcc/sbitmap.c
+++ b/gcc/sbitmap.c
@@ -1011,7 +1011,7 @@ dump_sbitmap_file (FILE *file, const_sbitmap bmap)
fprintf (file, "}\n");
}
-void
+DEBUG_FUNCTION void
debug_sbitmap (const_sbitmap bmap)
{
dump_sbitmap_file (stderr, bmap);
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c
index 9abb92de4d9..556c38a4fb0 100644
--- a/gcc/sched-deps.c
+++ b/gcc/sched-deps.c
@@ -4077,7 +4077,7 @@ dump_ds (FILE *f, ds_t s)
fprintf (f, "}");
}
-void
+DEBUG_FUNCTION void
debug_ds (ds_t s)
{
dump_ds (stderr, s);
diff --git a/gcc/sched-rgn.c b/gcc/sched-rgn.c
index 11dc83cd805..89743c31b74 100644
--- a/gcc/sched-rgn.c
+++ b/gcc/sched-rgn.c
@@ -354,7 +354,7 @@ extract_edgelst (sbitmap set, edgelst *el)
/* Print the regions, for debugging purposes. Callable from debugger. */
-void
+DEBUG_FUNCTION void
debug_regions (void)
{
int rgn, bb;
@@ -379,7 +379,7 @@ debug_regions (void)
/* Print the region's basic blocks. */
-void
+DEBUG_FUNCTION void
debug_region (int rgn)
{
int bb;
@@ -1594,7 +1594,7 @@ free_trg_info (void)
/* Print candidates info, for debugging purposes. Callable from debugger. */
-void
+DEBUG_FUNCTION void
debug_candidate (int i)
{
if (!candidate_table[i].is_valid)
@@ -1631,7 +1631,7 @@ debug_candidate (int i)
/* Print candidates info, for debugging purposes. Callable from debugger. */
-void
+DEBUG_FUNCTION void
debug_candidates (int trg)
{
int i;
@@ -2775,7 +2775,7 @@ free_pending_lists (void)
Callable from debugger. */
/* Print dependences for debugging starting from FROM_BB.
Callable from debugger. */
-void
+DEBUG_FUNCTION void
debug_rgn_dependencies (int from_bb)
{
int bb;
diff --git a/gcc/sched-vis.c b/gcc/sched-vis.c
index 24c9c2dff26..98d1d1c615f 100644
--- a/gcc/sched-vis.c
+++ b/gcc/sched-vis.c
@@ -763,7 +763,7 @@ dump_insn_slim (FILE *f, rtx x)
}
/* Emit a slim dump of X (an insn) to stderr. */
-void
+DEBUG_FUNCTION void
debug_insn_slim (rtx x)
{
dump_insn_slim (stderr, x);
@@ -814,13 +814,13 @@ print_rtl_slim (FILE *f, rtx first, rtx last, int count, int flags)
}
}
-void
+DEBUG_FUNCTION void
debug_bb_slim (struct basic_block_def *bb)
{
print_rtl_slim (stderr, BB_HEAD (bb), BB_END (bb), -1, 32);
}
-void
+DEBUG_FUNCTION void
debug_bb_n_slim (int n)
{
struct basic_block_def *bb = BASIC_BLOCK (n);
diff --git a/gcc/sel-sched-dump.c b/gcc/sel-sched-dump.c
index 13542f94ffa..1042a6e8e49 100644
--- a/gcc/sel-sched-dump.c
+++ b/gcc/sel-sched-dump.c
@@ -164,7 +164,7 @@ dump_insn_rtx (rtx insn)
/* Dump INSN to stderr. */
-void
+DEBUG_FUNCTION void
debug_insn_rtx (rtx insn)
{
switch_dump (stderr);
@@ -214,7 +214,7 @@ dump_vinsn (vinsn_t vi)
}
/* Dump vinsn VI to stderr. */
-void
+DEBUG_FUNCTION void
debug_vinsn (vinsn_t vi)
{
switch_dump (stderr);
@@ -295,7 +295,7 @@ dump_expr (expr_t expr)
}
/* Dump expression EXPR to stderr. */
-void
+DEBUG_FUNCTION void
debug_expr (expr_t expr)
{
switch_dump (stderr);
@@ -353,7 +353,7 @@ dump_insn (insn_t i)
}
/* Dump INSN to stderr. */
-void
+DEBUG_FUNCTION void
debug_insn (insn_t insn)
{
switch_dump (stderr);
@@ -861,7 +861,7 @@ sel_debug_cfg_1 (int flags)
}
/* Dumps av_set AV to stderr. */
-void
+DEBUG_FUNCTION void
debug_av_set (av_set_t av)
{
switch_dump (stderr);
@@ -871,7 +871,7 @@ debug_av_set (av_set_t av)
}
/* Dump LV to stderr. */
-void
+DEBUG_FUNCTION void
debug_lv_set (regset lv)
{
switch_dump (stderr);
@@ -881,7 +881,7 @@ debug_lv_set (regset lv)
}
/* Dump an instruction list P to stderr. */
-void
+DEBUG_FUNCTION void
debug_ilist (ilist_t p)
{
switch_dump (stderr);
@@ -891,7 +891,7 @@ debug_ilist (ilist_t p)
}
/* Dump a boundary list BNDS to stderr. */
-void
+DEBUG_FUNCTION void
debug_blist (blist_t bnds)
{
switch_dump (stderr);
@@ -901,7 +901,7 @@ debug_blist (blist_t bnds)
}
/* Dump an insn vector SUCCS. */
-void
+DEBUG_FUNCTION void
debug_insn_vector (rtx_vec_t succs)
{
switch_dump (stderr);
@@ -911,7 +911,7 @@ debug_insn_vector (rtx_vec_t succs)
}
/* Dump a hard reg set SET to stderr. */
-void
+DEBUG_FUNCTION void
debug_hard_reg_set (HARD_REG_SET set)
{
switch_dump (stderr);
@@ -928,7 +928,7 @@ sel_debug_cfg (void)
}
/* Print a current cselib value for X's address to stderr. */
-rtx
+DEBUG_FUNCTION rtx
debug_mem_addr_value (rtx x)
{
rtx t, addr;
diff --git a/gcc/sese.c b/gcc/sese.c
index 7f71f056ad2..7e9bd91f2d7 100644
--- a/gcc/sese.c
+++ b/gcc/sese.c
@@ -69,7 +69,7 @@ debug_rename_map_1 (void **slot, void *s ATTRIBUTE_UNUSED)
/* Print to stderr all the elements of MAP. */
-void
+DEBUG_FUNCTION void
debug_rename_map (htab_t map)
{
htab_traverse (map, debug_rename_map_1, NULL);
@@ -118,7 +118,7 @@ debug_ivtype_map_1 (void **slot, void *s ATTRIBUTE_UNUSED)
/* Print to stderr all the elements of MAP. */
-void
+DEBUG_FUNCTION void
debug_ivtype_map (htab_t map)
{
htab_traverse (map, debug_ivtype_map_1, NULL);
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index 57287a4d81c..3780a7f94db 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -813,7 +813,7 @@ normalize_offset (tree *poffset, tree *pbitpos, unsigned int off_align)
/* Print debugging information about the information in RLI. */
-void
+DEBUG_FUNCTION void
debug_rli (record_layout_info rli)
{
print_node_brief (stderr, "type", rli->t, 0);
diff --git a/gcc/system.h b/gcc/system.h
index b87cf0db0d9..a6bc93085c4 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -873,4 +873,14 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
#define VALGRIND_FREELIKE_BLOCK(x,y)
#endif
+/* In LTO -fwhole-program build we still want to keep the debug functions available
+ for debugger. Mark them as used to prevent removal. */
+#if (GCC_VERSION > 4000)
+#define DEBUG_FUNCTION __attribute__ ((__used__))
+#define DEBUG_VARIABLE __attribute__ ((__used__))
+#else
+#define DEBUG_FUNCTION
+#define DEBUG_VARIABLE
+#endif
+
#endif /* ! GCC_SYSTEM_H */
diff --git a/gcc/tree-affine.c b/gcc/tree-affine.c
index c6c28bd970e..898e5c12552 100644
--- a/gcc/tree-affine.c
+++ b/gcc/tree-affine.c
@@ -818,7 +818,7 @@ print_aff (FILE *file, aff_tree *val)
/* Prints the affine VAL to the standard error, used for debugging. */
-void
+DEBUG_FUNCTION void
debug_aff (aff_tree *val)
{
print_aff (stderr, val);
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 43c30e008c1..fc6ee350ae3 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -2110,7 +2110,7 @@ dump_cfg_stats (FILE *file)
/* Dump CFG statistics on stderr. Keep extern so that it's always
linked in the final executable. */
-void
+DEBUG_FUNCTION void
debug_cfg_stats (void)
{
dump_cfg_stats (stderr);
@@ -4074,7 +4074,7 @@ verify_eh_throw_stmt_node (void **slot, void *data)
/* Verify the GIMPLE statements in every basic block. */
-void
+DEBUG_FUNCTION void
verify_stmts (void)
{
basic_block bb;
@@ -6314,7 +6314,7 @@ dump_function_to_file (tree fn, FILE *file, int flags)
/* Dump FUNCTION_DECL FN to stderr using FLAGS (see TDF_* in tree.h) */
-void
+DEBUG_FUNCTION void
debug_function (tree fn, int flags)
{
dump_function_to_file (fn, stderr, flags);
@@ -6455,7 +6455,7 @@ print_loops (FILE *file, int verbosity)
/* Debugging loops structure at tree level, at some VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_loops (int verbosity)
{
print_loops (stderr, verbosity);
@@ -6463,7 +6463,7 @@ debug_loops (int verbosity)
/* Print on stderr the code of LOOP, at some VERBOSITY level. */
-void
+DEBUG_FUNCTION void
debug_loop (struct loop *loop, int verbosity)
{
print_loop (stderr, loop, 0, verbosity);
@@ -6472,7 +6472,7 @@ debug_loop (struct loop *loop, int verbosity)
/* Print on stderr the code of loop number NUM, at some VERBOSITY
level. */
-void
+DEBUG_FUNCTION void
debug_loop_num (unsigned num, int verbosity)
{
debug_loop (get_loop (num), verbosity);
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c
index 40f7a4407c7..41dae8deb1e 100644
--- a/gcc/tree-data-ref.c
+++ b/gcc/tree-data-ref.c
@@ -161,7 +161,7 @@ dump_data_references (FILE *file, VEC (data_reference_p, heap) *datarefs)
/* Dump into STDERR all the data references from DATAREFS. */
-void
+DEBUG_FUNCTION void
debug_data_references (VEC (data_reference_p, heap) *datarefs)
{
dump_data_references (stderr, datarefs);
@@ -169,7 +169,7 @@ debug_data_references (VEC (data_reference_p, heap) *datarefs)
/* Dump to STDERR all the dependence relations from DDRS. */
-void
+DEBUG_FUNCTION void
debug_data_dependence_relations (VEC (ddr_p, heap) *ddrs)
{
dump_data_dependence_relations (stderr, ddrs);
@@ -190,7 +190,7 @@ dump_data_dependence_relations (FILE *file,
/* Print to STDERR the data_reference DR. */
-void
+DEBUG_FUNCTION void
debug_data_reference (struct data_reference *dr)
{
dump_data_reference (stderr, dr);
@@ -364,7 +364,7 @@ print_dist_vectors (FILE *outf, VEC (lambda_vector, heap) *dist_vects,
/* Debug version. */
-void
+DEBUG_FUNCTION void
debug_data_dependence_relation (struct data_dependence_relation *ddr)
{
dump_data_dependence_relation (stderr, ddr);
@@ -4606,7 +4606,7 @@ dump_rdg_vertex (FILE *file, struct graph *rdg, int i)
/* Call dump_rdg_vertex on stderr. */
-void
+DEBUG_FUNCTION void
debug_rdg_vertex (struct graph *rdg, int i)
{
dump_rdg_vertex (stderr, rdg, i);
@@ -4635,7 +4635,7 @@ void dump_rdg_component (FILE *file, struct graph *rdg, int c, bitmap dumped)
/* Call dump_rdg_vertex on stderr. */
-void
+DEBUG_FUNCTION void
debug_rdg_component (struct graph *rdg, int c)
{
dump_rdg_component (stderr, rdg, c, NULL);
@@ -4661,7 +4661,7 @@ dump_rdg (FILE *file, struct graph *rdg)
/* Call dump_rdg on stderr. */
-void
+DEBUG_FUNCTION void
debug_rdg (struct graph *rdg)
{
dump_rdg (stderr, rdg);
diff --git a/gcc/tree-dfa.c b/gcc/tree-dfa.c
index ed70d745e01..66b9090ed6a 100644
--- a/gcc/tree-dfa.c
+++ b/gcc/tree-dfa.c
@@ -232,7 +232,7 @@ dump_referenced_vars (FILE *file)
/* Dump the list of all the referenced variables to stderr. */
-void
+DEBUG_FUNCTION void
debug_referenced_vars (void)
{
dump_referenced_vars (stderr);
@@ -305,7 +305,7 @@ dump_variable (FILE *file, tree var)
/* Dump variable VAR and its may-aliases to stderr. */
-void
+DEBUG_FUNCTION void
debug_variable (tree var)
{
dump_variable (stderr, var);
@@ -392,7 +392,7 @@ dump_dfa_stats (FILE *file)
/* Dump DFA statistics on stderr. */
-void
+DEBUG_FUNCTION void
debug_dfa_stats (void)
{
dump_dfa_stats (stderr);
diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c
index 77c8cac7b5c..a7dd72b3da1 100644
--- a/gcc/tree-eh.c
+++ b/gcc/tree-eh.c
@@ -3918,7 +3918,7 @@ struct gimple_opt_pass pass_cleanup_eh = {
/* Verify that BB containing STMT as the last statement, has precisely the
edge that make_eh_edges would create. */
-bool
+DEBUG_FUNCTION bool
verify_eh_edges (gimple stmt)
{
basic_block bb = gimple_bb (stmt);
@@ -3979,7 +3979,7 @@ verify_eh_edges (gimple stmt)
/* Similarly, but handle GIMPLE_EH_DISPATCH specifically. */
-bool
+DEBUG_FUNCTION bool
verify_eh_dispatch_edge (gimple stmt)
{
eh_region r;
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index a70c09fb3f5..e42e81c60a1 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -4544,7 +4544,7 @@ debug_find_tree_1 (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED, void *data)
return NULL;
}
-bool
+DEBUG_FUNCTION bool
debug_find_tree (tree top, tree search)
{
return walk_tree_without_duplicates (&top, debug_find_tree_1, search) != 0;
diff --git a/gcc/tree-into-ssa.c b/gcc/tree-into-ssa.c
index ddb3c24b7da..5885addde26 100644
--- a/gcc/tree-into-ssa.c
+++ b/gcc/tree-into-ssa.c
@@ -1494,7 +1494,7 @@ dump_decl_set (FILE *file, bitmap set)
/* Dump bitmap SET (assumed to contain VAR_DECLs) to FILE. */
-void
+DEBUG_FUNCTION void
debug_decl_set (bitmap set)
{
dump_decl_set (stderr, set);
@@ -1565,7 +1565,7 @@ dump_defs_stack (FILE *file, int n)
dumped. New levels are created when the dominator tree traversal
used for renaming enters a new sub-tree. */
-void
+DEBUG_FUNCTION void
debug_defs_stack (int n)
{
dump_defs_stack (stderr, n);
@@ -1599,7 +1599,7 @@ dump_currdefs (FILE *file)
/* Dump the current reaching definition of every symbol to stderr. */
-void
+DEBUG_FUNCTION void
debug_currdefs (void)
{
dump_currdefs (stderr);
@@ -1625,7 +1625,7 @@ dump_tree_ssa (FILE *file)
/* Dump SSA information to stderr. */
-void
+DEBUG_FUNCTION void
debug_tree_ssa (void)
{
dump_tree_ssa (stderr);
@@ -1671,7 +1671,7 @@ dump_tree_ssa_stats (FILE *file)
/* Dump SSA statistics on stderr. */
-void
+DEBUG_FUNCTION void
debug_tree_ssa_stats (void)
{
dump_tree_ssa_stats (stderr);
@@ -1739,7 +1739,7 @@ dump_def_blocks (FILE *file)
/* Dump the DEF_BLOCKS hash table on stderr. */
-void
+DEBUG_FUNCTION void
debug_def_blocks (void)
{
dump_def_blocks (stderr);
@@ -2692,7 +2692,7 @@ dump_names_replaced_by (FILE *file, tree name)
/* Dump all the names replaced by NAME to stderr. */
-void
+DEBUG_FUNCTION void
debug_names_replaced_by (tree name)
{
dump_names_replaced_by (stderr, name);
@@ -2757,7 +2757,7 @@ dump_update_ssa (FILE *file)
/* Dump SSA update information to stderr. */
-void
+DEBUG_FUNCTION void
debug_update_ssa (void)
{
dump_update_ssa (stderr);
diff --git a/gcc/tree-loop-distribution.c b/gcc/tree-loop-distribution.c
index 746e4421a96..51c66778773 100644
--- a/gcc/tree-loop-distribution.c
+++ b/gcc/tree-loop-distribution.c
@@ -970,7 +970,7 @@ dump_rdg_partitions (FILE *file, VEC (bitmap, heap) *partitions)
/* Debug PARTITIONS. */
extern void debug_rdg_partitions (VEC (bitmap, heap) *);
-void
+DEBUG_FUNCTION void
debug_rdg_partitions (VEC (bitmap, heap) *partitions)
{
dump_rdg_partitions (stderr, partitions);
diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c
index 8852c05cb85..ec10c144a5f 100644
--- a/gcc/tree-pretty-print.c
+++ b/gcc/tree-pretty-print.c
@@ -77,7 +77,7 @@ do_niy (pretty_printer *buffer, const_tree node)
/* Debugging function to print out a generic expression. */
-void
+DEBUG_FUNCTION void
debug_generic_expr (tree t)
{
print_generic_expr (stderr, t, TDF_VOPS|TDF_MEMSYMS);
@@ -86,7 +86,7 @@ debug_generic_expr (tree t)
/* Debugging function to print out a generic statement. */
-void
+DEBUG_FUNCTION void
debug_generic_stmt (tree t)
{
print_generic_stmt (stderr, t, TDF_VOPS|TDF_MEMSYMS);
@@ -95,7 +95,7 @@ debug_generic_stmt (tree t)
/* Debugging function to print out a chain of trees . */
-void
+DEBUG_FUNCTION void
debug_tree_chain (tree t)
{
struct pointer_set_t *seen = pointer_set_create ();
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index 10292f27a96..e510358a49b 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -358,7 +358,7 @@ dump_alias_info (FILE *file)
/* Dump alias information on stderr. */
-void
+DEBUG_FUNCTION void
debug_alias_info (void)
{
dump_alias_info (stderr);
@@ -437,7 +437,7 @@ dump_points_to_info_for (FILE *file, tree ptr)
/* Dump points-to information for VAR into stderr. */
-void
+DEBUG_FUNCTION void
debug_points_to_info_for (tree var)
{
dump_points_to_info_for (stderr, var);
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index d4a7a31c101..3a2b51c72c5 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -261,7 +261,7 @@ dump_lattice_value (FILE *outf, const char *prefix, prop_value_t val)
void debug_lattice_value (prop_value_t val);
-void
+DEBUG_FUNCTION void
debug_lattice_value (prop_value_t val)
{
dump_lattice_value (stderr, "", val);
diff --git a/gcc/tree-ssa-dom.c b/gcc/tree-ssa-dom.c
index b8453256988..761593b4271 100644
--- a/gcc/tree-ssa-dom.c
+++ b/gcc/tree-ssa-dom.c
@@ -1042,7 +1042,7 @@ dump_dominator_optimization_stats (FILE *file)
/* Dump SSA statistics on stderr. */
-void
+DEBUG_FUNCTION void
debug_dominator_optimization_stats (void)
{
dump_dominator_optimization_stats (stderr);
diff --git a/gcc/tree-ssa-live.c b/gcc/tree-ssa-live.c
index c3e00713b3a..a3112959217 100644
--- a/gcc/tree-ssa-live.c
+++ b/gcc/tree-ssa-live.c
@@ -632,7 +632,7 @@ dump_scope_block (FILE *file, int indent, tree scope, int flags)
/* Dump the tree of lexical scopes starting at SCOPE to stderr. FLAGS
is as in print_generic_expr. */
-void
+DEBUG_FUNCTION void
debug_scope_block (tree scope, int flags)
{
dump_scope_block (stderr, 0, scope, flags);
@@ -652,7 +652,7 @@ dump_scope_blocks (FILE *file, int flags)
/* Dump the tree of lexical scopes of current_function_decl to stderr.
FLAGS is as in print_generic_expr. */
-void
+DEBUG_FUNCTION void
debug_scope_blocks (int flags)
{
dump_scope_blocks (stderr, flags);
diff --git a/gcc/tree-ssa-loop-manip.c b/gcc/tree-ssa-loop-manip.c
index 3d4fe1a59eb..060ee261601 100644
--- a/gcc/tree-ssa-loop-manip.c
+++ b/gcc/tree-ssa-loop-manip.c
@@ -441,7 +441,7 @@ check_loop_closed_ssa_stmt (basic_block bb, gimple stmt)
/* Checks that invariants of the loop closed ssa form are preserved.
Call verify_ssa when VERIFY_SSA_P is true. */
-void
+DEBUG_FUNCTION void
verify_loop_closed_ssa (bool verify_ssa_p)
{
basic_block bb;
diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c
index aa37b972628..f8224968fe4 100644
--- a/gcc/tree-ssa-operands.c
+++ b/gcc/tree-ssa-operands.c
@@ -1180,7 +1180,7 @@ swap_tree_operands (gimple stmt, tree *exp0, tree *exp1)
/* Scan the immediate_use list for VAR making sure its linked properly.
Return TRUE if there is a problem and emit an error message to F. */
-bool
+DEBUG_FUNCTION bool
verify_imm_links (FILE *f, tree var)
{
use_operand_p ptr, prev, list;
@@ -1304,7 +1304,7 @@ dump_immediate_uses (FILE *file)
/* Dump def-use edges on stderr. */
-void
+DEBUG_FUNCTION void
debug_immediate_uses (void)
{
dump_immediate_uses (stderr);
@@ -1313,7 +1313,7 @@ debug_immediate_uses (void)
/* Dump def-use edges on stderr. */
-void
+DEBUG_FUNCTION void
debug_immediate_uses_for (tree var)
{
dump_immediate_uses_for (stderr, var);
diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c
index 18c75d242d8..ea4be543c45 100644
--- a/gcc/tree-ssa-pre.c
+++ b/gcc/tree-ssa-pre.c
@@ -986,7 +986,7 @@ print_pre_expr (FILE *outfile, const pre_expr expr)
void debug_pre_expr (pre_expr);
/* Like print_pre_expr but always prints to stderr. */
-void
+DEBUG_FUNCTION void
debug_pre_expr (pre_expr e)
{
print_pre_expr (stderr, e);
@@ -1023,7 +1023,7 @@ print_bitmap_set (FILE *outfile, bitmap_set_t set,
void debug_bitmap_set (bitmap_set_t);
-void
+DEBUG_FUNCTION void
debug_bitmap_set (bitmap_set_t set)
{
print_bitmap_set (stderr, set, "debug", 0);
@@ -1044,7 +1044,7 @@ print_value_expressions (FILE *outfile, unsigned int val)
}
-void
+DEBUG_FUNCTION void
debug_value_expressions (unsigned int val)
{
print_value_expressions (stderr, val);
diff --git a/gcc/tree-ssa-reassoc.c b/gcc/tree-ssa-reassoc.c
index 40152d93e64..add41f882a2 100644
--- a/gcc/tree-ssa-reassoc.c
+++ b/gcc/tree-ssa-reassoc.c
@@ -2147,7 +2147,7 @@ dump_ops_vector (FILE *file, VEC (operand_entry_t, heap) *ops)
/* Dump the operand entry vector OPS to STDERR. */
-void
+DEBUG_FUNCTION void
debug_ops_vector (VEC (operand_entry_t, heap) *ops)
{
dump_ops_vector (stderr, ops);
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 23e52d65950..a851ef2e2e9 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -716,7 +716,7 @@ void debug_sa_points_to_info (void);
/* Print out constraint C to stderr. */
-void
+DEBUG_FUNCTION void
debug_constraint (constraint_t c)
{
dump_constraint (stderr, c);
@@ -735,7 +735,7 @@ dump_constraints (FILE *file, int from)
/* Print out all constraints to stderr. */
-void
+DEBUG_FUNCTION void
debug_constraints (void)
{
dump_constraints (stderr, 0);
@@ -825,7 +825,7 @@ dump_constraint_graph (FILE *file)
/* Print out the constraint graph to stderr. */
-void
+DEBUG_FUNCTION void
debug_constraint_graph (void)
{
dump_constraint_graph (stderr);
@@ -5434,7 +5434,7 @@ dump_solution_for_var (FILE *file, unsigned int var)
/* Print the points-to solution for VAR to stdout. */
-void
+DEBUG_FUNCTION void
debug_solution_for_var (unsigned int var)
{
dump_solution_for_var (stdout, var);
@@ -6035,7 +6035,7 @@ dump_sa_points_to_info (FILE *outfile)
/* Debug points-to information to stderr. */
-void
+DEBUG_FUNCTION void
debug_sa_points_to_info (void)
{
dump_sa_points_to_info (stderr);
diff --git a/gcc/tree-ssa-ter.c b/gcc/tree-ssa-ter.c
index d9d552c4cd0..a998db85c5f 100644
--- a/gcc/tree-ssa-ter.c
+++ b/gcc/tree-ssa-ter.c
@@ -705,7 +705,7 @@ dump_replaceable_exprs (FILE *f, bitmap expr)
exclusively to debug TER. F is the place to send debug info and T is the
table being debugged. */
-void
+DEBUG_FUNCTION void
debug_ter (FILE *f, temp_expr_table_p t)
{
unsigned x, y;
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index dfea0258ea1..d07c61d0468 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -857,7 +857,7 @@ error:
/* Verify common invariants in the SSA web.
TODO: verify the variable annotations. */
-void
+DEBUG_FUNCTION void
verify_ssa (bool check_modified_stmt)
{
size_t i;
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 8ffde5bf050..2bb90b27171 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -3747,7 +3747,7 @@ dump_value_range (FILE *file, value_range_t *vr)
/* Dump value range VR to stderr. */
-void
+DEBUG_FUNCTION void
debug_value_range (value_range_t *vr)
{
dump_value_range (stderr, vr);
@@ -3779,7 +3779,7 @@ dump_all_value_ranges (FILE *file)
/* Dump all value ranges to stderr. */
-void
+DEBUG_FUNCTION void
debug_all_value_ranges (void)
{
dump_all_value_ranges (stderr);
@@ -3935,7 +3935,7 @@ dump_asserts_for (FILE *file, tree name)
/* Dump all the registered assertions for NAME to stderr. */
-void
+DEBUG_FUNCTION void
debug_asserts_for (tree name)
{
dump_asserts_for (stderr, name);
@@ -3959,7 +3959,7 @@ dump_all_asserts (FILE *file)
/* Dump all the registered assertions for all the names to stderr. */
-void
+DEBUG_FUNCTION void
debug_all_asserts (void)
{
dump_all_asserts (stderr);
diff --git a/gcc/value-prof.c b/gcc/value-prof.c
index b819cdcc06f..7b1e70a2de0 100644
--- a/gcc/value-prof.c
+++ b/gcc/value-prof.c
@@ -386,7 +386,7 @@ visit_hist (void **slot, void *data)
/* Verify sanity of the histograms. */
-void
+DEBUG_FUNCTION void
verify_histograms (void)
{
basic_block bb;
diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
index 7548d6b70f3..967661274ce 100644
--- a/gcc/var-tracking.c
+++ b/gcc/var-tracking.c
@@ -1098,7 +1098,7 @@ dv_from_value (rtx value)
extern void debug_dv (decl_or_value dv);
-void
+DEBUG_FUNCTION void
debug_dv (decl_or_value dv)
{
if (dv_is_value_p (dv))
diff --git a/gcc/varpool.c b/gcc/varpool.c
index 2e8e945396a..a3be2629ce1 100644
--- a/gcc/varpool.c
+++ b/gcc/varpool.c
@@ -263,7 +263,7 @@ dump_varpool (FILE *f)
/* Dump the variable pool to stderr. */
-void
+DEBUG_FUNCTION void
debug_varpool (void)
{
dump_varpool (stderr);