diff options
author | m.hayes <m.hayes@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-01-07 10:38:29 +0000 |
---|---|---|
committer | m.hayes <m.hayes@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-01-07 10:38:29 +0000 |
commit | 89e8d34f7eddb60e298cce0fd0fb870e584c606d (patch) | |
tree | e732de7860b16b8d7c4c01ec79928e4af7e71b4a /gcc/basic-block.h | |
parent | 26d6ff2aedff32af48716f6c25a5f4b885abc4a8 (diff) | |
download | gcc-89e8d34f7eddb60e298cce0fd0fb870e584c606d.tar.gz |
* hard-reg-set.h: Add multiple include guard.
* basic-block.h (struct loop): Add `sink' field.
* loop.h: Include sbitmap.h, hard-reg-set.h, and basic-block.h.
(emit_iv_add_mult): Delete.
(loop_iv_add_mult_hoist, loop_iv_add_mult_sink): Define.
(loop_iv_add_mult_emit_before, loop_insn_sink): Define.
(unroll_loop): Remove end_insert_before argument.
* loop.c (loop_givs_rescan): Remove end_insert_before argument.
(maybe_eliminate_biv_1): Likewise.
(emit_iv_add_mult): Delete.
(gen_add_mult, loop_regs_update): New.
(loop_insn_emit_after, loop_insn_emit_before): New.
(loop_insn_sink, loop_insn_sink_or_swim): New.
(emit_iv_add_mult): Delete.
(scan_loop): Set loop->sink.
(loop_givs_reduce): Use loop_insn_sink and its ilk.
(loop_givs_rescan, strength_reduce, check_dbra_loop): Likewise.
(maybe_eliminate_biv_1): Likewise.
(maybe_eliminate_biv_1): Add basic block argument.
* unroll.c (unroll_loop): Remove end_insert_before argument.
(find_splittable_regs): Likewise.
(find_splittable_regs): Use loop_insn_sink and its ilk.
(find_splittable_givs, final_biv_value, final_giv_value): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38766 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r-- | gcc/basic-block.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h index a34dbb8d6dd..f86ff3cbcba 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -365,6 +365,9 @@ struct loop /* Place in the loop where control enters. */ rtx scan_start; + /* The position where to sink insns out of the loop. */ + rtx sink; + /* List of all LABEL_REFs which refer to code labels outside the loop. Used by routines that need to know all loop exits, such as final_biv_value and final_giv_value. |