diff options
author | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-22 19:33:37 +0000 |
---|---|---|
committer | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-22 19:33:37 +0000 |
commit | ddc556d140656052c5583cc83c8d795107786dfc (patch) | |
tree | cfa4aaeabd4b1bbd0608b1fb3976bc0540f8ed3a /gcc/df-problems.c | |
parent | d98c6d3671297d88cfa3b70a45e684bd04edf072 (diff) | |
download | gcc-ddc556d140656052c5583cc83c8d795107786dfc.tar.gz |
gcc/
* hard-reg-set.h (GO_IF_HARD_REG_SUBSET, GO_IF_HARD_REG_EQUAL): Delete
in favor of...
(hard_reg_subset_p, hard_reg_sets_equal_p, hard_reg_sets_intersect_p)
(hard_reg_set_empty_p): ...these new functions.
* bt-load.c (choose_btr): Use hard_reg_subset_p instead of
GO_IF_HARD_REG_SUBSET.
* cfgcleanup.c (old_insns_match_p): Use hard_reg_sets_equal_p
instead of GO_IF_HARD_REG_EQUAL.
* df-problems.c (df_urec_local_compute): Use hard_reg_set_empty_p
instead of GO_IF_HARD_REG_EQUAL.
* global.c (find_reg): Use hard_reg_set_empty_p instead of
GO_IF_HARD_REG_SUBSET.
(modify_reg_pav): Use hard_reg_set_empty_p instead of
GO_IF_HARD_REG_EQUAL.
* local-alloc.c (find_free_reg): Use hard_reg_subset_p instead
of GO_IF_HARD_REG_SUBSET.
* reg-stack.c (change_stack, convert_regs_1): Use hard_reg_sets_equal_p
instead of GO_IF_HARD_REG_EQUAL.
* regclass.c (init_reg_sets_1, reg_scan_mark_refs): Use
hard_reg_subset_p instead of GO_IF_HARD_REG_SUBSET.
(reg_classes_intersect_p): Use hard_reg_sets_intersect_p instead
of GO_IF_HARD_REG_SUBSET,
* reload1.c (finish_spills): Use hard_reg_subset_p instead of
GO_IF_HARD_REG_SUBSET.
* struct-equiv.c (death_notes_match_p): Use hard_reg_sets_equal_p
instead of GO_IF_HARD_REG_EQUAL.
* config/sh/sh.c (push_regs, calc_live_regs): Use
hard_reg_sets_intersect_p instead of hard_regs_intersect_p.
(hard_regs_intersect_p): Delete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124954 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/df-problems.c')
-rw-r--r-- | gcc/df-problems.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/gcc/df-problems.c b/gcc/df-problems.c index 42710b203cf..385b8fb4725 100644 --- a/gcc/df-problems.c +++ b/gcc/df-problems.c @@ -2487,7 +2487,7 @@ df_urec_local_compute (struct dataflow *dflow, bitmap_iterator bi; #ifdef STACK_REGS int i; - HARD_REG_SET zero, stack_hard_regs, used; + HARD_REG_SET stack_hard_regs, used; struct df_urec_problem_data *problem_data = (struct df_urec_problem_data *) dflow->problem_data; @@ -2498,7 +2498,6 @@ df_urec_local_compute (struct dataflow *dflow, FIXME: This seems like an incredibly poor idea. */ - CLEAR_HARD_REG_SET (zero); CLEAR_HARD_REG_SET (stack_hard_regs); for (i = FIRST_STACK_REG; i <= LAST_STACK_REG; i++) SET_HARD_REG_BIT (stack_hard_regs, i); @@ -2508,10 +2507,8 @@ df_urec_local_compute (struct dataflow *dflow, COPY_HARD_REG_SET (used, reg_class_contents[reg_preferred_class (i)]); IOR_HARD_REG_SET (used, reg_class_contents[reg_alternate_class (i)]); AND_HARD_REG_SET (used, stack_hard_regs); - GO_IF_HARD_REG_EQUAL (used, zero, skip); - bitmap_set_bit (problem_data->stack_regs, i); - skip: - ; + if (!hard_reg_set_empty_p (used)) + bitmap_set_bit (problem_data->stack_regs, i); } #endif |