re PR rtl-optimization/64172 (Wrong code with GCC vector extensions on ARM when compiled without NEON)

2015-02-20  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/64172
	* ira-color.c (color_pass): Prevent splitting multi-register
	pseudos.

From-SVN: r220877
This commit is contained in:
Vladimir Makarov 2015-02-20 18:59:02 +00:00 committed by Vladimir Makarov
parent 3193539831
commit 3c20c9bc8a
2 changed files with 11 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2015-02-20 Vladimir Makarov <vmakarov@redhat.com>
PR target/64172
* ira-color.c (color_pass): Prevent splitting multi-register
pseudos.
2015-02-20 Richard Biener <rguenther@suse.de>
PR tree-optimization/65136

View File

@ -3274,7 +3274,11 @@ color_pass (ira_loop_tree_node_t loop_tree_node)
&& (loop_tree_node->reg_pressure[pclass]
<= ira_class_hard_regs_num[pclass]))
|| (pic_offset_table_rtx != NULL
&& regno == (int) REGNO (pic_offset_table_rtx)))
&& regno == (int) REGNO (pic_offset_table_rtx))
/* Avoid overlapped multi-registers. Moves between them
might result in wrong code generation. */
|| (hard_regno >= 0
&& ira_reg_class_max_nregs[pclass][mode] > 1))
{
if (! ALLOCNO_ASSIGNED_P (subloop_allocno))
{