Commit 2372a062 by Bernd Schmidt Committed by Bernd Schmidt

reload1.c (delete_output_reload): Count occurrences in CALL_INSN_FUNCTION_USAGE.

	* reload1.c (delete_output_reload): Count occurrences in
	CALL_INSN_FUNCTION_USAGE.
	* rtlanal.c (count_occurrences): Handle EXPR_LIST nodes without
	crashing at the end of the list.

From-SVN: r119571
parent e80dc930
2006-12-06 Bernd Schmidt <bernd.schmidt@analog.com>
* reload1.c (delete_output_reload): Count occurrences in
CALL_INSN_FUNCTION_USAGE.
* rtlanal.c (count_occurrences): Handle EXPR_LIST nodes without
crashing at the end of the list.
2006-12-05 Daniel Berlin <dberlin@dberlin.org> 2006-12-05 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-structalias.c (set_used_smts): Re-fix pr29156. * tree-ssa-structalias.c (set_used_smts): Re-fix pr29156.
......
...@@ -7972,6 +7972,9 @@ delete_output_reload (rtx insn, int j, int last_reload_reg) ...@@ -7972,6 +7972,9 @@ delete_output_reload (rtx insn, int j, int last_reload_reg)
} }
} }
n_occurrences = count_occurrences (PATTERN (insn), reg, 0); n_occurrences = count_occurrences (PATTERN (insn), reg, 0);
if (CALL_P (insn) && CALL_INSN_FUNCTION_USAGE (insn))
n_occurrences += count_occurrences (CALL_INSN_FUNCTION_USAGE (insn),
reg, 0);
if (substed) if (substed)
n_occurrences += count_occurrences (PATTERN (insn), n_occurrences += count_occurrences (PATTERN (insn),
eliminate_regs (substed, 0, eliminate_regs (substed, 0,
......
...@@ -509,6 +509,12 @@ count_occurrences (rtx x, rtx find, int count_dest) ...@@ -509,6 +509,12 @@ count_occurrences (rtx x, rtx find, int count_dest)
case CC0: case CC0:
return 0; return 0;
case EXPR_LIST:
count = count_occurrences (XEXP (x, 0), find, count_dest);
if (XEXP (x, 1))
count += count_occurrences (XEXP (x, 1), find, count_dest);
return count;
case MEM: case MEM:
if (MEM_P (find) && rtx_equal_p (x, find)) if (MEM_P (find) && rtx_equal_p (x, find))
return 1; return 1;
......
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