Commit def70338 by Segher Boessenkool Committed by Segher Boessenkool

combine: Don't make log_links for pc_rtx (PR84780 #c10)

distribute_links tries to place a log_link for whatever the destination
of the modified instruction is.  It shouldn't do that when that dest
is pc_rtx, which isn't actually a register.


	* combine.c (distribute_links): Don't make a link based on pc_rtx.

From-SVN: r258523
parent af143019
2018-03-14 Segher Boessenkool <segher@kernel.crashing.org>
PR rtl-optimization/84780
* combine.c (distribute_links): Don't make a link based on pc_rtx.
2018-03-14 Martin Liska <mliska@suse.cz> 2018-03-14 Martin Liska <mliska@suse.cz>
* tree.c (record_node_allocation_statistics): Use * tree.c (record_node_allocation_statistics): Use
......
...@@ -14778,6 +14778,9 @@ distribute_links (struct insn_link *links) ...@@ -14778,6 +14778,9 @@ distribute_links (struct insn_link *links)
|| GET_CODE (reg) == SUBREG) || GET_CODE (reg) == SUBREG)
reg = XEXP (reg, 0); reg = XEXP (reg, 0);
if (reg == pc_rtx)
continue;
/* A LOG_LINK is defined as being placed on the first insn that uses /* A LOG_LINK is defined as being placed on the first insn that uses
a register and points to the insn that sets the register. Start a register and points to the insn that sets the register. Start
searching at the next insn after the target of the link and stop searching at the next insn after the target of the link and stop
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment