diff options
author | obrien <obrien@FreeBSD.org> | 1999-08-26 09:30:50 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 1999-08-26 09:30:50 +0000 |
commit | 0bedf4fb30066e5e1d4342a1d3914dae7d37cba7 (patch) | |
tree | 68d8110b41afd0ebbf39167b1a4918eea667a7c5 /contrib/gcc/loop.h | |
parent | d4db5fb866b7ad5216abd5047774a3973b9901a9 (diff) | |
download | FreeBSD-src-0bedf4fb30066e5e1d4342a1d3914dae7d37cba7.zip FreeBSD-src-0bedf4fb30066e5e1d4342a1d3914dae7d37cba7.tar.gz |
Virgin import of gcc from EGCS 1.1.2
Diffstat (limited to 'contrib/gcc/loop.h')
-rw-r--r-- | contrib/gcc/loop.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/contrib/gcc/loop.h b/contrib/gcc/loop.h index 4c9c483..25c16f0 100644 --- a/contrib/gcc/loop.h +++ b/contrib/gcc/loop.h @@ -75,7 +75,9 @@ struct induction even if further info is available. Both this and the above can be zero. */ unsigned ignore : 1; /* 1 prohibits further processing of giv */ - unsigned always_computable : 1;/* 1 if this set occurs each iteration */ + unsigned always_computable : 1;/* 1 if this value is computable every + iteration. */ + unsigned always_executed : 1; /* 1 if this set occurs each iteration. */ unsigned maybe_multiple : 1; /* Only used for a biv and 1 if this biv update may be done multiple times per iteration. */ @@ -88,6 +90,11 @@ struct induction unsigned maybe_dead : 1; /* 1 if this giv might be dead. In that case, we won't use it to eliminate a biv, it would probably lose. */ + unsigned auto_inc_opt : 1; /* 1 if this giv had its increment output next + to it to try to form an auto-inc address. */ + unsigned unrolled : 1; /* 1 if new register has been allocated and + initialized in unrolled loop. */ + unsigned shared : 1; int lifetime; /* Length of life of this giv */ int times_used; /* # times this giv is used. */ rtx derive_adjustment; /* If nonzero, is an adjustment to be @@ -174,3 +181,11 @@ rtx final_biv_value PROTO((struct iv_class *, rtx, rtx)); rtx final_giv_value PROTO((struct induction *, rtx, rtx)); void emit_unrolled_add PROTO((rtx, rtx, rtx)); int back_branch_in_range_p PROTO((rtx, rtx, rtx)); + +extern int *loop_unroll_factor; +#ifdef HAIFA +/* variables for interaction between unroll.c and loop.c, for + the insertion of branch-on-count instruction. */ +extern rtx *loop_start_value; +#endif /* HAIFA */ + |