diff options
author | aesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-03-19 17:33:45 +0000 |
---|---|---|
committer | aesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-03-19 17:33:45 +0000 |
commit | 771d46166087ea8e015d1cb02560aa6f212852f2 (patch) | |
tree | 65a46d02e15ddf767df696b9661692c68608064a /gcc/dse.c | |
parent | 794f0924f3b7a206875bd5f0cc86d002f8208d60 (diff) | |
download | gcc-771d46166087ea8e015d1cb02560aa6f212852f2.tar.gz |
* cfgcleanup.c (mark_effect): Use bitmap_set_range/bitmap_clear_range
instead of loop. Use HARD_REGISTER_NUM_P predicate.
* haifa-sched.c (setup_ref_regs): Ditto.
* caller-save.c (add_used_regs_1): Ditto.
* dse.c (look_for_hardregs): Ditto.
* df-problems.c (df_simulate_one_insn_forwards): Ditto.
* sched-rgn.c (check_live_1): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171183 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dse.c')
-rw-r--r-- | gcc/dse.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/dse.c b/gcc/dse.c index a15b7351fcc..dee4c76d430 100644 --- a/gcc/dse.c +++ b/gcc/dse.c @@ -1728,12 +1728,11 @@ look_for_hardregs (rtx x, const_rtx pat ATTRIBUTE_UNUSED, void *data) bitmap regs_set = (bitmap) data; if (REG_P (x) - && REGNO (x) < FIRST_PSEUDO_REGISTER) + && HARD_REGISTER_P (x)) { - int regno = REGNO (x); - int n = hard_regno_nregs[regno][GET_MODE (x)]; - while (--n >= 0) - bitmap_set_bit (regs_set, regno + n); + unsigned int regno = REGNO (x); + bitmap_set_range (regs_set, regno, + hard_regno_nregs[regno][GET_MODE (x)]); } } |