From 79be33d4a8644abc064caa7a7a0a324ba7d3d7b2 Mon Sep 17 00:00:00 2001 From: segher Date: Sat, 5 Jun 2010 03:13:50 +0000 Subject: [PATCH] 2010-06-05 Segher Boessenkool genautomata.c (get_excl_set): Do work per element, not per char. (check_presence_pattern_sets): Similar. (check_absence_pattern_sets): Similar. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160307 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/genautomata.c | 50 ++++++++++++++++++++++---------------------------- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c1514c914c5..e492b28845e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2010-06-05 Segher Boessenkool + genautomata.c (get_excl_set): Do work per element, not per char. + (check_presence_pattern_sets): Similar. + (check_absence_pattern_sets): Similar. + +2010-06-05 Segher Boessenkool + * genautomata.c (curr_state_pass_num): Delete. (min_issue_delay_pass_states): Delete. (min_issue_delay): Delete. diff --git a/gcc/genautomata.c b/gcc/genautomata.c index 463dbd47fed..ad7caa611b5 100644 --- a/gcc/genautomata.c +++ b/gcc/genautomata.c @@ -4174,20 +4174,18 @@ initiate_excl_sets (void) static reserv_sets_t get_excl_set (reserv_sets_t in_set) { - int excl_char_num; - int chars_num; - int i; + int el; + unsigned int i; int start_unit_num; int unit_num; - chars_num = els_in_cycle_reserv * sizeof (set_el_t); - memset (excl_set, 0, chars_num); - for (excl_char_num = 0; excl_char_num < chars_num; excl_char_num++) - if (((unsigned char *) in_set) [excl_char_num]) - for (i = CHAR_BIT - 1; i >= 0; i--) - if ((((unsigned char *) in_set) [excl_char_num] >> i) & 1) + memset (excl_set, 0, els_in_cycle_reserv * sizeof (set_el_t)); + for (el = 0; el < els_in_cycle_reserv; el++) + if (in_set[el]) + for (i = 0; i < CHAR_BIT * sizeof (set_el_t); i++) + if ((in_set[el] >> i) & 1) { - start_unit_num = excl_char_num * CHAR_BIT + i; + start_unit_num = el * CHAR_BIT * sizeof (set_el_t) + i; if (start_unit_num >= description->units_num) return excl_set; for (unit_num = 0; unit_num < els_in_cycle_reserv; unit_num++) @@ -4286,21 +4284,19 @@ check_presence_pattern_sets (reserv_sets_t checked_set, reserv_sets_t original_set, int final_p) { - int char_num; - int chars_num; - int i; + int el; + unsigned int i; int start_unit_num; int unit_num; int presence_p; pattern_reserv_t pat_reserv; - chars_num = els_in_cycle_reserv * sizeof (set_el_t); - for (char_num = 0; char_num < chars_num; char_num++) - if (((unsigned char *) original_set) [char_num]) - for (i = CHAR_BIT - 1; i >= 0; i--) - if ((((unsigned char *) original_set) [char_num] >> i) & 1) + for (el = 0; el < els_in_cycle_reserv; el++) + if (original_set[el]) + for (i = 0; i < CHAR_BIT * sizeof (set_el_t); i++) + if ((original_set[el] >> i) & 1) { - start_unit_num = char_num * CHAR_BIT + i; + start_unit_num = el * CHAR_BIT * sizeof (set_el_t) + i; if (start_unit_num >= description->units_num) break; if ((final_p @@ -4335,20 +4331,18 @@ check_absence_pattern_sets (reserv_sets_t checked_set, reserv_sets_t original_set, int final_p) { - int char_num; - int chars_num; - int i; + int el; + unsigned int i; int start_unit_num; int unit_num; pattern_reserv_t pat_reserv; - chars_num = els_in_cycle_reserv * sizeof (set_el_t); - for (char_num = 0; char_num < chars_num; char_num++) - if (((unsigned char *) original_set) [char_num]) - for (i = CHAR_BIT - 1; i >= 0; i--) - if ((((unsigned char *) original_set) [char_num] >> i) & 1) + for (el = 0; el < els_in_cycle_reserv; el++) + if (original_set[el]) + for (i = 0; i < CHAR_BIT * sizeof (set_el_t); i++) + if ((original_set[el] >> i) & 1) { - start_unit_num = char_num * CHAR_BIT + i; + start_unit_num = el * CHAR_BIT * sizeof (set_el_t) + i; if (start_unit_num >= description->units_num) break; for (pat_reserv = (final_p -- 2.11.4.GIT