aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Earnshaw <erich@gnu.org>1994-06-25 10:04:06 +0000
committerRichard Earnshaw <erich@gnu.org>1994-06-25 10:04:06 +0000
commit13018fad5e728dc1464708dc4c49be03b5545793 (patch)
tree5ae526d652f51744afafd79648e61355144b9143 /gcc
parent9966b3915fad5ca4e14abc347ec22c3b0a9e159a (diff)
downloadgcc-13018fad5e728dc1464708dc4c49be03b5545793.zip
gcc-13018fad5e728dc1464708dc4c49be03b5545793.tar.gz
gcc-13018fad5e728dc1464708dc4c49be03b5545793.tar.bz2
(distribute_notes, case REG_DEAD): If a call uses a
hard reg, then this is where it dies. From-SVN: r7569
Diffstat (limited to 'gcc')
-rw-r--r--gcc/combine.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index ff902e4..b32f3fed 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -10520,7 +10520,9 @@ distribute_notes (notes, from_insn, i3, i2, elim_i2, elim_i1)
break;
}
}
- else if (reg_referenced_p (XEXP (note, 0), PATTERN (tem)))
+ else if (reg_referenced_p (XEXP (note, 0), PATTERN (tem))
+ || (GET_CODE (tem) == CALL_INSN
+ && find_reg_fusage (tem, USE, XEXP (note, 0))))
{
place = tem;
break;