R_MIPS_JALR failures

This is a fix for my PR70890 patch, which incorrectly removed all
REG_EQUIV notes rather than just one regarding a reg that dies.

	PR rtl-optimization/78325
	PR rtl-optimization/70890
	* ira.c (combine_and_move_insns): Only remove REG_EQUIV notes
	for dead regno.

From-SVN: r242525
This commit is contained in:
Alan Modra 2016-11-17 09:40:55 +10:30 committed by Alan Modra
parent 10d48c59b0
commit 8972f7e90b
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2016-11-17 Alan Modra <amodra@gmail.com>
PR rtl-optimization/78325
PR rtl-optimization/70890
* ira.c (combine_and_move_insns): Only remove REG_EQUIV notes
for dead regno.
2016-11-16 Jason Merrill <jason@redhat.com>
* rtl.h: Declare gt_ggc_mx and gt_pch_nx.

View File

@ -3747,7 +3747,7 @@ combine_and_move_insns (void)
use_insn, when regno was seen as non-local. Now that
regno is local to this block, and dies, such an
equivalence is invalid. */
if (find_reg_note (use_insn, REG_EQUIV, NULL_RTX))
if (find_reg_note (use_insn, REG_EQUIV, regno_reg_rtx[regno]))
{
rtx set = single_set (use_insn);
if (set && REG_P (SET_DEST (set)))