diff options
Diffstat (limited to 'gcc/cfg.c')
-rw-r--r-- | gcc/cfg.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/cfg.c b/gcc/cfg.c index a0f326a5db7..c1cf389e69f 100644 --- a/gcc/cfg.c +++ b/gcc/cfg.c @@ -78,7 +78,9 @@ static void free_edge (edge); void init_flow (void) { - + if (!cfun->cfg) + cfun->cfg = ggc_alloc_cleared (sizeof (struct control_flow_graph)); + n_edges = 0; ENTRY_BLOCK_PTR = ggc_alloc_cleared (sizeof (struct basic_block_def)); ENTRY_BLOCK_PTR->index = ENTRY_BLOCK; EXIT_BLOCK_PTR = ggc_alloc_cleared (sizeof (struct basic_block_def)); |