diff options
author | 1998-04-25 06:23:15 +0000 | |
---|---|---|
committer | 1998-04-25 06:23:15 +0000 | |
commit | 103c5d3627919c07ba2264ed35e49fbb2e72092e (patch) | |
tree | aec3e7eea85b5e6ec0885f21f5d8fc1a08345ae9 | |
parent | Aparently the socketpair bug is fixed in current Linux kernels so (diff) | |
download | wireguard-openbsd-103c5d3627919c07ba2264ed35e49fbb2e72092e.tar.xz wireguard-openbsd-103c5d3627919c07ba2264ed35e49fbb2e72092e.zip |
Invalidate cached condition codes correctly in face of a-reg moves
with side-effects on the source registers
-rw-r--r-- | gnu/usr.bin/gcc/config/m68k/m68k.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gnu/usr.bin/gcc/config/m68k/m68k.c b/gnu/usr.bin/gcc/config/m68k/m68k.c index 5f932f0121f..a903a48383e 100644 --- a/gnu/usr.bin/gcc/config/m68k/m68k.c +++ b/gnu/usr.bin/gcc/config/m68k/m68k.c @@ -2189,11 +2189,9 @@ notice_update_cc (exp, insn) } else if (ADDRESS_REG_P (SET_DEST (exp))) { - if (cc_status.value1 - && reg_overlap_mentioned_p (SET_DEST (exp), cc_status.value1)) + if (cc_status.value1 && modified_in_p (cc_status.value1, insn)) cc_status.value1 = 0; - if (cc_status.value2 - && reg_overlap_mentioned_p (SET_DEST (exp), cc_status.value2)) + if (cc_status.value2 && modified_in_p (cc_status.value2, insn)) cc_status.value2 = 0; } else if (!FP_REG_P (SET_DEST (exp)) |