aboutsummaryrefslogtreecommitdiff
path: root/gcc/dse.c
diff options
context:
space:
mode:
authorAnatoly Sokolov <aesok@post.ru>2011-03-19 20:33:45 +0300
committerAnatoly Sokolov <aesok@gcc.gnu.org>2011-03-19 20:33:45 +0300
commitf773c2bd761b15c79456aae0390b854ab5a7a1cd (patch)
tree65a46d02e15ddf767df696b9661692c68608064a /gcc/dse.c
parent458653cc067362d84835bc39bd849dcdb4c13127 (diff)
downloadgcc-f773c2bd761b15c79456aae0390b854ab5a7a1cd.zip
gcc-f773c2bd761b15c79456aae0390b854ab5a7a1cd.tar.gz
gcc-f773c2bd761b15c79456aae0390b854ab5a7a1cd.tar.bz2
cfgcleanup.c (mark_effect): Use bitmap_set_range/bitmap_clear_range instead of loop.
* 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. From-SVN: r171183
Diffstat (limited to 'gcc/dse.c')
-rw-r--r--gcc/dse.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/dse.c b/gcc/dse.c
index a15b735..dee4c76 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)]);
}
}