diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2011-03-31 01:04:43 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2011-03-31 01:04:43 +0000 |
commit | bddc98e135ce6dfa9f123c7801afc951fe9d6347 (patch) | |
tree | d0ebdc032b497ab7693d14e9cddb6b85dabf4828 /gcc | |
parent | 23b03b777b23d3e58074f39a3dee562481a57edf (diff) | |
download | gcc-bddc98e135ce6dfa9f123c7801afc951fe9d6347.zip gcc-bddc98e135ce6dfa9f123c7801afc951fe9d6347.tar.gz gcc-bddc98e135ce6dfa9f123c7801afc951fe9d6347.tar.bz2 |
re PR middle-end/48367 (200.sixtrack/301.apsi in SPEC CPU 2000 are miscompiled)
2011-03-30 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/48367
* ira-costs.c (find_costs_and_classes): Fix a typo in i_mem_cost
calculation.
From-SVN: r171767
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ira-costs.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 68d3a89..d5fceb8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-03-30 Vladimir Makarov <vmakarov@redhat.com> + + PR middle-end/48367 + * ira-costs.c (find_costs_and_classes): Fix a typo in i_mem_cost + calculation. + 2011-03-30 Jeff Law <law@redhat.com> * PR bootstrap/48371 diff --git a/gcc/ira-costs.c b/gcc/ira-costs.c index 4a3083a..dd3123c 100644 --- a/gcc/ira-costs.c +++ b/gcc/ira-costs.c @@ -1652,7 +1652,7 @@ find_costs_and_classes (FILE *dump_file) i_costs[k] += add_cost; } add_cost = COSTS (costs, a_num)->mem_cost; - if (add_cost && INT_MAX - add_cost < i_mem_cost) + if (add_cost > 0 && INT_MAX - add_cost < i_mem_cost) i_mem_cost = INT_MAX; else i_mem_cost += add_cost; @@ -1887,7 +1887,7 @@ process_bb_node_for_hard_reg_moves (ira_loop_tree_node_t loop_tree_node) ALLOCNO_HARD_REG_COSTS (a)[i] -= cost; ALLOCNO_CONFLICT_HARD_REG_COSTS (a)[i] -= cost; ALLOCNO_CLASS_COST (a) = MIN (ALLOCNO_CLASS_COST (a), - ALLOCNO_HARD_REG_COSTS (a)[i]); + ALLOCNO_HARD_REG_COSTS (a)[i]); } } |