2017-02-21 Segher Boessenkool <seg...@kernel.crashing.org> * config/c6x/c6x.c (predicate_insn): Do not incorrectly share RTL.
--- gcc/config/c6x/c6x.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/config/c6x/c6x.c b/gcc/config/c6x/c6x.c index 84bfdfa..42b773b 100644 --- a/gcc/config/c6x/c6x.c +++ b/gcc/config/c6x/c6x.c @@ -3800,6 +3800,7 @@ predicate_insn (rtx_insn *insn, rtx cond, bool doit) { if (doit) { + cond = copy_rtx (cond); rtx newpat = gen_rtx_COND_EXEC (VOIDmode, cond, PATTERN (insn)); PATTERN (insn) = newpat; INSN_CODE (insn) = -1; -- 1.9.3