This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Possible IRA bug in assign_hard_reg
- From: "Ian Bolton" <bolton at IceraSemi dot com>
- To: <gcc at gcc dot gnu dot org>
- Date: Thu, 21 Jan 2010 18:22:21 -0000
- Subject: Possible IRA bug in assign_hard_reg
Near the end of assign_hard_reg in ira-color.c, there is this code:
if (min_full_cost > mem_cost)
{
if (! retry_p && internal_flag_ira_verbose > 3 && ira_dump_file !=
NULL)
fprintf (ira_dump_file, "(memory is more profitable %d vs %d) ",
mem_cost, min_full_cost);
best_hard_regno = -1;
}
If retry_p is true then we are in reload, so I wouldn't expect us to
override best_hard_regno in this case. I think the code should read:
if (min_full_cost > mem_cost && ! retry_p)
{
if (internal_flag_ira_verbose > 3 && ira_dump_file != NULL)
fprintf (ira_dump_file, "(memory is more profitable %d vs %d) ",
mem_cost, min_full_cost);
best_hard_regno = -1;
}
I'm probably wrong, but I wanted to check.
Cheers,
Ian