diff options
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r-- | gcc/tree-cfg.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 4358c7e..69b4b4b 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -2651,6 +2651,17 @@ disband_implicit_edges (void) void delete_tree_cfg_annotations (void) { + basic_block bb; + block_stmt_iterator bsi; + + /* Remove annotations from every tree in the function. */ + FOR_EACH_BB (bb) + for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) + { + tree stmt = bsi_stmt (bsi); + ggc_free (stmt->base.ann); + stmt->base.ann = NULL; + } label_to_block_map = NULL; } |