diff options
author | Richard Henderson <rth@redhat.com> | 2001-01-09 09:45:12 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-01-09 09:45:12 -0800 |
commit | 4ba478b87c50718ac4dd3af0e2cf42392dbb5641 (patch) | |
tree | 1fe02ec542bf787c44dd766982d749861c7780fc /gcc/sched-int.h | |
parent | 9c1fcbfbb6d9d51593faddb4a8e43e04303b3a09 (diff) | |
download | gcc-4ba478b87c50718ac4dd3af0e2cf42392dbb5641.tar.gz |
sched-int.h (struct deps): Add max_reg, reg_last_in_use...
* sched-int.h (struct deps): Add max_reg, reg_last_in_use; merge
reg_last_uses, reg_last_sets, reg_last_clobbers into struct deps_reg.
* sched-deps.c (sched_analyze_1): Update uses of struct deps.
(sched_analyze_2, sched_analyze_insn): Likewise.
(sched_analyze, init_deps): Likewise.
(free_deps): Likewise. Iterate with EXECUTE_IF_SET_IN_REG_SET.
* sched-rgn.c (propagate_deps): Likewise. Remove max_reg argument.
(compute_block_backward_dependences): Update propagate_deps call.
From-SVN: r38835
Diffstat (limited to 'gcc/sched-int.h')
-rw-r--r-- | gcc/sched-int.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/gcc/sched-int.h b/gcc/sched-int.h index f59f3a84fb3..fdd49eadca7 100644 --- a/gcc/sched-int.h +++ b/gcc/sched-int.h @@ -78,13 +78,24 @@ struct deps to ensure that they won't cross a call after scheduling is done. */ rtx sched_before_next_call; + /* The maximum register number for the following arrays. Before reload + this is max_reg_num; after reload it is FIRST_PSEUDO_REGISTER. */ + int max_reg; + /* Element N is the next insn that sets (hard or pseudo) register N within the current basic block; or zero, if there is no such insn. Needed for new registers which may be introduced by splitting insns. */ - rtx *reg_last_uses; - rtx *reg_last_sets; - rtx *reg_last_clobbers; + struct deps_reg + { + rtx uses; + rtx sets; + rtx clobbers; + } *reg_last; + + /* Element N is set for each register that has any non-zero element + in reg_last[N].{uses,sets,clobbers}. */ + regset_head reg_last_in_use; }; /* This structure holds some state of the current scheduling pass, and |