summaryrefslogtreecommitdiffstats
path: root/gcc/cfgloop.h
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2013-04-17 12:01:46 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2013-04-17 12:01:46 +0000
commit427286b391c3288b0d7bb09623caad434e92ae67 (patch)
tree6f5974270d53a9f59def50d3f7b035dafa24e645 /gcc/cfgloop.h
parent740a2cb6e886905c141074dfcbe7976c7e7baf79 (diff)
downloadppe42-gcc-427286b391c3288b0d7bb09623caad434e92ae67.tar.gz
ppe42-gcc-427286b391c3288b0d7bb09623caad434e92ae67.zip
2013-04-17 Richard Biener <rguenther@suse.de>
PR rtl-optimization/56921 * cfgloop.h (struct loop): Add simple_loop_desc member. (struct niter_desc): Mark with GTY(()). (simple_loop_desc): Do not use aux field but simple_loop_desc. * loop-iv.c (get_simple_loop_desc): Likewise. (free_simple_loop_desc): Likewise. Revert 2013-04-16 Richard Biener <rguenther@suse.de> PR rtl-optimization/56921 * loop-init.c (pass_rtl_move_loop_invariants): Add TODO_do_not_ggc_collect to todo_flags_finish. (pass_rtl_unswitch): Same. (pass_rtl_unroll_and_peel_loops): Same. (pass_rtl_doloop): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198025 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgloop.h')
-rw-r--r--gcc/cfgloop.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h
index 01cef519a0c..29ac6c44937 100644
--- a/gcc/cfgloop.h
+++ b/gcc/cfgloop.h
@@ -172,6 +172,9 @@ struct GTY ((chain_next ("%h.next"))) loop {
/* Head of the cyclic list of the exits of the loop. */
struct loop_exit *exits;
+
+ /* Number of iteration analysis data for RTL. */
+ struct niter_desc *simple_loop_desc;
};
/* Flags for state of loop structure. */
@@ -372,7 +375,7 @@ struct rtx_iv
/* The description of an exit from the loop and of the number of iterations
till we take the exit. */
-struct niter_desc
+struct GTY(()) niter_desc
{
/* The edge out of the loop. */
edge out_edge;
@@ -425,7 +428,7 @@ extern void free_simple_loop_desc (struct loop *loop);
static inline struct niter_desc *
simple_loop_desc (struct loop *loop)
{
- return (struct niter_desc *) loop->aux;
+ return loop->simple_loop_desc;
}
/* Accessors for the loop structures. */
OpenPOWER on IntegriCloud