aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXionghu Luo <luoxhu@linux.ibm.com>2020-10-26 02:52:39 -0500
committerXionghu Luo <luoxhu@linux.ibm.com>2020-10-26 02:52:39 -0500
commita7d153ab8471bde05a9883d4cda9319ff89ea14b (patch)
treeea3c2aca296b23430c3d8207e1275e908eae1016
parent9651cba4360ef7fbdff4f64faf9f650e1246a5c1 (diff)
downloadgcc-a7d153ab8471bde05a9883d4cda9319ff89ea14b.zip
gcc-a7d153ab8471bde05a9883d4cda9319ff89ea14b.tar.gz
gcc-a7d153ab8471bde05a9883d4cda9319ff89ea14b.tar.bz2
Add overloaded debug_bb and debug_bb_n with dump flags
Add overloads that accept a flags argument so we can print debug_bb_n (5, TDF_DETAILS) in gdb, also the debug_bb_slim variant would then be just a forwarder. gcc/ChangeLog: 2020-10-26 Xionghu Luo <luoxhu@linux.ibm.com> * cfg.c (debug_bb): New overloaded function. (debug_bb_n): New overloaded function. * cfg.h (debug_bb): New declaration. (debug_bb_n): New declaration. * print-rtl.c (debug_bb_slim): Call debug_bb with flags.
-rw-r--r--gcc/cfg.c20
-rw-r--r--gcc/cfg.h2
-rw-r--r--gcc/print-rtl.c2
3 files changed, 22 insertions, 2 deletions
diff --git a/gcc/cfg.c b/gcc/cfg.c
index d82324f..de0e71d 100644
--- a/gcc/cfg.c
+++ b/gcc/cfg.c
@@ -720,7 +720,7 @@ free_aux_for_edges (void)
DEBUG_FUNCTION void
debug_bb (basic_block bb)
{
- dump_bb (stderr, bb, 0, dump_flags);
+ debug_bb (bb, dump_flags);
}
DEBUG_FUNCTION basic_block
@@ -731,6 +731,24 @@ debug_bb_n (int n)
return bb;
}
+/* Print BB with specified FLAGS. */
+
+DEBUG_FUNCTION void
+debug_bb (basic_block bb, dump_flags_t flags)
+{
+ dump_bb (stderr, bb, 0, flags);
+}
+
+/* Print basic block numbered N with specified FLAGS. */
+
+DEBUG_FUNCTION basic_block
+debug_bb_n (int n, dump_flags_t flags)
+{
+ basic_block bb = BASIC_BLOCK_FOR_FN (cfun, n);
+ debug_bb (bb, flags);
+ return bb;
+}
+
/* Dumps cfg related information about basic block BB to OUTF.
If HEADER is true, dump things that appear before the instructions
contained in BB. If FOOTER is true, dump things that appear after.
diff --git a/gcc/cfg.h b/gcc/cfg.h
index 1eb7866..93fde6df 100644
--- a/gcc/cfg.h
+++ b/gcc/cfg.h
@@ -108,6 +108,8 @@ extern void clear_aux_for_edges (void);
extern void free_aux_for_edges (void);
extern void debug_bb (basic_block);
extern basic_block debug_bb_n (int);
+extern void debug_bb (basic_block, dump_flags_t);
+extern basic_block debug_bb_n (int, dump_flags_t);
extern void dump_bb_info (FILE *, basic_block, int, dump_flags_t, bool, bool);
extern void brief_dump_cfg (FILE *, dump_flags_t);
extern void update_bb_profile_for_threading (basic_block, profile_count, edge);
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index 25265ef..d514b1c 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -2139,7 +2139,7 @@ extern void debug_bb_slim (basic_block);
DEBUG_FUNCTION void
debug_bb_slim (basic_block bb)
{
- dump_bb (stderr, bb, 0, TDF_SLIM | TDF_BLOCKS);
+ debug_bb (bb, TDF_SLIM | TDF_BLOCKS);
}
extern void debug_bb_n_slim (int);