diff options
Diffstat (limited to 'gcc-4.9/gcc/cfgloop.h')
-rw-r--r-- | gcc-4.9/gcc/cfgloop.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/cfgloop.h b/gcc-4.9/gcc/cfgloop.h index 11bfc810f..ce1a689b3 100644 --- a/gcc-4.9/gcc/cfgloop.h +++ b/gcc-4.9/gcc/cfgloop.h @@ -203,6 +203,12 @@ struct GTY ((chain_next ("%h.next"))) loop { /* Number of iteration analysis data for RTL. */ struct niter_desc *simple_loop_desc; + + /* For sanity checking during loop fixup we record here the former + loop header for loops marked for removal. Note that this prevents + the basic-block from being collected but its index can still be + reused. */ + basic_block former_header; }; /* Flags for state of loop structure. */ @@ -345,6 +351,8 @@ struct loop * loop_version (struct loop *, void *, extern bool remove_path (edge); extern void unloop (struct loop *, bool *, bitmap); extern void scale_loop_frequencies (struct loop *, int, int); +void mark_loop_for_removal (loop_p); + /* Induction variable analysis. */ |