summaryrefslogtreecommitdiff
path: root/gcc/ira-costs.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-12-09 10:00:25 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-12-09 10:00:25 +0000
commit63dae96b55da691bcdae95170dce81dcc79d294e (patch)
tree8004babdc793f99c4704ed369b977399b980bd34 /gcc/ira-costs.c
parent87487e419baa3de521dee4938037e8834c47700c (diff)
downloadgcc-63dae96b55da691bcdae95170dce81dcc79d294e.tar.gz
2010-12-09 Richard Guenther <rguenther@suse.de>
* rtl.h (invalid_mode_change_p): Adjust prototype. * reginfo.c (invalid_mode_change_p): Remove from argument. * ira-costs.c (print_allocno_costs): Adjust callers. (find_costs_and_classes): Likewise. 2010-12-09 Richard Guenther <rguenther@suse.de> * ira.c (ira): Do not call finish_subregs_of_mode. * ira-costs.c (finish_costs): Call finish_subregs_of_mode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167631 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ira-costs.c')
-rw-r--r--gcc/ira-costs.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/gcc/ira-costs.c b/gcc/ira-costs.c
index 2a7a9a8c418..2329613ffa8 100644
--- a/gcc/ira-costs.c
+++ b/gcc/ira-costs.c
@@ -1093,8 +1093,7 @@ print_allocno_costs (FILE *f)
&& (! in_inc_dec[i] || ! forbidden_inc_dec_class[rclass])
#endif
#ifdef CANNOT_CHANGE_MODE_CLASS
- && ! invalid_mode_change_p (regno, (enum reg_class) rclass,
- PSEUDO_REGNO_MODE (regno))
+ && ! invalid_mode_change_p (regno, (enum reg_class) rclass)
#endif
)
{
@@ -1131,8 +1130,7 @@ print_pseudo_costs (FILE *f)
&& (! in_inc_dec[regno] || ! forbidden_inc_dec_class[rclass])
#endif
#ifdef CANNOT_CHANGE_MODE_CLASS
- && ! invalid_mode_change_p (regno, (enum reg_class) rclass,
- PSEUDO_REGNO_MODE (regno))
+ && ! invalid_mode_change_p (regno, (enum reg_class) rclass)
#endif
)
fprintf (f, " %s:%d", reg_class_names[rclass],
@@ -1336,8 +1334,7 @@ find_costs_and_classes (FILE *dump_file)
|| (inc_dec_p && forbidden_inc_dec_class[rclass])
#endif
#ifdef CANNOT_CHANGE_MODE_CLASS
- || invalid_mode_change_p (i, (enum reg_class) rclass,
- PSEUDO_REGNO_MODE (i))
+ || invalid_mode_change_p (i, (enum reg_class) rclass)
#endif
)
continue;
@@ -1412,8 +1409,7 @@ find_costs_and_classes (FILE *dump_file)
|| (inc_dec_p && forbidden_inc_dec_class[rclass])
#endif
#ifdef CANNOT_CHANGE_MODE_CLASS
- || invalid_mode_change_p (i, (enum reg_class) rclass,
- PSEUDO_REGNO_MODE (i))
+ || invalid_mode_change_p (i, (enum reg_class) rclass)
#endif
)
;
@@ -1699,6 +1695,7 @@ init_costs (void)
static void
finish_costs (void)
{
+ finish_subregs_of_mode ();
ira_free (regno_equiv_gains);
ira_free (regno_cover_class);
ira_free (pref_buffer);