diff options
author | Anatoly Sokolov <aesok@post.ru> | 2011-03-19 17:33:45 +0000 |
---|---|---|
committer | Anatoly Sokolov <aesok@post.ru> | 2011-03-19 17:33:45 +0000 |
commit | 98cc070846f500019876d3215571429acff6c21a (patch) | |
tree | 65a46d02e15ddf767df696b9661692c68608064a /gcc/df-problems.c | |
parent | 2afddd5e714ebddce925088e03d4a2a27a985f4c (diff) |
* 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: https://gcc.gnu.org/svn/gcc/trunk@171183 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/df-problems.c')
-rw-r--r-- | gcc/df-problems.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/gcc/df-problems.c b/gcc/df-problems.c index 729cad5f023..0f398ba3aa4 100644 --- a/gcc/df-problems.c +++ b/gcc/df-problems.c @@ -1,6 +1,6 @@ /* Standard problems for dataflow support routines. Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010 Free Software Foundation, Inc. + 2008, 2009, 2010, 2011 Free Software Foundation, Inc. Originally contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz, mhayes@redhat.com) Major rewrite contributed by Danny Berlin (dberlin@dberlin.org) @@ -3774,12 +3774,9 @@ df_simulate_one_insn_forwards (basic_block bb, rtx insn, bitmap live) { rtx reg = XEXP (link, 0); int regno = REGNO (reg); - if (regno < FIRST_PSEUDO_REGISTER) - { - int n = hard_regno_nregs[regno][GET_MODE (reg)]; - while (--n >= 0) - bitmap_clear_bit (live, regno + n); - } + if (HARD_REGISTER_NUM_P (regno)) + bitmap_clear_range (live, regno, + hard_regno_nregs[regno][GET_MODE (reg)]); else bitmap_clear_bit (live, regno); } |