diff options
author | bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-12-06 00:25:29 +0000 |
---|---|---|
committer | bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-12-06 00:25:29 +0000 |
commit | ac6a6c760194578f30436aa4963bd68d2ba83aab (patch) | |
tree | 8f23a2d5a22c2df0faa8b10efd1d8f88584bf73b /gcc/rtlanal.c | |
parent | 91a0a774d5c06813055286667f271bdea33aa379 (diff) | |
download | gcc-ac6a6c760194578f30436aa4963bd68d2ba83aab.tar.gz |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119571 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r-- | gcc/rtlanal.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 6b964430ef0..4b965f8ca1c 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -509,6 +509,12 @@ count_occurrences (rtx x, rtx find, int count_dest) case CC0: 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: if (MEM_P (find) && rtx_equal_p (x, find)) return 1; |