diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2017-02-24 23:32:46 +0100 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2017-02-24 23:32:46 +0100 |
commit | 015122d8c438b83cb069a6f42fae066cfb4749da (patch) | |
tree | 99c1f15078e3a937bb21364f17d232c4971fca1c /gcc/config/c6x | |
parent | 4173ddafe21fd49f78a69bc94f0ba4ccde118685 (diff) | |
download | gcc-015122d8c438b83cb069a6f42fae066cfb4749da.zip gcc-015122d8c438b83cb069a6f42fae066cfb4749da.tar.gz gcc-015122d8c438b83cb069a6f42fae066cfb4749da.tar.bz2 |
c6x: Fix for RTL checking
* config/c6x/c6x.c (predicate_insn): Do not incorrectly share RTL.
From-SVN: r245721
Diffstat (limited to 'gcc/config/c6x')
-rw-r--r-- | gcc/config/c6x/c6x.c | 1 |
1 files changed, 1 insertions, 0 deletions
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; |