Commit f489aff8 by Alan Modra Committed by Alan Modra

rs6000.c (get_next_active_insn): Rewrite using CALL_P...

	* config/rs6000/rs6000.c (get_next_active_insn): Rewrite using
	CALL_P, JUMP_P and NONJUMP_INSN_P, so that barriers and labels
	are omitted.  Exclude stack_tie insn too.

From-SVN: r104159
parent e7126cc5
2005-09-12 Alan Modra <amodra@bigpond.net.au>
* config/rs6000/rs6000.c (get_next_active_insn): Rewrite using
CALL_P, JUMP_P and NONJUMP_INSN_P, so that barriers and labels
are omitted. Exclude stack_tie insn too.
2005-09-11 David Edelsohn <edelsohn@gnu.org> 2005-09-11 David Edelsohn <edelsohn@gnu.org>
PR rtl-optimization/23098 PR rtl-optimization/23098
......
...@@ -16632,26 +16632,26 @@ rs6000_is_costly_dependence (rtx insn, rtx next, rtx link, int cost, ...@@ -16632,26 +16632,26 @@ rs6000_is_costly_dependence (rtx insn, rtx next, rtx link, int cost,
static rtx static rtx
get_next_active_insn (rtx insn, rtx tail) get_next_active_insn (rtx insn, rtx tail)
{ {
rtx next_insn; if (insn == NULL_RTX || insn == tail)
if (!insn || insn == tail)
return NULL_RTX; return NULL_RTX;
next_insn = NEXT_INSN (insn); while (1)
while (next_insn
&& next_insn != tail
&& (GET_CODE (next_insn) == NOTE
|| GET_CODE (PATTERN (next_insn)) == USE
|| GET_CODE (PATTERN (next_insn)) == CLOBBER))
{ {
next_insn = NEXT_INSN (next_insn); insn = NEXT_INSN (insn);
} if (insn == NULL_RTX || insn == tail)
return NULL_RTX;
if (!next_insn || next_insn == tail)
return NULL_RTX;
return next_insn; if (CALL_P (insn)
|| JUMP_P (insn)
|| (NONJUMP_INSN_P (insn)
&& GET_CODE (PATTERN (insn)) != USE
&& GET_CODE (PATTERN (insn)) != CLOBBER
&& !(GET_CODE (PATTERN (insn)) == SET
&& GET_CODE (XEXP (PATTERN (insn), 1)) == UNSPEC
&& XINT (XEXP (PATTERN (insn), 1), 1) == UNSPEC_TIE)))
break;
}
return insn;
} }
/* Return whether the presence of INSN causes a dispatch group termination /* Return whether the presence of INSN causes a dispatch group termination
......
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