diff options
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/c6x/c6x.c | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d8766e2..12d4a72 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2017-02-24 Segher Boessenkool <segher@kernel.crashing.org> + * config/c6x/c6x.c (predicate_insn): Do not incorrectly share RTL. + +2017-02-24 Segher Boessenkool <segher@kernel.crashing.org> + * config/arc/arc.c (arc_ccfsm_advance): Only take the PATTERN of this_insn if it is an INSN or JUMP_INSN. (force_offsettable): Look at base, not at addr. diff --git a/gcc/config/c6x/c6x.c b/gcc/config/c6x/c6x.c index f841266..c54d4d1 100644 --- a/gcc/config/c6x/c6x.c +++ b/gcc/config/c6x/c6x.c @@ -3799,6 +3799,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; |