re PR target/80148 (operand has impossible constraints)
2017-03-24 Vladimir Makarov <vmakarov@redhat.com> PR target/80148 * lra-assigns.c (assign_by_spills): Add spilled non-reload pseudos to consider in curr_insn_transform. From-SVN: r246467
This commit is contained in:
parent
90471a3d83
commit
fdcfea63c6
|
@ -1,3 +1,9 @@
|
|||
2017-03-24 Vladimir Makarov <vmakarov@redhat.com>
|
||||
|
||||
PR target/80148
|
||||
* lra-assigns.c (assign_by_spills): Add spilled non-reload pseudos
|
||||
to consider in curr_insn_transform.
|
||||
|
||||
2017-03-24 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* genrecog.c (validate_pattern): Add VEC_SELECT validation.
|
||||
|
|
|
@ -1507,6 +1507,14 @@ assign_by_spills (void)
|
|||
sorted_pseudos[nfails++] = conflict_regno;
|
||||
former_reload_pseudo_spill_p = true;
|
||||
}
|
||||
else
|
||||
/* It is better to do reloads before spilling as after the
|
||||
spill-subpass we will reload memory instead of pseudos
|
||||
and this will make reusing reload pseudos more
|
||||
complicated. Going directly to the spill pass in such
|
||||
case might result in worse code performance or even LRA
|
||||
cycling if we have few registers. */
|
||||
bitmap_set_bit (&all_spilled_pseudos, conflict_regno);
|
||||
if (lra_dump_file != NULL)
|
||||
fprintf (lra_dump_file, " Spill %s r%d(hr=%d, freq=%d)\n",
|
||||
pseudo_prefix_title (conflict_regno), conflict_regno,
|
||||
|
|
Loading…
Reference in New Issue