aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/sh
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2017-01-17 04:07:51 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2017-01-17 04:07:51 +0000
commitd27c8bec6f0f69fc6e98507ceabbfb10cd8ba0f0 (patch)
tree8484951b54c45d584290334dcd5f3a36583a645d /gcc/config/sh
parente6750e5ce04bf778fc9bb0d07143b72cc6dc2c79 (diff)
downloadgcc-d27c8bec6f0f69fc6e98507ceabbfb10cd8ba0f0.zip
gcc-d27c8bec6f0f69fc6e98507ceabbfb10cd8ba0f0.tar.gz
gcc-d27c8bec6f0f69fc6e98507ceabbfb10cd8ba0f0.tar.bz2
re PR target/78633 ([SH] libgcc/fp-bit.c:944:1: error: invalid rtl sharing found in the insn)
PR target/78633 * config/sh/sh.md (cmpeqsi_t+1): Call copy_rtx to avoid invalid RTL sharing. From-SVN: r244516
Diffstat (limited to 'gcc/config/sh')
-rw-r--r--gcc/config/sh/sh.md3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index 11576f4..2645fca 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -858,7 +858,8 @@
operands of the tstsi_t insn, which is generally the case. */
if (dump_file)
fprintf (dump_file, "cmpeqsi_t: replacing with tstsi_t\n");
- emit_insn (gen_tstsi_t (XEXP (op.set_src, 0), XEXP (op.set_src, 1)));
+ emit_insn (gen_tstsi_t (copy_rtx (XEXP (op.set_src, 0)),
+ copy_rtx (XEXP (op.set_src, 1))));
DONE;
}